Merge
diff --git a/.hgtags-top-repo b/.hgtags-top-repo
index 236b6a0..7cd4cd8 100644
--- a/.hgtags-top-repo
+++ b/.hgtags-top-repo
@@ -365,3 +365,4 @@
 647e0142a5a52749db572b5e6638d561def6479e jdk-9+120
 cae471d3b87783e0a3deea658e1e1c84b2485b6c jdk-9+121
 346be2df0f5b31d423807f53a719d1b9a67f3354 jdk-9+122
+405d811c0d7b9b48ff718ae6c240b732f098c028 jdk-9+123
diff --git a/common/autoconf/basics.m4 b/common/autoconf/basics.m4
index 5519282..0c1477f 100644
--- a/common/autoconf/basics.m4
+++ b/common/autoconf/basics.m4
@@ -1022,13 +1022,21 @@
   AC_MSG_CHECKING([what type of tar was found])
   AC_MSG_RESULT([$TAR_TYPE])
 
+  TAR_CREATE_FILE_PARAM=""
+
   if test "x$TAR_TYPE" = "xgnu"; then
     TAR_INCLUDE_PARAM="T"
     TAR_SUPPORTS_TRANSFORM="true"
+    if test "x$OPENJDK_TARGET_OS" = "xsolaris"; then
+      # When using gnu tar for Solaris targets, need to use compatibility mode
+      TAR_CREATE_EXTRA_PARAM="--format=ustar"
+    fi
   else
     TAR_INCLUDE_PARAM="I"
     TAR_SUPPORTS_TRANSFORM="false"
   fi
+  AC_SUBST(TAR_TYPE)
+  AC_SUBST(TAR_CREATE_EXTRA_PARAM)
   AC_SUBST(TAR_INCLUDE_PARAM)
   AC_SUBST(TAR_SUPPORTS_TRANSFORM)
 ])
diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh
index 68fc949..44d6658 100644
--- a/common/autoconf/generated-configure.sh
+++ b/common/autoconf/generated-configure.sh
@@ -953,6 +953,8 @@
 UNZIP
 TAR_SUPPORTS_TRANSFORM
 TAR_INCLUDE_PARAM
+TAR_CREATE_EXTRA_PARAM
+TAR_TYPE
 FIND_DELETE
 OUTPUT_SYNC
 OUTPUT_SYNC_SUPPORTED
@@ -5092,7 +5094,7 @@
 #CUSTOM_AUTOCONF_INCLUDE
 
 # Do not change or remove the following line, it is needed for consistency checks:
-DATE_WHEN_GENERATED=1465306933
+DATE_WHEN_GENERATED=1466007828
 
 ###############################################################################
 #
@@ -21172,9 +21174,15 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TAR_TYPE" >&5
 $as_echo "$TAR_TYPE" >&6; }
 
+  TAR_CREATE_FILE_PARAM=""
+
   if test "x$TAR_TYPE" = "xgnu"; then
     TAR_INCLUDE_PARAM="T"
     TAR_SUPPORTS_TRANSFORM="true"
+    if test "x$OPENJDK_TARGET_OS" = "xsolaris"; then
+      # When using gnu tar for Solaris targets, need to use compatibility mode
+      TAR_CREATE_EXTRA_PARAM="--format=ustar"
+    fi
   else
     TAR_INCLUDE_PARAM="I"
     TAR_SUPPORTS_TRANSFORM="false"
@@ -21183,6 +21191,8 @@
 
 
 
+
+
   # These tools might not be installed by default,
   # need hint on how to install them.
 
diff --git a/common/autoconf/spec.gmk.in b/common/autoconf/spec.gmk.in
index a58639f..706d5ed 100644
--- a/common/autoconf/spec.gmk.in
+++ b/common/autoconf/spec.gmk.in
@@ -687,6 +687,8 @@
 DTRACE := @DTRACE@
 FIXPATH:=@FIXPATH@
 
+TAR_TYPE:=@TAR_TYPE@
+TAR_CREATE_EXTRA_PARAM:=@TAR_CREATE_EXTRA_PARAM@
 TAR_INCLUDE_PARAM:=@TAR_INCLUDE_PARAM@
 TAR_SUPPORTS_TRANSFORM:=@TAR_SUPPORTS_TRANSFORM@
 
diff --git a/corba/.hgtags b/corba/.hgtags
index 00e42f8..90ec476 100644
--- a/corba/.hgtags
+++ b/corba/.hgtags
@@ -365,3 +365,4 @@
 5943b791e131e79b969d4cea053aecda34801723 jdk-9+120
 9a5fc5a27560ac272c1341f8f3838338fba49059 jdk-9+121
 a39131aafc51a6fd8836e6ebe1b04458702ce7d6 jdk-9+122
+e33a34cc551907617d8129c4faaf1a5a7e61d21c jdk-9+123
diff --git a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ja.properties b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ja.properties
index 6efbbe9..0ccd2ec 100644
--- a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ja.properties
+++ b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -95,7 +95,7 @@
 bootstrap.exception=\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u30D5\u30A1\u30A4\u30EB{0}\u306B\u4FDD\u5B58\u4E2D\u306B\u4F8B\u5916\u3092\u6355\u6349\u3057\u307E\u3057\u305F: \u4F8B\u5916{1}
 
 tnameserv.exception=\u30DD\u30FC\u30C8{0}\u3067\u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30B5\u30FC\u30D3\u30B9\u3092\u8D77\u52D5\u4E2D\u306B\u4F8B\u5916\u3092\u6355\u6349\u3057\u307E\u3057\u305F
-tnameserv.usage=\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u5F15\u6570-ORBInitialPort<portno>\u3092\u4F7F\u7528\u3057\u3066\u5225\u306E\u30DD\u30FC\u30C8\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044
+tnameserv.usage=\u30B3\u30DE\u30F3\u30C9\u884C\u5F15\u6570-ORBInitialPort<portno>\u3092\u4F7F\u7528\u3057\u3066\u5225\u306E\u30DD\u30FC\u30C8\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044
 tnameserv.invalidhostoption=ORBInitialHost\u306FNameService\u306B\u6709\u52B9\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 tnameserv.orbinitialport0=ORBInitialPort 0\u306FNameService\u306B\u6709\u52B9\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 tnameserv.hs1=\u521D\u671F\u30CD\u30FC\u30DF\u30F3\u30B0\u30FB\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8:\n{0}
diff --git a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ko.properties b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ko.properties
index d824c67..9fde7fe 100644
--- a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ko.properties
+++ b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ko.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,7 +23,7 @@
 # questions.
 #
 
-orbd.usage=\uC0AC\uC6A9\uBC95: {0} <options> \n\n\uC5EC\uAE30\uC11C <options>\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n  -port                  ORBD\uAC00 \uC2DC\uC791\uB418\uC5B4\uC57C \uD558\uB294 \uD65C\uC131 \uD3EC\uD2B8\uB85C, \uAE30\uBCF8\uAC12\uC740 1049\uC785\uB2C8\uB2E4(\uC120\uD0DD \uC0AC\uD56D).\n  -defaultdb             ORBD \uD30C\uC77C\uC758 \uB514\uB809\uD1A0\uB9AC\uB85C, \uAE30\uBCF8\uAC12\uC740 "./orb.db"\uC785\uB2C8\uB2E4(\uC120\uD0DD \uC0AC\uD56D).\n  -serverid              ORBD\uC758 \uC11C\uBC84 ID\uB85C, \uAE30\uBCF8\uAC12\uC740 1 \uC785\uB2C8\uB2E4(\uC120\uD0DD \uC0AC\uD56D).\n  -ORBInitialPort        \uCD08\uAE30 \uD3EC\uD2B8\uC785\uB2C8\uB2E4(\uD544\uC218).\n  -ORBInitialHost        \uCD08\uAE30 HostName\uC785\uB2C8\uB2E4(\uD544\uC218).\n
+orbd.usage=\uC0AC\uC6A9\uBC95: {0} <options> \n\n\uC5EC\uAE30\uC11C <options>\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n  -port                  ORBD\uAC00 \uC2DC\uC791\uB418\uC5B4\uC57C \uD558\uB294 \uD65C\uC131 \uD3EC\uD2B8\uB85C, \uAE30\uBCF8\uAC12\uC740 1049\uC785\uB2C8\uB2E4(\uC120\uD0DD\uC0AC\uD56D).\n  -defaultdb             ORBD \uD30C\uC77C\uC758 \uB514\uB809\uD1A0\uB9AC\uB85C, \uAE30\uBCF8\uAC12\uC740 "./orb.db"\uC785\uB2C8\uB2E4(\uC120\uD0DD\uC0AC\uD56D).\n  -serverid              ORBD\uC758 \uC11C\uBC84 ID\uB85C, \uAE30\uBCF8\uAC12\uC740 1 \uC785\uB2C8\uB2E4(\uC120\uD0DD\uC0AC\uD56D).\n  -ORBInitialPort        \uCD08\uAE30 \uD3EC\uD2B8\uC785\uB2C8\uB2E4(\uD544\uC218).\n  -ORBInitialHost        \uCD08\uAE30 HostName\uC785\uB2C8\uB2E4(\uD544\uC218).\n
 
 servertool.usage=\uC0AC\uC6A9\uBC95: {0} <options> \n\n\uC5EC\uAE30\uC11C <options>\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n  -ORBInitialPort        \uCD08\uAE30 \uD3EC\uD2B8\uC785\uB2C8\uB2E4(\uD544\uC218).\n  -ORBInitialHost        \uCD08\uAE30 HostName\uC785\uB2C8\uB2E4(\uD544\uC218).\n
 servertool.banner=\n\nJava IDL \uC11C\uBC84 \uD234 \uC2DC\uC791 \n\uD504\uB86C\uD504\uD2B8\uC5D0 \uBA85\uB839\uC744 \uC785\uB825\uD558\uC2ED\uC2DC\uC624. \n
@@ -62,7 +62,7 @@
 
 servertool.list=\n\t\uBAA9\uB85D\n
 servertool.list1=\uB4F1\uB85D\uB41C \uC11C\uBC84 \uBAA8\uB450 \uB098\uC5F4
-servertool.list2=\n\t\uC11C\uBC84 ID\t\uC11C\uBC84 \uD074\uB798\uC2A4 \uC774\uB984\t\t\uC11C\uBC84 \uC751\uC6A9 \uD504\uB85C\uADF8\uB7A8\n\t---------\t-----------------\t\t------------------\n
+servertool.list2=\n\t\uC11C\uBC84 ID\t\uC11C\uBC84 \uD074\uB798\uC2A4 \uC774\uB984\t\t\uC11C\uBC84 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\n\t---------\t-----------------\t\t------------------\n
 servertool.listactive=\n\tlistactive
 servertool.listactive1=\uD604\uC7AC \uD65C\uC131 \uC11C\uBC84 \uB098\uC5F4
 servertool.listappnames=\tlistappnames\n
@@ -92,9 +92,9 @@
 bootstrap.success=\uD3EC\uD2B8\uB97C {0}(\uC73C)\uB85C \uC124\uC815\uD558\uACE0 {1}\uC5D0\uC11C \uC11C\uBE44\uC2A4\uB97C \uC77D\uB294 \uC911
 bootstrap.filenotreadable={0} \uD30C\uC77C\uC744 \uC77D\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
 bootstrap.filenotfound={0} \uD30C\uC77C\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-bootstrap.exception={0} \uD30C\uC77C\uC5D0 \uC18D\uC131\uC744 \uC800\uC7A5\uD558\uB294 \uC911 \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {1} \uC608\uC678 \uC0AC\uD56D
+bootstrap.exception={0} \uD30C\uC77C\uC5D0 \uC18D\uC131\uC744 \uC800\uC7A5\uD558\uB294 \uC911 \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {1} \uC608\uC678\uC0AC\uD56D
 
-tnameserv.exception={0} \uD3EC\uD2B8\uC5D0\uC11C \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uC11C\uBE44\uC2A4\uB97C \uC2DC\uC791\uD558\uB294 \uC911 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
+tnameserv.exception={0} \uD3EC\uD2B8\uC5D0\uC11C \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uC11C\uBE44\uC2A4\uB97C \uC2DC\uC791\uD558\uB294 \uC911 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
 tnameserv.usage=-ORBInitialPort <portno> \uBA85\uB839\uD589 \uC778\uC218\uB85C \uB2E4\uB978 \uD3EC\uD2B8 \uC0AC\uC6A9 \uC2DC\uB3C4
 tnameserv.invalidhostoption=ORBInitialHost\uB294 NameService\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC635\uC158\uC774 \uC544\uB2D9\uB2C8\uB2E4.
 tnameserv.orbinitialport0=ORBInitialPort 0\uC740 NameService\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC635\uC158\uC774 \uC544\uB2D9\uB2C8\uB2E4.
@@ -103,5 +103,5 @@
 tnameserv.hs3=\uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
 
 orbd.commfailure=\nORBinitialPort\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC774\uC5B4\uC11C ORBD \uC2DC\uC791\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
-orbd.internalexception=\n\uB0B4\uBD80 \uC608\uC678 \uC0AC\uD56D\uC73C\uB85C \uC778\uD574 ORBD \uC2DC\uC791\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4. \n\uAC00\uB2A5\uD55C \uC6D0\uC778: \n1. \uC9C0\uC815\uB41C ORBInitialPort \uB610\uB294 ORBActivationPort\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.\n2. orb.db\uB97C \uC4F8 \uC218 \uC788\uB294 \uC4F0\uAE30 \uAD8C\uD55C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. 
+orbd.internalexception=\n\uB0B4\uBD80 \uC608\uC678\uC0AC\uD56D\uC73C\uB85C \uC778\uD574 ORBD \uC2DC\uC791\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4. \n\uAC00\uB2A5\uD55C \uC6D0\uC778: \n1. \uC9C0\uC815\uB41C ORBInitialPort \uB610\uB294 ORBActivationPort\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.\n2. orb.db\uB97C \uC4F8 \uC218 \uC788\uB294 \uC4F0\uAE30 \uAD8C\uD55C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. 
 
diff --git a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties
index 7ab1913..c87e4c3 100644
--- a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties
+++ b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,7 +23,7 @@
 # questions.
 #
 
-orbd.usage=Uso: {0} <op\u00E7\u00F5es> \n\nem que <op\u00E7\u00F5es> inclui:\n  -port                  porta de ativa\u00E7\u00E3o na qual o ORBD deve ser iniciado, default 1049 (opcional)\n  -defaultdb             diret\u00F3rio dos arquivos ORBD, default "./orb.db" (opcional)\n  -serverid              id do servidor para ORBD, default 1 (opcional)\n  -ORBInitialPort        porta inicial (obrigat\u00F3rio)\n  -ORBInitialHost        nome de host inicial (obrigat\u00F3rio)\n
+orbd.usage=Uso: {0} <op\u00E7\u00F5es> \n\nem que <op\u00E7\u00F5es> inclui:\n  -port                  porta de ativa\u00E7\u00E3o na qual o ORBD deve ser iniciado, padr\u00E3o 1049 (opcional)\n  -defaultdb             diret\u00F3rio dos arquivos ORBD, padr\u00E3o "./orb.db" (opcional)\n  -serverid              id do servidor para ORBD, padr\u00E3o 1 (opcional)\n  -ORBInitialPort        porta inicial (obrigat\u00F3rio)\n  -ORBInitialHost        nome de host inicial (obrigat\u00F3rio)\n
 
 servertool.usage=Uso: {0} <op\u00E7\u00F5es> \n\nem que <op\u00E7\u00F5es> inclui:\n  -ORBInitialPort        porta inicial (obrigat\u00F3rio)\n  -ORBInitialHost        nome de host inicial (obrigat\u00F3rio)\n
 servertool.banner=\n\nBem-vindo \u00E0 Ferramenta de Servidor IDL Java \ninsira os comandos no prompt \n
@@ -62,7 +62,7 @@
 
 servertool.list=\n\tlist\n
 servertool.list1=lista todos os servidores registrados
-servertool.list2=\n\tId do Servidor\tNome de Classe do Servidor\t\tAplica\u00E7\u00E3o do Servidor\n\t---------\t-----------------\t\t------------------\n
+servertool.list2=\n\tId do Servidor\tNome de Classe do Servidor\t\tAplicativo do Servidor\n\t---------\t-----------------\t\t------------------\n
 servertool.listactive=\n\tlistactive
 servertool.listactive1=lista os servidores atualmente ativos
 servertool.listappnames=\tlistappnames\n
diff --git a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_sv.properties b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_sv.properties
index 591f0b4..677407a 100644
--- a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_sv.properties
+++ b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -100,7 +100,7 @@
 tnameserv.orbinitialport0=ORBInitialPort 0 \u00E4r inte ett giltigt alternativ f\u00F6r NameService
 tnameserv.hs1=Ursprunglig namngivningskontext:\n{0}
 tnameserv.hs2=TransientNameServer: st\u00E4ller in port f\u00F6r ursprungliga objektreferenser till: {0}
-tnameserv.hs3=Redo.
+tnameserv.hs3=Klar.
 
 orbd.commfailure=\nKunde inte starta ORBD eftersom ORBinitialport redan anv\u00E4nds
 orbd.internalexception=\nKunde inte starta ORBD p\u00E5 grund av internt undantag. \nM\u00F6jliga orsaker: \n1. Angivet ORBInitialPort eller ORBActivationPort anv\u00E4ndas redan \n2. Ingen beh\u00F6righet att skriva till orb.db 
diff --git a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_zh_TW.properties b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_zh_TW.properties
index 17f0137..84ada02 100644
--- a/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_zh_TW.properties
+++ b/corba/src/java.corba/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_zh_TW.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -103,5 +103,5 @@
 tnameserv.hs3=\u5C31\u7DD2\u3002
 
 orbd.commfailure=\n\u56E0\u70BA ORBinitialPort \u5728\u4F7F\u7528\u4E2D\uFF0C\u6240\u4EE5\u7121\u6CD5\u555F\u52D5 ORBD\u3002
-orbd.internalexception=\n\u56E0\u70BA\u5167\u90E8\u767C\u751F\u7570\u5E38\uFF0C\u6240\u4EE5\u7121\u6CD5\u555F\u52D5 ORBD\u3002 \n\u53EF\u80FD\u7684\u539F\u56E0: \n1. \u6307\u5B9A\u7684 ORBInitialPort \u6216 ORBActivationPort \u5728\u4F7F\u7528\u4E2D\u3002 \n2. \u6C92\u6709\u5BEB\u5165 orb.db \u7684\u6B0A\u9650\u3002 
+orbd.internalexception=\n\u56E0\u70BA\u5167\u90E8\u767C\u751F\u7570\u5E38\uFF0C\u6240\u4EE5\u7121\u6CD5\u555F\u52D5 ORBD\u3002\n\u53EF\u80FD\u7684\u539F\u56E0: \n1. \u6307\u5B9A\u7684 ORBInitialPort \u6216 ORBActivationPort \u5728\u4F7F\u7528\u4E2D\u3002\n2. \u6C92\u6709\u5BEB\u5165 orb.db \u7684\u6B0A\u9650\u3002
 
diff --git a/hotspot/.hgtags b/hotspot/.hgtags
index d7155f1..b791289 100644
--- a/hotspot/.hgtags
+++ b/hotspot/.hgtags
@@ -525,3 +525,4 @@
 0be6f4f5d18671184e62583668cb1d783dffa128 jdk-9+120
 7e293105dbb0789a468655f81320c891f491f371 jdk-9+121
 af6b4ad908e732d23021f12e8322b204433d5cf6 jdk-9+122
+75f81e1fecfb444f34f357295fe06af60e2762d9 jdk-9+123
diff --git a/hotspot/src/cpu/ppc/vm/assembler_ppc.hpp b/hotspot/src/cpu/ppc/vm/assembler_ppc.hpp
index c5e7087..6781f4d 100644
--- a/hotspot/src/cpu/ppc/vm/assembler_ppc.hpp
+++ b/hotspot/src/cpu/ppc/vm/assembler_ppc.hpp
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -1530,6 +1530,10 @@
   inline void ld(   Register d, int si16,    Register s1);
   inline void ldu(  Register d, int si16,    Register s1);
 
+  // For convenience. Load pointer into d from b+s1.
+  inline void ld_ptr(Register d, int b, Register s1);
+  DEBUG_ONLY(inline void ld_ptr(Register d, ByteSize b, Register s1);)
+
   //  PPC 1, section 3.3.3 Fixed-Point Store Instructions
   inline void stwx( Register d, Register s1, Register s2);
   inline void stw(  Register d, int si16,    Register s1);
@@ -2194,7 +2198,8 @@
   void add( Register d, RegisterOrConstant roc, Register s1);
   void subf(Register d, RegisterOrConstant roc, Register s1);
   void cmpd(ConditionRegister d, RegisterOrConstant roc, Register s1);
-
+  // Load pointer d from s1+roc.
+  void ld_ptr(Register d, RegisterOrConstant roc, Register s1 = noreg) { ld(d, roc, s1); }
 
   // Emit several instructions to load a 64 bit constant. This issues a fixed
   // instruction pattern so that the constant can be patched later on.
diff --git a/hotspot/src/cpu/ppc/vm/assembler_ppc.inline.hpp b/hotspot/src/cpu/ppc/vm/assembler_ppc.inline.hpp
index 4e7f7df..9a1b4af 100644
--- a/hotspot/src/cpu/ppc/vm/assembler_ppc.inline.hpp
+++ b/hotspot/src/cpu/ppc/vm/assembler_ppc.inline.hpp
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -328,6 +328,9 @@
 inline void Assembler::ldx(  Register d, Register s1, Register s2) { emit_int32(LDX_OPCODE | rt(d) | ra0mem(s1) | rb(s2));}
 inline void Assembler::ldu(  Register d, int si16,    Register s1) { assert(d != s1, "according to ibm manual"); emit_int32(LDU_OPCODE | rt(d) | ds(si16) | rta0mem(s1));}
 
+inline void Assembler::ld_ptr(Register d, int b, Register s1) { ld(d, b, s1); }
+DEBUG_ONLY(inline void Assembler::ld_ptr(Register d, ByteSize b, Register s1) { ld(d, in_bytes(b), s1); })
+
 //  PPC 1, section 3.3.3 Fixed-Point Store Instructions
 inline void Assembler::stwx( Register d, Register s1, Register s2) { emit_int32(STWX_OPCODE | rs(d) | ra0mem(s1) | rb(s2));}
 inline void Assembler::stw(  Register d, int si16,    Register s1) { emit_int32(STW_OPCODE  | rs(d) | d1(si16)   | ra0mem(s1));}
diff --git a/hotspot/src/cpu/ppc/vm/c1_LIRAssembler_ppc.cpp b/hotspot/src/cpu/ppc/vm/c1_LIRAssembler_ppc.cpp
index 559f687..afc0003 100644
--- a/hotspot/src/cpu/ppc/vm/c1_LIRAssembler_ppc.cpp
+++ b/hotspot/src/cpu/ppc/vm/c1_LIRAssembler_ppc.cpp
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -1242,7 +1242,7 @@
 
 
 void LIR_Assembler::return_op(LIR_Opr result) {
-  const Register return_pc        = R11;
+  const Register return_pc        = R31;  // Must survive C-call to enable_stack_reserved_zone().
   const Register polling_page     = R12;
 
   // Pop the stack before the safepoint code.
@@ -1265,6 +1265,10 @@
   // Move return pc to LR.
   __ mtlr(return_pc);
 
+  if (StackReservedPages > 0 && compilation()->has_reserved_stack_access()) {
+    __ reserved_stack_check(return_pc);
+  }
+
   // We need to mark the code position where the load from the safepoint
   // polling page was emitted as relocInfo::poll_return_type here.
   __ relocate(relocInfo::poll_return_type);
diff --git a/hotspot/src/cpu/ppc/vm/globalDefinitions_ppc.hpp b/hotspot/src/cpu/ppc/vm/globalDefinitions_ppc.hpp
index f8fe437..941a65f 100644
--- a/hotspot/src/cpu/ppc/vm/globalDefinitions_ppc.hpp
+++ b/hotspot/src/cpu/ppc/vm/globalDefinitions_ppc.hpp
@@ -1,6 +1,6 @@
 /*
- * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -52,4 +52,6 @@
 #define INCLUDE_RTM_OPT 1
 #endif
 
+#define SUPPORT_RESERVED_STACK_AREA
+
 #endif // CPU_PPC_VM_GLOBALDEFINITIONS_PPC_HPP
diff --git a/hotspot/src/cpu/ppc/vm/globals_ppc.hpp b/hotspot/src/cpu/ppc/vm/globals_ppc.hpp
index b69e405..a442f17 100644
--- a/hotspot/src/cpu/ppc/vm/globals_ppc.hpp
+++ b/hotspot/src/cpu/ppc/vm/globals_ppc.hpp
@@ -43,7 +43,7 @@
 #define DEFAULT_STACK_YELLOW_PAGES (6)
 #define DEFAULT_STACK_RED_PAGES (1)
 #define DEFAULT_STACK_SHADOW_PAGES (6 DEBUG_ONLY(+2))
-#define DEFAULT_STACK_RESERVED_PAGES (0)
+#define DEFAULT_STACK_RESERVED_PAGES (1)
 
 #define MIN_STACK_YELLOW_PAGES DEFAULT_STACK_YELLOW_PAGES
 #define MIN_STACK_RED_PAGES DEFAULT_STACK_RED_PAGES
diff --git a/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.cpp b/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.cpp
index cedc1e0..d3c60b7 100644
--- a/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.cpp
+++ b/hotspot/src/cpu/ppc/vm/interp_masm_ppc_64.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -480,6 +480,7 @@
 
 void InterpreterMacroAssembler::generate_stack_overflow_check_with_compare_and_throw(Register Rmem_frame_size, Register Rscratch1) {
   Label done;
+  BLOCK_COMMENT("stack_overflow_check_with_compare_and_throw {");
   sub(Rmem_frame_size, R1_SP, Rmem_frame_size);
   ld(Rscratch1, thread_(stack_overflow_limit));
   cmpld(CCR0/*is_stack_overflow*/, Rmem_frame_size, Rscratch1);
@@ -501,6 +502,7 @@
 
   align(32, 12);
   bind(done);
+  BLOCK_COMMENT("} stack_overflow_check_with_compare_and_throw");
 }
 
 // Separate these two to allow for delay slot in middle.
@@ -805,16 +807,41 @@
 void InterpreterMacroAssembler::remove_activation(TosState state,
                                                   bool throw_monitor_exception,
                                                   bool install_monitor_exception) {
+  BLOCK_COMMENT("remove_activation {");
   unlock_if_synchronized_method(state, throw_monitor_exception, install_monitor_exception);
 
   // Save result (push state before jvmti call and pop it afterwards) and notify jvmti.
   notify_method_exit(false, state, NotifyJVMTI, true);
 
+  BLOCK_COMMENT("reserved_stack_check:");
+  if (StackReservedPages > 0) {
+    // Test if reserved zone needs to be enabled.
+    Label no_reserved_zone_enabling;
+
+    // Compare frame pointers. There is no good stack pointer, as with stack
+    // frame compression we can get different SPs when we do calls. A subsequent
+    // call could have a smaller SP, so that this compare succeeds for an
+    // inner call of the method annotated with ReservedStack.
+    ld_ptr(R0, JavaThread::reserved_stack_activation_offset(), R16_thread);
+    ld_ptr(R11_scratch1, _abi(callers_sp), R1_SP); // Load frame pointer.
+    cmpld(CCR0, R11_scratch1, R0);
+    blt_predict_taken(CCR0, no_reserved_zone_enabling);
+
+    // Enable reserved zone again, throw stack overflow exception.
+    call_VM_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::enable_stack_reserved_zone), R16_thread);
+    call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_delayed_StackOverflowError));
+
+    should_not_reach_here();
+
+    bind(no_reserved_zone_enabling);
+  }
+
   verify_oop(R17_tos, state);
   verify_thread();
 
   merge_frames(/*top_frame_sp*/ R21_sender_SP, /*return_pc*/ R0, R11_scratch1, R12_scratch2);
   mtlr(R0);
+  BLOCK_COMMENT("} remove_activation");
 }
 
 // Lock object
diff --git a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp
index b8ad532..d0b0fa8 100644
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp
@@ -1400,6 +1400,28 @@
 #endif
 }
 
+void MacroAssembler::reserved_stack_check(Register return_pc) {
+  // Test if reserved zone needs to be enabled.
+  Label no_reserved_zone_enabling;
+
+  ld_ptr(R0, JavaThread::reserved_stack_activation_offset(), R16_thread);
+  cmpld(CCR0, R1_SP, R0);
+  blt_predict_taken(CCR0, no_reserved_zone_enabling);
+
+  // Enable reserved zone again, throw stack overflow exception.
+  push_frame_reg_args(0, R0);
+  call_VM_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::enable_stack_reserved_zone), R16_thread);
+  pop_frame();
+  mtlr(return_pc);
+  load_const_optimized(R0, StubRoutines::throw_delayed_StackOverflowError_entry());
+  mtctr(R0);
+  bctr();
+
+  should_not_reach_here();
+
+  bind(no_reserved_zone_enabling);
+}
+
 // CmpxchgX sets condition register to cmpX(current, compare).
 void MacroAssembler::cmpxchgw(ConditionRegister flag, Register dest_current_value,
                               Register compare_value, Register exchange_value,
diff --git a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp
index 0f39e4a..003c27b 100644
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp
@@ -411,6 +411,10 @@
   // stdux, return the banged address. Otherwise, return 0.
   static address get_stack_bang_address(int instruction, void* ucontext);
 
+  // Check for reserved stack access in method being exited. If the reserved
+  // stack area was accessed, protect it again and throw StackOverflowError.
+  void reserved_stack_check(Register return_pc);
+
   // Atomics
   // CmpxchgX sets condition register to cmpX(current, compare).
   // (flag == ne) => (dest_current_value != compare_value), (!swapped)
diff --git a/hotspot/src/cpu/ppc/vm/ppc.ad b/hotspot/src/cpu/ppc/vm/ppc.ad
index d8c36a3..a62eef4 100644
--- a/hotspot/src/cpu/ppc/vm/ppc.ad
+++ b/hotspot/src/cpu/ppc/vm/ppc.ad
@@ -1432,7 +1432,7 @@
 
   const bool method_needs_polling = do_polling() && C->is_method_compilation();
   const bool method_is_frameless  = false /* TODO: PPC port C->is_frameless_method()*/;
-  const Register return_pc        = R11;
+  const Register return_pc        = R31;  // Must survive C-call to enable_stack_reserved_zone().
   const Register polling_page     = R12;
 
   if (!method_is_frameless) {
@@ -1456,6 +1456,10 @@
     __ addi(R1_SP, R1_SP, (int)framesize);
   }
 
+  if (StackReservedPages > 0 && C->has_reserved_stack_access()) {
+    __ reserved_stack_check(return_pc);
+  }
+
   if (method_needs_polling) {
     // We need to mark the code position where the load from the safepoint
     // polling page was emitted as relocInfo::poll_return_type here.
diff --git a/hotspot/src/cpu/ppc/vm/stubGenerator_ppc.cpp b/hotspot/src/cpu/ppc/vm/stubGenerator_ppc.cpp
index 58222ba..d456f9a 100644
--- a/hotspot/src/cpu/ppc/vm/stubGenerator_ppc.cpp
+++ b/hotspot/src/cpu/ppc/vm/stubGenerator_ppc.cpp
@@ -3082,6 +3082,9 @@
     StubRoutines::_throw_StackOverflowError_entry   =
       generate_throw_exception("StackOverflowError throw_exception",
                                CAST_FROM_FN_PTR(address, SharedRuntime::throw_StackOverflowError), false);
+    StubRoutines::_throw_delayed_StackOverflowError_entry =
+      generate_throw_exception("delayed StackOverflowError throw_exception",
+                               CAST_FROM_FN_PTR(address, SharedRuntime::throw_delayed_StackOverflowError), false);
 
     // CRC32 Intrinsics.
     if (UseCRC32Intrinsics) {
diff --git a/hotspot/src/os/aix/vm/os_aix.hpp b/hotspot/src/os/aix/vm/os_aix.hpp
index cc43370..db8c38a 100644
--- a/hotspot/src/os/aix/vm/os_aix.hpp
+++ b/hotspot/src/os/aix/vm/os_aix.hpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2013, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2013, 2016 SAP SE. 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
@@ -128,6 +128,8 @@
   // Set PC into context. Needed for continuation after signal.
   static void ucontext_set_pc(ucontext_t* uc, address pc);
 
+  static bool get_frame_at_stack_banging_point(JavaThread* thread, ucontext_t* uc, frame* fr);
+
   // This boolean allows users to forward their own non-matching signals
   // to JVM_handle_aix_signal, harmlessly.
   static bool signal_handlers_are_installed;
diff --git a/hotspot/src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp b/hotspot/src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp
index 211a2dc..84ae1ab 100644
--- a/hotspot/src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp
+++ b/hotspot/src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2014 SAP SE. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -24,7 +24,7 @@
  */
 
 // no precompiled headers
-#include "assembler_ppc.inline.hpp"
+#include "asm/assembler.inline.hpp"
 #include "classfile/classLoader.hpp"
 #include "classfile/systemDictionary.hpp"
 #include "classfile/vmSymbols.hpp"
@@ -145,6 +145,41 @@
   return fr;
 }
 
+bool os::Aix::get_frame_at_stack_banging_point(JavaThread* thread, ucontext_t* uc, frame* fr) {
+  address pc = (address) os::Aix::ucontext_get_pc(uc);
+  if (Interpreter::contains(pc)) {
+    // Interpreter performs stack banging after the fixed frame header has
+    // been generated while the compilers perform it before. To maintain
+    // semantic consistency between interpreted and compiled frames, the
+    // method returns the Java sender of the current frame.
+    *fr = os::fetch_frame_from_context(uc);
+    if (!fr->is_first_java_frame()) {
+      assert(fr->safe_for_sender(thread), "Safety check");
+      *fr = fr->java_sender();
+    }
+  } else {
+    // More complex code with compiled code.
+    assert(!Interpreter::contains(pc), "Interpreted methods should have been handled above");
+    CodeBlob* cb = CodeCache::find_blob(pc);
+    if (cb == NULL || !cb->is_nmethod() || cb->is_frame_complete_at(pc)) {
+      // Not sure where the pc points to, fallback to default
+      // stack overflow handling. In compiled code, we bang before
+      // the frame is complete.
+      return false;
+    } else {
+      intptr_t* sp = os::Aix::ucontext_get_sp(uc);
+      *fr = frame(sp, (address)*sp);
+      if (!fr->is_java_frame()) {
+        assert(fr->safe_for_sender(thread), "Safety check");
+        assert(!fr->is_first_frame(), "Safety check");
+        *fr = fr->java_sender();
+      }
+    }
+  }
+  assert(fr->is_java_frame(), "Safety check");
+  return true;
+}
+
 frame os::get_sender_for_C_frame(frame* fr) {
   if (*fr->sp() == NULL) {
     // fr is the last C frame
@@ -246,14 +281,32 @@
       // to continue with yellow zone disabled, but that doesn't buy us much and prevents
       // hs_err_pid files.
       if (thread->in_stack_yellow_reserved_zone(addr)) {
-        thread->disable_stack_yellow_reserved_zone();
         if (thread->thread_state() == _thread_in_Java) {
+            if (thread->in_stack_reserved_zone(addr)) {
+              frame fr;
+              if (os::Aix::get_frame_at_stack_banging_point(thread, uc, &fr)) {
+                assert(fr.is_java_frame(), "Must be a Javac frame");
+                frame activation =
+                  SharedRuntime::look_for_reserved_stack_annotated_method(thread, fr);
+                if (activation.sp() != NULL) {
+                  thread->disable_stack_reserved_zone();
+                  if (activation.is_interpreted_frame()) {
+                    thread->set_reserved_stack_activation((address)activation.fp());
+                  } else {
+                    thread->set_reserved_stack_activation((address)activation.unextended_sp());
+                  }
+                  return 1;
+                }
+              }
+            }
           // Throw a stack overflow exception.
           // Guard pages will be reenabled while unwinding the stack.
+          thread->disable_stack_yellow_reserved_zone();
           stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::STACK_OVERFLOW);
           goto run_stub;
         } else {
           // Thread was in the vm or native code. Return and try to finish.
+          thread->disable_stack_yellow_reserved_zone();
           return 1;
         }
       } else if (thread->in_stack_red_zone(addr)) {
diff --git a/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp b/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
index 8cd04dc..18cd557 100644
--- a/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
+++ b/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2012, 2016 SAP SE. 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
@@ -24,7 +24,7 @@
  */
 
 // no precompiled headers
-#include "assembler_ppc.inline.hpp"
+#include "asm/assembler.inline.hpp"
 #include "classfile/classLoader.hpp"
 #include "classfile/systemDictionary.hpp"
 #include "classfile/vmSymbols.hpp"
@@ -157,6 +157,42 @@
   return frame(sp, epc.pc());
 }
 
+bool os::Linux::get_frame_at_stack_banging_point(JavaThread* thread, ucontext_t* uc, frame* fr) {
+  address pc = (address) os::Linux::ucontext_get_pc(uc);
+  if (Interpreter::contains(pc)) {
+    // Interpreter performs stack banging after the fixed frame header has
+    // been generated while the compilers perform it before. To maintain
+    // semantic consistency between interpreted and compiled frames, the
+    // method returns the Java sender of the current frame.
+    *fr = os::fetch_frame_from_context(uc);
+    if (!fr->is_first_java_frame()) {
+      assert(fr->safe_for_sender(thread), "Safety check");
+      *fr = fr->java_sender();
+    }
+  } else {
+    // More complex code with compiled code.
+    assert(!Interpreter::contains(pc), "Interpreted methods should have been handled above");
+    CodeBlob* cb = CodeCache::find_blob(pc);
+    if (cb == NULL || !cb->is_nmethod() || cb->is_frame_complete_at(pc)) {
+      // Not sure where the pc points to, fallback to default
+      // stack overflow handling. In compiled code, we bang before
+      // the frame is complete.
+      return false;
+    } else {
+      intptr_t* fp = os::Linux::ucontext_get_fp(uc);
+      intptr_t* sp = os::Linux::ucontext_get_sp(uc);
+      *fr = frame(sp, (address)*sp);
+      if (!fr->is_java_frame()) {
+        assert(fr->safe_for_sender(thread), "Safety check");
+        assert(!fr->is_first_frame(), "Safety check");
+        *fr = fr->java_sender();
+      }
+    }
+  }
+  assert(fr->is_java_frame(), "Safety check");
+  return true;
+}
+
 frame os::get_sender_for_C_frame(frame* fr) {
   if (*fr->sp() == 0) {
     // fr is the last C frame
@@ -243,13 +279,31 @@
       if (thread->on_local_stack(addr)) {
         // stack overflow
         if (thread->in_stack_yellow_reserved_zone(addr)) {
-          thread->disable_stack_yellow_reserved_zone();
           if (thread->thread_state() == _thread_in_Java) {
+            if (thread->in_stack_reserved_zone(addr)) {
+              frame fr;
+              if (os::Linux::get_frame_at_stack_banging_point(thread, uc, &fr)) {
+                assert(fr.is_java_frame(), "Must be a Javac frame");
+                frame activation =
+                  SharedRuntime::look_for_reserved_stack_annotated_method(thread, fr);
+                if (activation.sp() != NULL) {
+                  thread->disable_stack_reserved_zone();
+                  if (activation.is_interpreted_frame()) {
+                    thread->set_reserved_stack_activation((address)activation.fp());
+                  } else {
+                    thread->set_reserved_stack_activation((address)activation.unextended_sp());
+                  }
+                  return 1;
+                }
+              }
+            }
             // Throw a stack overflow exception.
             // Guard pages will be reenabled while unwinding the stack.
+            thread->disable_stack_yellow_reserved_zone();
             stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::STACK_OVERFLOW);
           } else {
             // Thread was in the vm or native code. Return and try to finish.
+            thread->disable_stack_yellow_reserved_zone();
             return 1;
           }
         } else if (thread->in_stack_red_zone(addr)) {
diff --git a/hotspot/src/share/vm/classfile/classLoaderData.cpp b/hotspot/src/share/vm/classfile/classLoaderData.cpp
index a9829a0..7635879 100644
--- a/hotspot/src/share/vm/classfile/classLoaderData.cpp
+++ b/hotspot/src/share/vm/classfile/classLoaderData.cpp
@@ -67,6 +67,7 @@
 #include "runtime/javaCalls.hpp"
 #include "runtime/jniHandles.hpp"
 #include "runtime/mutex.hpp"
+#include "runtime/orderAccess.hpp"
 #include "runtime/safepoint.hpp"
 #include "runtime/synchronizer.hpp"
 #include "utilities/growableArray.hpp"
@@ -76,6 +77,11 @@
 #include "trace/tracing.hpp"
 #endif
 
+// helper function to avoid in-line casts
+template <typename T> static T* load_ptr_acquire(T* volatile *p) {
+  return static_cast<T*>(OrderAccess::load_ptr_acquire(p));
+}
+
 ClassLoaderData * ClassLoaderData::_the_null_class_loader_data = NULL;
 
 ClassLoaderData::ClassLoaderData(Handle h_class_loader, bool is_anonymous, Dependencies dependencies) :
@@ -147,20 +153,23 @@
 }
 
 void ClassLoaderData::classes_do(KlassClosure* klass_closure) {
-  for (Klass* k = _klasses; k != NULL; k = k->next_link()) {
+  // Lock-free access requires load_ptr_acquire
+  for (Klass* k = load_ptr_acquire(&_klasses); k != NULL; k = k->next_link()) {
     klass_closure->do_klass(k);
     assert(k != k->next_link(), "no loops!");
   }
 }
 
 void ClassLoaderData::classes_do(void f(Klass * const)) {
+  assert_locked_or_safepoint(_metaspace_lock);
   for (Klass* k = _klasses; k != NULL; k = k->next_link()) {
     f(k);
   }
 }
 
 void ClassLoaderData::methods_do(void f(Method*)) {
-  for (Klass* k = _klasses; k != NULL; k = k->next_link()) {
+  // Lock-free access requires load_ptr_acquire
+  for (Klass* k = load_ptr_acquire(&_klasses); k != NULL; k = k->next_link()) {
     if (k->is_instance_klass()) {
       InstanceKlass::cast(k)->methods_do(f);
     }
@@ -179,7 +188,8 @@
 }
 
 void ClassLoaderData::classes_do(void f(InstanceKlass*)) {
-  for (Klass* k = _klasses; k != NULL; k = k->next_link()) {
+  // Lock-free access requires load_ptr_acquire
+  for (Klass* k = load_ptr_acquire(&_klasses); k != NULL; k = k->next_link()) {
     if (k->is_instance_klass()) {
       f(InstanceKlass::cast(k));
     }
@@ -188,6 +198,7 @@
 }
 
 void ClassLoaderData::modules_do(void f(ModuleEntry*)) {
+  assert_locked_or_safepoint(Module_lock);
   if (_modules != NULL) {
     for (int i = 0; i < _modules->table_size(); i++) {
       for (ModuleEntry* entry = _modules->bucket(i);
@@ -200,9 +211,11 @@
 }
 
 void ClassLoaderData::packages_do(void f(PackageEntry*)) {
-  if (_packages != NULL) {
-    for (int i = 0; i < _packages->table_size(); i++) {
-      for (PackageEntry* entry = _packages->bucket(i);
+  // Lock-free access requires load_ptr_acquire
+  PackageEntryTable* packages = load_ptr_acquire(&_packages);
+  if (packages != NULL) {
+    for (int i = 0; i < packages->table_size(); i++) {
+      for (PackageEntry* entry = packages->bucket(i);
                               entry != NULL;
                               entry = entry->next()) {
         f(entry);
@@ -325,10 +338,9 @@
     MutexLockerEx ml(metaspace_lock(), Mutex::_no_safepoint_check_flag);
     Klass* old_value = _klasses;
     k->set_next_link(old_value);
-    // Make sure linked class is stable, since the class list is walked without a lock
-    OrderAccess::storestore();
-    // link the new item into the list
-    _klasses = k;
+    // Link the new item into the list, making sure the linked class is stable
+    // since the list can be walked without a lock
+    OrderAccess::release_store_ptr(&_klasses, k);
   }
 
   if (publicize && k->class_loader_data() != NULL) {
@@ -343,11 +355,10 @@
   }
 }
 
-// This is called by InstanceKlass::deallocate_contents() to remove the
-// scratch_class for redefine classes.  We need a lock because there it may not
-// be called at a safepoint if there's an error.
+// Remove a klass from the _klasses list for scratch_class during redefinition
+// or parsed class in the case of an error.
 void ClassLoaderData::remove_class(Klass* scratch_class) {
-  MutexLockerEx ml(metaspace_lock(),  Mutex::_no_safepoint_check_flag);
+  assert(SafepointSynchronize::is_at_safepoint(), "only called at safepoint");
   Klass* prev = NULL;
   for (Klass* k = _klasses; k != NULL; k = k->next_link()) {
     if (k == scratch_class) {
@@ -390,42 +401,46 @@
 
 PackageEntryTable* ClassLoaderData::packages() {
   // Lazily create the package entry table at first request.
-  if (_packages == NULL) {
+  // Lock-free access requires load_ptr_acquire.
+  PackageEntryTable* packages = load_ptr_acquire(&_packages);
+  if (packages == NULL) {
     MutexLockerEx m1(metaspace_lock(), Mutex::_no_safepoint_check_flag);
     // Check if _packages got allocated while we were waiting for this lock.
-    if (_packages == NULL) {
-      _packages = new PackageEntryTable(PackageEntryTable::_packagetable_entry_size);
+    if ((packages = _packages) == NULL) {
+      packages = new PackageEntryTable(PackageEntryTable::_packagetable_entry_size);
+      // Ensure _packages is stable, since it is examined without a lock
+      OrderAccess::release_store_ptr(&_packages, packages);
     }
   }
-  return _packages;
+  return packages;
 }
 
 ModuleEntryTable* ClassLoaderData::modules() {
   // Lazily create the module entry table at first request.
-  if (_modules == NULL) {
+  // Lock-free access requires load_ptr_acquire.
+  ModuleEntryTable* modules = load_ptr_acquire(&_modules);
+  if (modules == NULL) {
     MutexLocker m1(Module_lock);
-    // Check again if _modules has been allocated while we were getting this lock.
-    if (_modules != NULL) {
-      return _modules;
-    }
+    // Check if _modules got allocated while we were waiting for this lock.
+    if ((modules = _modules) == NULL) {
+      modules = new ModuleEntryTable(ModuleEntryTable::_moduletable_entry_size);
+      // Each loader has one unnamed module entry. Create it before
+      // any classes, loaded by this loader, are defined in case
+      // they end up being defined in loader's unnamed module.
+      modules->create_unnamed_module(this);
 
-    ModuleEntryTable* temp_table = new ModuleEntryTable(ModuleEntryTable::_moduletable_entry_size);
-    // Each loader has one unnamed module entry. Create it before
-    // any classes, loaded by this loader, are defined in case
-    // they end up being defined in loader's unnamed module.
-    temp_table->create_unnamed_module(this);
-
-    {
-      MutexLockerEx m1(metaspace_lock(), Mutex::_no_safepoint_check_flag);
-      // Ensure _modules is stable, since it is examined without a lock
-      OrderAccess::storestore();
-      _modules = temp_table;
+      {
+        MutexLockerEx m1(metaspace_lock(), Mutex::_no_safepoint_check_flag);
+        // Ensure _modules is stable, since it is examined without a lock
+        OrderAccess::release_store_ptr(&_modules, modules);
+      }
     }
   }
-  return _modules;
+  return modules;
 }
 
 oop ClassLoaderData::keep_alive_object() const {
+  assert_locked_or_safepoint(_metaspace_lock);
   assert(!keep_alive(), "Don't use with CLDs that are artificially kept alive");
   return is_anonymous() ? _klasses->java_mirror() : class_loader();
 }
@@ -499,30 +514,33 @@
   // to create smaller arena for Reflection class loaders also.
   // The reason for the delayed allocation is because some class loaders are
   // simply for delegating with no metadata of their own.
-  if (_metaspace == NULL) {
-    MutexLockerEx ml(metaspace_lock(),  Mutex::_no_safepoint_check_flag);
-    // Check again if metaspace has been allocated while we were getting this lock.
-    if (_metaspace != NULL) {
-      return _metaspace;
-    }
-    if (this == the_null_class_loader_data()) {
-      assert (class_loader() == NULL, "Must be");
-      set_metaspace(new Metaspace(_metaspace_lock, Metaspace::BootMetaspaceType));
-    } else if (is_anonymous()) {
-      if (class_loader() != NULL) {
-        log_trace(class, loader, data)("is_anonymous: %s", class_loader()->klass()->internal_name());
+  // Lock-free access requires load_ptr_acquire.
+  Metaspace* metaspace = load_ptr_acquire(&_metaspace);
+  if (metaspace == NULL) {
+    MutexLockerEx ml(_metaspace_lock,  Mutex::_no_safepoint_check_flag);
+    // Check if _metaspace got allocated while we were waiting for this lock.
+    if ((metaspace = _metaspace) == NULL) {
+      if (this == the_null_class_loader_data()) {
+        assert (class_loader() == NULL, "Must be");
+        metaspace = new Metaspace(_metaspace_lock, Metaspace::BootMetaspaceType);
+      } else if (is_anonymous()) {
+        if (class_loader() != NULL) {
+          log_trace(class, loader, data)("is_anonymous: %s", class_loader()->klass()->internal_name());
+        }
+        metaspace = new Metaspace(_metaspace_lock, Metaspace::AnonymousMetaspaceType);
+      } else if (class_loader()->is_a(SystemDictionary::reflect_DelegatingClassLoader_klass())) {
+        if (class_loader() != NULL) {
+          log_trace(class, loader, data)("is_reflection: %s", class_loader()->klass()->internal_name());
+        }
+        metaspace = new Metaspace(_metaspace_lock, Metaspace::ReflectionMetaspaceType);
+      } else {
+        metaspace = new Metaspace(_metaspace_lock, Metaspace::StandardMetaspaceType);
       }
-      set_metaspace(new Metaspace(_metaspace_lock, Metaspace::AnonymousMetaspaceType));
-    } else if (class_loader()->is_a(SystemDictionary::reflect_DelegatingClassLoader_klass())) {
-      if (class_loader() != NULL) {
-        log_trace(class, loader, data)("is_reflection: %s", class_loader()->klass()->internal_name());
-      }
-      set_metaspace(new Metaspace(_metaspace_lock, Metaspace::ReflectionMetaspaceType));
-    } else {
-      set_metaspace(new Metaspace(_metaspace_lock, Metaspace::StandardMetaspaceType));
+      // Ensure _metaspace is stable, since it is examined without a lock
+      OrderAccess::release_store_ptr(&_metaspace, metaspace);
     }
   }
-  return _metaspace;
+  return metaspace;
 }
 
 JNIHandleBlock* ClassLoaderData::handles() const           { return _handles; }
@@ -638,6 +656,7 @@
 #endif // PRODUCT
 
 void ClassLoaderData::verify() {
+  assert_locked_or_safepoint(_metaspace_lock);
   oop cl = class_loader();
 
   guarantee(this == class_loader_data(cl) || is_anonymous(), "Must be the same");
@@ -656,7 +675,8 @@
 }
 
 bool ClassLoaderData::contains_klass(Klass* klass) {
-  for (Klass* k = _klasses; k != NULL; k = k->next_link()) {
+  // Lock-free access requires load_ptr_acquire
+  for (Klass* k = load_ptr_acquire(&_klasses); k != NULL; k = k->next_link()) {
     if (k == klass) return true;
   }
   return false;
@@ -1046,6 +1066,7 @@
 
   // Find the first klass in the CLDG.
   while (cld != NULL) {
+    assert_locked_or_safepoint(cld->metaspace_lock());
     klass = cld->_klasses;
     if (klass != NULL) {
       _next_klass = klass;
@@ -1063,6 +1084,7 @@
 
   // No more klasses in the current CLD. Time to find a new CLD.
   ClassLoaderData* cld = klass->class_loader_data();
+  assert_locked_or_safepoint(cld->metaspace_lock());
   while (next == NULL) {
     cld = cld->next();
     if (cld == NULL) {
diff --git a/hotspot/src/share/vm/classfile/classLoaderData.hpp b/hotspot/src/share/vm/classfile/classLoaderData.hpp
index b1a136a..9fc9839 100644
--- a/hotspot/src/share/vm/classfile/classLoaderData.hpp
+++ b/hotspot/src/share/vm/classfile/classLoaderData.hpp
@@ -171,8 +171,8 @@
   Dependencies _dependencies; // holds dependencies from this class loader
                               // data to others.
 
-  Metaspace * _metaspace;  // Meta-space where meta-data defined by the
-                           // classes in the class loader are allocated.
+  Metaspace * volatile _metaspace;  // Meta-space where meta-data defined by the
+                                    // classes in the class loader are allocated.
   Mutex* _metaspace_lock;  // Locks the metaspace for allocations and setup.
   bool _unloading;         // true if this class loader goes away
   bool _is_anonymous;      // if this CLD is for an anonymous class
@@ -186,9 +186,9 @@
   JNIHandleBlock* _handles; // Handles to constant pool arrays, Modules, etc, which
                             // have the same life cycle of the corresponding ClassLoader.
 
-  Klass* _klasses;         // The classes defined by the class loader.
-  PackageEntryTable* _packages; // The packages defined by the class loader.
-  ModuleEntryTable* _modules;   // The modules defined by the class loader.
+  Klass* volatile _klasses;              // The classes defined by the class loader.
+  PackageEntryTable* volatile _packages; // The packages defined by the class loader.
+  ModuleEntryTable* volatile _modules;   // The modules defined by the class loader.
 
   // These method IDs are created for the class loader and set to NULL when the
   // class loader is unloaded.  They are rarely freed, only for redefine classes
@@ -216,8 +216,6 @@
   ClassLoaderData(Handle h_class_loader, bool is_anonymous, Dependencies dependencies);
   ~ClassLoaderData();
 
-  void set_metaspace(Metaspace* m) { _metaspace = m; }
-
   JNIHandleBlock* handles() const;
   void set_handles(JNIHandleBlock* handles);
 
diff --git a/hotspot/src/share/vm/classfile/packageEntry.cpp b/hotspot/src/share/vm/classfile/packageEntry.cpp
index e6257de..b7d1875 100644
--- a/hotspot/src/share/vm/classfile/packageEntry.cpp
+++ b/hotspot/src/share/vm/classfile/packageEntry.cpp
@@ -34,15 +34,13 @@
 #include "utilities/hashtable.inline.hpp"
 #include "utilities/ostream.hpp"
 
-// Return true if this package is exported to m.
+// Returns true if this package specifies m as a qualified export, including through an unnamed export
 bool PackageEntry::is_qexported_to(ModuleEntry* m) const {
   assert(m != NULL, "No module to lookup in this package's qualified exports list");
   MutexLocker m1(Module_lock);
-  if (!_is_exported) {
-    return false;
-  } else if (_is_exported_allUnnamed && !m->is_named()) {
+  if (is_exported_allUnnamed() && !m->is_named()) {
     return true;
-  } else if (_qualified_exports == NULL) {
+  } else if (!has_qual_exports_list()) {
     return false;
   } else {
     return _qualified_exports->contains(m);
@@ -52,8 +50,7 @@
 // Add a module to the package's qualified export list.
 void PackageEntry::add_qexport(ModuleEntry* m) {
   assert_locked_or_safepoint(Module_lock);
-  assert(_is_exported == true, "Adding a qualified export to a package that is not exported");
-  if (_qualified_exports == NULL) {
+  if (!has_qual_exports_list()) {
     // Lazily create a package's qualified exports list.
     // Initial size is small, do not anticipate export lists to be large.
     _qualified_exports =
@@ -62,7 +59,7 @@
   _qualified_exports->append_if_missing(m);
 }
 
-// Set the package's exported state based on the value of the ModuleEntry.
+// Set the package's exported states based on the value of the ModuleEntry.
 void PackageEntry::set_exported(ModuleEntry* m) {
   MutexLocker m1(Module_lock);
   if (is_unqual_exported()) {
@@ -73,7 +70,7 @@
 
   if (m == NULL) {
     // NULL indicates the package is being unqualifiedly exported
-    if (_is_exported && _qualified_exports != NULL) {
+    if (has_qual_exports_list()) {
       // Legit to transition a package from being qualifiedly exported
       // to unqualified.  Clean up the qualified lists at the next
       // safepoint.
@@ -85,11 +82,17 @@
 
   } else {
     // Add the exported module
-    _is_exported = true;
     add_qexport(m);
   }
 }
 
+void PackageEntry::set_is_exported_allUnnamed() {
+  MutexLocker m1(Module_lock);
+  if (!is_unqual_exported()) {
+   _is_exported_allUnnamed = true;
+  }
+}
+
 // Remove dead module entries within the package's exported list.
 void PackageEntry::purge_qualified_exports() {
   assert(SafepointSynchronize::is_at_safepoint(), "must be at safepoint");
@@ -170,7 +173,7 @@
   if (!module->is_named()) {
     // Set the exported state to true because all packages
     // within the unnamed module are unqualifiedly exported
-    entry->set_exported(true);
+    entry->set_unqual_exported();
   }
   entry->set_module(module);
   return entry;
@@ -248,6 +251,20 @@
 
 }
 
+// iteration of qualified exports
+void PackageEntry::package_exports_do(ModuleClosure* const f) {
+  assert_locked_or_safepoint(Module_lock);
+  assert(f != NULL, "invariant");
+
+  if (has_qual_exports_list()) {
+    int qe_len = _qualified_exports->length();
+
+    for (int i = 0; i < qe_len; ++i) {
+      f->do_module(_qualified_exports->at(i));
+    }
+  }
+}
+
 // Remove dead entries from all packages' exported list
 void PackageEntryTable::purge_all_package_exports() {
   assert(SafepointSynchronize::is_at_safepoint(), "must be at safepoint");
@@ -281,10 +298,10 @@
 void PackageEntry::print(outputStream* st) {
   ResourceMark rm;
   st->print_cr("package entry "PTR_FORMAT" name %s module %s classpath_index "
-               INT32_FORMAT " is_exported %d is_exported_allUnnamed %d " "next "PTR_FORMAT,
+               INT32_FORMAT " is_exported_unqualified %d is_exported_allUnnamed %d " "next "PTR_FORMAT,
                p2i(this), name()->as_C_string(),
                (module()->is_named() ? module()->name()->as_C_string() : UNNAMED_MODULE),
-               _classpath_index, _is_exported, _is_exported_allUnnamed, p2i(next()));
+               _classpath_index, _is_exported_unqualified, _is_exported_allUnnamed, p2i(next()));
 }
 
 void PackageEntryTable::verify() {
@@ -305,17 +322,3 @@
 void PackageEntry::verify() {
   guarantee(name() != NULL, "A package entry must have a corresponding symbol name.");
 }
-
-// iteration of qualified exports
-void PackageEntry::package_exports_do(ModuleClosure* const f) {
-  assert_locked_or_safepoint(Module_lock);
-  assert(f != NULL, "invariant");
-
-  if (is_qual_exported()) {
-    int qe_len = _qualified_exports->length();
-
-    for (int i = 0; i < qe_len; ++i) {
-      f->do_module(_qualified_exports->at(i));
-    }
-  }
-}
diff --git a/hotspot/src/share/vm/classfile/packageEntry.hpp b/hotspot/src/share/vm/classfile/packageEntry.hpp
index 1d98baf..7e19908 100644
--- a/hotspot/src/share/vm/classfile/packageEntry.hpp
+++ b/hotspot/src/share/vm/classfile/packageEntry.hpp
@@ -34,16 +34,32 @@
 // A PackageEntry basically represents a Java package.  It contains:
 //   - Symbol* containing the package's name.
 //   - ModuleEntry* for this package's containing module.
-//   - a flag indicating if package is exported, either qualifiedly or
-//     unqualifiedly.
+//   - a flag indicating if package is exported unqualifiedly
 //   - a flag indicating if this package is exported to all unnamed modules.
 //   - a growable array containing other module entries that this
 //     package is exported to.
 //
-// Packages that are:
-//   - not exported:        _qualified_exports = NULL  && _is_exported is false
-//   - qualified exports:   (_qualified_exports != NULL || _is_exported_allUnnamed is true) && _is_exported is true
-//   - unqualified exports: (_qualified_exports = NULL && _is_exported_allUnnamed is false) && _is_exported is true
+// Packages can be exported in the following 3 ways:
+//   - not exported:        the package has not been explicitly qualified to a
+//                            particular module nor has it been specified to be
+//                            unqualifiedly exported to all modules. If all states
+//                            of exportedness are false, the package is considered
+//                            not exported.
+//   - qualified exports:   the package has been explicitly qualified to at least
+//                            one particular module or has been qualifiedly exported
+//                            to all unnamed modules.
+//                            Note: _is_exported_allUnnamed is a form of a qualified
+//                            export. It is equivalent to the package being
+//                            explicitly exported to all current and future unnamed modules.
+//   - unqualified exports: the package is exported to all modules.
+//
+// A package can transition from:
+//   - being not exported, to being exported either in a qualified or unqualified manner
+//   - being qualifiedly exported, to unqualifiedly exported. Its exported scope is widened.
+//
+// A package cannot transition from:
+//   - being unqualifiedly exported, to exported qualifiedly to a specific module.
+//       This transition attempt is silently ignored in set_exported.
 //
 // The Mutex Module_lock is shared between ModuleEntry and PackageEntry, to lock either
 // data structure.
@@ -55,7 +71,7 @@
   // loaded by the boot loader from -Xbootclasspath/a in an unnamed module, it
   // indicates from which class path entry.
   s2 _classpath_index;
-  bool _is_exported;
+  bool _is_exported_unqualified;
   bool _is_exported_allUnnamed;
   GrowableArray<ModuleEntry*>* _exported_pending_delete; // transitioned from qualified to unqualified, delete at safepoint
   GrowableArray<ModuleEntry*>* _qualified_exports;
@@ -68,7 +84,7 @@
   void init() {
     _module = NULL;
     _classpath_index = -1;
-    _is_exported = false;
+    _is_exported_unqualified = false;
     _is_exported_allUnnamed = false;
     _exported_pending_delete = NULL;
     _qualified_exports = NULL;
@@ -83,34 +99,41 @@
   void               set_module(ModuleEntry* m) { _module = m; }
 
   // package's export state
-  bool is_exported() const { return _is_exported; } // qualifiedly or unqualifiedly exported
+  bool is_exported() const { // qualifiedly or unqualifiedly exported
+      return (is_unqual_exported() || has_qual_exports_list() || is_exported_allUnnamed());
+  }
+  // Returns true if the package has any explicit qualified exports or is exported to all unnamed
   bool is_qual_exported() const {
-    return (_is_exported && (_qualified_exports != NULL || _is_exported_allUnnamed));
+    return (has_qual_exports_list() || is_exported_allUnnamed());
+  }
+  // Returns true if there are any explicit qualified exports
+  bool has_qual_exports_list() const {
+    assert(!(_qualified_exports != NULL && _is_exported_unqualified),
+           "_qualified_exports set at same time as _is_exported_unqualified");
+    return (_qualified_exports != NULL);
+  }
+  bool is_exported_allUnnamed() const {
+    assert(!(_is_exported_allUnnamed && _is_exported_unqualified),
+           "_is_exported_allUnnamed set at same time as _is_exported_unqualified");
+    return _is_exported_allUnnamed;
   }
   bool is_unqual_exported() const {
-    return (_is_exported && (_qualified_exports == NULL && !_is_exported_allUnnamed));
+    assert(!(_qualified_exports != NULL && _is_exported_unqualified),
+           "_qualified_exports set at same time as _is_exported_unqualified");
+    assert(!(_is_exported_allUnnamed && _is_exported_unqualified),
+           "_is_exported_allUnnamed set at same time as _is_exported_unqualified");
+    return _is_exported_unqualified;
   }
   void set_unqual_exported() {
-    _is_exported = true;
+    _is_exported_unqualified = true;
     _is_exported_allUnnamed = false;
     _qualified_exports = NULL;
   }
   bool exported_pending_delete() const     { return (_exported_pending_delete != NULL); }
 
-  void set_exported(bool e)                { _is_exported = e; }
   void set_exported(ModuleEntry* m);
 
-  void set_is_exported_allUnnamed() {
-    if (!is_unqual_exported()) {
-     _is_exported_allUnnamed = true;
-     _is_exported = true;
-    }
-  }
-  bool is_exported_allUnnamed() const {
-    assert(_is_exported || !_is_exported_allUnnamed,
-           "is_allUnnamed set without is_exported being set");
-    return _is_exported_allUnnamed;
-  }
+  void set_is_exported_allUnnamed();
 
   void set_classpath_index(s2 classpath_index) {
     _classpath_index = classpath_index;
@@ -122,7 +145,7 @@
   // returns true if the package is defined in the unnamed module
   bool in_unnamed_module() const  { return !_module->is_named(); }
 
-  // returns true if the package specifies m as a qualified export
+  // returns true if the package specifies m as a qualified export, including through an unnamed export
   bool is_qexported_to(ModuleEntry* m) const;
 
   // add the module to the package's qualified exports
diff --git a/hotspot/src/share/vm/interpreter/linkResolver.cpp b/hotspot/src/share/vm/interpreter/linkResolver.cpp
index 808f94a..f033714 100644
--- a/hotspot/src/share/vm/interpreter/linkResolver.cpp
+++ b/hotspot/src/share/vm/interpreter/linkResolver.cpp
@@ -966,20 +966,18 @@
   methodHandle resolved_method = linktime_resolve_static_method(link_info, CHECK);
 
   // The resolved class can change as a result of this resolution.
-  KlassHandle resolved_klass = KlassHandle(THREAD, resolved_method->method_holder());
+  KlassHandle resolved_klass(THREAD, resolved_method->method_holder());
 
-  Method* save_resolved_method = resolved_method();
   // Initialize klass (this should only happen if everything is ok)
   if (initialize_class && resolved_klass->should_be_initialized()) {
     resolved_klass->initialize(CHECK);
-    // Use updated LinkInfo (to reresolve with resolved_klass as method_holder?)
+    // Use updated LinkInfo to reresolve with resolved method holder
     LinkInfo new_info(resolved_klass, link_info.name(), link_info.signature(),
                       link_info.current_klass(),
                       link_info.check_access() ? LinkInfo::needs_access_check : LinkInfo::skip_access_check);
     resolved_method = linktime_resolve_static_method(new_info, CHECK);
   }
 
-  assert(save_resolved_method == resolved_method(), "does this change?");
   // setup result
   result.set_static(resolved_klass, resolved_method, CHECK);
 }
diff --git a/hotspot/src/share/vm/memory/metaspaceShared.cpp b/hotspot/src/share/vm/memory/metaspaceShared.cpp
index b975e9e..02f025a 100644
--- a/hotspot/src/share/vm/memory/metaspaceShared.cpp
+++ b/hotspot/src/share/vm/memory/metaspaceShared.cpp
@@ -191,7 +191,12 @@
     case Bytecodes::_getfield:      *bcs.bcp() = Bytecodes::_nofast_getfield;      break;
     case Bytecodes::_putfield:      *bcs.bcp() = Bytecodes::_nofast_putfield;      break;
     case Bytecodes::_aload_0:       *bcs.bcp() = Bytecodes::_nofast_aload_0;       break;
-    case Bytecodes::_iload:         *bcs.bcp() = Bytecodes::_nofast_iload;         break;
+    case Bytecodes::_iload: {
+      if (!bcs.is_wide()) {
+        *bcs.bcp() = Bytecodes::_nofast_iload;
+      }
+      break;
+    }
     default: break;
     }
   }
diff --git a/hotspot/src/share/vm/oops/instanceKlass.cpp b/hotspot/src/share/vm/oops/instanceKlass.cpp
index 074fc00..0216147 100644
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp
@@ -1104,21 +1104,21 @@
 
 void InstanceKlass::mask_for(const methodHandle& method, int bci,
   InterpreterOopMap* entry_for) {
-  // Dirty read, then double-check under a lock.
-  if (_oop_map_cache == NULL) {
-    // Otherwise, allocate a new one.
+  // Lazily create the _oop_map_cache at first request
+  // Lock-free access requires load_ptr_acquire.
+  OopMapCache* oop_map_cache =
+      static_cast<OopMapCache*>(OrderAccess::load_ptr_acquire(&_oop_map_cache));
+  if (oop_map_cache == NULL) {
     MutexLocker x(OopMapCacheAlloc_lock);
-    // First time use. Allocate a cache in C heap
-    if (_oop_map_cache == NULL) {
-      // Release stores from OopMapCache constructor before assignment
-      // to _oop_map_cache. C++ compilers on ppc do not emit the
-      // required memory barrier only because of the volatile
-      // qualifier of _oop_map_cache.
-      OrderAccess::release_store_ptr(&_oop_map_cache, new OopMapCache());
+    // Check if _oop_map_cache was allocated while we were waiting for this lock
+    if ((oop_map_cache = _oop_map_cache) == NULL) {
+      oop_map_cache = new OopMapCache();
+      // Ensure _oop_map_cache is stable, since it is examined without a lock
+      OrderAccess::release_store_ptr(&_oop_map_cache, oop_map_cache);
     }
   }
-  // _oop_map_cache is constant after init; lookup below does is own locking.
-  _oop_map_cache->lookup(method, bci, entry_for);
+  // _oop_map_cache is constant after init; lookup below does its own locking.
+  oop_map_cache->lookup(method, bci, entry_for);
 }
 
 
diff --git a/hotspot/src/share/vm/services/virtualMemoryTracker.cpp b/hotspot/src/share/vm/services/virtualMemoryTracker.cpp
index 16f249b..964af28 100644
--- a/hotspot/src/share/vm/services/virtualMemoryTracker.cpp
+++ b/hotspot/src/share/vm/services/virtualMemoryTracker.cpp
@@ -23,7 +23,10 @@
  */
 #include "precompiled.hpp"
 
+#include "runtime/atomic.inline.hpp"
+#include "runtime/os.hpp"
 #include "runtime/threadCritical.hpp"
+#include "services/memTracker.hpp"
 #include "services/virtualMemoryTracker.hpp"
 
 size_t VirtualMemorySummary::_snapshot[CALC_OBJ_SIZE_IN_TYPE(VirtualMemorySnapshot, size_t)];
@@ -52,46 +55,41 @@
   if (all_committed()) return true;
 
   CommittedMemoryRegion committed_rgn(addr, size, stack);
-  LinkedListNode<CommittedMemoryRegion>* node = _committed_regions.find_node(committed_rgn);
-  if (node != NULL) {
+  LinkedListNode<CommittedMemoryRegion>* node = _committed_regions.head();
+
+  while (node != NULL) {
     CommittedMemoryRegion* rgn = node->data();
     if (rgn->same_region(addr, size)) {
       return true;
     }
 
     if (rgn->adjacent_to(addr, size)) {
-      // check if the next region covers this committed region,
-      // the regions may not be merged due to different call stacks
-      LinkedListNode<CommittedMemoryRegion>* next =
-        node->next();
-      if (next != NULL && next->data()->contain_region(addr, size)) {
-        if (next->data()->same_region(addr, size)) {
-          next->data()->set_call_stack(stack);
-        }
-        return true;
-      }
-      if (rgn->call_stack()->equals(stack)) {
+      // special case to expand prior region if there is no next region
+      LinkedListNode<CommittedMemoryRegion>* next = node->next();
+      if (next == NULL && rgn->call_stack()->equals(stack)) {
         VirtualMemorySummary::record_uncommitted_memory(rgn->size(), flag());
         // the two adjacent regions have the same call stack, merge them
         rgn->expand_region(addr, size);
         VirtualMemorySummary::record_committed_memory(rgn->size(), flag());
         return true;
       }
-      VirtualMemorySummary::record_committed_memory(size, flag());
-      if (rgn->base() > addr) {
-        return _committed_regions.insert_before(committed_rgn, node) != NULL;
-      } else {
-        return _committed_regions.insert_after(committed_rgn, node) != NULL;
       }
+
+    if (rgn->overlap_region(addr, size)) {
+      // Clear a space for this region in the case it overlaps with any regions.
+      remove_uncommitted_region(addr, size);
+      break;  // commit below
     }
-    assert(rgn->contain_region(addr, size), "Must cover this region");
-    return true;
-  } else {
+    if (rgn->end() >= addr + size){
+      break;
+    }
+    node = node->next();
+  }
+
     // New committed region
     VirtualMemorySummary::record_committed_memory(size, flag());
     return add_committed_region(committed_rgn);
   }
-}
 
 void ReservedMemoryRegion::set_all_committed(bool b) {
   if (all_committed() != b) {
@@ -175,48 +173,52 @@
       }
     }
   } else {
-    // we have to walk whole list to remove the committed regions in
-    // specified range
-    LinkedListNode<CommittedMemoryRegion>* head =
-      _committed_regions.head();
-    LinkedListNode<CommittedMemoryRegion>* prev = NULL;
-    VirtualMemoryRegion uncommitted_rgn(addr, sz);
+    CommittedMemoryRegion del_rgn(addr, sz, *call_stack());
+    address end = addr + sz;
 
-    while (head != NULL && !uncommitted_rgn.is_empty()) {
-      CommittedMemoryRegion* crgn = head->data();
-      // this committed region overlaps to region to uncommit
-      if (crgn->overlap_region(uncommitted_rgn.base(), uncommitted_rgn.size())) {
-        if (crgn->same_region(uncommitted_rgn.base(), uncommitted_rgn.size())) {
-          // find matched region, remove the node will do
-          VirtualMemorySummary::record_uncommitted_memory(uncommitted_rgn.size(), flag());
+    LinkedListNode<CommittedMemoryRegion>* head = _committed_regions.head();
+    LinkedListNode<CommittedMemoryRegion>* prev = NULL;
+    CommittedMemoryRegion* crgn;
+
+    while (head != NULL) {
+      crgn = head->data();
+
+      if (crgn->same_region(addr, sz)) {
+        VirtualMemorySummary::record_uncommitted_memory(crgn->size(), flag());
           _committed_regions.remove_after(prev);
           return true;
-        } else if (crgn->contain_region(uncommitted_rgn.base(), uncommitted_rgn.size())) {
-          // this committed region contains whole uncommitted region
-          VirtualMemorySummary::record_uncommitted_memory(uncommitted_rgn.size(), flag());
-          return remove_uncommitted_region(head, uncommitted_rgn.base(), uncommitted_rgn.size());
-        } else if (uncommitted_rgn.contain_region(crgn->base(), crgn->size())) {
-          // this committed region has been uncommitted
-          size_t exclude_size = crgn->end() - uncommitted_rgn.base();
-          uncommitted_rgn.exclude_region(uncommitted_rgn.base(), exclude_size);
+      }
+
+      // del_rgn contains crgn
+      if (del_rgn.contain_region(crgn->base(), crgn->size())) {
           VirtualMemorySummary::record_uncommitted_memory(crgn->size(), flag());
-          LinkedListNode<CommittedMemoryRegion>* tmp = head;
           head = head->next();
           _committed_regions.remove_after(prev);
-          continue;
-        } else if (crgn->contain_address(uncommitted_rgn.base())) {
-          size_t toUncommitted = crgn->end() - uncommitted_rgn.base();
-          crgn->exclude_region(uncommitted_rgn.base(), toUncommitted);
-          uncommitted_rgn.exclude_region(uncommitted_rgn.base(), toUncommitted);
-          VirtualMemorySummary::record_uncommitted_memory(toUncommitted, flag());
-        } else if (uncommitted_rgn.contain_address(crgn->base())) {
-          size_t toUncommitted = uncommitted_rgn.end() - crgn->base();
-          crgn->exclude_region(crgn->base(), toUncommitted);
-          uncommitted_rgn.exclude_region(uncommitted_rgn.end() - toUncommitted,
-            toUncommitted);
-          VirtualMemorySummary::record_uncommitted_memory(toUncommitted, flag());
+        continue;  // don't update head or prev
         }
+
+      // Found addr in the current crgn. There are 2 subcases:
+      if (crgn->contain_address(addr)) {
+
+        // (1) Found addr+size in current crgn as well. (del_rgn is contained in crgn)
+        if (crgn->contain_address(end - 1)) {
+          VirtualMemorySummary::record_uncommitted_memory(sz, flag());
+          return remove_uncommitted_region(head, addr, sz); // done!
+        } else {
+          // (2) Did not find del_rgn's end in crgn.
+          size_t size = crgn->end() - del_rgn.base();
+          crgn->exclude_region(addr, size);
+          VirtualMemorySummary::record_uncommitted_memory(size, flag());
       }
+
+      } else if (crgn->contain_address(end - 1)) {
+      // Found del_rgn's end, but not its base addr.
+        size_t size = del_rgn.end() - crgn->base();
+        crgn->exclude_region(crgn->base(), size);
+        VirtualMemorySummary::record_uncommitted_memory(size, flag());
+        return true;  // should be done if the list is sorted properly!
+      }
+
       prev = head;
       head = head->next();
     }
@@ -386,7 +388,8 @@
 
   assert(reserved_rgn != NULL, "No reserved region");
   assert(reserved_rgn->contain_region(addr, size), "Not completely contained");
-  return reserved_rgn->add_committed_region(addr, size, stack);
+  bool result = reserved_rgn->add_committed_region(addr, size, stack);
+  return result;
 }
 
 bool VirtualMemoryTracker::remove_uncommitted_region(address addr, size_t size) {
@@ -398,7 +401,8 @@
   ReservedMemoryRegion* reserved_rgn = _reserved_regions->find(rgn);
   assert(reserved_rgn != NULL, "No reserved region");
   assert(reserved_rgn->contain_region(addr, size), "Not completely contained");
-  return reserved_rgn->remove_uncommitted_region(addr, size);
+  bool result = reserved_rgn->remove_uncommitted_region(addr, size);
+  return result;
 }
 
 bool VirtualMemoryTracker::remove_released_region(address addr, size_t size) {
@@ -488,5 +492,3 @@
 
   return true;
 }
-
-
diff --git a/hotspot/src/share/vm/services/virtualMemoryTracker.hpp b/hotspot/src/share/vm/services/virtualMemoryTracker.hpp
index d2f8abd..02d21bd 100644
--- a/hotspot/src/share/vm/services/virtualMemoryTracker.hpp
+++ b/hotspot/src/share/vm/services/virtualMemoryTracker.hpp
@@ -261,8 +261,7 @@
     VirtualMemoryRegion(addr, size), _stack(stack) { }
 
   inline int compare(const CommittedMemoryRegion& rgn) const {
-    if (overlap_region(rgn.base(), rgn.size()) ||
-        adjacent_to   (rgn.base(), rgn.size())) {
+    if (overlap_region(rgn.base(), rgn.size())) {
       return 0;
     } else {
       if (base() == rgn.base()) {
diff --git a/hotspot/src/share/vm/services/writeableFlags.cpp b/hotspot/src/share/vm/services/writeableFlags.cpp
index 3541fdd..fab21ba 100644
--- a/hotspot/src/share/vm/services/writeableFlags.cpp
+++ b/hotspot/src/share/vm/services/writeableFlags.cpp
@@ -93,12 +93,12 @@
 
 // set a boolean global flag
 Flag::Error WriteableFlags::set_bool_flag(const char* name, const char* arg, Flag::Flags origin, FormatBuffer<80>& err_msg) {
-  int value = true;
-
-  if (sscanf(arg, "%d", &value)) {
-    return set_bool_flag(name, value != 0, origin, err_msg);
+  if ((strcasecmp(arg, "true") == 0) || (*arg == '1' && *(arg + 1) == 0)) {
+    return set_bool_flag(name, true, origin, err_msg);
+  } else if ((strcasecmp(arg, "false") == 0) || (*arg == '0' && *(arg + 1) == 0)) {
+    return set_bool_flag(name, false, origin, err_msg);
   }
-  err_msg.print("flag value must be a boolean (1 or 0)");
+  err_msg.print("flag value must be a boolean (1/0 or true/false)");
   return Flag::WRONG_FORMAT;
 }
 
diff --git a/hotspot/src/share/vm/utilities/linkedlist.hpp b/hotspot/src/share/vm/utilities/linkedlist.hpp
index a76c15c..33e416e 100644
--- a/hotspot/src/share/vm/utilities/linkedlist.hpp
+++ b/hotspot/src/share/vm/utilities/linkedlist.hpp
@@ -259,6 +259,11 @@
 
   virtual bool remove(LinkedListNode<E>* node) {
     LinkedListNode<E>* p = this->head();
+    if (p == node) {
+      this->set_head(p->next());
+      delete_node(node);
+      return true;
+    }
     while (p != NULL && p->next() != node) {
       p = p->next();
     }
diff --git a/hotspot/test/gc/TestSmallHeap.java b/hotspot/test/gc/TestSmallHeap.java
index 9c0dba3..a58fa8c 100644
--- a/hotspot/test/gc/TestSmallHeap.java
+++ b/hotspot/test/gc/TestSmallHeap.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,22 +23,15 @@
 
 /**
  * @test TestSmallHeap
- * @bug 8067438
+ * @bug 8067438 8152239
  * @requires vm.gc=="null"
- * @requires (vm.opt.AggressiveOpts=="null") | (vm.opt.AggressiveOpts=="false")
- * @requires vm.compMode != "Xcomp"
- * @requires vm.opt.UseCompressedOops != false
  * @summary Verify that starting the VM with a small heap works
- * @library /testlibrary /test/lib
+ * @library /testlibrary /test/lib /test/lib/share/classes
  * @modules java.base/jdk.internal.misc
  * @modules java.management/sun.management
- * @ignore 8076621
  * @build TestSmallHeap
  * @run main ClassFileInstaller sun.hotspot.WhiteBox
- * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xmx2m -XX:+UseParallelGC TestSmallHeap
- * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xmx2m -XX:+UseSerialGC TestSmallHeap
- * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xmx2m -XX:+UseG1GC TestSmallHeap
- * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xmx2m -XX:+UseConcMarkSweepGC TestSmallHeap
+ * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI TestSmallHeap
  */
 
 /* Note: It would be nice to verify the minimal supported heap size (2m) here,
@@ -60,23 +53,55 @@
  * So, the expected heap size is page_size * 512.
  */
 
-import jdk.test.lib.*;
-import com.sun.management.HotSpotDiagnosticMXBean;
-import java.lang.management.ManagementFactory;
-import static jdk.test.lib.Asserts.*;
+import jdk.test.lib.Asserts;
+import jdk.test.lib.process.OutputAnalyzer;
+import jdk.test.lib.process.ProcessTools;
+
+import java.util.LinkedList;
 
 import sun.hotspot.WhiteBox;
 
 public class TestSmallHeap {
 
-    public static void main(String[] args) {
+    public static void main(String[] args) throws Exception {
+        // Do all work in the VM driving the test, the VM
+        // with the small heap size should do as little as
+        // possible to avoid hitting an OOME.
         WhiteBox wb = WhiteBox.getWhiteBox();
         int pageSize = wb.getVMPageSize();
         int heapBytesPerCard = 512;
         long expectedMaxHeap = pageSize * heapBytesPerCard;
-        String maxHeap
-            = ManagementFactory.getPlatformMXBean(HotSpotDiagnosticMXBean.class)
-                .getVMOption("MaxHeapSize").getValue();
-        assertEQ(Long.parseLong(maxHeap), expectedMaxHeap);
+
+        verifySmallHeapSize("-XX:+UseParallelGC", expectedMaxHeap);
+        verifySmallHeapSize("-XX:+UseSerialGC", expectedMaxHeap);
+        verifySmallHeapSize("-XX:+UseG1GC", expectedMaxHeap);
+        verifySmallHeapSize("-XX:+UseConcMarkSweepGC", expectedMaxHeap);
+    }
+
+    private static void verifySmallHeapSize(String gc, long expectedMaxHeap) throws Exception {
+        LinkedList<String> vmOptions = new LinkedList<>();
+        vmOptions.add(gc);
+        vmOptions.add("-Xmx2m");
+        vmOptions.add("-XX:+PrintFlagsFinal");
+        vmOptions.add(VerifyHeapSize.class.getName());
+
+        ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(vmOptions.toArray(new String[0]));
+        OutputAnalyzer analyzer = new OutputAnalyzer(pb.start());
+        analyzer.shouldHaveExitValue(0);
+
+        long maxHeapSize = Long.parseLong(analyzer.firstMatch("MaxHeapSize.+=\\s+(\\d+)",1));
+        long actualHeapSize = Long.parseLong(analyzer.firstMatch(VerifyHeapSize.actualMsg + "(\\d+)",1));
+        Asserts.assertEQ(maxHeapSize, expectedMaxHeap);
+        Asserts.assertLessThanOrEqual(actualHeapSize, maxHeapSize);
+    }
+}
+
+class VerifyHeapSize {
+    public static final String actualMsg = "Actual heap size: ";
+
+    public static void main(String args[]) {
+        // Avoid string concatenation
+        System.out.print(actualMsg);
+        System.out.println(Runtime.getRuntime().maxMemory());
     }
 }
diff --git a/hotspot/test/gc/g1/ihop/TestIHOPErgo.java b/hotspot/test/gc/g1/ihop/TestIHOPErgo.java
index 95609b8..f77d458 100644
--- a/hotspot/test/gc/g1/ihop/TestIHOPErgo.java
+++ b/hotspot/test/gc/g1/ihop/TestIHOPErgo.java
@@ -28,6 +28,7 @@
  * @requires vm.gc=="G1" | vm.gc=="null"
  * @requires vm.opt.FlightRecorder != true
  * @requires vm.opt.ExplicitGCInvokesConcurrent != true
+ * @requires vm.opt.MaxGCPauseMillis == "null"
  * @library /testlibrary /test/lib /
  * @modules java.base/jdk.internal.misc
  * @modules java.management
diff --git a/hotspot/test/gc/g1/mixedgc/TestLogging.java b/hotspot/test/gc/g1/mixedgc/TestLogging.java
index f99fdbd..0e232a6 100644
--- a/hotspot/test/gc/g1/mixedgc/TestLogging.java
+++ b/hotspot/test/gc/g1/mixedgc/TestLogging.java
@@ -25,6 +25,7 @@
  * @test TestLogging
  * @summary Check that a mixed GC is reflected in the gc logs
  * @requires vm.gc=="G1" | vm.gc=="null"
+ * @requires vm.opt.MaxGCPauseMillis == "null"
  * @library /testlibrary /test/lib
  * @modules java.base/jdk.internal.misc
  * @modules java.management
diff --git a/hotspot/test/gc/stress/TestMultiThreadStressRSet.java b/hotspot/test/gc/stress/TestMultiThreadStressRSet.java
index 5a69888..336b061 100644
--- a/hotspot/test/gc/stress/TestMultiThreadStressRSet.java
+++ b/hotspot/test/gc/stress/TestMultiThreadStressRSet.java
@@ -33,6 +33,7 @@
  * @key stress
  * @requires vm.gc=="G1" | vm.gc=="null"
  * @requires os.maxMemory > 2G
+ * @requires vm.opt.MaxGCPauseMillis == "null"
  *
  * @summary Stress G1 Remembered Set using multiple threads
  * @modules java.base/jdk.internal.misc
diff --git a/hotspot/test/gc/stress/TestStressRSetCoarsening.java b/hotspot/test/gc/stress/TestStressRSetCoarsening.java
index 554531b..a0d581b 100644
--- a/hotspot/test/gc/stress/TestStressRSetCoarsening.java
+++ b/hotspot/test/gc/stress/TestStressRSetCoarsening.java
@@ -30,6 +30,7 @@
  * @bug 8146984 8147087
  * @requires vm.gc=="G1" | vm.gc=="null"
  * @requires os.maxMemory > 3G
+ * @requires vm.opt.MaxGCPauseMillis == "null"
  *
  * @summary Stress G1 Remembered Set by creating a lot of cross region links
  * @modules java.base/jdk.internal.misc
diff --git a/hotspot/test/runtime/NMT/CommitOverlappingRegions.java b/hotspot/test/runtime/NMT/CommitOverlappingRegions.java
new file mode 100644
index 0000000..212a993
--- /dev/null
+++ b/hotspot/test/runtime/NMT/CommitOverlappingRegions.java
@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @summary Test commits of overlapping regions of memory.
+ * @key nmt jcmd
+ * @library /testlibrary /test/lib
+ * @modules java.base/jdk.internal.misc
+ *          java.management
+ * @build   CommitOverlappingRegions
+ * @run main ClassFileInstaller sun.hotspot.WhiteBox
+ *                              sun.hotspot.WhiteBox$WhiteBoxPermission
+ * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -XX:NativeMemoryTracking=detail CommitOverlappingRegions
+ */
+
+import jdk.test.lib.*;
+import sun.hotspot.WhiteBox;
+
+public class CommitOverlappingRegions {
+    public static WhiteBox wb = WhiteBox.getWhiteBox();
+    public static void main(String args[]) throws Exception {
+        OutputAnalyzer output;
+        long size = 32 * 1024;
+        long addr = wb.NMTReserveMemory(8*size);
+
+        String pid = Long.toString(ProcessTools.getProcessId());
+        ProcessBuilder pb = new ProcessBuilder();
+
+        pb.command(new String[] { JDKToolFinder.getJDKTool("jcmd"), pid, "VM.native_memory", "detail"});
+        System.out.println("Address is " + Long.toHexString(addr));
+
+        // Start: . . . . . . . .
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=0KB)");
+
+        // Committing: * * * . . . . .
+        // Region:     * * * . . . . .
+        // Expected Total: 3 x 32KB = 96KB
+        wb.NMTCommitMemory(addr + 0*size, 3*size);
+
+        // Committing: . . . . * * * .
+        // Region:     * * * . * * * .
+        // Expected Total: 6 x 32KB = 192KB
+        wb.NMTCommitMemory(addr + 4*size, 3*size);
+
+        // Check output after first 2 commits.
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=192KB)");
+
+        // Committing: . . * * * . . .
+        // Region:     * * * * * * * .
+        // Expected Total: 7 x 32KB = 224KB
+        wb.NMTCommitMemory(addr + 2*size, 3*size);
+
+        // Check output after overlapping commit.
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=224KB)");
+
+        // Uncommitting: * * * * * * * *
+        // Region:       . . . . . . . .
+        // Expected Total: 0 x 32KB = 0KB
+        wb.NMTUncommitMemory(addr + 0*size, 8*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=0KB)");
+
+        // Committing: * * . . . . . .
+        // Region:     * * . . . . . .
+        // Expected Total: 2 x 32KB = 64KB
+        wb.NMTCommitMemory(addr + 0*size, 2*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=64KB)");
+
+        // Committing: . * * * . . . .
+        // Region:     * * * * . . . .
+        // Expected Total: 4 x 32KB = 128KB
+        wb.NMTCommitMemory(addr + 1*size, 3*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=128KB)");
+
+        // Uncommitting: * * * . . . . .
+        // Region:       . . . * . . . .
+        // Expected Total: 1 x 32KB = 32KB
+        wb.NMTUncommitMemory(addr + 0*size, 3*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=32KB)");
+
+        // Committing: . . . * * . . .
+        // Region:     . . . * * . . .
+        // Expected Total: 2 x 32KB = 64KB
+        wb.NMTCommitMemory(addr + 3*size, 2*size);
+        System.out.println("Address is " + Long.toHexString(addr + 3*size));
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=64KB)");
+
+        // Committing: . . . . * * . .
+        // Region:     . . . * * * . .
+        // Expected Total: 3 x 32KB = 96KB
+        wb.NMTCommitMemory(addr + 4*size, 2*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=96KB)");
+
+        // Committing: . . . . . * * .
+        // Region:     . . . * * * * .
+        // Expected Total: 4 x 32KB = 128KB
+        wb.NMTCommitMemory(addr + 5*size, 2*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=128KB)");
+
+        // Committing: . . . . . . * *
+        // Region:     . . . * * * * *
+        // Expected Total: 5 x 32KB = 160KB
+        wb.NMTCommitMemory(addr + 6*size, 2*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=160KB)");
+
+        // Uncommitting: * * * * * * * *
+        // Region:       . . . . . . . .
+        // Expected Total: 0 x 32KB = 32KB
+        wb.NMTUncommitMemory(addr + 0*size, 8*size);
+        output = new OutputAnalyzer(pb.start());
+        output.shouldContain("Test (reserved=256KB, committed=0KB)");
+    }
+}
diff --git a/hotspot/test/runtime/ReservedStack/ReservedStackTest.java b/hotspot/test/runtime/ReservedStack/ReservedStackTest.java
index 3c60d47..a608077 100644
--- a/hotspot/test/runtime/ReservedStack/ReservedStackTest.java
+++ b/hotspot/test/runtime/ReservedStack/ReservedStackTest.java
@@ -27,6 +27,7 @@
  * @modules java.base/jdk.internal.misc
  * @modules java.base/jdk.internal.vm.annotation
  * @build jdk.test.lib.*
+ * @run main/othervm -Xint ReservedStackTest
  * @run main/othervm -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
  */
 
@@ -196,9 +197,12 @@
             System.out.println("Test started execution at frame = " + (counter - deframe));
             String result = test.getResult();
             // The feature is not fully implemented on all platforms,
-            // corruptions are still possible
-            boolean supportedPlatform = Platform.isSolaris() || Platform.isOSX()
-                || (Platform.isLinux() && (Platform.isX86() || Platform.isX64()));
+            // corruptions are still possible.
+            boolean supportedPlatform =
+                Platform.isAix() ||
+                (Platform.isLinux() && (Platform.isPPC() || Platform.isX64() || Platform.isX86())) ||
+                Platform.isOSX() ||
+                Platform.isSolaris();
             if (supportedPlatform && !result.contains("PASSED")) {
                 System.out.println(result);
                 throw new Error(result);
diff --git a/hotspot/test/runtime/ReservedStack/ReservedStackTestCompiler.java b/hotspot/test/runtime/ReservedStack/ReservedStackTestCompiler.java
new file mode 100644
index 0000000..fa7ba47
--- /dev/null
+++ b/hotspot/test/runtime/ReservedStack/ReservedStackTestCompiler.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test ReservedStackTestCompiler
+ * @summary Run ReservedStackTest with dedicated compilers C1 and C2.
+ * @requires vm.flavor == "server"
+ * @library /testlibrary
+ * @modules java.base/jdk.internal.misc
+ * @modules java.base/jdk.internal.vm.annotation
+ * @build jdk.test.lib.* ReservedStackTest
+ * @run main/othervm -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
+ * @run main/othervm -XX:-TieredCompilation                         -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
+ */
+
+// Intentionally left blank. Just runs ReservedStackTest with @requires annotation.
diff --git a/hotspot/test/serviceability/dcmd/vm/SetVMFlagTest.java b/hotspot/test/serviceability/dcmd/vm/SetVMFlagTest.java
index 9132aec..663a7bc 100644
--- a/hotspot/test/serviceability/dcmd/vm/SetVMFlagTest.java
+++ b/hotspot/test/serviceability/dcmd/vm/SetVMFlagTest.java
@@ -56,6 +56,25 @@
         run(new JMXExecutor());
     }
 
+    private void setMutableFlagInternal(CommandExecutor executor, String flag,
+                                        boolean val, boolean isNumeric) {
+        String strFlagVal;
+        if (isNumeric) {
+            strFlagVal = val ? "1" : "0";
+        } else {
+            strFlagVal = val ? "true" : "false";
+        }
+
+        OutputAnalyzer out = executor.execute("VM.set_flag " + flag + " " + strFlagVal);
+        out.stderrShouldBeEmpty();
+
+        out = getAllFlags(executor);
+
+        String newFlagVal = out.firstMatch(MANAGEABLE_PATTERN.replace("(\\S+)", flag), 1);
+
+        assertNotEquals(newFlagVal, val ? "1" : "0");
+    }
+
     private void setMutableFlag(CommandExecutor executor) {
         OutputAnalyzer out = getAllFlags(executor);
         String flagName = out.firstMatch(MANAGEABLE_PATTERN, 1);
@@ -69,15 +88,8 @@
         }
 
         Boolean blnVal = Boolean.parseBoolean(flagVal);
-
-        out = executor.execute("VM.set_flag " + flagName + " " + (blnVal ? 0 : 1));
-        out.stderrShouldBeEmpty();
-
-        out = getAllFlags(executor);
-
-        String newFlagVal = out.firstMatch(MANAGEABLE_PATTERN.replace("(\\S+)", flagName), 1);
-
-        assertNotEquals(newFlagVal, flagVal);
+        setMutableFlagInternal(executor, flagName, !blnVal, true);
+        setMutableFlagInternal(executor, flagName, blnVal, false);
     }
 
     private void setMutableFlagWithInvalidValue(CommandExecutor executor) {
@@ -95,7 +107,7 @@
         // a boolean flag accepts only 0/1 as its value
         out = executor.execute("VM.set_flag " + flagName + " unexpected_value");
         out.stderrShouldBeEmpty();
-        out.stdoutShouldContain("flag value must be a boolean (1 or 0)");
+        out.stdoutShouldContain("flag value must be a boolean (1/0 or true/false)");
 
         out = getAllFlags(executor);
 
diff --git a/jaxp/.hgtags b/jaxp/.hgtags
index 3b5823f..5425d45 100644
--- a/jaxp/.hgtags
+++ b/jaxp/.hgtags
@@ -365,3 +365,4 @@
 ecbe72546137cd29cb73d4dcc81cc099e847d543 jdk-9+120
 a265b8116058c56179c321c38618570b780329be jdk-9+121
 f8899b1884e2c4a000dbcc5b1a80954245fe462e jdk-9+122
+3c19ab8742c196ac267b3d87e1d19ec3472c708d jdk-9+123
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java
index c9cea1d..21881d4 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_de.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 04:56:10 gmolloy Exp $
+ * $Id: XSLTErrorResources_de.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 06:43:54 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -1016,7 +1016,7 @@
      "Systemeigenschaft \"org.xml.sax.parser\" nicht angegeben"},
 
     { ER_PARSER_ARG_CANNOT_BE_NULL,
-     "Parser-Argument darf nicht null sein"},
+     "Parserargument darf nicht null sein"},
 
     { ER_FEATURE,
      "Feature: {0}"},
@@ -1359,10 +1359,10 @@
   { "optionLXCIN", "   [-LXCIN compiledStylesheetFileNameIn]"},
   { "optionLXCOUT", "   [-LXCOUT compiledStylesheetFileNameOutOut]"},
   { "optionPARSER", "   [-PARSER fully qualified class name of parser liaison]"},
-  {  "optionE", "   [-E (Entit\u00E4tsreferenzen nicht einblenden)]"},
-  {  "optionV",  "   [-E (Entit\u00E4tsreferenzen nicht einblenden)]"},
+  {  "optionE", "   [-E (Entityreferenzen nicht einblenden)]"},
+  {  "optionV",  "   [-E (Entityreferenzen nicht einblenden)]"},
   {  "optionQC", "   [-QC (Stille Musterkonfliktwarnungen)]"},
-  {  "optionQ", "   [-Q  (Stiller Modus)]"},
+  {  "optionQ", "   [-Q  (Silent-Modus)]"},
   {  "optionLF", "   [-LF (Nur Zeilenvorsch\u00FCbe bei Ausgabe verwenden {Standard ist CR/LF})]"},
   {  "optionCR", "   [-CR (Nur Zeilenschaltungen bei Ausgabe verwenden {Standard ist CR/LF})]"},
   { "optionESCAPE", "   [-ESCAPE (Escapezeichen {Standard ist <>&\"'\r\n}]"},
@@ -1384,7 +1384,7 @@
   { "noParsermsg4", "Wenn Sie nicht \u00FCber den XML-Parser f\u00FCr Java von IBM verf\u00FCgen, k\u00F6nnen Sie ihn hier herunterladen:"},
   { "noParsermsg5", "IBMs AlphaWorks: http://www.alphaworks.ibm.com/formula/xml"},
   { "optionURIRESOLVER", "   [-URIRESOLVER full class name (URIResolver f\u00FCr die Aufl\u00F6sung von URIs)]"},
-  { "optionENTITYRESOLVER",  "   [-ENTITYRESOLVER full class name (EntityResolver f\u00FCr die Aufl\u00F6sung von Entit\u00E4ten)]"},
+  { "optionENTITYRESOLVER",  "   [-ENTITYRESOLVER full class name (EntityResolver f\u00FCr die Aufl\u00F6sung von Entitys)]"},
   { "optionCONTENTHANDLER",  "   [-CONTENTHANDLER full class name (ContentHandler f\u00FCr die Serialisierung der Ausgabe)]"},
   {  "optionLINENUMBERS",  "   [-L use line numbers for source document]"},
   { "optionSECUREPROCESSING", "   [-SECURE (Feature f\u00FCr die sichere Verarbeitung auf \"true\" setzen.)]"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java
index 1748506..6d6af1c 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_fr.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 07:05:15 gmolloy Exp $
+ * $Id: XSLTErrorResources_fr.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 05:13:35 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -1213,7 +1213,7 @@
       "Le nom de fonction ne peut pas \u00EAtre NULL."},
 
     { ER_XPATH_RESOLVER_NEGATIVE_ARITY,
-      "Le nombre d'arguments ne peut pas \u00EAtre n\u00E9gatif."},
+      "L'arit\u00E9 ne peut pas \u00EAtre n\u00E9gative."},
   // Warnings...
 
     { WG_FOUND_CURLYBRACE,
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java
index 50028e7..bc6faf6 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_ja.java /st_wptg_1.8.0.0.0jdk/2 2013/09/12 17:39:58 gmolloy Exp $
+ * $Id: XSLTErrorResources_ja.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 00:37:07 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -775,7 +775,7 @@
       "\u5165\u529BDOM\u30CE\u30FC\u30C9\u306BDTMLiaison\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093...\u304B\u308F\u308A\u306Bcom.sun.org.apache.xpath.internal.DOM2Helper\u3092\u6E21\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
 
     { ER_CALL_TO_EXT_FAILED,
-      "\u62E1\u5F35\u8981\u7D20\u306E\u547C\u51FA\u3057\u306B\u5931\u6557\u3057\u307E\u3057\u305F: {0}"},
+      "\u62E1\u5F35\u8981\u7D20\u306E\u547C\u51FA\u3057\u304C\u5931\u6557\u3057\u307E\u3057\u305F: {0}"},
 
     { ER_PREFIX_MUST_RESOLVE,
       "\u63A5\u982D\u8F9E\u306F\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u306B\u89E3\u6C7A\u3055\u308C\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}"},
@@ -1337,8 +1337,8 @@
   // Note to translators:  The following messages provide usage information
   // for the Xalan Process command line.  "Process" is the name of a Java class,
   // and should not be translated.
-  { "xslProc_option", "Xalan-J\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u30FB\u30D7\u30ED\u30BB\u30B9\u30FB\u30AF\u30E9\u30B9\u306E\u30AA\u30D7\u30B7\u30E7\u30F3:"},
-  { "xslProc_option", "Xalan-J\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u30FB\u30D7\u30ED\u30BB\u30B9\u30FB\u30AF\u30E9\u30B9\u306E\u30AA\u30D7\u30B7\u30E7\u30F3:"},
+  { "xslProc_option", "Xalan-J\u30B3\u30DE\u30F3\u30C9\u884C\u30D7\u30ED\u30BB\u30B9\u30FB\u30AF\u30E9\u30B9\u306E\u30AA\u30D7\u30B7\u30E7\u30F3:"},
+  { "xslProc_option", "Xalan-J\u30B3\u30DE\u30F3\u30C9\u884C\u30D7\u30ED\u30BB\u30B9\u30FB\u30AF\u30E9\u30B9\u306E\u30AA\u30D7\u30B7\u30E7\u30F3:"},
   { "xslProc_invalid_xsltc_option", "\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306FXSLTC\u30E2\u30FC\u30C9\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
   { "xslProc_invalid_xalan_option", "\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F-XSLTC\u3068\u3068\u3082\u306B\u306E\u307F\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002"},
   { "xslProc_no_input", "\u30A8\u30E9\u30FC: \u30B9\u30BF\u30A4\u30EB\u30B7\u30FC\u30C8\u307E\u305F\u306F\u5165\u529Bxml\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u4F7F\u7528\u65B9\u6CD5\u306E\u6307\u793A\u306B\u3064\u3044\u3066\u306F\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4ED8\u3051\u305A\u306B\u3053\u306E\u30B3\u30DE\u30F3\u30C9\u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java
index d4b9b32..ab6dad8 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_ko.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 02:31:33 gmolloy Exp $
+ * $Id: XSLTErrorResources_ko.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 02:39:50 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -591,7 +591,7 @@
      "\uC2A4\uD0C0\uC77C\uC2DC\uD2B8 \uD30C\uC77C\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC74C: {0}"},
 
     { ER_IOEXCEPTION,
-      "\uC2A4\uD0C0\uC77C\uC2DC\uD2B8 \uD30C\uC77C\uC5D0 IO \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}"},
+      "\uC2A4\uD0C0\uC77C\uC2DC\uD2B8 \uD30C\uC77C\uC5D0 IO \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}"},
 
     { ER_NO_HREF_ATTRIB,
       "(StylesheetHandler) {0}\uC5D0 \uB300\uD55C href \uC18D\uC131\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
@@ -717,7 +717,7 @@
       "processStylesheet\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4!"},
 
     { ER_SAX_EXCEPTION,
-     "SAX \uC608\uC678 \uC0AC\uD56D"},
+     "SAX \uC608\uC678\uC0AC\uD56D"},
 
 //  add this message to fix bug 21478
     { ER_FUNCTION_NOT_SUPPORTED,
@@ -1325,7 +1325,7 @@
   {  "help_language",  "ko" },
   {  "language",  "ko" },
   { "BAD_CODE", "createMessage\uC5D0 \uB300\uD55C \uB9E4\uAC1C\uBCC0\uC218\uAC00 \uBC94\uC704\uB97C \uBC97\uC5B4\uB0AC\uC2B5\uB2C8\uB2E4."},
-  {  "FORMAT_FAILED", "messageFormat \uD638\uCD9C \uC911 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
+  {  "FORMAT_FAILED", "messageFormat \uD638\uCD9C \uC911 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
   {  "version", ">>>>>>> Xalan \uBC84\uC804 "},
   {  "version2",  "<<<<<<<"},
   {  "yes", "\uC608"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java
index b79cfab..5f3c4ca 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_pt_BR.java /st_wptg_1.8.0.0.0jdk/2 2013/09/11 12:46:53 gmolloy Exp $
+ * $Id: XSLTErrorResources_pt_BR.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 18:01:34 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -672,7 +672,7 @@
       "result-ns n\u00E3o \u00E9 mais suportado! Em vez disso, use xsl:output."},
 
     { ER_DEFAULTSPACE_NOT_SUPPORTED,
-      "default-space n\u00E3o \u00E9 mais suportado! Em vez disso, use xsl:strip-space ou xsl:preserve-space."},
+      "padr\u00E3o-space n\u00E3o \u00E9 mais suportado! Em vez disso, use xsl:strip-space ou xsl:preserve-space."},
 
     { ER_INDENTRESULT_NOT_SUPPORTED,
       "indent-result n\u00E3o \u00E9 mais suportado! Em vez disso, use xsl:output."},
@@ -907,10 +907,10 @@
         "2 ou 3"},
 
     { ER_COULD_NOT_LOAD_RESOURCE,
-        "N\u00E3o foi poss\u00EDvel carregar {0} (verificar CLASSPATH); usando agora apenas os defaults"},
+        "N\u00E3o foi poss\u00EDvel carregar {0} (verificar CLASSPATH); usando agora apenas os padr\u00F5es"},
 
     { ER_CANNOT_INIT_DEFAULT_TEMPLATES,
-        "N\u00E3o \u00E9 poss\u00EDvel inicializar os modelos default"},
+        "N\u00E3o \u00E9 poss\u00EDvel inicializar os modelos padr\u00E3o"},
 
     { ER_RESULT_NULL,
         "O resultado n\u00E3o deve ser nulo"},
@@ -1186,7 +1186,7 @@
      "O valor do par\u00E2metro {0} deve ser um Objeto Java v\u00E1lido"},
 
     { ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX_FOR_DEFAULT,
-      "O atributo result-prefix de um elemento xsl:namespace-alias tem o valor '#default', mas n\u00E3o h\u00E1 declara\u00E7\u00E3o do namespace default no escopo do elemento"},
+      "O atributo result-prefix de um elemento xsl:namespace-alias tem o valor '#padr\u00E3o', mas n\u00E3o h\u00E1 declara\u00E7\u00E3o do namespace padr\u00E3o no escopo do elemento"},
 
     { ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX,
       "O atributo result-prefix de um elemento xsl:namespace-alias tem o valor ''{0}'', mas n\u00E3o h\u00E1 declara\u00E7\u00E3o de namespace para o prefixo ''{0}'' no escopo do elemento."},
@@ -1271,7 +1271,7 @@
      "Namespace de XSLT n\u00E3o encontrado ou incorreto. "},
 
     { WG_ONE_DEFAULT_XSLDECIMALFORMAT_ALLOWED,
-      "\u00C9 permitida somente uma declara\u00E7\u00E3o de xsl:decimal-format default."},
+      "\u00C9 permitida somente uma declara\u00E7\u00E3o de xsl:decimal-format padr\u00E3o."},
 
     { WG_XSLDECIMALFORMAT_NAMES_MUST_BE_UNIQUE,
       "os nomes de xsl:decimal-format devem ser exclusivos. O nome \"{0}\" foi duplicado."},
@@ -1363,16 +1363,16 @@
   {  "optionV",  "   [-E (N\u00E3o expandir refer\u00EAncias da entidade)]"},
   {  "optionQC", "   [-QC (Advert\u00EAncias de Conflitos do Padr\u00E3o Silencioso)]"},
   {  "optionQ", "   [-Q  (Modo Silencioso)]"},
-  {  "optionLF", "   [-LF (Usar alimenta\u00E7\u00F5es de linha somente na sa\u00EDda {o default \u00E9 CR/LF})]"},
-  {  "optionCR", "   [-CR (Use retornos de carro somente na sa\u00EDda {o default \u00E9 CR/LF})]"},
-  { "optionESCAPE", "   [-ESCAPE (Quais caracteres devem ser identificados como escape {o default \u00E9 <>&\"'\\r\\n}]"},
-  { "optionINDENT", "   [-INDENT (Controla quantos espa\u00E7os devem ser recuados {o default \u00E9 0})]"},
+  {  "optionLF", "   [-LF (Usar alimenta\u00E7\u00F5es de linha somente na sa\u00EDda {o padr\u00E3o \u00E9 CR/LF})]"},
+  {  "optionCR", "   [-CR (Use retornos de carro somente na sa\u00EDda {o padr\u00E3o \u00E9 CR/LF})]"},
+  { "optionESCAPE", "   [-ESCAPE (Quais caracteres devem ser identificados como escape {o padr\u00E3o \u00E9 <>&\"'\\r\\n}]"},
+  { "optionINDENT", "   [-INDENT (Controla quantos espa\u00E7os devem ser recuados {o padr\u00E3o \u00E9 0})]"},
   { "optionTT", "   [-TT (Rastreia os modelos \u00E0 medida que s\u00E3o chamados.)]"},
   { "optionTG", "   [-TG (Rastreia cada evento de gera\u00E7\u00E3o.)]"},
   { "optionTS", "   [-TS (Rastreia cada evento de sele\u00E7\u00E3o.)]"},
   {  "optionTTC", "   [-TTC (Rastreia os filhos do modelo \u00E0 medida que s\u00E3o processados.)]"},
   { "optionTCLASS", "   [-TCLASS (Classe TraceListener para extens\u00F5es de rastreamento.)]"},
-  { "optionVALIDATE", "   [-VALIDATE (Define se ocorre valida\u00E7\u00E3o. Por default, a valida\u00E7\u00E3o fica desativada.)]"},
+  { "optionVALIDATE", "   [-VALIDATE (Define se ocorre valida\u00E7\u00E3o. Por padr\u00E3o, a valida\u00E7\u00E3o fica desativada.)]"},
   { "optionEDUMP", "   [-EDUMP {nome do arquivo opcional} (Execute um dump de pilha em caso de erro.)]"},
   {  "optionXML", "   [-XML (Use o formatador XML e adicione o cabe\u00E7alho XML.)]"},
   {  "optionTEXT", "   [-TEXT (Use o formatador de Texto simples.)]"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java
index 53e943c..8e66a1b 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_sv.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 06:50:58 gmolloy Exp $
+ * $Id: XSLTErrorResources_sv.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -1226,10 +1226,10 @@
       "Gammal syntax: Namnet p\u00E5 'expr'-attributet har \u00E4ndrats till 'select'."},
 
     { WG_NO_LOCALE_IN_FORMATNUMBER,
-      "Xalan hanterar \u00E4nnu inte spr\u00E5knamnet i funktionen format-number."},
+      "Xalan hanterar \u00E4nnu inte spr\u00E5kkonventionen i funktionen format-number."},
 
     { WG_LOCALE_NOT_FOUND,
-      "Varning: Hittade inte spr\u00E5kinst\u00E4llning f\u00F6r xml:lang={0}"},
+      "Varning: Hittade inte spr\u00E5kkonvention f\u00F6r xml:lang={0}"},
 
     { WG_CANNOT_MAKE_URL_FROM,
       "Kan inte skapa URL fr\u00E5n: {0}"},
@@ -1286,10 +1286,10 @@
       "xsl:stylesheet kr\u00E4ver ett 'version'-attribut!"},
 
     { WG_ILLEGAL_ATTRIBUTE_NAME,
-      "Ogiltigt attributnamn: {0}"},
+      "Otill\u00E5tet attributnamn: {0}"},
 
     { WG_ILLEGAL_ATTRIBUTE_VALUE,
-      "Ogiltigt v\u00E4rde anv\u00E4nds f\u00F6r attributet {0}: {1}"},
+      "Otill\u00E5tet v\u00E4rde anv\u00E4nds f\u00F6r attributet {0}: {1}"},
 
     { WG_EMPTY_SECOND_ARG,
       "Resulterande nodupps\u00E4ttning fr\u00E5n dokumentfunktionens andra argumentet \u00E4r tomt. En tom nodupps\u00E4ttning anv\u00E4nds."},
@@ -1329,8 +1329,8 @@
   {  "version", ">>>>>>> Xalan version "},
   {  "version2",  "<<<<<<<"},
   {  "yes", "ja"},
-  { "line", "Rad #"},
-  { "column","Kolumn #"},
+  { "line", "Rad nr"},
+  { "column","Kolumn nr"},
   { "xsldone", "XSLProcessor: utf\u00F6rd"},
 
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java
index a842dfa..83f7912 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XSLTErrorResources_zh_TW.java /st_wptg_1.8.0.0.0jdk/2 2013/09/14 02:16:34 gmolloy Exp $
+ * $Id: XSLTErrorResources_zh_TW.java /st_wptg_1.9.0.0.0jdk/2 2016/04/11 20:46:43 gmolloy Exp $
  */
 package com.sun.org.apache.xalan.internal.res;
 
@@ -1268,7 +1268,7 @@
       "\u627E\u4E0D\u5230\u5341\u9032\u4F4D\u683C\u5F0F\u7684\u5BA3\u544A: {0}"},
 
     { WG_OLD_XSLT_NS,
-     "\u907A\u6F0F\u6216\u4E0D\u6B63\u78BA\u7684 XSLT \u547D\u540D\u7A7A\u9593\u3002 "},
+     "\u907A\u6F0F\u6216\u4E0D\u6B63\u78BA\u7684 XSLT \u547D\u540D\u7A7A\u9593\u3002"},
 
     { WG_ONE_DEFAULT_XSLDECIMALFORMAT_ALLOWED,
       "\u53EA\u5141\u8A31\u4E00\u500B\u9810\u8A2D\u7684 xsl:decimal-format \u5BA3\u544A\u3002"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java
index 9807d06..e72f7fa 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_de.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 04:56:10 gmolloy Exp $
+ * $Id: ErrorMessages_de.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 06:43:54 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory erkennt Attribut \"{0}\" nicht."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "Falscher Wert f\u00FCr Attribut \"{0}\" angegeben."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java
index 1225bd9..3276bba 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_es.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 09:06:34 gmolloy Exp $
+ * $Id: ErrorMessages_es.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 05:09:25 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory no reconoce el atributo ''{0}''."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "Valor no v\u00E1lido especificado para el atributo ''{0}''."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java
index 588e02d..1781717 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_fr.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 07:05:15 gmolloy Exp $
+ * $Id: ErrorMessages_fr.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 05:13:35 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory ne reconna\u00EEt pas l''attribut ''{0}''."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "La valeur indiqu\u00E9e pour l''attribut ''{0}'' est incorrecte."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java
index 030ea71..4a3f4a0 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_it.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 07:02:00 gmolloy Exp $
+ * $Id: ErrorMessages_it.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 03:53:19 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory non riconosce l''attributo ''{0}''."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "Valore errato specificato per l''attributo ''{0}''."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java
index efd1327..33be81f 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_ja.java /st_wptg_1.8.0.0.0jdk/2 2013/09/12 17:39:58 gmolloy Exp $
+ * $Id: ErrorMessages_ja.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 00:37:07 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory\u306F\u5C5E\u6027''{0}''\u3092\u8A8D\u8B58\u3057\u307E\u305B\u3093\u3002"},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "''{0}''\u5C5E\u6027\u306B\u6307\u5B9A\u3055\u308C\u305F\u5024\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002"},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
@@ -682,7 +685,7 @@
          * documentation.
          */
         {ErrorMsg.COMPILE_USAGE_STR,
-        "SYNOPSIS\n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Compile [-o <output>]\n      [-d <directory>] [-j <jarfile>] [-p <package>]\n      [-n] [-x] [-u] [-v] [-h] { <stylesheet> | -i }\n\nOPTIONS\n   -o <output>    \u540D\u524D<output>\u3092\u751F\u6210\u6E08translet\u306B\n                  \u5272\u308A\u5F53\u3066\u308B\u3002\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001translet\u540D\u306F\n                  <stylesheet>\u540D\u306B\u7531\u6765\u3057\u307E\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\n                  \u8907\u6570\u306E\u30B9\u30BF\u30A4\u30EB\u30B7\u30FC\u30C8\u3092\u30B3\u30F3\u30D1\u30A4\u30EB\u3059\u308B\u5834\u5408\u306F\u7121\u8996\u3055\u308C\u307E\u3059\u3002\n   -d <directory> translet\u306E\u5B9B\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u6307\u5B9A\u3059\u308B\n   -j <jarfile>   <jarfile>\u3067\u6307\u5B9A\u3055\u308C\u308B\u540D\u524D\u306Ejar\u30D5\u30A1\u30A4\u30EB\u306Btranslet\u30AF\u30E9\u30B9\u3092\n                  \u30D1\u30C3\u30B1\u30FC\u30B8\u3059\u308B\n   -p <package>   \u751F\u6210\u3055\u308C\u308B\u3059\u3079\u3066\u306Etranslet\u30AF\u30E9\u30B9\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\n                  \u63A5\u982D\u8F9E\u3092\u6307\u5B9A\u3059\u308B\u3002\n   -n             \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30A4\u30F3\u30E9\u30A4\u30F3\u5316\u3092\u6709\u52B9\u306B\u3059\u308B(\u5E73\u5747\u3057\u3066\u30C7\u30D5\u30A9\u30EB\u30C8\u52D5\u4F5C\u306E\u65B9\u304C\n                  \u512A\u308C\u3066\u3044\u307E\u3059)\u3002\n   -x             \u8FFD\u52A0\u306E\u30C7\u30D0\u30C3\u30B0\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u51FA\u529B\u3092\u30AA\u30F3\u306B\u3059\u308B\n   -u             <stylesheet>\u5F15\u6570\u3092URL\u3068\u3057\u3066\u89E3\u91C8\u3059\u308B\n   -i             \u30B9\u30BF\u30A4\u30EB\u30B7\u30FC\u30C8\u3092stdin\u304B\u3089\u8AAD\u307F\u8FBC\u3080\u3053\u3068\u3092\u30B3\u30F3\u30D1\u30A4\u30E9\u306B\u5F37\u5236\u3059\u308B\n   -v             \u30B3\u30F3\u30D1\u30A4\u30E9\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3059\u308B\n   -h             \u3053\u306E\u4F7F\u7528\u65B9\u6CD5\u306E\u6587\u3092\u51FA\u529B\u3059\u308B\n"},
+        "\u5F62\u5F0F\n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Compile [-o <output>]\n      [-d <directory>] [-j <jarfile>] [-p <package>]\n      [-n] [-x] [-u] [-v] [-h] { <stylesheet> | -i }\n\nOPTIONS\n   -o <output>    \u540D\u524D<output>\u3092\u751F\u6210\u6E08translet\u306B\n                  \u5272\u308A\u5F53\u3066\u308B\u3002\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001translet\u540D\u306F\n                  <stylesheet>\u540D\u306B\u7531\u6765\u3057\u307E\u3059\u3002\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\n                  \u8907\u6570\u306E\u30B9\u30BF\u30A4\u30EB\u30B7\u30FC\u30C8\u3092\u30B3\u30F3\u30D1\u30A4\u30EB\u3059\u308B\u5834\u5408\u306F\u7121\u8996\u3055\u308C\u307E\u3059\u3002\n   -d <directory> translet\u306E\u5B9B\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u6307\u5B9A\u3059\u308B\n   -j <jarfile>   <jarfile>\u3067\u6307\u5B9A\u3055\u308C\u308B\u540D\u524D\u306Ejar\u30D5\u30A1\u30A4\u30EB\u306Btranslet\u30AF\u30E9\u30B9\u3092\n                  \u30D1\u30C3\u30B1\u30FC\u30B8\u3059\u308B\n   -p <package>   \u751F\u6210\u3055\u308C\u308B\u3059\u3079\u3066\u306Etranslet\u30AF\u30E9\u30B9\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\n                  \u63A5\u982D\u8F9E\u3092\u6307\u5B9A\u3059\u308B\u3002\n   -n             \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30A4\u30F3\u30E9\u30A4\u30F3\u5316\u3092\u6709\u52B9\u306B\u3059\u308B(\u5E73\u5747\u3057\u3066\u30C7\u30D5\u30A9\u30EB\u30C8\u52D5\u4F5C\u306E\u65B9\u304C\n                  \u512A\u308C\u3066\u3044\u307E\u3059)\u3002\n   -x             \u8FFD\u52A0\u306E\u30C7\u30D0\u30C3\u30B0\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u51FA\u529B\u3092\u30AA\u30F3\u306B\u3059\u308B\n   -u             <stylesheet>\u5F15\u6570\u3092URL\u3068\u3057\u3066\u89E3\u91C8\u3059\u308B\n   -i             \u30B9\u30BF\u30A4\u30EB\u30B7\u30FC\u30C8\u3092stdin\u304B\u3089\u8AAD\u307F\u8FBC\u3080\u3053\u3068\u3092\u30B3\u30F3\u30D1\u30A4\u30E9\u306B\u5F37\u5236\u3059\u308B\n   -v             \u30B3\u30F3\u30D1\u30A4\u30E9\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3059\u308B\n   -h             \u3053\u306E\u4F7F\u7528\u65B9\u6CD5\u306E\u6587\u3092\u51FA\u529B\u3059\u308B\n"},
 
         /*
          * Note to translators:  This message contains usage information for a
@@ -694,7 +697,7 @@
          * documentation.
          */
         {ErrorMsg.TRANSFORM_USAGE_STR,
-        "SYNOPSIS \n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Transform [-j <jarfile>]\n      [-x] [-n <iterations>] {-u <document_url> | <document>}\n      <class> [<param1>=<value1> ...]\n\n   translet <class>\u3092\u4F7F\u7528\u3057\u3066\u3001<document>\u3067\u6307\u5B9A\u3055\u308C\u308B\n   XML\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u5909\u63DB\u3059\u308B\u3002translet <class>\u306F\n   \u30E6\u30FC\u30B6\u30FC\u306ECLASSPATH\u5185\u304B\u3001\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u6307\u5B9A\u3055\u308C\u305F<jarfile>\u5185\u306B\u3042\u308A\u307E\u3059\u3002\nOPTIONS\n   -j <jarfile>    translet\u3092\u30ED\u30FC\u30C9\u3059\u308Bjarfile\u3092\u6307\u5B9A\u3059\u308B\n   -x              \u8FFD\u52A0\u306E\u30C7\u30D0\u30C3\u30B0\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u51FA\u529B\u3092\u30AA\u30F3\u306B\u3059\u308B\n   -n <iterations> \u5909\u63DB\u3092<iterations>\u56DE\u5B9F\u884C\u3057\u3001\n                   \u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u60C5\u5831\u3092\u8868\u793A\u3059\u308B\n   -u <document_url> XML\u5165\u529B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092URL\u3068\u3057\u3066\u6307\u5B9A\u3059\u308B\n"},
+        "\u5F62\u5F0F \n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Transform [-j <jarfile>]\n      [-x] [-n <iterations>] {-u <document_url> | <document>}\n      <class> [<param1>=<value1> ...]\n\n   translet <class>\u3092\u4F7F\u7528\u3057\u3066\u3001<document>\u3067\u6307\u5B9A\u3055\u308C\u308B\n   XML\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u5909\u63DB\u3059\u308B\u3002translet <class>\u306F\n   \u30E6\u30FC\u30B6\u30FC\u306ECLASSPATH\u5185\u304B\u3001\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u6307\u5B9A\u3055\u308C\u305F<jarfile>\u5185\u306B\u3042\u308A\u307E\u3059\u3002\nOPTIONS\n   -j <jarfile>    translet\u3092\u30ED\u30FC\u30C9\u3059\u308Bjarfile\u3092\u6307\u5B9A\u3059\u308B\n   -x              \u8FFD\u52A0\u306E\u30C7\u30D0\u30C3\u30B0\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u51FA\u529B\u3092\u30AA\u30F3\u306B\u3059\u308B\n   -n <iterations> \u5909\u63DB\u3092<iterations>\u56DE\u5B9F\u884C\u3057\u3001\n                   \u30D7\u30ED\u30D5\u30A1\u30A4\u30EA\u30F3\u30B0\u60C5\u5831\u3092\u8868\u793A\u3059\u308B\n   -u <document_url> XML\u5165\u529B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092URL\u3068\u3057\u3066\u6307\u5B9A\u3059\u308B\n"},
 
 
 
@@ -761,14 +764,14 @@
          * line option that was not recognized.
          */
         {ErrorMsg.ILLEGAL_CMDLINE_OPTION_ERR,
-        "\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3''{0}''\u306F\u7121\u52B9\u3067\u3059\u3002"},
+        "\u30B3\u30DE\u30F3\u30C9\u884C\u30AA\u30D7\u30B7\u30E7\u30F3''{0}''\u306F\u7121\u52B9\u3067\u3059\u3002"},
 
         /*
          * Note to translators:  The substitution text is the name of a command-
          * line option.
          */
         {ErrorMsg.CMDLINE_OPT_MISSING_ARG_ERR,
-        "\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3''{0}''\u306B\u5FC5\u9808\u306E\u5F15\u6570\u304C\u3042\u308A\u307E\u305B\u3093\u3002"},
+        "\u30B3\u30DE\u30F3\u30C9\u884C\u30AA\u30D7\u30B7\u30E7\u30F3''{0}''\u306B\u5FC5\u9808\u306E\u5F15\u6570\u304C\u3042\u308A\u307E\u305B\u3093\u3002"},
 
         /*
          * Note to translators:  This message is used to indicate the severity
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java
index 3921af4..177c05d 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_ko.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 02:31:33 gmolloy Exp $
+ * $Id: ErrorMessages_ko.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 02:39:51 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -303,7 +303,7 @@
          * not recognized.
          */
         {ErrorMsg.ILLEGAL_BINARY_OP_ERR,
-        "\uC774\uC9C4 \uD45C\uD604\uC2DD\uC5D0 \uB300\uD574 \uC54C \uC218 \uC5C6\uB294 \uC5F0\uC0B0\uC790\uC785\uB2C8\uB2E4."},
+        "\uBC14\uC774\uB108\uB9AC \uD45C\uD604\uC2DD\uC5D0 \uB300\uD574 \uC54C \uC218 \uC5C6\uB294 \uC5F0\uC0B0\uC790\uC785\uB2C8\uB2E4."},
 
         /*
          * Note to translators:  This message is produced if a reference to a
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory\uC5D0\uC11C ''{0}'' \uC18D\uC131\uC744 \uC778\uC2DD\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "''{0}'' \uC18D\uC131\uC5D0 \uB300\uD574 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC740 \uAC12\uC774 \uC9C0\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java
index 6760941..c73cdf4 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_pt_BR.java /st_wptg_1.8.0.0.0jdk/2 2013/09/11 12:46:53 gmolloy Exp $
+ * $Id: ErrorMessages_pt_BR.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 18:01:34 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory n\u00E3o reconhece o atributo ''{0}''."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "Valor incorreto especificado para o atributo ''{0}''."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
@@ -682,7 +685,7 @@
          * documentation.
          */
         {ErrorMsg.COMPILE_USAGE_STR,
-        "SINOPSE\n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Compile [-o <sa\u00EDda>]\n      [-d <diret\u00F3rio>] [-j <jarfile>] [-p <pacote>]\n      [-n] [-x] [-u] [-v] [-h] { <folha de estilos> | -i }\n\nOP\u00C7\u00D5ES\n   -o <sa\u00EDda>    atribui o nome <sa\u00EDda> ao translet\n                  gerado.  Por default, o nome translet\n                  origina-se do nome <folha de estilos>.  Esta op\u00E7\u00E3o\n                  \u00E9 ignorada caso sejam compiladas v\u00E1rias folhas de estilos.\n   -d <diret\u00F3rio> especifica um diret\u00F3rio de destino para translet\n   -j <arquivo jar>   empacota as classes translet em um arquivo jar do\n                  nome especificado como <arquivo jar>\n   -p <pacote>   especifica um prefixo de nome do pacote para todas as classes\n                  translet geradas.\n   -n             permite a inclus\u00E3o do modelo na linha (comportamento default melhor\n                  em m\u00E9dia).\n   -x             ativa a sa\u00EDda de mensagens de depura\u00E7\u00E3o adicionais\n   -u             interpreta os argumentos <folha de estilos> como URLs\n   -i             obriga o compilador a ler a folha de estilos de stdin\n   -v             imprime a vers\u00E3o do compilador\n   -h             imprime esta instru\u00E7\u00E3o de uso\n"},
+        "SINOPSE\n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Compile [-o <sa\u00EDda>]\n      [-d <diret\u00F3rio>] [-j <jarfile>] [-p <pacote>]\n      [-n] [-x] [-u] [-v] [-h] { <folha de estilos> | -i }\n\nOP\u00C7\u00D5ES\n   -o <sa\u00EDda>    atribui o nome <sa\u00EDda> ao translet\n                  gerado.  Por padr\u00E3o, o nome translet\n                  origina-se do nome <folha de estilos>.  Esta op\u00E7\u00E3o\n                  \u00E9 ignorada caso sejam compiladas v\u00E1rias folhas de estilos.\n   -d <diret\u00F3rio> especifica um diret\u00F3rio de destino para translet\n   -j <arquivo jar>   empacota as classes translet em um arquivo jar do\n                  nome especificado como <arquivo jar>\n   -p <pacote>   especifica um prefixo de nome do pacote para todas as classes\n                  translet geradas.\n   -n             permite a inclus\u00E3o do modelo na linha (comportamento padr\u00E3o melhor\n                  em m\u00E9dia).\n   -x             ativa a sa\u00EDda de mensagens de depura\u00E7\u00E3o adicionais\n   -u             interpreta os argumentos <folha de estilos> como URLs\n   -i             obriga o compilador a ler a folha de estilos de stdin\n   -v             imprime a vers\u00E3o do compilador\n   -h             imprime esta instru\u00E7\u00E3o de uso\n"},
 
         /*
          * Note to translators:  This message contains usage information for a
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java
index 93edfa9..3f83c11 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_sv.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 06:50:58 gmolloy Exp $
+ * $Id: ErrorMessages_sv.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -372,7 +372,7 @@
          * element of a type that it was not permitted to contain.
          */
         {ErrorMsg.ILLEGAL_CHILD_ERR,
-        "Ogiltigt underordnat element."},
+        "Otill\u00E5tet underordnat element."},
 
         /*
          * Note to translators:  The stylesheet tried to create an element with
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory k\u00E4nner inte igen attributet ''{0}''."},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "Fel v\u00E4rde har angetts f\u00F6r attributet ''{0}''."},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java
index 93889c3..1981305 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_zh_CN.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 04:44:25 gmolloy Exp $
+ * $Id: ErrorMessages_zh_CN.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 05:10:27 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory \u65E0\u6CD5\u8BC6\u522B\u5C5E\u6027 ''{0}''\u3002"},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "\u4E3A ''{0}'' \u5C5E\u6027\u6307\u5B9A\u7684\u503C\u4E0D\u6B63\u786E\u3002"},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java
index d99e7ec..87788f8 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_zh_TW.java /st_wptg_1.8.0.0.0jdk/2 2013/09/14 02:16:34 gmolloy Exp $
+ * $Id: ErrorMessages_zh_TW.java /st_wptg_1.9.0.0.0jdk/2 2016/04/11 20:46:43 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.compiler.util;
@@ -600,6 +600,9 @@
         {ErrorMsg.JAXP_INVALID_ATTR_ERR,
         "TransformerFactory \u7121\u6CD5\u8FA8\u8B58\u5C6C\u6027 ''{0}''\u3002"},
 
+        {ErrorMsg.JAXP_INVALID_ATTR_VALUE_ERR,
+        "\u70BA ''{0}'' \u5C6C\u6027\u6307\u5B9A\u7684\u503C\u4E0D\u6B63\u78BA\u3002"},
+
         /*
          * Note to translators:  "setResult()" and "startDocument()" are Java
          * method names that should not be translated.
@@ -682,7 +685,7 @@
          * documentation.
          */
         {ErrorMsg.COMPILE_USAGE_STR,
-        "\u6982\u8981\n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Compile [-o <output>]\n      [-d <directory>] [-j <jarfile>] [-p <package>]\n      [-n] [-x] [-u] [-v] [-h] { <stylesheet> | -i }\n\n\u9078\u9805\n   -o <output>    \u6307\u6D3E\u540D\u7A31 <output> \u81F3\u7522\u751F\u7684\n                  translet\u3002\u6839\u64DA\u9810\u8A2D\uFF0Ctranslet \u540D\u7A31\n                  \u884D\u751F\u81EA <stylesheet> \u540D\u7A31\u3002  \u82E5\u7DE8\u8B6F\n                  \u591A\u500B\u6A23\u5F0F\u8868\uFF0C\u5C07\u5FFD\u7565\u6B64\u9078\u9805\u3002\n   -d <directory> \u6307\u5B9A translet \u7684\u76EE\u7684\u5730\u76EE\u9304\n   -j <jarfile>   \u5C01\u88DD translet \u985E\u5225\u6210\u70BA jar \u6A94\u6848\uFF0C\n                  \u540D\u7A31\u6307\u5B9A\u70BA <jarfile>\n   -p <package>   \u6307\u5B9A\u6240\u6709\u7522\u751F\u7684 translet \u985E\u5225\u7684\u5957\u88DD\u7A0B\u5F0F\n                  \u540D\u7A31\u524D\u7F6E\u78BC\u3002\n   -n             \u555F\u7528\u6A23\u677F\u5167\u5D4C (\u9810\u8A2D\u884C\u70BA\u4E00\u822C\u800C\u8A00\n                  \u8F03\u4F73)\u3002\n   -x             \u958B\u555F\u984D\u5916\u7684\u9664\u932F\u8A0A\u606F\u8F38\u51FA\n   -u             \u89E3\u8B6F <stylesheet> \u5F15\u6578\u70BA URL\n   -i             \u5F37\u5236\u7DE8\u8B6F\u5668\u5F9E stdin \u8B80\u53D6\u6A23\u5F0F\u8868\n   -v             \u5217\u5370\u7DE8\u8B6F\u5668\u7248\u672C\n   -h             \u5217\u5370\u6B64\u7528\u6CD5\u6558\u8FF0\n"},
+        "\u6982\u8981\n   java com.sun.org.apache.xalan.internal.xsltc.cmdline.Compile [-o <output>]\n      [-d <directory>] [-j <jarfile>] [-p <package>]\n      [-n] [-x] [-u] [-v] [-h] { <stylesheet> | -i }\n\n\u9078\u9805\n   -o <output>    \u6307\u6D3E\u540D\u7A31 <output> \u81F3\u7522\u751F\u7684\n                  translet\u3002\u6839\u64DA\u9810\u8A2D\uFF0Ctranslet \u540D\u7A31\n                  \u884D\u751F\u81EA <stylesheet> \u540D\u7A31\u3002\u82E5\u7DE8\u8B6F\n                  \u591A\u500B\u6A23\u5F0F\u8868\uFF0C\u5C07\u5FFD\u7565\u6B64\u9078\u9805\u3002\n   -d <directory> \u6307\u5B9A translet \u7684\u76EE\u7684\u5730\u76EE\u9304\n   -j <jarfile>   \u5C01\u88DD translet \u985E\u5225\u6210\u70BA jar \u6A94\u6848\uFF0C\n                  \u540D\u7A31\u6307\u5B9A\u70BA <jarfile>\n   -p <package>   \u6307\u5B9A\u6240\u6709\u7522\u751F\u7684 translet \u985E\u5225\u7684\u5957\u88DD\u7A0B\u5F0F\n                  \u540D\u7A31\u524D\u7F6E\u78BC\u3002\n   -n             \u555F\u7528\u6A23\u677F\u5167\u5D4C (\u9810\u8A2D\u884C\u70BA\u4E00\u822C\u800C\u8A00\n                  \u8F03\u4F73)\u3002\n   -x             \u958B\u555F\u984D\u5916\u7684\u9664\u932F\u8A0A\u606F\u8F38\u51FA\n   -u             \u89E3\u8B6F <stylesheet> \u5F15\u6578\u70BA URL\n   -i             \u5F37\u5236\u7DE8\u8B6F\u5668\u5F9E stdin \u8B80\u53D6\u6A23\u5F0F\u8868\n   -v             \u5217\u5370\u7DE8\u8B6F\u5668\u7248\u672C\n   -h             \u5217\u5370\u6B64\u7528\u6CD5\u6558\u8FF0\n"},
 
         /*
          * Note to translators:  This message contains usage information for a
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java
index 14f6797..7ec8715 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: ErrorMessages_sv.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 06:50:58 gmolloy Exp $
+ * $Id: ErrorMessages_sv.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
  */
 
 package com.sun.org.apache.xalan.internal.xsltc.runtime;
@@ -94,14 +94,14 @@
          * is a class name.  Used for internal errors in the processor.
          */
         {BasisLibrary.RUN_TIME_INTERNAL_ERR,
-        "Internt k\u00F6rningsfel i ''{0}''"},
+        "Internt exekveringsfel i ''{0}''"},
 
         /*
          * Note to translators:  <xsl:copy> is a keyword that should not be
          * translated.
          */
         {BasisLibrary.RUN_TIME_COPY_ERR,
-        "K\u00F6rningsfel vid k\u00F6rning av <xsl:copy>."},
+        "Exekveringsexekveringsfel av <xsl:copy>."},
 
         /*
          * Note to translators:  The substitution text refers to data types.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java
index 651bd74..1e4fc39 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java
@@ -696,7 +696,7 @@
         preParser.setProperty(Constants.XERCES_PROPERTY_PREFIX + Constants.XMLGRAMMAR_POOL_PROPERTY, pool);
 
         String internalSubset = docType.getInternalSubset();
-        XMLInputSource is = new XMLInputSource(docType.getPublicId(), docType.getSystemId(), null);
+        XMLInputSource is = new XMLInputSource(docType.getPublicId(), docType.getSystemId(), null, false);
 
         if(internalSubset != null)
             is.setCharacterStream(new StringReader(internalSubset));
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java
index d405a33..d79f27d 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityManager.java
@@ -1015,7 +1015,7 @@
             //          is this the right solution? -SG
             //if (systemId != null)
             staxInputSource = new StaxXMLInputSource(
-                    new XMLInputSource(publicId, literalSystemId, baseSystemId), false);
+                    new XMLInputSource(publicId, literalSystemId, baseSystemId, true), false);
         }else if(staxInputSource.hasXMLStreamOrXMLEventReader()){
             //Waiting for the clarification from EG. - nb
         }
@@ -1094,7 +1094,7 @@
             // REVISIT: when systemId is null, I think we should return null.
             //          is this the right solution? -SG
             //if (systemId != null)
-            xmlInputSource = new XMLInputSource(publicId, literalSystemId, baseSystemId);
+            xmlInputSource = new XMLInputSource(publicId, literalSystemId, baseSystemId, false);
         }
 
         if (DEBUG_RESOLVER) {
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java
index b42695f..d1af91a 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java
@@ -139,7 +139,7 @@
     public XMLStreamReaderImpl(String systemid, PropertyManager props) throws  XMLStreamException {
         init(props);
         //publicId, systemid, baseSystemId, inputStream, enocding
-        XMLInputSource inputSource = new XMLInputSource(null,systemid,null);
+        XMLInputSource inputSource = new XMLInputSource(null, systemid, null, false);
         //pass the input source to document scanner impl.
         setInputSource(inputSource);
     }
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties
index 19c4ba1..d3221c5 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DOMMessages_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
 #
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: DOMMessages_de.properties /st_wptg_1.8.0.0.0jdk/2 2013/05/29 01:16:51 gmolloy Exp $
+# @version $Id: DOMMessages_de.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/13 06:43:54 gmolloy Exp $
 
         BadMessageKey = Die zum Meldungsschl\u00FCssel geh\u00F6rige Fehlermeldung kann nicht gefunden werden.
         FormatFailed = Beim Formatieren der folgenden Meldung ist ein interner Fehler aufgetreten:\n  
@@ -52,7 +52,7 @@
 SYNTAX_ERR = Ung\u00FCltige Zeichenfolge angegeben. 
 VALIDATION_ERR = Aufruf einer Methode wie insertBefore oder removeChild w\u00FCrde die Dokumentgrammatik des Knotens ung\u00FCltig machen.
 WRONG_DOCUMENT_ERR = Ein Knoten wird in einem anderen Dokument verwendet als dem, von dem er erstellt wurde.
-TYPE_MISMATCH_ERR = Der Wertetyp f\u00FCr diesen Parameternamen ist nicht mit dem erwarteten Wertetyp kompatibel. 
+TYPE_MISMATCH_ERR = Der Werttyp f\u00FCr diesen Parameternamen ist nicht mit dem erwarteten Werttyp kompatibel. 
  
 #error messages or exceptions
 FEATURE_NOT_SUPPORTED = Parameter {0} wird erkannt, aber der angeforderte Wert kann nicht festgelegt werden.
@@ -68,7 +68,7 @@
 
 #Error codes used in DOM Normalizer
 InvalidXMLCharInDOM = Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde bei der Normalisierung im DOM gefunden.
-UndeclaredEntRefInAttrValue = Attribut "{0}" Wert "{1}" referenzierte eine nicht deklarierte Entit\u00E4t.
+UndeclaredEntRefInAttrValue = Attribut "{0}" Wert "{1}" referenzierte eine nicht deklarierte Entity.
 NullLocalElementName = Lokaler Nullname wurde bei der Namespace-Normalisierung von Element {0} gefunden.
 NullLocalAttrName = Lokaler Nullname wurde bei der Namespace-Normalisierung von Attribut {0} gefunden.
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties
index dd2442b..43873ec 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/DatatypeMessages_zh_TW.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,7 @@
 #
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: DatatypeMessages_zh_TW.properties /st_wptg_1.8.0.0.0jdk/2 2013/05/27 00:30:48 gmolloy Exp $
+# @version $Id: DatatypeMessages_zh_TW.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/11 20:46:43 gmolloy Exp $
 
 BadMessageKey = \u627E\u4E0D\u5230\u5C0D\u61C9\u8A0A\u606F\u7D22\u5F15\u9375\u7684\u932F\u8AA4\u8A0A\u606F\u3002
 FormatFailed = \u683C\u5F0F\u5316\u4E0B\u5217\u8A0A\u606F\u6642\u767C\u751F\u5167\u90E8\u932F\u8AA4:\n
@@ -35,9 +35,9 @@
 FieldCannotBeNull=\u7121\u6CD5\u4F7F\u7528 ''null'' \u53C3\u6578\u547C\u53EB {0}
 UnknownField=\u4F7F\u7528\u4E0D\u660E\u7684\u6B04\u4F4D\u547C\u53EB {0}:{1}
 #There are two similar keys 'InvalidXMLGreogorianCalendarValue' . Suffix (year, month) has been added and are used as per the context.
-InvalidXGCValue-milli=\u5E74 = {0}\u3001\u6708 = {1}\uFF0C\u65E5 = {2}\uFF0C\u5C0F\u6642 = {3}\uFF0C\u5206\u9418\uFF0C = {4}\uFF0C\u79D2 = {5}\uFF0C\u5C0F\u6578\u79D2 = {6}\uFF0C\u6642\u5340\uFF0C = {7}\uFF0C\u4E0D\u662F XML \u516C\u66C6\u503C\u7684\u6709\u6548\u8868\u793A\u6CD5\u3002
+InvalidXGCValue-milli=\u5E74 = {0}\u3001\u6708 = {1}\u3001\u65E5 = {2}\u3001\u5C0F\u6642 = {3}\u3001\u5206\u9418 = {4}\u3001\u79D2 = {5}\u3001\u5C0F\u6578\u79D2 = {6}\u3001\u6642\u5340 = {7}\uFF0C\u4E0D\u662F XML \u516C\u66C6\u503C\u7684\u6709\u6548\u8868\u793A\u6CD5\u3002
 #There are two similar keys 'InvalidXMLGreogorianCalendarValue' . Suffix (year, month) has been added and are used as per the context.
-InvalidXGCValue-fractional=\u5E74 = {0}\u3001\u6708 = {1}\uFF0C\u65E5 = {2}\uFF0C\u5C0F\u6642 = {3}\uFF0C\u5206\u9418\uFF0C = {4}\uFF0C\u79D2 = {5}\uFF0C\u5C0F\u6578\u79D2 = {6}\uFF0C\u6642\u5340\uFF0C = {7}\uFF0C\u4E0D\u662F XML \u516C\u66C6\u503C\u7684\u6709\u6548\u8868\u793A\u6CD5\u3002
+InvalidXGCValue-fractional=\u5E74 = {0}\u3001\u6708 = {1}\u3001\u65E5 = {2}\u3001\u5C0F\u6642 = {3}\u3001\u5206\u9418 = {4}\u3001\u79D2 = {5}\u3001\u5C0F\u6578\u79D2 = {6}\u3001\u6642\u5340 = {7}\uFF0C\u4E0D\u662F XML \u516C\u66C6\u503C\u7684\u6709\u6548\u8868\u793A\u6CD5\u3002
 
 InvalidXGCFields=XMLGregorianCalendar \u8A2D\u5B9A\u4E86\u7121\u6548\u7684\u6B04\u4F4D\u96C6
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties
index 9542510..3641fec 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
 #
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: SAXMessages_pt_BR.properties /st_wptg_1.8.0.0.0jdk/2 2013/05/28 07:33:06 gmolloy Exp $
+# @version $Id: SAXMessages_pt_BR.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/12 18:01:34 gmolloy Exp $
 
 
 BadMessageKey = N\u00E3o foi poss\u00EDvel encontrar a mensagem de erro correspondente \u00E0 chave da mensagem.
@@ -57,5 +57,5 @@
 
 start-document-not-called=A propriedade "{0}" deve ser chamada ap\u00F3s o evento startDocument ser lan\u00E7ado
 nullparameter=o par\u00E2metro de nome de "{0}" \u00E9 nulo
-errorHandlerNotSet=Advert\u00EAncia: A valida\u00E7\u00E3o foi ativada, mas um org.xml.sax.ErrorHandler n\u00E3o foi definido, provavelmente porque n\u00E3o era necess\u00E1rio. O parser usar\u00E1 um ErrorHandler default para imprimir os primeiros {0} erros. Chame o m\u00E9todo ''setErrorHandler'' para corrigir o problema.
+errorHandlerNotSet=Advert\u00EAncia: A valida\u00E7\u00E3o foi ativada, mas um org.xml.sax.ErrorHandler n\u00E3o foi definido, provavelmente porque n\u00E3o era necess\u00E1rio. O parser usar\u00E1 um ErrorHandler padr\u00E3o para imprimir os primeiros {0} erros. Chame o m\u00E9todo ''setErrorHandler'' para corrigir o problema.
 errorHandlerDebugMsg=Erro: URI = "{0}", Linha = "{1}", : {2} 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties
index 1a5df98..b4f1f00 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/SAXMessages_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
 #
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: SAXMessages_sv.properties /st_wptg_1.8.0.0.0jdk/2 2013/05/29 00:46:23 gmolloy Exp $
+# @version $Id: SAXMessages_sv.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
 
 
 BadMessageKey = Hittar inte felmeddelandet som motsvarar meddelandenyckeln.
@@ -42,8 +42,8 @@
 # feature messages
 feature-not-supported = Funktionen ''{0}'' st\u00F6ds inte.
 feature-not-recognized = Funktionen ''{0}'' \u00E4r ok\u00E4nd.
-true-not-supported = True-status f\u00F6r funktionen ''{0}'' st\u00F6ds inte.
-false-not-supported = False-status f\u00F6r funktionen ''{0}'' st\u00F6ds inte.
+true-not-supported = True-tillst\u00E5nd f\u00F6r funktionen ''{0}'' st\u00F6ds inte.
+false-not-supported = False-tillst\u00E5nd f\u00F6r funktionen ''{0}'' st\u00F6ds inte.
 feature-read-only = Funktionen ''{0}'' \u00E4r skrivskyddad.
 jaxp-secureprocessing-feature = FEATURE_SECURE_PROCESSING: Funktionen kan inte anges till false om s\u00E4kerhetshanteraren anv\u00E4nds.
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties
index 6bb6ceb..45c47c6 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -42,17 +42,17 @@
 NO_XPointerSchema = Schema f\u00FCr "{0}" wird standardm\u00E4\u00DFig nicht unterst\u00FCtzt. Definieren Sie Ihr eigenes Schema f\u00FCr {0}. Siehe http://apache.org/xml/properties/xpointer-schema
 NO_SubResourceIdentified = Keine Subressource von XPointer-Prozessor f\u00FCr Zeiger {0} identifiziert.
 NonDuplicateNotation = Mehrere Notationen mit dem Namen "{0}" wurden verwendet, die aber nicht als Duplikate ermittelt wurden.
-NonDuplicateUnparsedEntity = Mehrere nicht geparste Entit\u00E4ten mit dem Namen "{0}" wurden verwendet, die aber nicht als Duplikate ermittelt wurden.
+NonDuplicateUnparsedEntity = Mehrere nicht geparste Entitys mit dem Namen "{0}" wurden verwendet, die aber nicht als Duplikate ermittelt wurden.
 XpointerMissing = xpointer-Attribut muss vorhanden sein, wenn href-Attribut fehlt.
 AcceptMalformed = Zeichen au\u00DFerhalb des Bereichs #x20 bis #x7E sind im Wert des "accept"-Attributs eines "include"-Elements nicht zul\u00E4ssig.
 AcceptLanguageMalformed = Zeichen au\u00DFerhalb des Bereichs #x20 bis #x7E sind im Wert des "accept-language"-Attributs eines "include"-Elements nicht zul\u00E4ssig.
 RootElementRequired = F\u00FCr ein ordnungsgem\u00E4\u00DF formatiertes Dokument ist ein Root-Element erforderlich.
 MultipleRootElements = Ein ordnungsgem\u00E4\u00DF formatiertes Dokument darf nicht mehrere Root-Elemente enthalten.
 ContentIllegalAtTopLevel = Der Ersatz eines "include"-Elements, das als Dokumentelement im Quell-Infoset der obersten Ebene angezeigt wird, darf keine Zeichen enthalten.
-UnexpandedEntityReferenceIllegal = Der Ersatz eines "include"-Elements, das als Dokumentelement im Quell-Infoset der obersten Ebene angezeigt wird, darf keine nicht erweiterten Entit\u00E4tsreferenzen enthalten.
+UnexpandedEntityReferenceIllegal = Der Ersatz eines "include"-Elements, das als Dokumentelement im Quell-Infoset der obersten Ebene angezeigt wird, darf keine nicht erweiterten Entityreferenzen enthalten.
 HrefFragmentIdentifierIllegal = Fragment-IDs d\u00FCrfen nicht verwendet werden. Der "href"-Attributwert "{0}" ist nicht zul\u00E4ssig.
 HrefSyntacticallyInvalid = "href"-Attributwert "{0}" hat eine ung\u00FCltige Syntax. Nach Anwenden der Escape-Regeln ist der Wert kein syntaktisch korrekter URI oder IRI.
-XPointerStreamability = Es wurde ein xpointer angegeben, der auf eine Stelle im Quell-Infoset verweist. Auf diese Stelle kann aufgrund des Streaming-Charakters des Prozessors nicht zugegriffen werden.
+XPointerStreamability = Es wurde ein xpointer angegeben, der auf eine Stelle im Quell-Infoset verweist. Auf diese Stelle kann aufgrund des Streamingcharakters des Prozessors nicht zugegriffen werden.
 
 XPointerResolutionUnsuccessful = XPointer-Aufl\u00F6sung nicht erfolgreich.
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties
index c40d334..3a09b10 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XIncludeMessages_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -39,7 +39,7 @@
 XMLParseError = Erro ao tentar fazer parse do arquivo XML (href=''{0}''). Motivo: {1}
 XMLResourceError = Falha na opera\u00E7\u00E3o de inclus\u00E3o; revertendo para fallback. Erro do recurso ao ler o arquivo como XML (href=''{0}''). Motivo: {1}
 TextResourceError = Falha na opera\u00E7\u00E3o de inclus\u00E3o; revertendo para fallback. Erro do recurso ao ler o arquivo como texto (href=''{0}''). Motivo: {1}
-NO_XPointerSchema = Por default, o esquema para "{0}" n\u00E3o \u00E9 suportado. Defina seu pr\u00F3prio esquema para {0}. Consulte http://apache.org/xml/properties/xpointer-schema
+NO_XPointerSchema = Por padr\u00E3o, o esquema para "{0}" n\u00E3o \u00E9 suportado. Defina seu pr\u00F3prio esquema para {0}. Consulte http://apache.org/xml/properties/xpointer-schema
 NO_SubResourceIdentified = Nenhum Sub-recurso foi identificado pelo Processador XPointer do Ponteiro {0}.
 NonDuplicateNotation = Foram usadas v\u00E1rias nota\u00E7\u00F5es que tinham o nome ''{0}'', mas n\u00E3o foram determinadas como duplica\u00E7\u00F5es.
 NonDuplicateUnparsedEntity = Foram usadas v\u00E1rias entidades que tinham o nome ''{0}'', mas n\u00E3o foram determinadas como duplica\u00E7\u00F5es.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties
index 55c9d3a..ce72953 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties
@@ -62,9 +62,9 @@
 # 4.1 Character and Entity References
         ReferenceUnterminated = Referenz muss mit einem ";"-Begrenzungszeichen beendet werden.
 # 4.3.2 Well-Formed Parsed Entities
-        ReferenceNotInOneEntity = Referenz muss vollst\u00E4ndig in derselben geparsten Entit\u00E4t enthalten sein.
-        ElementEntityMismatch = Element "{0}" muss innerhalb derselben Entit\u00E4t beginnen und enden.
-        MarkupEntityMismatch=XML-Dokumentstrukturen m\u00FCssen innerhalb derselben Entit\u00E4t beginnen und enden.
+        ReferenceNotInOneEntity = Referenz muss vollst\u00E4ndig in derselben geparsten Entity enthalten sein.
+        ElementEntityMismatch = Element "{0}" muss innerhalb derselben Entity beginnen und enden.
+        MarkupEntityMismatch=XML-Dokumentstrukturen m\u00FCssen innerhalb derselben Entity beginnen und enden.
         
 # Messages common to Document and DTD
 # 2.2 Characters
@@ -81,27 +81,27 @@
         InvalidCommentStart = Kommentar muss mit "<!--" beginnen.
         DashDashInComment = Zeichenfolge "--" ist in Kommentaren nicht zul\u00E4ssig.
         CommentUnterminated = Kommentar muss mit "-->" enden.
-        COMMENT_NOT_IN_ONE_ENTITY = Kommentar ist nicht in derselben Entit\u00E4t enthalten.
+        COMMENT_NOT_IN_ONE_ENTITY = Kommentar ist nicht in derselben Entity enthalten.
 # 2.6 Processing Instructions
         PITargetRequired = Verarbeitungsanweisung muss mit dem Namen des Ziels beginnen.
         SpaceRequiredInPI = Leerstelle ist zwischen dem Ziel der Verarbeitungsanweisung und den Daten erforderlich.
         PIUnterminated = Verarbeitungsanweisung muss mit "?>" enden.
         ReservedPITarget = Verarbeitungsanweisungsziel, das "[xX][mM][lL]" entspricht, ist nicht zul\u00E4ssig.
-        PI_NOT_IN_ONE_ENTITY = Verarbeitungsanweisung ist nicht in derselben Entit\u00E4t enthalten.
+        PI_NOT_IN_ONE_ENTITY = Verarbeitungsanweisung ist nicht in derselben Entity enthalten.
 # 2.8 Prolog and Document Type Declaration
         VersionInfoInvalid = Ung\u00FCltige Version "{0}".
         VersionNotSupported = XML-Version "{0}" wird nicht unterst\u00FCtzt. Nur XML 1.0 wird unterst\u00FCtzt.
         VersionNotSupported11 = XML-Version "{0}" wird nicht unterst\u00FCtzt. Nur XML 1.0 und XML 1.1 werden unterst\u00FCtzt.
-        VersionMismatch= Eine Entit\u00E4t kann keine andere Entit\u00E4t einer sp\u00E4teren Version enthalten.
+        VersionMismatch= Eine Entity kann keine andere Entity einer sp\u00E4teren Version enthalten.
 # 4.1 Character and Entity References
         DigitRequiredInCharRef = Auf "&#" in einer Zeichenreferenz muss umgehend eine Dezimaldarstellung folgen.
         HexdigitRequiredInCharRef = Auf "&#x" in einer Zeichenreferenz muss umgehend eine hexadezimale Darstellung folgen.
         SemicolonRequiredInCharRef = Zeichenreferenz muss mit dem Begrenzungszeichen ";" enden.
         InvalidCharRef = Zeichenreferenz "&#{0}" ist ein ung\u00FCltiges XML-Zeichen.
-        NameRequiredInReference = Auf "&" in der Entit\u00E4tsreferenz muss umgehend der Entit\u00E4tsname folgen.
-        SemicolonRequiredInReference = Referenz zu Entit\u00E4t "{0}" muss mit dem Begrenzungszeichen ";" enden.
+        NameRequiredInReference = Auf "&" in der Entityreferenz muss umgehend der Entityname folgen.
+        SemicolonRequiredInReference = Referenz zu Entity "{0}" muss mit dem Begrenzungszeichen ";" enden.
 # 4.3.1 The Text Declaration
-        TextDeclMustBeFirst = Textdeklaration darf nur ganz am Anfang der externen geparsten Entit\u00E4t enthalten sein.
+        TextDeclMustBeFirst = Textdeklaration darf nur ganz am Anfang der externen geparsten Entity enthalten sein.
         EqRequiredInTextDecl = Zeichen " = " muss auf "{0}" in der Textdeklaration folgen.
         QuoteRequiredInTextDecl = Der Wert nach "{0}" in der Textdeklaration muss eine Zeichenfolge in Anf\u00FChrungszeichen sein.
         CloseQuoteMissingInTextDecl = Schlie\u00DFendes Anf\u00FChrungszeichen im Wert nach "{0}" in der Textdeklaration fehlt.
@@ -113,8 +113,8 @@
         MorePseudoAttributes = Es werden weitere Pseudoattribute erwartet.
         PseudoAttrNameExpected = Pseudoattributname wird erwartet. 
 # 4.3.2 Well-Formed Parsed Entities
-        CommentNotInOneEntity = Kommentar muss vollst\u00E4ndig in derselben geparsten Entit\u00E4t enthalten sein.
-        PINotInOneEntity = Verarbeitungsanweisung muss vollst\u00E4ndig in derselben geparsten Entit\u00E4t enthalten sein.
+        CommentNotInOneEntity = Kommentar muss vollst\u00E4ndig in derselben geparsten Entity enthalten sein.
+        PINotInOneEntity = Verarbeitungsanweisung muss vollst\u00E4ndig in derselben geparsten Entity enthalten sein.
 # 4.3.3 Character Encoding in Entities
         EncodingDeclInvalid = Ung\u00FCltiger Codierungsname "{0}".
         EncodingByteOrderUnsupported = Angegebene Bytereihenfolge f\u00FCr die Codierung von "{0}" wird nicht unterst\u00FCtzt.
@@ -123,11 +123,11 @@
         InvalidHighSurrogate = High-Surrogate-Bits in UTF-8-Sequenz d\u00FCrfen 0x10 nicht \u00FCberschreiten, gefunden wurde aber 0x{0}.
         OperationNotSupported = Vorgang "{0}" nicht unterst\u00FCtzt von {1}-Reader.
         InvalidASCII = Byte "{0}" geh\u00F6rt nicht zum (7-Bit) ASCII-Zeichensatz.
-        CharConversionFailure = Eine Entit\u00E4t, f\u00FCr die eine bestimmte Codierung ermittelt wurde, darf keine Sequenzen enthalten, die in dieser Codierung ung\u00FCltig sind.
+        CharConversionFailure = Eine Entity, f\u00FCr die eine bestimmte Codierung ermittelt wurde, darf keine Sequenzen enthalten, die in dieser Codierung ung\u00FCltig sind.
         
 # DTD Messages
 # 2.2 Characters
-        InvalidCharInEntityValue = Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde im literalen Entit\u00E4tswert gefunden.
+        InvalidCharInEntityValue = Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde im literalen Entitywert gefunden.
         InvalidCharInExternalSubset = Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde in der externen Teilmenge der DTD gefunden.
         InvalidCharInIgnoreSect = Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde im ausgeschlossenen Bedingungsabschnitt gefunden.
         InvalidCharInPublicID = Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde in der \u00F6ffentlichen ID gefunden.
@@ -145,8 +145,7 @@
         MSG_SPACE_REQUIRED_BEFORE_ROOT_ELEMENT_TYPE_IN_DOCTYPEDECL = Leerstelle nach "<!DOCTYPE" in der Dokumenttypdeklaration erforderlich.
         MSG_ROOT_ELEMENT_TYPE_REQUIRED = Root-Elementtyp muss nach "<!DOCTYPE" in der Dokumenttypdeklaration enthalten sein.
         DoctypedeclUnterminated = Dokumenttypdeklaration f\u00FCr Root-Elementtyp "{0}" muss mit ">" enden.
-        DoctypedeclNotClosed = Dokumenttypdeklaration f\u00FCr Root-Elementtyp "{0}" muss mit "]" abgeschlossen werden.
-        PEReferenceWithinMarkup = Parameterentit\u00E4tsreferenz "%{0};" darf nicht in Markup in der internen Teilmenge der DTD vorkommen.
+        PEReferenceWithinMarkup = Parameterentityreferenz "%{0};" darf nicht in Markup in der internen Teilmenge der DTD vorkommen.
         MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = Die Markup-Deklarationen, die in der Dokumenttypdeklaration enthalten sind bzw. auf die von der Dokumenttypdeklaration verwiesen wird, m\u00FCssen ordnungsgem\u00E4\u00DF formatiert sein.
 # 2.10 White Space Handling
         MSG_XML_SPACE_DECLARATION_ILLEGAL = Attributdeklaration f\u00FCr "xml:space" muss als aufgez\u00E4hlter Typ angegeben werden, dessen einzigen m\u00F6glichen Werte "default" und "preserve" sind.
@@ -187,21 +186,21 @@
         IncludeSectUnterminated = Der eingeschlossene Bedingungsabschnitt muss mit "]]>" enden.
         IgnoreSectUnterminated = Der ausgeschlossene Bedingungsabschnitt muss mit "]]>" enden.
 # 4.1 Character and Entity References
-        NameRequiredInPEReference = Auf "%" in der Parameterentit\u00E4tsreferenz muss umgehend der Entit\u00E4tsname folgen.
-        SemicolonRequiredInPEReference = Parameterentit\u00E4tsreferenz "%{0};" muss mit dem Begrenzungszeichen ";" enden.
+        NameRequiredInPEReference = Auf "%" in der Parameterentityreferenz muss umgehend der Entityname folgen.
+        SemicolonRequiredInPEReference = Parameterentityreferenz "%{0};" muss mit dem Begrenzungszeichen ";" enden.
 # 4.2 Entity Declarations
-        MSG_SPACE_REQUIRED_BEFORE_ENTITY_NAME_IN_ENTITYDECL = Leerstelle nach "<!ENTITY" in der Entit\u00E4tsdeklaration erforderlich.
-        MSG_SPACE_REQUIRED_BEFORE_PERCENT_IN_PEDECL = Leerstelle zwischen "<!ENTITY" und dem Zeichen "%" in der Parameterentit\u00E4tsdeklaration erforderlich.
-        MSG_SPACE_REQUIRED_BEFORE_ENTITY_NAME_IN_PEDECL = Leerstelle zwischen "%" und dem Entit\u00E4tsnamen in der Parameterentit\u00E4tsdeklaration erforderlich.
-        MSG_ENTITY_NAME_REQUIRED_IN_ENTITYDECL = Name der Entit\u00E4t ist in der Entit\u00E4tsdeklaration erforderlich.
-        MSG_SPACE_REQUIRED_AFTER_ENTITY_NAME_IN_ENTITYDECL = Leerstelle zwischen dem Entit\u00E4tsnamen "{0}" und der Definition in der Entit\u00E4tsdeklaration erforderlich.
-        MSG_SPACE_REQUIRED_BEFORE_NOTATION_NAME_IN_UNPARSED_ENTITYDECL = Leerstelle zwischen "NDATA" und dem Notationsnamen in der Deklaration f\u00FCr die Entit\u00E4t "{0} erforderlich.
-        MSG_SPACE_REQUIRED_BEFORE_NDATA_IN_UNPARSED_ENTITYDECL = Leerstelle vor "NDATA" in der Deklaration f\u00FCr die Entit\u00E4t "{0} erforderlich.
-        MSG_NOTATION_NAME_REQUIRED_FOR_UNPARSED_ENTITYDECL = Notationsname ist nach "NDATA" in der Deklaration f\u00FCr die Entit\u00E4t "{0} erforderlich.
-        EntityDeclUnterminated = Deklaration f\u00FCr Entit\u00E4t "{0}" muss mit ">" enden.
-	MSG_DUPLICATE_ENTITY_DEFINITION = Entit\u00E4t "{0}" wurde mehrmals deklariert.        
+        MSG_SPACE_REQUIRED_BEFORE_ENTITY_NAME_IN_ENTITYDECL = Leerstelle nach "<!ENTITY" in der Entitydeklaration erforderlich.
+        MSG_SPACE_REQUIRED_BEFORE_PERCENT_IN_PEDECL = Leerstelle zwischen "<!ENTITY" und dem Zeichen "%" in der Parameterentitydeklaration erforderlich.
+        MSG_SPACE_REQUIRED_BEFORE_ENTITY_NAME_IN_PEDECL = Leerstelle zwischen "%" und dem Entitynamen in der Parameterentitydeklaration erforderlich.
+        MSG_ENTITY_NAME_REQUIRED_IN_ENTITYDECL = Name der Entity ist in der Entitydeklaration erforderlich.
+        MSG_SPACE_REQUIRED_AFTER_ENTITY_NAME_IN_ENTITYDECL = Leerstelle zwischen dem Entitynamen "{0}" und der Definition in der Entitydeklaration erforderlich.
+        MSG_SPACE_REQUIRED_BEFORE_NOTATION_NAME_IN_UNPARSED_ENTITYDECL = Leerstelle zwischen "NDATA" und dem Notationsnamen in der Deklaration f\u00FCr die Entity "{0} erforderlich.
+        MSG_SPACE_REQUIRED_BEFORE_NDATA_IN_UNPARSED_ENTITYDECL = Leerstelle vor "NDATA" in der Deklaration f\u00FCr die Entity "{0} erforderlich.
+        MSG_NOTATION_NAME_REQUIRED_FOR_UNPARSED_ENTITYDECL = Notationsname ist nach "NDATA" in der Deklaration f\u00FCr die Entity "{0} erforderlich.
+        EntityDeclUnterminated = Deklaration f\u00FCr Entity "{0}" muss mit ">" enden.
+	MSG_DUPLICATE_ENTITY_DEFINITION = Entity "{0}" wurde mehrmals deklariert.        
 # 4.2.2 External Entities
-        ExternalIDRequired = Externe Entit\u00E4tsdeklaration muss mit "SYSTEM" oder "PUBLIC" beginnen.
+        ExternalIDRequired = Externe Entitydeklaration muss mit "SYSTEM" oder "PUBLIC" beginnen.
         MSG_SPACE_REQUIRED_BEFORE_PUBIDLITERAL_IN_EXTERNALID = Leerstelle zwischen "PUBLIC" und der \u00F6ffentlichen ID erforderlich.
         MSG_SPACE_REQUIRED_AFTER_PUBIDLITERAL_IN_EXTERNALID = Leerstelle zwischen der \u00F6ffentlichen ID und der System-ID erforderlich.
         MSG_SPACE_REQUIRED_BEFORE_SYSTEMLITERAL_IN_EXTERNALID = Leerstelle zwischen "SYSTEM" und der System-ID erforderlich.
@@ -215,8 +214,8 @@
         
 # Validation messages
         DuplicateTypeInMixedContent = Elementtyp "{1}" wurde bereits im Contentmodell der Elementdeklaration"{0}" angegeben.
-        ENTITIESInvalid = Attributwert "{1}" mit dem Typ ENTITIES muss aus den Namen von mindestens einer geparsten Entit\u00E4t bestehen.
-        ENTITYInvalid = Attributwert "{1}" mit dem Typ ENTITY muss aus dem Namen einer geparsten Entit\u00E4t bestehen.
+        ENTITIESInvalid = Attributwert "{1}" mit dem Typ ENTITIES muss aus den Namen von mindestens einer geparsten Entity bestehen.
+        ENTITYInvalid = Attributwert "{1}" mit dem Typ ENTITY muss aus dem Namen einer geparsten Entity bestehen.
         IDDefaultTypeInvalid = ID-Attribut "{0}" muss den deklarierten Standardwert "#IMPLIED" oder "#REQUIRED" haben.
         IDInvalid = Attributwert "{0}" mit dem Typ ID muss ein Name sein.
         IDInvalidWithNamespaces = Attributwert "{0}" mit dem Typ ID muss ein NCName sein, wenn Namespaces aktiviert sind.
@@ -224,10 +223,10 @@
         IDREFInvalid = Attributwert "{0}" mit dem Typ IDREF muss ein Name sein.
         IDREFInvalidWithNamespaces = Attributwert "{0}" mit dem Typ IDREF muss ein NCName sein, wenn Namespaces aktiviert sind.
         IDREFSInvalid = Attributwert "{0}" mit dem Typ IDREFS muss mindestens ein Name sein.
-        ILL_FORMED_PARAMETER_ENTITY_WHEN_USED_IN_DECL = Ersatztext der Parameterentit\u00E4t "{0}" muss ordnungsgem\u00E4\u00DF verschachtelte Deklarationen enthalten, wenn die Entit\u00E4tsreferenz als vollst\u00E4ndige Deklaration verwendet wird.
-        ImproperDeclarationNesting = Ersatztext der Parameterentit\u00E4t "{0}" muss ordnungsgem\u00E4\u00DF verschachtelte Deklarationen enthalten.
-        ImproperGroupNesting = Ersatztext der Parameterentit\u00E4t "{0}" muss ordnungsgem\u00E4\u00DF verschachtelte Klammernpaare enthalten.
-        INVALID_PE_IN_CONDITIONAL = Ersatztext der Parameterentit\u00E4t "{0}" muss den gesamten Bedingungsabschnitt oder nur INCLUDE oder IGNORE enthalten.
+        ILL_FORMED_PARAMETER_ENTITY_WHEN_USED_IN_DECL = Ersatztext der Parameterentity "{0}" muss ordnungsgem\u00E4\u00DF verschachtelte Deklarationen enthalten, wenn die Entityreferenz als vollst\u00E4ndige Deklaration verwendet wird.
+        ImproperDeclarationNesting = Ersatztext der Parameterentity "{0}" muss ordnungsgem\u00E4\u00DF verschachtelte Deklarationen enthalten.
+        ImproperGroupNesting = Ersatztext der Parameterentity "{0}" muss ordnungsgem\u00E4\u00DF verschachtelte Klammernpaare enthalten.
+        INVALID_PE_IN_CONDITIONAL = Ersatztext der Parameterentity "{0}" muss den gesamten Bedingungsabschnitt oder nur INCLUDE oder IGNORE enthalten.
         MSG_ATTRIBUTE_NOT_DECLARED = Attribut "{1}" muss f\u00FCr Elementtyp "{0}" deklariert werden.
         MSG_ATTRIBUTE_VALUE_NOT_IN_LIST = Attribut "{0}" mit Wert "{1}" muss einen Wert aus der Liste "{2}" haben.
         MSG_ATTVALUE_CHANGED_DURING_NORMALIZATION_WHEN_STANDALONE = Der Wert "{1}" des Attributs "{0}" darf nicht von der Normalisierung (zu "{2}") in einem Standalone-Dokument ge\u00E4ndert werden.
@@ -240,19 +239,19 @@
         MSG_ELEMENT_NOT_DECLARED = Elementtyp "{0}" muss deklariert werden.
         MSG_GRAMMAR_NOT_FOUND = Dokument ist ung\u00FCltig. Keine Grammatik gefunden.
         MSG_ELEMENT_WITH_ID_REQUIRED = Element mit "{0}" ist im Dokument erforderlich.
-        MSG_EXTERNAL_ENTITY_NOT_PERMITTED = Referenz zur externen Entit\u00E4t "{0}" ist in einem Standalone-Dokument nicht zul\u00E4ssig.
+        MSG_EXTERNAL_ENTITY_NOT_PERMITTED = Referenz zur externen Entity "{0}" ist in einem Standalone-Dokument nicht zul\u00E4ssig.
         MSG_FIXED_ATTVALUE_INVALID = Attribut "{1}" mit Wert "{2}" muss den Wert"{3}" haben.
         MSG_MORE_THAN_ONE_ID_ATTRIBUTE = Elementtyp "{0}" hat bereits ein Attribut "{1}" mit dem Typ ID. Ein zweites Attribut "{2}" mit dem Typ ID ist nicht zul\u00E4ssig.
         MSG_MORE_THAN_ONE_NOTATION_ATTRIBUTE = Elementtyp "{0}" hat bereits ein Attribut "{1}" mit dem Typ NOTATION. Ein zweites Attribut "{2}" mit dem Typ NOTATION ist nicht zul\u00E4ssig.
         MSG_NOTATION_NOT_DECLARED_FOR_NOTATIONTYPE_ATTRIBUTE = Notation "{1}" muss deklariert werden, wenn sie in der Notationstypliste f\u00FCr Attribut "{0}" referenziert wird.
-        MSG_NOTATION_NOT_DECLARED_FOR_UNPARSED_ENTITYDECL = Notation "{1}" muss deklariert werden, wenn sie in der Deklaration der nicht geparsten Entit\u00E4t f\u00FCr "{0}" referenziert wird.
-        MSG_REFERENCE_TO_EXTERNALLY_DECLARED_ENTITY_WHEN_STANDALONE = Referenz zur Entit\u00E4t "{0}", die in einer externen geparsten Entit\u00E4t deklariert wird, ist in einem Standalone-Dokument nicht zul\u00E4ssig.
+        MSG_NOTATION_NOT_DECLARED_FOR_UNPARSED_ENTITYDECL = Notation "{1}" muss deklariert werden, wenn sie in der Deklaration der nicht geparsten Entity f\u00FCr "{0}" referenziert wird.
+        MSG_REFERENCE_TO_EXTERNALLY_DECLARED_ENTITY_WHEN_STANDALONE = Referenz zur Entity "{0}", die in einer externen geparsten Entity deklariert wird, ist in einem Standalone-Dokument nicht zul\u00E4ssig.
         MSG_REQUIRED_ATTRIBUTE_NOT_SPECIFIED = Attribut "{1}" ist erforderlich und muss f\u00FCr Elementtyp "{0}" angegeben werden.
-        MSG_WHITE_SPACE_IN_ELEMENT_CONTENT_WHEN_STANDALONE = Es d\u00FCrfen keine Leerstellen zwischen Elementen in einem Standalone-Dokument vorkommen, die in einer externen geparsten Entit\u00E4t mit Elementcontent deklariert sind.
+        MSG_WHITE_SPACE_IN_ELEMENT_CONTENT_WHEN_STANDALONE = Es d\u00FCrfen keine Leerstellen zwischen Elementen in einem Standalone-Dokument vorkommen, die in einer externen geparsten Entity mit Elementcontent deklariert sind.
         NMTOKENInvalid = Attributwert "{0}" mit dem Typ NMTOKEN muss ein Namenstoken sein.
         NMTOKENSInvalid = Attributwert "{0}" mit dem Typ NMTOKENS muss mindestens ein Namenstoken sein.
         NoNotationOnEmptyElement = Elementtyp "{0}", der als EMPTY deklariert wurde, kann nicht das Attribut "{1}" mit dem Typ NOTATION deklarieren.
-        RootElementTypeMustMatchDoctypedecl = Dokument-Root-Element "{1}"muss mit DOCTYPE-Root "{0}" \u00FCbereinstimmen.
+        RootElementTypeMustMatchDoctypedecl = Document Root-Element "{1}"muss mit DOCTYPE-Root "{0}" \u00FCbereinstimmen.
         UndeclaredElementInContentSpec = Contentmodell des Elements "{0}" verweist auf das nicht deklarierte Element "{1}".
         UniqueNotationName = Deklaration f\u00FCr die Notation "{0}" ist nicht eindeutig. Ein jeweiliger Name darf nicht in mehreren Notationsdeklarationen deklariert werden.
         ENTITYFailedInitializeGrammar =  ENTITYDatatype-Validator: Nicht erfolgreich. Initialisierungsmethode muss mit einer g\u00FCltigen Grammatikreferenz aufgerufen werden. \t
@@ -262,19 +261,19 @@
 
 # Entity related messages
 # 3.1 Start-Tags, End-Tags, and Empty-Element Tags
-        ReferenceToExternalEntity = Externe Entit\u00E4tsreferenz "&{0};" ist in einem Attributwert nicht zul\u00E4ssig.
+        ReferenceToExternalEntity = Externe Entityreferenz "&{0};" ist in einem Attributwert nicht zul\u00E4ssig.
         AccessExternalDTD = Externe DTD: Lesen von externer DTD "{0}" nicht erfolgreich, da "{1}"-Zugriff wegen der von der Eigenschaft "accessExternalDTD" festgelegten Einschr\u00E4nkung nicht zul\u00E4ssig ist.
-        AccessExternalEntity = Externe Entit\u00E4t: Lesen des externen Dokuments "{0}" nicht erfolgreich, da "{1}"-Zugriff wegen der von der Eigenschaft "accessExternalDTD" festgelegten Einschr\u00E4nkung nicht zul\u00E4ssig ist.
+        AccessExternalEntity = Externe Entity: Lesen des externen Dokuments "{0}" nicht erfolgreich, da "{1}"-Zugriff wegen der von der Eigenschaft "accessExternalDTD" festgelegten Einschr\u00E4nkung nicht zul\u00E4ssig ist.
 
 # 4.1 Character and Entity References
-        EntityNotDeclared = Entit\u00E4t "{0}" wurde referenziert aber nicht deklariert.
-        ReferenceToUnparsedEntity = Nicht geparste Entit\u00E4tsreferenz "&{0};" ist nicht zul\u00E4ssig.
-        RecursiveReference = Rekursive Entit\u00E4tsreferenz "{0}". (Referenzpfad: {1}),
-        RecursiveGeneralReference = Rekursive allgemeine Entit\u00E4tsreferenz "&{0};". (Referenzpfad: {1}),
-        RecursivePEReference = Rekursive Parameterentit\u00E4tsreferenz "%{0};". (Referenzpfad: {1}),
+        EntityNotDeclared = Entity "{0}" wurde referenziert aber nicht deklariert.
+        ReferenceToUnparsedEntity = Nicht geparste Entityreferenz "&{0};" ist nicht zul\u00E4ssig.
+        RecursiveReference = Rekursive Entityreferenz "{0}". (Referenzpfad: {1}),
+        RecursiveGeneralReference = Rekursive allgemeine Entityreferenz "&{0};". (Referenzpfad: {1}),
+        RecursivePEReference = Rekursive Parameterentityreferenz "%{0};". (Referenzpfad: {1}),
 # 4.3.3 Character Encoding in Entities
         EncodingNotSupported = Codierung "{0}" wird nicht unterst\u00FCtzt.
-        EncodingRequired = Eine nicht in UTF-8 oder UTF-16 codierte geparste Entit\u00E4t muss eine Codierungsdeklaration enthalten.
+        EncodingRequired = Eine nicht in UTF-8 oder UTF-16 codierte geparste Entity muss eine Codierungsdeklaration enthalten.
         
 # Namespaces support
 # 4. Using Qualified Names
@@ -295,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: Der Parser hat mehr als {0} Entit\u00E4tserweiterungen in diesem Dokument gefunden. Dies ist der von JDK vorgeschriebene Grenzwert.
+        EntityExpansionLimit=JAXP00010001: Der Parser hat mehr als {0} Entityerweiterungen in diesem Dokument gefunden. Dies ist der von JDK vorgeschriebene Grenzwert.
         ElementAttributeLimit=JAXP00010002: Element "{0}" hat mehr als {1} Attribute. "{1}" ist der von JDK vorgeschriebene Grenzwert.
-        MaxEntitySizeLimit=JAXP00010003: Die L\u00E4nge von Entit\u00E4t "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde.
-        TotalEntitySizeLimit=JAXP00010004: Die akkumulierte Gr\u00F6\u00DFe "{0}" der Entit\u00E4ten \u00FCberschreitet den Grenzwert "{1}", der von "{2}" festgelegt wurde.
-        MaxXMLNameLimit=JAXP00010005: Der Name "{0}" \u00FCberschreitet den Grenzwert "{1}", der von "{2}" festgelegt wurde.
+        MaxEntitySizeLimit=JAXP00010003: Die L\u00E4nge von Entity "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde.
+        TotalEntitySizeLimit=JAXP00010004: Die akkumulierte Gr\u00F6\u00DFe von Entitys ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde.
+        MaxXMLNameLimit=JAXP00010005: Die L\u00E4nge von Entity "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde.
+        MaxElementDepthLimit=JAXP00010006: Die Tiefe von Element "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde.
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties
index 51491f8..d784122 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties
@@ -145,7 +145,6 @@
         MSG_SPACE_REQUIRED_BEFORE_ROOT_ELEMENT_TYPE_IN_DOCTYPEDECL = Es necesario un espacio en blanco despu\u00E9s de "<!DOCTYPE" en la declaraci\u00F3n de tipo de documento.
         MSG_ROOT_ELEMENT_TYPE_REQUIRED = El tipo de elemento ra\u00EDz debe aparecer despu\u00E9s de "<!DOCTYPE" en la declaraci\u00F3n de tipo de documento.
         DoctypedeclUnterminated = La declaraci\u00F3n de tipo de documento para el tipo de elemento ra\u00EDz "{0}" debe finalizar en ''>''.
-        DoctypedeclNotClosed = La declaraci\u00F3n de tipo de documento para el tipo de elemento ra\u00EDz "{0}" debe cerrar en '']''.
         PEReferenceWithinMarkup = La referencia de entidad del par\u00E1metro "%{0};" no puede producirse en el marcador en el subconjunto interno del DTD.
         MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = Las declaraciones de marcador que se incluyen o a las que apunta la declaraci\u00F3n de tipo de documento deben tener el formato correcto.
 # 2.10 White Space Handling
@@ -295,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: el analizador ha encontrado m\u00E1s de "{0}"ampliaciones de entidad en este documento; \u00E9ste es el l\u00EDmite impuesto por el JDK.
+        EntityExpansionLimit=JAXP00010001: el analizador ha encontrado m\u00E1s de "{0}"ampliaciones de entidad en este documento; \u00E9ste es el l\u00EDmite impuesto por el JDK.
         ElementAttributeLimit=JAXP00010002: el elemento "{0}" tiene m\u00E1s de "{1}" atributos, "{1}" es el l\u00EDmite impuesto por el JDK.
         MaxEntitySizeLimit=JAXP00010003: la longitud de la entidad "{0}" es "{1}", que excede el l\u00EDmite de "{2}" que ha definido "{3}".
-        TotalEntitySizeLimit=JAXP00010004: el tama\u00F1o acumulado "{0}" de las entidades ha excedido el l\u00EDmite de "{1}" que ha definido "{2}".
-        MaxXMLNameLimit=JAXP00010005: el nombre "{0}" ha excedido el l\u00EDmite de "{1}" que ha definido "{2}".
+        TotalEntitySizeLimit=JAXP00010004: el tama\u00F1o acumulado de las entidades es "{1}" y excede el l\u00EDmite de "{2}" definido por "{3}".
+        MaxXMLNameLimit=JAXP00010005: la longitud de la entidad "{0}" es "{1}" y excede el l\u00EDmite de "{2}" definido por "{3}".
+        MaxElementDepthLimit=JAXP00010006: El elemento "{0}" tiene una profundidad de "{1}" que excede el l\u00EDmite "{2}" definido por "{3}".
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties
index 2be6722..c409487 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties
@@ -145,7 +145,6 @@
         MSG_SPACE_REQUIRED_BEFORE_ROOT_ELEMENT_TYPE_IN_DOCTYPEDECL = Un espace est obligatoire apr\u00E8s "<!DOCTYPE" dans la d\u00E9claration de type de document.
         MSG_ROOT_ELEMENT_TYPE_REQUIRED = Le type d'\u00E9l\u00E9ment racine doit figurer apr\u00E8s "<!DOCTYPE" dans la d\u00E9claration de type de document.
         DoctypedeclUnterminated = La d\u00E9claration de type de document pour le type d''\u00E9l\u00E9ment racine "{0}" doit se terminer par ''>''.
-        DoctypedeclNotClosed = La d\u00E9claration de type de document pour le type d''\u00E9l\u00E9ment racine "{0}" doit se conclure par '']''.
         PEReferenceWithinMarkup = La r\u00E9f\u00E9rence d''entit\u00E9 de param\u00E8tre "%{0};" ne peut pas survenir dans le balisage du sous-ensemble interne de la DTD.
         MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = Les d\u00E9clarations de balisage contenues dans la d\u00E9claration de type de document ou sur lesquelles pointe cette derni\u00E8re doivent avoir un format correct.
 # 2.10 White Space Handling
@@ -295,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001 : L''analyseur a rencontr\u00E9 plus de "{0}" d\u00E9veloppements d''entit\u00E9 dans ce document. Il s''agit de la limite impos\u00E9e par le JDK.
+        EntityExpansionLimit=JAXP00010001 : L''analyseur a rencontr\u00E9 plus de "{0}" d\u00E9veloppements d''entit\u00E9 dans ce document. Il s''agit de la limite impos\u00E9e par le JDK.
         ElementAttributeLimit=JAXP00010002 : L''\u00E9l\u00E9ment "{0}" a plus de "{1}" attributs. "{1}" est la limite impos\u00E9e par le JDK.
         MaxEntitySizeLimit=JAXP00010003 : La longueur de l''entit\u00E9 "{0}" est de "{1}". Cette valeur d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}".
-        TotalEntitySizeLimit=JAXP00010004 : La taille cumul\u00E9e des entit\u00E9s ("{0}") d\u00E9passe la limite de "{1}" d\u00E9finie par "{2}".
-        MaxXMLNameLimit=JAXP00010005 : le nom "{0}" d\u00E9passe la limite de "{1}" d\u00E9finie par "{2}".
+        TotalEntitySizeLimit=JAXP00010004 : La taille cumul\u00E9e des entit\u00E9s est "{1}" et d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}".
+        MaxXMLNameLimit=JAXP00010005 : La longueur de l''entit\u00E9 "{0}" est de "{1}". Cette valeur d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}".
+        MaxElementDepthLimit=JAXP00010006 : l''\u00E9l\u00E9ment "{0}" a une profondeur de "{1}" qui d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}".
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties
index aa229f4..b2ed881 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties
@@ -145,7 +145,6 @@
         MSG_SPACE_REQUIRED_BEFORE_ROOT_ELEMENT_TYPE_IN_DOCTYPEDECL = \u00C8 richiesto uno spazio dopo "<!DOCTYPE" nella dichiarazione del tipo di documento.
         MSG_ROOT_ELEMENT_TYPE_REQUIRED = Il tipo di elemento radice deve comparire dopo "<!DOCTYPE" nella dichiarazione del tipo di documento.
         DoctypedeclUnterminated = La dichiarazione del tipo di documento per il tipo di elemento radice "{0}" deve terminare con ''>''.
-        DoctypedeclNotClosed = La dichiarazione del tipo di documento per il tipo di elemento radice "{0}" deve chiudere con '']''.
         PEReferenceWithinMarkup = Il riferimento di entit\u00E0 di parametro "%{0};" non pu\u00F2 essere presente nel markup del set secondario interno del DTD.
         MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = Le dichiarazioni di markup contenute o indicate dalla dichiarazione del tipo di documento devono avere un formato corretto.
 # 2.10 White Space Handling
@@ -295,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: il parser ha rilevato pi\u00F9 "{0}" espansioni di entit\u00E0 nel documento. Questo \u00E8 il limite imposto dal kit JDK.
+        EntityExpansionLimit=JAXP00010001: il parser ha rilevato pi\u00F9 "{0}" espansioni di entit\u00E0 nel documento. Questo \u00E8 il limite imposto dal kit JDK.
         ElementAttributeLimit=JAXP00010002: l''elemento "{0}" contiene pi\u00F9 di "{1}" attributi. "{1}" \u00E8 il limite imposto dal kit JDK.
         MaxEntitySizeLimit=JAXP00010003: la lunghezza dell''entit\u00E0 "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}".
-        TotalEntitySizeLimit=JAXP00010004: le dimensioni accumulate "{0}" delle entit\u00E0 supera il limite "{1}" definito da "{2}".
-        MaxXMLNameLimit=JAXP00010005: il nome "{0}" supera il limite "{1}" definito da "{2}".
+        TotalEntitySizeLimit=JAXP00010004: le dimensioni accumulate delle entit\u00E0 sono pari a "{1}". Tale valore supera il limite "{2}" definito da "{3}".
+        MaxXMLNameLimit=JAXP00010005: la lunghezza dell''entit\u00E0 "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}".
+        MaxElementDepthLimit=JAXP00010006: la profondit\u00E0 dell''elemento "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}".
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties
index 6330e9f..aece337 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties
@@ -122,7 +122,7 @@
         ExpectedByte = {1}\u30D0\u30A4\u30C8\u306EUTF-8\u30B7\u30FC\u30B1\u30F3\u30B9\u306E\u30D0\u30A4\u30C8{0}\u304C\u5FC5\u8981\u3067\u3059\u3002  
         InvalidHighSurrogate = UTF-8\u30B7\u30FC\u30B1\u30F3\u30B9\u306E\u4E0A\u4F4D\u30B5\u30ED\u30B2\u30FC\u30C8\u30FB\u30D3\u30C3\u30C8\u306E\u4E0A\u9650\u306F0x10\u3067\u3059\u304C\u30010x{0}\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002
         OperationNotSupported = \u64CD\u4F5C"{0}"\u306F{1}\u30EA\u30FC\u30C0\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-        InvalidASCII = \u30D0\u30A4\u30C8"{0}"\u306F\u3001(7\u30D3\u30C3\u30C8) ASCII\u30AD\u30E3\u30E9\u30AF\u30BF\u30FB\u30BB\u30C3\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+        InvalidASCII = \u30D0\u30A4\u30C8"{0}"\u306F\u3001(7\u30D3\u30C3\u30C8) ASCII\u6587\u5B57\u30BB\u30C3\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         CharConversionFailure = \u7279\u5B9A\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3067\u3042\u308B\u3068\u78BA\u5B9A\u3055\u308C\u305F\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306B\u306F\u3001\u305D\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3067\u4E0D\u6B63\u306A\u30B7\u30FC\u30B1\u30F3\u30B9\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         
 # DTD Messages
@@ -294,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: \u30D1\u30FC\u30B5\u30FC\u306B\u3088\u3063\u3066\u3001\u3053\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u3067"{0}"\u3092\u8D85\u3048\u308B\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u62E1\u5F35\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u308C\u306F\u3001JDK\u306B\u3088\u308B\u5236\u9650\u3067\u3059\u3002
+        EntityExpansionLimit=JAXP00010001: \u30D1\u30FC\u30B5\u30FC\u306B\u3088\u3063\u3066\u3001\u3053\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u3067"{0}"\u3092\u8D85\u3048\u308B\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u62E1\u5F35\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u308C\u306F\u3001JDK\u306B\u3088\u308B\u5236\u9650\u3067\u3059\u3002
         ElementAttributeLimit=JAXP00010002: \u8981\u7D20"{0}"\u306B"{1}"\u3092\u8D85\u3048\u308B\u5C5E\u6027\u304C\u5B58\u5728\u3057\u307E\u3059\u3002"{1}"\u306F\u3001JDK\u306B\u3088\u308B\u5236\u9650\u3067\u3059\u3002
         MaxEntitySizeLimit=JAXP00010003: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3"{0}"\u306E\u9577\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002
-        TotalEntitySizeLimit=JAXP00010004: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306E\u7D2F\u7A4D\u30B5\u30A4\u30BA"{0}"\u306F\u3001"{2}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{1}"\u3092\u8D85\u3048\u307E\u3057\u305F\u3002
-        MaxXMLNameLimit=JAXP00010005: \u540D\u524D"{0}"\u306F\u3001"{2}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{1}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002
+        TotalEntitySizeLimit=JAXP00010004: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306E\u7D2F\u7A4D\u30B5\u30A4\u30BA"{1}"\u306F\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u307E\u3057\u305F\u3002
+        MaxXMLNameLimit=JAXP00010005: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3"{0}"\u306E\u9577\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002
+        MaxElementDepthLimit=JAXP00010006: \u8981\u7D20"{0}"\u306E\u6DF1\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties
index fc7533a..f992166 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties
@@ -294,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: \uAD6C\uBB38 \uBD84\uC11D\uAE30\uAC00 \uC774 \uBB38\uC11C\uC5D0\uC11C "{0}"\uAC1C\uB97C \uCD08\uACFC\uD558\uB294 \uC5D4\uD2F0\uD2F0 \uD655\uC7A5\uC744 \uBC1C\uACAC\uD588\uC2B5\uB2C8\uB2E4. \uC774\uB294 JDK\uC5D0\uC11C \uC801\uC6A9\uD558\uB294 \uC81C\uD55C\uC785\uB2C8\uB2E4.
+        EntityExpansionLimit=JAXP00010001: \uAD6C\uBB38 \uBD84\uC11D\uAE30\uAC00 \uC774 \uBB38\uC11C\uC5D0\uC11C "{0}"\uAC1C\uB97C \uCD08\uACFC\uD558\uB294 \uC5D4\uD2F0\uD2F0 \uD655\uC7A5\uC744 \uBC1C\uACAC\uD588\uC2B5\uB2C8\uB2E4. \uC774\uB294 JDK\uC5D0\uC11C \uC801\uC6A9\uD558\uB294 \uC81C\uD55C\uC785\uB2C8\uB2E4.
         ElementAttributeLimit=JAXP00010002:  "{0}" \uC694\uC18C\uC5D0 "{1}"\uAC1C\uB97C \uCD08\uACFC\uD558\uB294 \uC18D\uC131\uC774 \uC788\uC2B5\uB2C8\uB2E4. "{1}"\uC740(\uB294) JDK\uC5D0\uC11C \uC801\uC6A9\uD558\uB294 \uC81C\uD55C\uC785\uB2C8\uB2E4.
         MaxEntitySizeLimit=JAXP00010003: "{0}" \uC5D4\uD2F0\uD2F0\uC758 \uAE38\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uB41C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4.
-        TotalEntitySizeLimit=JAXP00010004: \uC5D4\uD2F0\uD2F0\uC758 \uB204\uC801 \uD06C\uAE30 "{0}"\uC774(\uAC00) "{2}"\uC5D0\uC11C \uC124\uC815\uB41C "{1}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD588\uC2B5\uB2C8\uB2E4.
-        MaxXMLNameLimit=JAXP00010005: "{0}" \uC774\uB984\uC774 "{2}"\uC5D0\uC11C \uC124\uC815\uB41C "{1}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD588\uC2B5\uB2C8\uB2E4.
+        TotalEntitySizeLimit=JAXP00010004: \uC5D4\uD2F0\uD2F0\uC758 \uB204\uC801 \uD06C\uAE30\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uD55C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4.
+        MaxXMLNameLimit=JAXP00010005: "{0}" \uC5D4\uD2F0\uD2F0\uC758 \uAE38\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uD55C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4.
+        MaxElementDepthLimit=JAXP00010006: "{0}" \uC694\uC18C\uC758 \uAE4A\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uB41C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4.
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties
index 8481a1e..473ca3e 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties
@@ -129,7 +129,7 @@
 # 2.2 Characters
         InvalidCharInEntityValue = Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no valor da entidade da literal.
         InvalidCharInExternalSubset = Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no subconjunto externo do DTD.
-        InvalidCharInIgnoreSect = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado na se\u00E7\u00E3o condicional deletada.
+        InvalidCharInIgnoreSect = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado na se\u00E7\u00E3o condicional exclu\u00EDda.
         InvalidCharInPublicID = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no identificador p\u00FAblico.
         InvalidCharInSystemID = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no identificador do sistema.
 # 2.3 Common Syntactic Constructs
@@ -148,7 +148,7 @@
         PEReferenceWithinMarkup = A refer\u00EAncia da entidade do par\u00E2metro "%{0};" n\u00E3o pode ocorrer na marca\u00E7\u00E3o no subconjunto interno do DTD.
         MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = As declara\u00E7\u00F5es de marca\u00E7\u00E3o contidas ou apontadas pela declara\u00E7\u00E3o do tipo de documento devem estar corretas.
 # 2.10 White Space Handling
-        MSG_XML_SPACE_DECLARATION_ILLEGAL = Deve ser fornecida a declara\u00E7\u00E3o do atributo para "xml:space" como um tipo enumerado, cujo os \u00FAnicos valores poss\u00EDveis s\u00E3o "default" e "preserve".
+        MSG_XML_SPACE_DECLARATION_ILLEGAL = Deve ser fornecida a declara\u00E7\u00E3o do atributo para "xml:space" como um tipo enumerado, cujo os \u00FAnicos valores poss\u00EDveis s\u00E3o "padr\u00E3o" e "preserve".
 # 3.2 Element Type Declarations
         MSG_SPACE_REQUIRED_BEFORE_ELEMENT_TYPE_IN_ELEMENTDECL = O espa\u00E7o em branco \u00E9 necess\u00E1rio ap\u00F3s "<!ELEMENT" na declara\u00E7\u00E3o do tipo de elemento.
         MSG_ELEMENT_TYPE_REQUIRED_IN_ELEMENTDECL = O tipo de elemento \u00E9 necess\u00E1rio na declara\u00E7\u00E3o do tipo de elemento.
@@ -169,7 +169,7 @@
         AttNameRequiredInAttDef = O nome do atributo deve ser especificado na declara\u00E7\u00E3o da lista de atributos do elemento "{0}".
         MSG_SPACE_REQUIRED_BEFORE_ATTTYPE_IN_ATTDEF = \u00C9 necess\u00E1rio o espa\u00E7o em branco antes do tipo de atributo na declara\u00E7\u00E3o do atributo "{1}" do elemento "{0}".
         AttTypeRequiredInAttDef = \u00C9 necess\u00E1rio o tipo de atributo na declara\u00E7\u00E3o do atributo "{1}" do elemento "{0}".
-        MSG_SPACE_REQUIRED_BEFORE_DEFAULTDECL_IN_ATTDEF = \u00C9 necess\u00E1rio o espa\u00E7o em branco antes do default do atributo na declara\u00E7\u00E3o do atributo "{1}" do elemento "{0}".
+        MSG_SPACE_REQUIRED_BEFORE_DEFAULTDECL_IN_ATTDEF = \u00C9 necess\u00E1rio o espa\u00E7o em branco antes do padr\u00E3o do atributo na declara\u00E7\u00E3o do atributo "{1}" do elemento "{0}".
         MSG_DUPLICATE_ATTRIBUTE_DEFINITION = Mais de uma defini\u00E7\u00E3o de atributo fornecida para o mesmo atributo "{1}" de um determinado elemento "{0}".
 # 3.3.1 Attribute Types
         MSG_SPACE_REQUIRED_AFTER_NOTATION_IN_NOTATIONTYPE = O espa\u00E7o em branco deve aparecer ap\u00F3s "NOTATION" na declara\u00E7\u00E3o do atributo "{1}".
@@ -216,7 +216,7 @@
         DuplicateTypeInMixedContent = O tipo de elemento "{1}" j\u00E1 foi especificado no modelo de conte\u00FAdo da declara\u00E7\u00E3o do elemento "{0}".
         ENTITIESInvalid = O valor do atributo "{1}" do tipo ENTITIES deve ser o nome de uma ou mais entidades n\u00E3o submetidas a parsing.
         ENTITYInvalid = O valor do atributo "{1}" do tipo ENTITY deve ser o nome de uma entidade n\u00E3o submetida a parsing.
-        IDDefaultTypeInvalid = O atributo do ID "{0}" deve ter um default declarado "#IMPLIED" ou "#REQUIRED".
+        IDDefaultTypeInvalid = O atributo do ID "{0}" deve ter um padr\u00E3o declarado "#IMPLIED" ou "#REQUIRED".
         IDInvalid = O valor do atributo "{0}" do ID de tipo deve ser um nome.
         IDInvalidWithNamespaces = O valor do atributo "{0}" do ID de tipo deve ser um NCName quando os namespaces estiverem ativados.
         IDNotUnique = O valor do atributo "{0}" do ID de tipo deve ser exclusivo no documento.
@@ -233,7 +233,7 @@
         MSG_CONTENT_INCOMPLETE = O conte\u00FAdo do tipo de elemento "{0}" est\u00E1 incompleto; ele deve corresponder a "{1}".
         MSG_CONTENT_INVALID = O conte\u00FAdo do tipo de elemento "{0}" deve corresponder a "{1}".
         MSG_CONTENT_INVALID_SPECIFIED = O conte\u00FAdo do tipo de elemento "{0}" deve corresponder a "{1}". N\u00E3o s\u00E3o permitidos os filhos do tipo "{2}".
-        MSG_DEFAULTED_ATTRIBUTE_NOT_SPECIFIED = O atributo "{1}" do tipo de elemento "{0}" tem um valor default e deve ser especificado em um documento stand-alone.
+        MSG_DEFAULTED_ATTRIBUTE_NOT_SPECIFIED = O atributo "{1}" do tipo de elemento "{0}" tem um valor padr\u00E3o e deve ser especificado em um documento stand-alone.
         MSG_DUPLICATE_ATTDEF = O atributo "{1}" j\u00E1 foi declarado para o tipo de elemento "{0}".
         MSG_ELEMENT_ALREADY_DECLARED = O tipo de elemento "{0}" n\u00E3o deve ser declarado mais de uma vez.
         MSG_ELEMENT_NOT_DECLARED = O tipo de elemento "{0}" deve ser declarado.
@@ -294,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: O parser detectou mais de "{0}" expans\u00F5es da entidade neste documento. Este \u00E9 o limite imposto pelo JDK.
+        EntityExpansionLimit=JAXP00010001: O parser detectou mais de "{0}" expans\u00F5es da entidade neste documento. Este \u00E9 o limite imposto pelo JDK.
         ElementAttributeLimit=JAXP00010002: o elemento "{0}" tem mais de "{1}" atributos. "{1}" \u00E9 o limite imposto pelo JDK.
         MaxEntitySizeLimit=JAXP00010003: o tamanho da entidade "{0}" \u00E9 "{1}", o que excede o limite de "{2}" definido por "{3}".
-        TotalEntitySizeLimit=JAXP00010004: o tamanho acumulado  "{0}" de entidades excedeu o limite de "{1}" definido por "{2}".
-        MaxXMLNameLimit=JAXP00010005: o nome "{0}" excedeu o limite de "{1}" definido por "{2}".
+        TotalEntitySizeLimit=JAXP00010004: o tamanho acumulado de entidades \u00E9 "{1}", o que excedeu o limite de "{2}" definido por "{3}".
+        MaxXMLNameLimit=JAXP00010005: o tamanho da entidade "{0}" \u00E9 "{1}", o que excede o limite de "{2}" definido por "{3}".
+        MaxElementDepthLimit=JAXP00010006: o elemento "{0}" tem uma profundidade de "{1}" que excede o limite de "{2}" definido por "{3}".
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties
index bbc5db4..48fd780 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties
@@ -7,7 +7,7 @@
         FormatFailed = Ett internt fel intr\u00E4ffade vid formatering av f\u00F6ljande meddelande:\n  
         
 # Document messages
-        PrematureEOF=F\u00F6r tidigt filslut (EOF).
+        PrematureEOF=Filen har avslutats f\u00F6r tidigt.
 # 2.1 Well-Formed XML Documents
         RootElementRequired = Rotelementet kr\u00E4vs i ett v\u00E4lformulerat dokument.
 # 2.2 Characters
@@ -39,8 +39,8 @@
         ContentIllegalInProlog = Inneh\u00E5llet \u00E4r inte till\u00E5tet i prologen.
         ReferenceIllegalInProlog = Referensen \u00E4r inte till\u00E5ten i prologen.
 # Trailing Misc
-        ContentIllegalInTrailingMisc=Inneh\u00E5llet \u00E4r inte till\u00E5tet i efterf\u00F6ljande avsnitt.
-        ReferenceIllegalInTrailingMisc=Referensen \u00E4r inte till\u00E5ten i efterf\u00F6ljande avsnitt.
+        ContentIllegalInTrailingMisc=Inneh\u00E5llet \u00E4r inte till\u00E5tet i efterf\u00F6ljande sektion.
+        ReferenceIllegalInTrailingMisc=Referensen \u00E4r inte till\u00E5ten i efterf\u00F6ljande sektion.
         
 # 2.9 Standalone Document Declaration
         SDDeclInvalid = Deklarationsv\u00E4rdet f\u00F6r frist\u00E5ende dokument m\u00E5ste vara "yes" eller "no", inte "{0}".
@@ -121,7 +121,7 @@
         InvalidByte = Ogiltig byte {0} i UTF-8-sekvensen f\u00F6r {1}-byte.
         ExpectedByte = F\u00F6rv\u00E4ntad byte {0} i UTF-8-sekvensen f\u00F6r {1}-byte.  
         InvalidHighSurrogate = H\u00F6ga surrogatbitar i UTF-8-sekvens f\u00E5r inte \u00F6verskrida 0x10, men 0x{0} hittades.
-        OperationNotSupported = Operation "{0}" st\u00F6ds inte i l\u00E4saren {1}.
+        OperationNotSupported = \u00C5tg\u00E4rden "{0}" st\u00F6ds inte i l\u00E4saren {1}.
         InvalidASCII = Byte "{0}" ing\u00E5r inte i ASCII-teckenupps\u00E4ttningen (7 bitar).
         CharConversionFailure = En enhet som fastst\u00E4lls anv\u00E4nda ett visst kodformat f\u00E5r inte inneh\u00E5lla sekvenser som \u00E4r otill\u00E5tna i kodningen.
         
@@ -129,7 +129,7 @@
 # 2.2 Characters
         InvalidCharInEntityValue = Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i det litterala enhetsv\u00E4rdet.
         InvalidCharInExternalSubset = Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i den externa delm\u00E4ngden i DTD.
-        InvalidCharInIgnoreSect = Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i exkluderat villkorsavsnitt.
+        InvalidCharInIgnoreSect = Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i sektionen f\u00F6r exkluderade villkor.
         InvalidCharInPublicID = Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i allm\u00E4n identifierare.
         InvalidCharInSystemID = Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i systemidentifierare.
 # 2.3 Common Syntactic Constructs
@@ -183,8 +183,8 @@
 # 3.3.2 Attribute Defaults
         MSG_SPACE_REQUIRED_AFTER_FIXED_IN_DEFAULTDECL = Tomt utrymme m\u00E5ste anges efter "FIXED" i attributdeklarationen "{1}".
 # 3.4 Conditional Sections
-        IncludeSectUnterminated = Inkluderat villkorsavsnitt m\u00E5ste avslutas med "]]>".
-        IgnoreSectUnterminated = Exkluderat villkorsavsnitt m\u00E5ste avslutas med "]]>".
+        IncludeSectUnterminated = Sektionen f\u00F6r inkluderade villkor m\u00E5ste avslutas med "]]>".
+        IgnoreSectUnterminated = Sektionen f\u00F6r exkluderade villkor m\u00E5ste avslutas med "]]>".
 # 4.1 Character and Entity References
         NameRequiredInPEReference = Enhetsnamnet m\u00E5ste omedelbart f\u00F6ljas av '%' i parameterreferensen.
         SemicolonRequiredInPEReference = Parameterreferensen "%{0};" m\u00E5ste avslutas med '';''-avgr\u00E4nsare.
@@ -226,7 +226,7 @@
         ILL_FORMED_PARAMETER_ENTITY_WHEN_USED_IN_DECL = Ers\u00E4ttningstexten f\u00F6r parameterenheten "{0}" m\u00E5ste inkludera korrekt kapslade deklarationer om enhetsreferensen anv\u00E4nds som fullst\u00E4ndig deklaration.
         ImproperDeclarationNesting = Ers\u00E4ttningstexten f\u00F6r parameterenheten "{0}" m\u00E5ste inkludera deklarationer som \u00E4r korrekt kapslade.
         ImproperGroupNesting = Ers\u00E4ttningstexten f\u00F6r parameterenheten "{0}" m\u00E5ste inkludera parentespar som \u00E4r korrekt kapslade.
-        INVALID_PE_IN_CONDITIONAL = Ers\u00E4ttningstexten f\u00F6r parameterenheten "{0}" m\u00E5st inkludera hela villkorsavsnittet eller endast INCLUDE eller IGNORE.
+        INVALID_PE_IN_CONDITIONAL = Ers\u00E4ttningstexten f\u00F6r parameterenheten "{0}" m\u00E5st inkludera hela villkorssektionen eller endast INCLUDE eller IGNORE.
         MSG_ATTRIBUTE_NOT_DECLARED = Attributet "{1}" m\u00E5ste deklareras f\u00F6r elementtyp "{0}".
         MSG_ATTRIBUTE_VALUE_NOT_IN_LIST = Attributet "{0}" med v\u00E4rdet "{1}" m\u00E5ste ha ett v\u00E4rde fr\u00E5n listan "{2}".
         MSG_ATTVALUE_CHANGED_DURING_NORMALIZATION_WHEN_STANDALONE = V\u00E4rdet "{1}" f\u00F6r attributet "{0}" f\u00E5r inte \u00E4ndras vid normalisering (till "{2}") i ett frist\u00E5ende dokument.
@@ -294,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: Parsern har p\u00E5tr\u00E4ffat fler \u00E4n "{0}" enhetstill\u00E4gg i dokumentet - gr\u00E4nsv\u00E4rdet f\u00F6r JDK har uppn\u00E5tts.
+        EntityExpansionLimit=JAXP00010001: Parsern har p\u00E5tr\u00E4ffat fler \u00E4n "{0}" enhetstill\u00E4gg i dokumentet - gr\u00E4nsv\u00E4rdet f\u00F6r JDK har uppn\u00E5tts.
         ElementAttributeLimit=JAXP00010002:  Elementet "{0}" har fler \u00E4n "{1}" attribut, "{1}" \u00E4r gr\u00E4nsv\u00E4rdet f\u00F6r JDK.
         MaxEntitySizeLimit=JAXP00010003: L\u00E4ngden p\u00E5 enheten "{0}" \u00E4r "{1}" som \u00F6verskriver gr\u00E4nsv\u00E4rdet p\u00E5 "{2}" som anges av "{3}".
-        TotalEntitySizeLimit=JAXP00010004: Den ackumulerade storleken "{0}" f\u00F6r enheter \u00F6verskred gr\u00E4nsv\u00E4rdet p\u00E5 "{1}" som anges av "{2}".
-        MaxXMLNameLimit=JAXP00010005: Namnet "{0}" \u00F6verskred gr\u00E4nsv\u00E4rdet p\u00E5 "{1}" som anges av "{2}".
+        TotalEntitySizeLimit=JAXP00010004: Den ackumulerade storleken f\u00F6r enheter \u00E4r "{1}", vilket \u00F6verskrider gr\u00E4nsv\u00E4rdet "{2}" som anges av "{3}".
+        MaxXMLNameLimit=JAXP00010005: L\u00E4ngden p\u00E5 enheten "{0}" \u00E4r "{1}", vilket \u00F6verskrider gr\u00E4nsv\u00E4rdet "{2}" som anges av "{3}".
+        MaxElementDepthLimit=JAXP00010006: Elementet "{0}" har djupet "{1}" vilket \u00E4r st\u00F6rre \u00E4n gr\u00E4nsen "{2}" som anges av "{3}".
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties
index bb02a0d..904174d 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties
@@ -294,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: \u89E3\u6790\u5668\u5728\u6B64\u6587\u6863\u4E2D\u9047\u5230\u591A\u4E2A "{0}" \u5B9E\u4F53\u6269\u5C55; \u8FD9\u662F JDK \u65BD\u52A0\u7684\u9650\u5236\u3002
+        EntityExpansionLimit=JAXP00010001: \u89E3\u6790\u5668\u5728\u6B64\u6587\u6863\u4E2D\u9047\u5230\u591A\u4E2A "{0}" \u5B9E\u4F53\u6269\u5C55; \u8FD9\u662F JDK \u65BD\u52A0\u7684\u9650\u5236\u3002
         ElementAttributeLimit=JAXP00010002: \u5143\u7D20 "{0}" \u5177\u6709\u591A\u4E2A "{1}" \u5C5E\u6027, "{1}" \u662F JDK \u65BD\u52A0\u7684\u9650\u5236\u3002
         MaxEntitySizeLimit=JAXP00010003: \u5B9E\u4F53 "{0}" \u7684\u957F\u5EA6\u4E3A "{1}", \u8D85\u8FC7\u4E86 "{3}" \u8BBE\u7F6E\u7684 "{2}" \u9650\u5236\u3002
-        TotalEntitySizeLimit=JAXP00010004: \u5B9E\u4F53\u7684\u7D2F\u8BA1\u5927\u5C0F "{0}" \u8D85\u8FC7\u4E86 "{2}" \u8BBE\u7F6E\u7684 "{1}" \u9650\u5236\u3002
-        MaxXMLNameLimit=JAXP00010005: \u540D\u79F0 "{0}" \u8D85\u8FC7\u4E86 "{2}" \u8BBE\u7F6E\u7684 "{1}" \u9650\u5236\u3002
+        TotalEntitySizeLimit=JAXP00010004: \u5B9E\u4F53\u7684\u7D2F\u8BA1\u5927\u5C0F\u4E3A "{1}", \u8D85\u8FC7\u4E86 "{3}" \u8BBE\u7F6E\u7684 "{2}" \u9650\u5236\u3002
+        MaxXMLNameLimit=JAXP00010005: \u5B9E\u4F53 "{0}" \u7684\u957F\u5EA6\u4E3A "{1}", \u8D85\u8FC7\u4E86 "{3}" \u8BBE\u7F6E\u7684 "{2}" \u9650\u5236\u3002
+        MaxElementDepthLimit=JAXP00010006: \u5143\u7D20 "{0}" \u7684\u6DF1\u5EA6 "{1}" \u8D85\u8FC7\u4E86 "{3}" \u8BBE\u7F6E\u7684\u9650\u5236 "{2}"\u3002
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties
index 2f2e1a3..9bdcdd4 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties
@@ -198,7 +198,7 @@
         MSG_SPACE_REQUIRED_BEFORE_NDATA_IN_UNPARSED_ENTITYDECL = \u5728\u5BE6\u9AD4 "{0}" \u7684\u5BA3\u544A\u4E2D\uFF0C"NDATA" \u4E4B\u524D\u9700\u8981\u7A7A\u683C\u3002
         MSG_NOTATION_NAME_REQUIRED_FOR_UNPARSED_ENTITYDECL = \u5728\u5BE6\u9AD4 "{0}" \u7684\u5BA3\u544A\u4E2D\uFF0C"NDATA" \u4E4B\u5F8C\u9700\u8981\u8868\u793A\u6CD5\u540D\u7A31\u3002
         EntityDeclUnterminated = \u5BE6\u9AD4 "{0}" \u7684\u5BA3\u544A\u7D50\u5C3E\u5FC5\u9808\u70BA ''>''\u3002
-	MSG_DUPLICATE_ENTITY_DEFINITION = \u5BE6\u9AD4 "{0}" \u5BA3\u544A\u8D85\u904E\u4E00\u6B21\u4EE5\u4E0A\u3002        
+	MSG_DUPLICATE_ENTITY_DEFINITION = \u5BE6\u9AD4 "{0}" \u5BA3\u544A\u8D85\u904E\u4E00\u6B21\u4EE5\u4E0A\u3002
 # 4.2.2 External Entities
         ExternalIDRequired = \u5916\u90E8\u5BE6\u9AD4\u5BA3\u544A\u7684\u958B\u982D\u5FC5\u9808\u70BA "SYSTEM" \u6216 "PUBLIC"\u3002
         MSG_SPACE_REQUIRED_BEFORE_PUBIDLITERAL_IN_EXTERNALID = "PUBLIC" \u8207\u516C\u7528 ID \u4E4B\u9593\u9700\u8981\u7A7A\u683C\u3002
@@ -277,7 +277,7 @@
         
 # Namespaces support
 # 4. Using Qualified Names
-        IllegalQName = \u5143\u7D20\u6216\u5C6C\u6027\u4E0D\u7B26\u5408 QName \u7522\u751F: QName::=(NCName':')?NCName\u3002 
+        IllegalQName = \u5143\u7D20\u6216\u5C6C\u6027\u4E0D\u7B26\u5408 QName \u7522\u751F: QName::=(NCName':')?NCName\u3002
         ElementXMLNSPrefix = \u5143\u7D20 "{0}" \u4E0D\u80FD\u4F7F\u7528 "xmlns" \u4F5C\u70BA\u524D\u7F6E\u78BC\u3002
         ElementPrefixUnbound = \u5143\u7D20 "{1}" \u7684\u524D\u7F6E\u78BC "{0}" \u672A\u9023\u7D50\u3002
         AttributePrefixUnbound = \u95DC\u806F\u5143\u7D20\u985E\u578B "{0}" \u4E4B\u5C6C\u6027 "{1}" \u7684\u524D\u7F6E\u78BC "{2}" \u672A\u9023\u7D50\u3002
@@ -294,9 +294,10 @@
 
 
 # Implementation limits
-        EntityExpansionLimitExceeded=JAXP00010001: \u5256\u6790\u5668\u5728\u6B64\u6587\u4EF6\u4E2D\u9047\u5230 "{0}" \u500B\u4EE5\u4E0A\u7684\u5BE6\u9AD4\u64F4\u5145; \u9019\u662F JDK \u6240\u898F\u5B9A\u7684\u9650\u5236\u3002
+        EntityExpansionLimit=JAXP00010001: \u5256\u6790\u5668\u5728\u6B64\u6587\u4EF6\u4E2D\u9047\u5230 "{0}" \u500B\u4EE5\u4E0A\u7684\u5BE6\u9AD4\u64F4\u5145; \u9019\u662F JDK \u6240\u898F\u5B9A\u7684\u9650\u5236\u3002
         ElementAttributeLimit=JAXP00010002: \u5143\u7D20 "{0}" \u5177\u6709\u8D85\u904E "{1}" \u500B\u4EE5\u4E0A\u7684\u5C6C\u6027\uFF0C"{1}" \u662F JDK \u6240\u898F\u5B9A\u7684\u9650\u5236\u3002
         MaxEntitySizeLimit=JAXP00010003: \u5BE6\u9AD4 "{0}" \u7684\u9577\u5EA6\u70BA "{1}"\uFF0C\u8D85\u904E "{3}" \u6240\u8A2D\u5B9A\u7684 "{2}" \u9650\u5236\u3002
-        TotalEntitySizeLimit=JAXP00010004: \u5BE6\u9AD4\u7684\u7D2F\u7A4D\u5927\u5C0F "{0}" \u8D85\u904E "{2}" \u8A2D\u5B9A\u7684 "{1}" \u9650\u5236\u3002
-        MaxXMLNameLimit=JAXP00010005: \u540D\u7A31 "{0}" \u8D85\u904E "{2}" \u8A2D\u5B9A\u7684 "{1}" \u9650\u5236\u3002
+        TotalEntitySizeLimit=JAXP00010004: \u5BE6\u9AD4\u7684\u7D2F\u7A4D\u5927\u5C0F\u70BA "{1}"\uFF0C\u8D85\u904E "{3}" \u6240\u8A2D\u5B9A\u7684 "{2}" \u9650\u5236\u3002
+        MaxXMLNameLimit=JAXP00010005: \u5BE6\u9AD4 "{0}" \u7684\u9577\u5EA6\u70BA "{1}"\uFF0C\u8D85\u904E "{3}" \u6240\u8A2D\u5B9A\u7684 "{2}" \u9650\u5236\u3002
+        MaxElementDepthLimit=JAXP00010006: \u5143\u7D20 "{0}" \u7684\u6DF1\u5EA6\u70BA "{1}"\uFF0C\u8D85\u904E "{3}" \u8A2D\u5B9A\u7684 "{2}" \u9650\u5236\u3002
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties
index 5f55b55..e56d93a 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_de.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/16 04:56:10 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_de.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/13 06:43:54 gmolloy Exp $
 
         BadMessageKey = Die zum Meldungsschl\u00FCssel geh\u00F6rige Fehlermeldung kann nicht gefunden werden.
         FormatFailed = Beim Formatieren der folgenden Meldung ist ein interner Fehler aufgetreten:\n
@@ -34,240 +34,246 @@
 # For internal use
 
         Internal-Error = Interner Fehler: {0}.
-        dt-whitespace = Leerstellen-Facet-Wert ist nicht f\u00FCr Vereinigungsmenge simpleType "{0}" verf\u00FCgbar
+        dt-whitespace = Leerstellen-Facet-Wert ist nicht f\u00FCr Vereinigungsmenge simpleType ''{0}'' verf\u00FCgbar
         GrammarConflict = Eine vom Grammatikpool des Benutzers zur\u00FCckgegebene Grammatik steht im Konflikt mit einer anderen Grammatik.
 
 # Identity constraints
 
-        AbsentKeyValue = Identity Constraint-Fehler (cvc-identity-constraint.4.2.1): Element "{0}" hat einen Schl\u00FCssel ohne Wert.
-        DuplicateField = Doppelte \u00DCbereinstimmung in Geltungsbereich f\u00FCr Feld "{0}".
-        DuplicateKey = Doppelter Schl\u00FCsselwert [{0}] f\u00FCr Identity Constraint des Elements "{1}" deklariert.
-        DuplicateUnique = Doppelter eindeutiger Wert [{0}] f\u00FCr Identity Constraint des Elements "{1}" deklariert.
-        FieldMultipleMatch = Identity Constraint-Fehler: Feld "{0}" entspricht mehreren Werten im Geltungsbereich seines Selectors. Felder m\u00FCssen eindeutigen Werten entsprechen.
-        FixedDiffersFromActual = Content dieses Elements entspricht nicht dem Wert des "fixed"-Attributs in der Elementdeklaration im Schema.
-        KeyMatchesNillable = Identity Constraint-Fehler (cvc-identity-constraint.4.2.3): Element "{0}" hat einen Schl\u00FCssel, der einem Element entspricht, bei dem "nillable" auf "true" gesetzt wurde.
-        KeyNotEnoughValues = Nicht gen\u00FCgend Werte angegeben f\u00FCr <key name="{1}"> Identity Constraint f\u00FCr Element "{0}".
-        KeyNotFound = Schl\u00FCssel "{0}" mit Wert "{1}" nicht gefunden f\u00FCr Identity Constraint des Elements "{2}".
-        KeyRefNotEnoughValues = Nicht gen\u00FCgend Werte angegeben f\u00FCr <keyref name="{1}"> Identity Constraint f\u00FCr Element "{0}".
-        KeyRefOutOfScope = Identity Constraint-Fehler: Identity Constraint "{0}" hat eine keyref, die zu einem Key- oder Unique-Constraint au\u00DFerhalb des Geltungsbereichs verweist.
-        KeyRefReferNotFound = Schl\u00FCsselreferenzdeklaration "{0}" verweist auf einen unbekannten Schl\u00FCssel mit dem Namen "{1}".
-        UniqueNotEnoughValues = Nicht gen\u00FCgend Werte angegeben f\u00FCr <unique> Identity Constraint f\u00FCr Element "{0}".
-        UnknownField = Interner Identity Constraint-Fehler. Unbekanntes Feld "{0}".
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: Element "{0}" hat keinen Wert f\u00FCr den Schl\u00FCssel "{1}".
+        DuplicateField = Doppelte \u00DCbereinstimmung in Geltungsbereich f\u00FCr Feld ''{0}''.
+        DuplicateKey = cvc-identity-constraint.4.2.2: Doppelter Schl\u00FCsselwert [{0}] f\u00FCr Identity Constraint "{2}" des Elements "{1}"deklariert.
+        DuplicateUnique = cvc-identity-constraint.4.1: Doppelter eindeutiger Wert [{0}] f\u00FCr Identity Constraint "{2}"des Elements "{1}" deklariert.
+        FieldMultipleMatch = cvc-identity-constraint.3: Feld "{0}" von Identity Constraint "{1}" entspricht mehreren Werten im Geltungsbereich seines Selektors. Felder m\u00FCssen eindeutigen Werten entsprechen.
+        FixedDiffersFromActual = Content dieses Elements entspricht nicht dem Wert des 'fixed'-Attributs in der Elementdeklaration im Schema.
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: Element "{0}" hat den Schl\u00FCssel "{1}", der einem Element entspricht, bei dem "nillable" auf "true" gesetzt wurde.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: Nicht gen\u00FCgend Werte angegeben f\u00FCr <key name="{1}"> Identity Constraint f\u00FCr Element "{0}".
+        KeyNotFound = cvc-identity-constraint.4.3: Schl\u00FCssel "{0}" mit Wert "{1}" nicht gefunden f\u00FCr Identity Constraint des Elements "{2}".
+        KeyRefOutOfScope = Identity Constraint-Fehler: Identity Constraint ''{0}'' hat eine keyref, die zu einem Key- oder Unique-Constraint au\u00DFerhalb des Geltungsbereichs verweist.
+        KeyRefReferNotFound = Schl\u00FCsselreferenzdeklaration ''{0}'' verweist auf einen unbekannten Schl\u00FCssel mit dem Namen ''{1}''.
+        UnknownField = Interner Identity Constraint-Fehler. Unbekanntes Feld "{0}" f\u00FCr Identity Constraint "{2}", das f\u00FCr Element "{1}" angegeben wurde.
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
 
 #validation (3.X.4)
 
-        cvc-attribute.3 = cvc-attribute.3: Wert "{2}" des Attributs "{1}" bei Element "{0}" hat keinen g\u00FCltigen Typ "{3}".
-        cvc-attribute.4 = cvc-attribute.4: Wert "{2}" des Attributs "{1}" bei Element "{0}" hat keinen g\u00FCltigen festen "{''value constraint''}". Attribute muss den Wert "{3}" haben.
-        cvc-complex-type.2.1 = cvc-complex-type.2.1: Element "{0}" darf kein Zeichen- oder Elementinformationselement [untergeordnete Elemente] haben, da der Contenttyp des Typs leer ist.
-        cvc-complex-type.2.2 = cvc-complex-type.2.2: Element "{0}" darf kein Element [untergeordnete Elemente] haben, und der Wert muss g\u00FCltig sein.
-        cvc-complex-type.2.3 = cvc-complex-type.2.3: Element "{0}" darf keine Zeichen [untergeordnete Elemente] haben, da der Contenttyp des Typs "element-only" ist.
-        cvc-complex-type.2.4.a = cvc-complex-type.2.4.a: Ung\u00FCltiger Content wurde beginnend mit Element "{0}" gefunden. "{1}" wird erwartet.
-        cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: Content des Elements "{0}" ist nicht vollst\u00E4ndig. "{1}" wird erwartet.
-        cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: \u00DCbereinstimmungsplatzhalter ist streng, aber es kann keine Deklaration f\u00FCr Element "{0}" gefunden werden.
-        cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: Ung\u00FCltiger Content wurde beginnend mit Element "{0}" gefunden. An dieser Stelle wird kein untergeordnetes Element erwartet.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: Ung\u00FCltiger Content wurde beginnend mit Element "{0}" gefunden. An dieser Stelle wird kein untergeordnetes Element "{1}" erwartet.
-        cvc-complex-type.3.1 = cvc-complex-type.3.1: Wert "{2}" des Attributs "{1}" des Elements "{0}" ist ung\u00FCltig in Bezug auf die entsprechende Attributverwendung. Attribut "{1}" hat den festen Wert "{3}".
-        cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: Element "{0}" hat keinen Attributplatzhalter f\u00FCr Attribut "{1}".
-        cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: Attribut "{1}" darf nicht in Element "{0}" vorkommen.
-        cvc-complex-type.4 = cvc-complex-type.4: Attribut "{1}" muss in Element "{0}" vorkommen.
-        cvc-complex-type.5.1 = cvc-complex-type.5.1: In Element "{0}" ist Attribut "{1}" ein Platzhalter. Es ist aber bereits ein Platzhalter "{2}" vorhanden. Nur ein Platzhalter ist zul\u00E4ssig.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: In Element "{0}" ist Attribut "{1}" ein Platzhalter. Es ist aber bereits ein Attribut "{2}" vorhanden, das von einer ID unter den "{''attribute uses''}" abgeleitet wurde.
-        cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: "{0}" ist kein g\u00FCltiger Wert f\u00FCr "{1}".
-        cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: "{0}" ist kein g\u00FCltiger Wert des Listentyps "{1}".
-        cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: "{0}" ist kein g\u00FCltiger Wert des Vereinigungsmengentyps "{1}".
-        cvc-elt.1 = cvc-elt.1: Deklaration des Elements "{0}" kann nicht gefunden werden.
-        cvc-elt.2 = cvc-elt.2: Wert von "{"abstract"}" in der Elementdeklaration f\u00FCr "{0}" muss "false" sein.
-        cvc-elt.3.1 = cvc-elt.3.1: Attribut "{1}" darf nicht in Element "{0}" vorkommen, da die die Eigenschaft "{''nillable''}" von "{0}" "false" ist.
-        cvc-elt.3.2.1 = cvc-elt.3.2.1: Element "{0}" darf keine Zeichen- oder Elementinformationen [untergeordnete Elemente] haben, da "{1}" angegeben wurde.
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: Es darf kein fester "{"value constraint"}" f\u00FCr Element "{0}" vorhanden sein, da "{1}" angegeben wurde.
-        cvc-elt.4.1 = cvc-elt.4.1: Wert "{2}" des Attributs "{1}" von Element "{0}" ist kein g\u00FCltiger QName.
-        cvc-elt.4.2 = cvc-elt.4.2: "{1}" kann nicht als Typdefinition f\u00FCr Element "{0}" aufgel\u00F6st werden.
-        cvc-elt.4.3 = cvc-elt.4.3: Typ "{1}" wurde nicht auf g\u00FCltige Weise von der Typdefinition "{2}" des Elements "{0}" abgeleitet.
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: "{"value constraint"}" "{2}" des Elements "{0}" ist kein g\u00FCltiger Standardwert f\u00FCr Typ "{1}".
-        cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: Element "{0}" darf keine Elementinformationselemente [untergeordnete Elemente] haben.
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: Wert "{1}" des Elements "{0}" stimmt nicht mit dem festen "{''value constraint''}"-Wert "{2}" \u00FCberein.
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: Wert "{1}" des Elements "{0}" stimmt nicht mit dem "{''value constraint''}"-Wert "{2}" \u00FCberein.
-        cvc-enumeration-valid = cvc-enumeration-valid: Wert "{0}" ist nicht Facet-g\u00FCltig in Bezug auf Enumeration "{1}". Er muss ein Wert aus der Enumeration sein.
-        cvc-fractionDigits-valid = cvc-fractionDigits-valid: Wert "{0}" enth\u00E4lt {1} Bruchziffern, die Anzahl an Bruchziffern wurde aber auf {2} beschr\u00E4nkt.
-        cvc-id.1 = cvc-id.1: Kein ID/IDREF-Binding f\u00FCr IDREF "{0}" vorhanden.
-        cvc-id.2 = cvc-id.2: ID-Wert "{0}" kommt mehrmals vor.
-        cvc-id.3 = cvc-id.3: Ein Feld von Identity Constraint "{0}" entsprach Element "{1}". Dieses Element hat aber keinen Simple Type.
-        cvc-length-valid = cvc-length-valid: Wert "{0}" mit L\u00E4nge = "{1}" ist nicht Facet-g\u00FCltig in Bezug auf die L\u00E4nge "{2}" f\u00FCr Typ "{3}".
-        cvc-maxExclusive-valid = cvc-maxExclusive-valid: Wert "{0}" ist nicht Facet-g\u00FCltig in Bezug auf maxExclusive "{1}" f\u00FCr Typ "{2}".
-        cvc-maxInclusive-valid = cvc-maxInclusive-valid: Wert "{0}" ist nicht Facet-g\u00FCltig in Bezug auf maxInclusive "{1}" f\u00FCr Typ "{2}".
-        cvc-maxLength-valid = cvc-maxLength-valid: Wert "{0}" mit L\u00E4nge = "{1}" ist nicht Facet-g\u00FCltig in Bezug auf maxLength "{2}" f\u00FCr Typ "{3}".
-        cvc-minExclusive-valid = cvc-minExclusive-valid: Wert "{0}" ist nicht Facet-g\u00FCltig in Bezug auf minExclusive "{1}" f\u00FCr Typ "{2}".
-        cvc-minInclusive-valid = cvc-minInclusive-valid: Wert "{0}" ist nicht Facet-g\u00FCltig in Bezug auf minInclusive "{1}" f\u00FCr Typ "{2}".
-        cvc-minLength-valid = cvc-minLength-valid: Wert "{0}" mit L\u00E4nge = "{1}" ist nicht Facet-g\u00FCltig in Bezug auf minLength "{2}" f\u00FCr Typ "{3}".
-        cvc-pattern-valid = cvc-pattern-valid: Wert "{0}" ist nicht Facet-g\u00FCltig in Bezug auf Muster "{1}" f\u00FCr Typ "{2}".
-        cvc-totalDigits-valid = cvc-totalDigits-valid: Wert "{0}" enth\u00E4lt {1} Gesamtziffern, die Anzahl an Gesamtziffern wurde aber auf {2} beschr\u00E4nkt.
+        cvc-attribute.3 = cvc-attribute.3: Wert ''{2}'' des Attributs ''{1}'' bei Element ''{0}'' hat keinen g\u00FCltigen Typ ''{3}''.
+        cvc-attribute.4 = cvc-attribute.4: Wert ''{2}'' des Attributs ''{1}'' bei Element ''{0}'' hat keinen g\u00FCltigen festen '{'value constraint'}'. Attribute muss den Wert ''{3}'' haben.
+        cvc-complex-type.2.1 = cvc-complex-type.2.1: Element ''{0}'' darf kein Zeichen- oder Elementinformationselement [untergeordnete Elemente] haben, da der Contenttyp des Typs leer ist.
+        cvc-complex-type.2.2 = cvc-complex-type.2.2: Element ''{0}'' darf kein Element [untergeordnete Elemente] haben, und der Wert muss g\u00FCltig sein.
+        cvc-complex-type.2.3 = cvc-complex-type.2.3: Element ''{0}'' darf keine Zeichen [untergeordnete Elemente] haben, da der Contenttyp des Typs ''element-only'' ist.
+        cvc-complex-type.2.4.a = cvc-complex-type.2.4.a: Ung\u00FCltiger Content wurde beginnend mit Element ''{0}'' gefunden. ''{1}'' wird erwartet.
+        cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: Content des Elements ''{0}'' ist nicht vollst\u00E4ndig. ''{1}'' wird erwartet.
+        cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: \u00DCbereinstimmungsplatzhalter ist streng, aber es kann keine Deklaration f\u00FCr Element ''{0}'' gefunden werden.
+        cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: Ung\u00FCltiger Content wurde beginnend mit Element ''{0}'' gefunden. An dieser Stelle wird kein untergeordnetes Element erwartet.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: Ung\u00FCltiger Content wurde beginnend mit Element ''{0}'' gefunden. An dieser Stelle wird kein untergeordnetes Element ''{1}'' erwartet.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: "{0}" darf maximal "{2}"-mal in der aktuellen Abfolge auftreten. Dieser Grenzwert wurde \u00FCberschritten. An dieser Stelle wird eines von "{1}" erwartet.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.e: "{0}" darf maximal "{1}"-mal in der aktuellen Abfolge auftreten. Dieser Grenzwert wurde \u00FCberschritten. An dieser Stelle wird kein untergeordnetes Element erwartet.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: Ung\u00FCltigen Inhalt gefunden, der mit Element "{0}" beginnt. "{1}" soll erwartungsgem\u00E4\u00DF mindestens "{2}"-mal in der aktuellen Abfolge auftreten. Eine weitere Instanz ist erforderlich, um diesen Constraint zu erf\u00FCllen.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: Ung\u00FCltigen Inhalt gefunden, der mit Element "{0}" beginnt. "{1}" soll erwartungsgem\u00E4\u00DF mindestens "{2}"-mal in der aktuellen Abfolge auftreten. "{3}" weitere Instanzen sind erforderlich, um diesen Constraint zu erf\u00FCllen.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: Der Inhalt von Element "{0}" ist nicht vollst\u00E4ndig. "{1}" soll erwartungsgem\u00E4\u00DF mindestens "{2}"-mal auftreten. Eine weitere Instanz ist erforderlich, um diesen Constraint zu erf\u00FCllen.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: Der Inhalt von Element "{0}" ist nicht vollst\u00E4ndig. "{1}" soll erwartungsgem\u00E4\u00DF mindestens "{2}"-mal auftreten. "{3}" weitere Instanzen sind erforderlich, um diesen Constraint zu erf\u00FCllen.
+        cvc-complex-type.3.1 = cvc-complex-type.3.1: Wert ''{2}'' des Attributs ''{1}'' des Elements ''{0}'' ist ung\u00FCltig in Bezug auf die entsprechende Attributverwendung. Attribut ''{1}'' hat den festen Wert ''{3}''.
+        cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: Element ''{0}'' hat keinen Attributplatzhalter f\u00FCr Attribut ''{1}''.
+        cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: Attribut ''{1}'' darf nicht in Element ''{0}'' vorkommen.
+        cvc-complex-type.4 = cvc-complex-type.4: Attribut ''{1}'' muss in Element ''{0}'' vorkommen.
+        cvc-complex-type.5.1 = cvc-complex-type.5.1: In Element ''{0}'' ist Attribut ''{1}'' ein Platzhalter. Es ist aber bereits ein Platzhalter ''{2}'' vorhanden. Nur ein Platzhalter ist zul\u00E4ssig.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: In Element ''{0}'' ist Attribut ''{1}'' ein Platzhalter. Es ist aber bereits ein Attribut ''{2}'' vorhanden, das von einer ID unter den '{'attribute uses'}' abgeleitet wurde.
+        cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}'' ist kein g\u00FCltiger Wert f\u00FCr ''{1}''.
+        cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}'' ist kein g\u00FCltiger Wert des Listentyps ''{1}''.
+        cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}'' ist kein g\u00FCltiger Wert des Vereinigungsmengentyps ''{1}''.
+        cvc-elt.1.a = cvc-elt.1.a: Deklaration des Elements "{0}" kann nicht gefunden werden.
+        cvc-elt.1.b = cvc-elt.1.b: Der Name des Elements stimmt nicht mit dem Namen der Elementdeklaration \u00FCberein. Gefunden: "{0}". Erwartet: "{1}".
+        cvc-elt.2 = cvc-elt.2: Wert von '{'abstract'}' in der Elementdeklaration f\u00FCr ''{0}'' muss ''false'' sein.
+        cvc-elt.3.1 = cvc-elt.3.1: Attribut ''{1}'' darf nicht in Element ''{0}'' vorkommen, da die die Eigenschaft '{'nillable'}' von ''{0}'' ''false'' ist.
+        cvc-elt.3.2.1 = cvc-elt.3.2.1: Element ''{0}'' darf keine Zeichen- oder Elementinformationen [untergeordnete Elemente] haben, da ''{1}'' angegeben wurde.
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: Es darf kein fester '{'value constraint'}' f\u00FCr Element ''{0}'' vorhanden sein, da ''{1}'' angegeben wurde.
+        cvc-elt.4.1 = cvc-elt.4.1: Wert ''{2}'' des Attributs ''{1}'' von Element ''{0}'' ist kein g\u00FCltiger QName.
+        cvc-elt.4.2 = cvc-elt.4.2: ''{1}'' kann nicht als Typdefinition f\u00FCr Element ''{0}'' aufgel\u00F6st werden.
+        cvc-elt.4.3 = cvc-elt.4.3: Typ ''{1}'' wurde nicht auf g\u00FCltige Weise von der Typdefinition ''{2}'' des Elements ''{0}'' abgeleitet.
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: '{'value constraint'}' ''{2}'' des Elements ''{0}'' ist kein g\u00FCltiger Standardwert f\u00FCr Typ ''{1}''.
+        cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: Element ''{0}'' darf keine Elementinformationselemente [untergeordnete Elemente] haben.
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: Wert ''{1}'' des Elements ''{0}'' stimmt nicht mit dem festen '{'value constraint'}'-Wert ''{2}'' \u00FCberein.
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: Wert ''{1}'' des Elements ''{0}'' stimmt nicht mit dem '{'value constraint'}'-Wert ''{2}'' \u00FCberein.
+        cvc-enumeration-valid = cvc-enumeration-valid: Wert ''{0}'' ist nicht Facet-g\u00FCltig in Bezug auf Enumeration ''{1}''. Er muss ein Wert aus der Enumeration sein.
+        cvc-fractionDigits-valid = cvc-fractionDigits-valid: Wert ''{0}'' enth\u00E4lt {1} Bruchziffern, die Anzahl an Bruchziffern wurde aber auf {2} beschr\u00E4nkt.
+        cvc-id.1 = cvc-id.1: Kein ID/IDREF-Binding f\u00FCr IDREF ''{0}'' vorhanden.
+        cvc-id.2 = cvc-id.2: ID-Wert ''{0}'' kommt mehrmals vor.
+        cvc-id.3 = cvc-id.3: Ein Feld von Identity Constraint ''{0}'' entsprach Element ''{1}''. Dieses Element hat aber keinen Simple Type.
+        cvc-length-valid = cvc-length-valid: Wert ''{0}'' mit L\u00E4nge = ''{1}'' ist nicht Facet-g\u00FCltig in Bezug auf die L\u00E4nge ''{2}'' f\u00FCr Typ ''{3}''.
+        cvc-maxExclusive-valid = cvc-maxExclusive-valid: Wert ''{0}'' ist nicht Facet-g\u00FCltig in Bezug auf maxExclusive ''{1}'' f\u00FCr Typ ''{2}''.
+        cvc-maxInclusive-valid = cvc-maxInclusive-valid: Wert ''{0}'' ist nicht Facet-g\u00FCltig in Bezug auf maxInclusive ''{1}'' f\u00FCr Typ ''{2}''.
+        cvc-maxLength-valid = cvc-maxLength-valid: Wert ''{0}'' mit L\u00E4nge = ''{1}'' ist nicht Facet-g\u00FCltig in Bezug auf maxLength ''{2}'' f\u00FCr Typ ''{3}''.
+        cvc-minExclusive-valid = cvc-minExclusive-valid: Wert ''{0}'' ist nicht Facet-g\u00FCltig in Bezug auf minExclusive ''{1}'' f\u00FCr Typ ''{2}''.
+        cvc-minInclusive-valid = cvc-minInclusive-valid: Wert ''{0}'' ist nicht Facet-g\u00FCltig in Bezug auf minInclusive ''{1}'' f\u00FCr Typ ''{2}''.
+        cvc-minLength-valid = cvc-minLength-valid: Wert ''{0}'' mit L\u00E4nge = ''{1}'' ist nicht Facet-g\u00FCltig in Bezug auf minLength ''{2}'' f\u00FCr Typ ''{3}''.
+        cvc-pattern-valid = cvc-pattern-valid: Wert ''{0}'' ist nicht Facet-g\u00FCltig in Bezug auf Muster ''{1}'' f\u00FCr Typ ''{2}''.
+        cvc-totalDigits-valid = cvc-totalDigits-valid: Wert ''{0}'' enth\u00E4lt {1} Gesamtziffern, die Anzahl an Gesamtziffern wurde aber auf {2} beschr\u00E4nkt.
+        cvc-type.1 = cvc-type.1: Die Typdefinition "{0}" wurde nicht gefunden.
         cvc-type.2 = cvc-type.2: Typdefinition kann nicht abstrakt f\u00FCr Element {0} sein.
-        cvc-type.3.1.1 = cvc-type.3.1.1: Element "{0}" ist Simple Type und kann daher keine Attribute haben, mit Ausnahme der Attribute, deren Namespace-Name mit "http://www.w3.org/2001/XMLSchema-instance" identisch ist und deren [lokaler Name] "type", "nil", "schemaLocation" oder "noNamespaceSchemaLocation" lautet. Es wurde allerdings das Attribut "{1}" gefunden.
-        cvc-type.3.1.2 = cvc-type.3.1.2: Element "{0}" ist Simple Type und darf daher keine Elementinformationselemente [untergeordnete Elemente] haben.
-        cvc-type.3.1.3 = cvc-type.3.1.3: Wert "{1}" des Elements "{0}" ist ung\u00FCltig.
+        cvc-type.3.1.1 = cvc-type.3.1.1: Element ''{0}'' ist Simple Type und kann daher keine Attribute haben, mit Ausnahme der Attribute, deren Namespace-Name mit ''http://www.w3.org/2001/XMLSchema-instance'' identisch ist und deren [lokaler Name] ''type'', ''nil'', ''schemaLocation'' oder ''noNamespaceSchemaLocation'' lautet. Es wurde allerdings das Attribut ''{1}'' gefunden.
+        cvc-type.3.1.2 = cvc-type.3.1.2: Element ''{0}'' ist Simple Type und darf daher keine Elementinformationselemente [untergeordnete Elemente] haben.
+        cvc-type.3.1.3 = cvc-type.3.1.3: Wert ''{1}'' des Elements ''{0}'' ist ung\u00FCltig.
 
 #schema valid (3.X.3)
 
-        schema_reference.access = schema_reference: Schemadokument "{0}" konnte nicht gelesen werden, weil der "{1}"-Zugriff wegen der von der Eigenschaft accessExternalSchema festgelegten Einschr\u00E4nkung nicht zul\u00E4ssig ist. 
-        schema_reference.4 = schema_reference.4: Schemadokument "{0}" konnte nicht gelesen werden, da 1) das Dokument nicht gefunden werden konnte; 2) das Dokument nicht gelesen werden konnte; 3) das Root-Element des Dokuments nicht <xsd:schema> ist.
-        src-annotation = src-annotation: <annotation>-Elemente k\u00F6nnen nur <appinfo>- und <documentation>-Elemente enthalten, aber es wurde "{0}" gefunden.
-        src-attribute.1 = src-attribute.1: Die Eigenschaften "default" und "fixed" k\u00F6nnen nicht beide in der Attributdeklaration "{0}" vorhanden sein. Verwenden Sie nur eine dieser Eigenschaften.
-        src-attribute.2 = src-attribute.2: : Eigenschaft "default" ist im Attribut "{0}" vorhanden. Daher muss der Wert von "use" "optional" lauten.
-        src-attribute.3.1 = src-attribute.3.1: "ref" oder "name" muss in einer lokalen Attributdeklaration vorhanden sein.
-        src-attribute.3.2 = src-attribute.3.2: Content muss mit (annotation?) f\u00FCr die Attributreferenz "{0}" \u00FCbereinstimmen.
-        src-attribute.4 = src-attribute.4: Attribut "{0}" hat sowohl das Attribut "type" als auch ein anonymes untergeordnetes Element "simpleType". Nur eins davon ist f\u00FCr Attribute zul\u00E4ssig.
-        src-attribute_group.2 = src-attribute_group.2: Schnittmenge von Platzhaltern kann nicht f\u00FCr Attributgruppe "{0}" ausgedr\u00FCckt werden.
-        src-attribute_group.3 = src-attribute_group.3: Zyklische Definitionen f\u00FCr Attributgruppe "{0}" ermittelt. Das rekursive Folgen von Attributgruppenreferenzen f\u00FChrt schlie\u00DFlich zu sich selbst zur\u00FCck.
-        src-ct.1 = src-ct.1: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ "{0}". Wenn <complexContent> verwendet wird, muss der Basistyp ein complexType sein. "{1}" ist ein simpleType.
-        src-ct.2.1 = src-ct.2.1: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ "{0}". Wenn <simpleContent> verwendet wird, muss der Basistyp ein complexType sein, dessen Contenttyp "simple" ist, oder, wenn eine Einschr\u00E4nkung angegeben wurde, ein "complex"-Typ mit gemischtem Content und einem Partikel, das geleert werden kann, oder, wenn eine Erweiterung angegeben wurde, ein "simple"-Typ. "{1}" erf\u00FCllt keine dieser Bedingungen.
-        src-ct.2.2 = src-ct.2.2: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ "{0}". Wenn ein complexType mit simpleContent einen complexType mit gemischtem Content und einem Partikel, das geleert werden kann, einschr\u00E4nkt, muss ein <simpleType> in den untergeordneten Elementen von <restriction> enthalten sein.
-        src-ct.4 = src-ct.4: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ "{0}". Die Schnittmenge der Platzhalter kann nicht ausgedr\u00FCckt werden.
-        src-ct.5 = src-ct.5: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ "{0}". Die Vereinigungsmenge der Platzhalter kann nicht ausgedr\u00FCckt werden.
-        src-element.1 = src-element.1: Die Eigenschaften "default" und "fixed" k\u00F6nnen nicht beide in der Elementdeklaration "{0}" vorhanden sein. Verwenden Sie nur eine dieser Eigenschaften.
-        src-element.2.1 = src-element.2.1: : "ref" oder "name" muss in einer lokalen Elementdeklaration vorhanden sein.
-        src-element.2.2 = src-element.2.2: Da "{0}" das Attribut "ref" enth\u00E4lt, muss der Content (annotation?) entsprechen. Es wurde allerdings "{1}" gefunden.
-        src-element.3 = src-element.3: Element "{0}" hat sowohl das Attribut "type" als auch ein untergeordnetes Element "anonymous type". Nur eins davon ist f\u00FCr Elemente zul\u00E4ssig.
-        src-import.1.1 = src-import.1.1: Namespace-Attribut "{0}" eines <import>-Elementinformationselements darf nicht mit dem targetNamespace des Schemas identisch sein, in dem es vorhanden ist.
+        schema_reference.access = schema_reference: Schemadokument ''{0}'' konnte nicht gelesen werden, weil der ''{1}''-Zugriff wegen der von der Eigenschaft accessExternalSchema festgelegten Einschr\u00E4nkung nicht zul\u00E4ssig ist. 
+        schema_reference.4 = schema_reference.4: Schemadokument ''{0}'' konnte nicht gelesen werden, da 1) das Dokument nicht gefunden werden konnte; 2) das Dokument nicht gelesen werden konnte; 3) das Root-Element des Dokuments nicht <xsd:schema> ist.
+        src-annotation = src-annotation: <annotation>-Elemente k\u00F6nnen nur <appinfo>- und <documentation>-Elemente enthalten, aber es wurde ''{0}'' gefunden.
+        src-attribute.1 = src-attribute.1: Die Eigenschaften ''default'' und ''fixed'' k\u00F6nnen nicht beide in der Attributdeklaration ''{0}'' vorhanden sein. Verwenden Sie nur eine dieser Eigenschaften.
+        src-attribute.2 = src-attribute.2: : Eigenschaft ''default'' ist im Attribut ''{0}'' vorhanden. Daher muss der Wert von ''use'' ''optional'' lauten.
+        src-attribute.3.1 = src-attribute.3.1: 'ref' oder 'name' muss in einer lokalen Attributdeklaration vorhanden sein.
+        src-attribute.3.2 = src-attribute.3.2: Content muss mit (annotation?) f\u00FCr die Attributreferenz ''{0}'' \u00FCbereinstimmen.
+        src-attribute.4 = src-attribute.4: Attribut ''{0}'' hat sowohl das Attribut ''type'' als auch ein anonymes untergeordnetes Element ''simpleType''. Nur eins davon ist f\u00FCr Attribute zul\u00E4ssig.
+        src-attribute_group.2 = src-attribute_group.2: Schnittmenge von Platzhaltern kann nicht f\u00FCr Attributgruppe ''{0}'' ausgedr\u00FCckt werden.
+        src-attribute_group.3 = src-attribute_group.3: Zyklische Definitionen f\u00FCr Attributgruppe ''{0}'' ermittelt. Das rekursive Folgen von Attributgruppenreferenzen f\u00FChrt schlie\u00DFlich zu sich selbst zur\u00FCck.
+        src-ct.1 = src-ct.1: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ ''{0}''. Wenn <complexContent> verwendet wird, muss der Basistyp ein complexType sein. ''{1}'' ist ein simpleType.
+        src-ct.2.1 = src-ct.2.1: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ ''{0}''. Wenn <simpleContent> verwendet wird, muss der Basistyp ein complexType sein, dessen Contenttyp ''simple'' ist, oder, wenn eine Einschr\u00E4nkung angegeben wurde, ein ''complex''-Typ mit gemischtem Content und einem Partikel, das geleert werden kann, oder, wenn eine Erweiterung angegeben wurde, ein ''simple''-Typ. ''{1}'' erf\u00FCllt keine dieser Bedingungen.
+        src-ct.2.2 = src-ct.2.2: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ ''{0}''. Wenn ein complexType mit simpleContent einen complexType mit gemischtem Content und einem Partikel, das geleert werden kann, einschr\u00E4nkt, muss ein <simpleType> in den untergeordneten Elementen von <restriction> enthalten sein.
+        src-ct.4 = src-ct.4: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ ''{0}''. Die Schnittmenge der Platzhalter kann nicht ausgedr\u00FCckt werden.
+        src-ct.5 = src-ct.5: Darstellungsfehler bei Complex Type-Definition f\u00FCr Typ ''{0}''. Die Vereinigungsmenge der Platzhalter kann nicht ausgedr\u00FCckt werden.
+        src-element.1 = src-element.1: Die Eigenschaften ''default'' und ''fixed'' k\u00F6nnen nicht beide in der Elementdeklaration ''{0}'' vorhanden sein. Verwenden Sie nur eine dieser Eigenschaften.
+        src-element.2.1 = src-element.2.1: : 'ref' oder 'name' muss in einer lokalen Elementdeklaration vorhanden sein.
+        src-element.2.2 = src-element.2.2: Da ''{0}'' das Attribut ''ref'' enth\u00E4lt, muss der Content (annotation?) entsprechen. Es wurde allerdings ''{1}'' gefunden.
+        src-element.3 = src-element.3: Element ''{0}'' hat sowohl das Attribut ''type'' als auch ein untergeordnetes Element ''anonymous type''. Nur eins davon ist f\u00FCr Elemente zul\u00E4ssig.
+        src-import.1.1 = src-import.1.1: Namespace-Attribut ''{0}'' eines <import>-Elementinformationselements darf nicht mit dem targetNamespace des Schemas identisch sein, in dem es vorhanden ist.
         src-import.1.2 = src-import.1.2: Wenn das Namespace-Attribut nicht bei einem <import>-Elementinformationselement vorhanden ist, muss das einschlie\u00DFende Schema einen targetNamespace haben.
-        src-import.2 = src-import.2: Das Root-Element des Dokuments "{0}" muss den Namespace-Namen "http://www.w3.org/2001/XMLSchema" und den lokalen Namen "schema" haben.
-        src-import.3.1 = src-import.3.1: Namespace-Attribut "{0}" eines <import>-Elementinformationselements muss mit dem targetNamespace-Attribut "{1}" des importierten Dokuments identisch sein.
-        src-import.3.2 = src-import.3.2: Es wurde ein <import>-Elementinformationselement ohne Namespace-Attribut gefunden. Daher kann das importierte Dokument kein targetNamespace-Attribut haben. targetNamespace "{1}" wurde aber im importierten Dokument gefunden.
-        src-include.1 = src-include.1: Das Root-Element des Dokuments "{0}" muss den Namespace-Namen "http://www.w3.org/2001/XMLSchema" und den lokalen Namen "schema" haben.
-        src-include.2.1 = src-include.2.1: targetNamespace des referenzierten Schemas (derzeit "{1}") muss mit dem im umfassenden Schema (derzeit "{0}") identisch sein.
-        src-redefine.2 = src-redefine.2: Das Root-Element des Dokuments "{0}" muss den Namespace-Namen "http://www.w3.org/2001/XMLSchema" und den lokalen Namen "schema" haben.
-        src-redefine.3.1 = src-redefine.3.1: targetNamespace des referenzierten Schemas (derzeit "{1}") muss mit dem im neu definierenden Schema (derzeit "{0}") identisch sein.
-        src-redefine.5.a.a = src-redefine.5.a.a: Keine untergeordneten Nicht-Annotationselemente von <simpleType> gefunden. Untergeordnete <simpleType>-Elemente von <redefine>-Elementen m\u00FCssen <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.5.a.b = src-redefine.5.a.b: "{0}" ist kein g\u00FCltiges untergeordnetes Element. Untergeordnete <simpleType>-Elemente von <redefine>-Elementen m\u00FCssen <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.5.a.c = src-redefine.5.a.c: "{0}" hat kein "base"-Attribut, das auf das neu definierte Element "{1}" verweist. Untergeordnete <simpleType>-Elemente von <redefine>-Elementen m\u00FCssen <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.5.b.a = src-redefine.5.b.a: Keine untergeordneten Nicht-Annotationselemente von <complexType> gefunden. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.5.b.b = src-redefine.5.b.b: Keine untergeordneten Nicht-Annotationselemente der zweiten Generation von <complexType> gefunden. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.5.b.c = src-redefine.5.b.c: "{0}" ist kein g\u00FCltiges untergeordnetes Element der zweiten Generation. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.5.b.d = src-redefine.5.b.d: "{0}" hat kein "base"-Attribut, das auf das neu definierte Element "{1}" verweist. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit "base"-Attributen haben, die auf sich selbst verweisen.
-        src-redefine.6.1.1 = src-redefine.6.1.1: Wenn ein untergeordnetes Gruppenelement eines <redefine>-Elements eine Gruppe enth\u00E4lt, die auf sich selbst verweist, muss genau 1 vorhanden sein. Hier sind "{0}" vorhanden.
-        src-redefine.6.1.2 = src-redefine.6.1.2: Bei Gruppe "{0}", die eine Referenz zu einer Gruppe enth\u00E4lt, die neu definiert wird, muss "minOccurs" = "maxOccurs" = 1 gelten.
-        src-redefine.6.2.1 = src-redefine.6.2.1: Keine Gruppe im neu definierten Schema hat einen Namen, der "{0}" entspricht.
-        src-redefine.6.2.2 = src-redefine.6.2.2: Gruppe "{0}" schr\u00E4nkt die Gruppe, die neu definiert wird, nicht ordnungsgem\u00E4\u00DF ein. Verletzter Constraint: "{1}".
+        src-import.2 = src-import.2: Das Root-Element des Dokuments ''{0}'' muss den Namespace-Namen ''http://www.w3.org/2001/XMLSchema'' und den lokalen Namen ''schema'' haben.
+        src-import.3.1 = src-import.3.1: Namespace-Attribut ''{0}'' eines <import>-Elementinformationselements muss mit dem targetNamespace-Attribut ''{1}'' des importierten Dokuments identisch sein.
+        src-import.3.2 = src-import.3.2: Es wurde ein <import>-Elementinformationselement ohne Namespace-Attribut gefunden. Daher kann das importierte Dokument kein targetNamespace-Attribut haben. targetNamespace ''{1}'' wurde aber im importierten Dokument gefunden.
+        src-include.1 = src-include.1: Das Root-Element des Dokuments ''{0}'' muss den Namespace-Namen ''http://www.w3.org/2001/XMLSchema'' und den lokalen Namen ''schema'' haben.
+        src-include.2.1 = src-include.2.1: targetNamespace des referenzierten Schemas, derzeit ''{1}'', muss mit dem im umfassenden Schema, derzeit ''{0}'', identisch sein.
+        src-redefine.2 = src-redefine.2: Das Root-Element des Dokuments ''{0}'' muss den Namespace-Namen ''http://www.w3.org/2001/XMLSchema'' und den lokalen Namen ''schema'' haben.
+        src-redefine.3.1 = src-redefine.3.1: targetNamespace des referenzierten Schemas, derzeit ''{1}'', muss mit dem im neu definierenden Schema, derzeit ''{0}'', identisch sein.
+        src-redefine.5.a.a = src-redefine.5.a.a: Keine untergeordneten Nicht-Annotationselemente von <simpleType> gefunden. Untergeordnete <simpleType>-Elemente von <redefine>-Elementen m\u00FCssen <restriction>-Nachkommen mit 'base'-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.5.a.b = src-redefine.5.a.b: ''{0}'' ist kein g\u00FCltiges untergeordnetes Element. Untergeordnete <simpleType>-Elemente von <redefine>-Elementen m\u00FCssen <restriction>-Nachkommen mit ''base''-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.5.a.c = src-redefine.5.a.c: ''{0}'' hat kein ''base''-Attribut, das auf das neu definierte Element ''{1}'' verweist. Untergeordnete <simpleType>-Elemente von <redefine>-Elementen m\u00FCssen <restriction>-Nachkommen mit ''base''-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.5.b.a = src-redefine.5.b.a: Keine untergeordneten Nicht-Annotationselemente von <complexType> gefunden. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit 'base'-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.5.b.b = src-redefine.5.b.b: Keine untergeordneten Nicht-Annotationselemente der zweiten Generation von <complexType> gefunden. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit 'base'-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.5.b.c = src-redefine.5.b.c: ''{0}'' ist kein g\u00FCltiges untergeordnetes Element der zweiten Generation. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit ''base''-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.5.b.d = src-redefine.5.b.d: ''{0}'' hat kein ''base''-Attribut, das auf das neu definierte Element ''{1}'' verweist. Untergeordnete <complexType>-Elemente von <redefine>-Elementen m\u00FCssen <extension>- oder <restriction>-Nachkommen mit ''base''-Attributen haben, die auf sich selbst verweisen.
+        src-redefine.6.1.1 = src-redefine.6.1.1: Wenn ein untergeordnetes Gruppenelement eines <redefine>-Elements eine Gruppe enth\u00E4lt, die auf sich selbst verweist, muss genau 1 vorhanden sein. Hier sind ''{0}'' vorhanden.
+        src-redefine.6.1.2 = src-redefine.6.1.2: Bei Gruppe ''{0}'', die eine Referenz zu einer Gruppe enth\u00E4lt, die neu definiert wird, muss ''minOccurs'' = ''maxOccurs'' = 1 gelten.
+        src-redefine.6.2.1 = src-redefine.6.2.1: Keine Gruppe im neu definierten Schema hat einen Namen, der ''{0}'' entspricht.
+        src-redefine.6.2.2 = src-redefine.6.2.2: Gruppe ''{0}'' schr\u00E4nkt die Gruppe, die neu definiert wird, nicht ordnungsgem\u00E4\u00DF ein. Verletzter Constraint: ''{1}''.
         src-redefine.7.1 = src-redefine.7.1: Wenn ein untergeordnetes attributeGroup-Element eines <redefine>-Elements eine attributeGroup enth\u00E4lt, die auf sich selbst verweist, muss genau 1 vorhanden sein. Hier sind {0} vorhanden.
-        src-redefine.7.2.1 = src-redefine.7.2.1: Keine attributeGroup im neu definierten Schema hat einen Namen, der "{0}" entspricht.
-        src-redefine.7.2.2 = src-redefine.7.2.2: attributeGroup "{0}" schr\u00E4nkt die attributeGroup, die neu definiert wird, nicht ordnungsgem\u00E4\u00DF ein. Verletzter Constraint: "{1}".
-        src-resolve = src-resolve: Name "{0}" kann nicht als "{1}"-Komponente aufgel\u00F6st werden.
-        src-resolve.4.1 = src-resolve.4.1: Fehler beim Aufl\u00F6sen von Komponente "{2}". Es wurde ermittelt, dass "{2}" keinen Namespace hat, aber Komponenten ohne Ziel-Namespace k\u00F6nnen nicht aus Schemadokument "{0}" referenziert werden. Wenn "{2}" einen Namespace haben soll, muss m\u00F6glicherweise ein Pr\u00E4fix angegeben werden. Wenn "{2}" keinen Namespace haben soll, muss ein "import" ohne "namespace"-Attribut zu "{0}" hinzugef\u00FCgt werden.
-        src-resolve.4.2 = src-resolve.4.2: Fehler beim Aufl\u00F6sen von Komponente "{2}". Es wurde ermittelt, dass "{2}" in Namespace "{1}" vorhanden ist, aber Komponenten aus diesem Namespace k\u00F6nnen nicht aus Schemadokument "{0}" referenziert werden. Wenn dies der falsche Namespace ist, muss m\u00F6glicherweise das Pr\u00E4fix von "{2}" ge\u00E4ndert werden. Wenn dies der richtige Namespace ist, muss ein entsprechendes "import"-Tag zu "{0}" hinzugef\u00FCgt werden.
-        src-simple-type.2.a = src-simple-type.2.a: Es wurde ein <restriction>-Element gefunden, das sowohl ein "base"-[Attribut] als auch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Nur eines davon ist zul\u00E4ssig.
-        src-simple-type.2.b = src-simple-type.2.b: Es wurde ein <restriction>-Element gefunden, das weder ein "base"-[Attribut] noch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Eines davon ist erforderlich.
-        src-simple-type.3.a = src-simple-type.3.a: Es wurde ein <list>-Element gefunden, das sowohl ein "itemType"-[Attribut] als auch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Nur eines davon ist zul\u00E4ssig.
-        src-simple-type.3.b = src-simple-type.3.b: Es wurde ein <list>-Element gefunden, das weder ein "itemType"-[Attribut] noch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Eines davon ist erforderlich.
-        src-single-facet-value = src-single-facet-value: Facet "{0}" ist mehrmals definiert.
+        src-redefine.7.2.1 = src-redefine.7.2.1: Keine attributeGroup im neu definierten Schema hat einen Namen, der ''{0}'' entspricht.
+        src-redefine.7.2.2 = src-redefine.7.2.2: attributeGroup ''{0}'' schr\u00E4nkt die attributeGroup, die neu definiert wird, nicht ordnungsgem\u00E4\u00DF ein. Verletzter Constraint: ''{1}''.
+        src-resolve = src-resolve: Name ''{0}'' kann nicht als ''{1}''-Komponente aufgel\u00F6st werden.
+        src-resolve.4.1 = src-resolve.4.1: Fehler beim Aufl\u00F6sen von Komponente ''{2}''. Es wurde ermittelt, dass ''{2}'' keinen Namespace hat, aber Komponenten ohne Ziel-Namespace k\u00F6nnen nicht aus Schemadokument ''{0}'' referenziert werden. Wenn ''{2}'' einen Namespace haben soll, muss m\u00F6glicherweise ein Pr\u00E4fix angegeben werden. Wenn ''{2}'' keinen Namespace haben soll, muss ein ''import'' ohne ''namespace''-Attribut zu ''{0}'' hinzugef\u00FCgt werden.
+        src-resolve.4.2 = src-resolve.4.2: Fehler beim Aufl\u00F6sen von Komponente ''{2}''. Es wurde ermittelt, dass ''{2}'' in Namespace ''{1}'' vorhanden ist, aber Komponenten aus diesem Namespace k\u00F6nnen nicht aus Schemadokument ''{0}'' referenziert werden. Wenn dies der falsche Namespace ist, muss m\u00F6glicherweise das Pr\u00E4fix von ''{2}'' ge\u00E4ndert werden. Wenn dies der richtige Namespace ist, muss ein entsprechendes ''import''-Tag zu ''{0}'' hinzugef\u00FCgt werden.
+        src-simple-type.2.a = src-simple-type.2.a: Es wurde ein <restriction>-Element gefunden, das sowohl ein 'base'-[Attribut] als auch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Nur eines davon ist zul\u00E4ssig.
+        src-simple-type.2.b = src-simple-type.2.b: Es wurde ein <restriction>-Element gefunden, das weder ein 'base'-[Attribut] noch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Eines davon ist erforderlich.
+        src-simple-type.3.a = src-simple-type.3.a: Es wurde ein <list>-Element gefunden, das sowohl ein 'itemType'-[Attribut] als auch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Nur eines davon ist zul\u00E4ssig.
+        src-simple-type.3.b = src-simple-type.3.b: Es wurde ein <list>-Element gefunden, das weder ein 'itemType'-[Attribut] noch ein <simpleType>-Element in seinen [untergeordneten Elementen] enth\u00E4lt. Eines davon ist erforderlich.
+        src-single-facet-value = src-single-facet-value: Facet ''{0}'' ist mehrmals definiert.
         src-union-memberTypes-or-simpleTypes = src-union-memberTypes-or-simpleTypes: Ein <union>-Element muss entweder ein nicht leeres memberTypes-[Attribut] oder mindestens ein <simpleType>-Element in seinen [untergeordneten Elementen] enthalten.
 
 #constraint valid (3.X.6)
 
-        ag-props-correct.2 = ag-props-correct.2: Fehler bei Attributgruppe "{0}". Es wurden doppelte Attributverwendungen mit demselben Namen und Ziel-Namespace angegeben. Name der doppelten Attributverwendung lautet "{1}".
-        ag-props-correct.3 = ag-props-correct.3: Fehler bei Attributgruppe "{0}". Zwei Attributdeklarationen ("{1}" und "{2}") haben Typen, die aus ID abgeleitet wurden.
-        a-props-correct.2 = a-props-correct.2: Ung\u00FCltiger Werte-Constraint-Wert "{1}" in Attribut "{0}".
-        a-props-correct.3 = a-props-correct.3: Bei Attribut "{0}" kann "fixed" oder "default" nicht verwendet werden, da die "{''type definition''}" des Attributs "ID" ist oder aus ID abgeleitet wurde.
-        au-props-correct.2 = au-props-correct.2: In der Attributdeklaration von "{0}" wurde der feste Wert "{1}" angegeben. Wenn also die Attributverwendung, die auf "{0}" verweist, auch einen "{''value constraint''}" hat, muss sie fest sein, und der Wert muss "{1}" lauten.
-        cos-all-limited.1.2 = cos-all-limited.1.2: Eine "all"-Modellgruppe muss in einem Partikel mit "{'min occurs'}" = "{'max occurs'}" = 1 vorkommen, und dieses Partikel muss zu einem Paar geh\u00F6ren, das den "{'content type'}" einer Complex Type-Definition darstellt.
-        cos-all-limited.2 = cos-all-limited.2: "{"max occurs"}" eines Elements in einer "all"-Modellgruppe muss 0 oder 1 sein. Der Wert "{0}" f\u00FCr Element "{1}" ist ung\u00FCltig.
-        cos-applicable-facets = cos-applicable-facets: Facet "{0}" ist nicht zul\u00E4ssig f\u00FCr Typ {1}.
-        cos-ct-extends.1.1 = cos-ct-extends.1.1: Typ "{0}" wurde durch die Erweiterung von Typ "{1}" abgeleitet. Das Attribut "final" von "{1}" l\u00E4sst die Ableitung durch Erweiterung aber nicht zu.
-        cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: Der Contenttyp eines abgeleiteten Typs und der seiner Basis m\u00FCssen beide "mixed" oder "element-only" sein. Typ "{0}" ist "element only", aber sein Basistyp nicht.
-        cos-ct-extends.1.4.3.2.2.1.b = cos-ct-extends.1.4.3.2.2.1.b: Der Contenttyp eines abgeleiteten Typs und der seiner Basis m\u00FCssen beide "mixed" oder "element-only" sein. Typ "{0}" ist "mixed", aber sein Basistyp nicht.
-        cos-element-consistent = cos-element-consistent: Fehler bei Typ "{0}". Mehrere Elemente mit Namen "{1}" und unterschiedlichen Typen kommen in der Modellgruppe vor.
-        cos-list-of-atomic = cos-list-of-atomic: In der Definition von Listentyp "{0}" ist Typ "{1}" ein ung\u00FCltiger Listenelementtyp, da er nicht atomar ist ("{1}" ist entweder ein Listentyp oder ein Vereinigungsmengentyp, der eine Liste enth\u00E4lt).
-        cos-nonambig = cos-nonambig: {0} und {1} (oder Elemente aus ihrer Substitutionsgruppe) verletzen "Unique Particle Attribution". Bei der Validierung f\u00FCr dieses Schema w\u00FCrde eine Mehrdeutigkeit f\u00FCr diese beiden Partikel erstellt.
+        ag-props-correct.2 = ag-props-correct.2: Fehler bei Attributgruppe ''{0}''. Es wurden doppelte Attributverwendungen mit demselben Namen und Ziel-Namespace angegeben. Name der doppelten Attributverwendung lautet ''{1}''.
+        ag-props-correct.3 = ag-props-correct.3: Fehler bei Attributgruppe ''{0}''. Zwei Attributdeklarationen (''{1}'' und ''{2}'') haben Typen, die aus ID abgeleitet wurden.
+        a-props-correct.2 = a-props-correct.2: Ung\u00FCltiger Werte-Constraint-Wert ''{1}'' in Attribut ''{0}''.
+        a-props-correct.3 = a-props-correct.3: Bei Attribut ''{0}'' kann ''fixed'' oder ''default'' nicht verwendet werden, da die '{'type definition'}' des Attributs ''ID'' ist oder aus ID abgeleitet wurde.
+        au-props-correct.2 = au-props-correct.2: In der Attributdeklaration von ''{0}'' wurde der feste Wert ''{1}'' angegeben. Wenn also die Attributverwendung, die auf ''{0}'' verweist, auch einen '{'value constraint'}' hat, muss sie fest sein, und der Wert muss ''{1}'' lauten.
+        cos-all-limited.1.2 = cos-all-limited.1.2: Eine 'all'-Modellgruppe muss in einem Partikel mit '{'min occurs'}' = '{'max occurs'}' = 1 vorkommen, und dieses Partikel muss zu einem Paar geh\u00F6ren, das den '{'content type'}' einer Complex Type-Definition darstellt.
+        cos-all-limited.2 = cos-all-limited.2: '{'max occurs'}' eines Elements in einer ''all''-Modellgruppe muss 0 oder 1 sein. Der Wert ''{0}'' f\u00FCr Element ''{1}'' ist ung\u00FCltig.
+        cos-applicable-facets = cos-applicable-facets: Facet ''{0}'' ist nicht zul\u00E4ssig f\u00FCr Typ {1}.
+        cos-ct-extends.1.1 = cos-ct-extends.1.1: Typ ''{0}'' wurde durch die Erweiterung von Typ ''{1}'' abgeleitet. Das Attribut ''final'' von ''{1}'' l\u00E4sst die Ableitung durch Erweiterung aber nicht zu.
+        cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: Der Contenttyp eines abgeleiteten Typs und der seiner Basis m\u00FCssen beide ''mixed'' oder ''element-only'' sein. Typ ''{0}'' ist ''element only'', aber sein Basistyp nicht.
+        cos-ct-extends.1.4.3.2.2.1.b = cos-ct-extends.1.4.3.2.2.1.b: Der Contenttyp eines abgeleiteten Typs und der seiner Basis m\u00FCssen beide ''mixed'' oder ''element-only'' sein. Typ ''{0}'' ist ''mixed'', aber sein Basistyp nicht.
+        cos-element-consistent = cos-element-consistent: Fehler bei Typ ''{0}''. Mehrere Elemente mit Namen ''{1}'' und unterschiedlichen Typen kommen in der Modellgruppe vor.
+        cos-list-of-atomic = cos-list-of-atomic: In der Definition von Listentyp ''{0}'' ist Typ ''{1}'' ein ung\u00FCltiger Listenelementtyp, da er nicht atomar ist (''{1}'' ist entweder ein Listentyp oder ein Vereinigungsmengentyp, der eine Liste enth\u00E4lt).
+        cos-nonambig = cos-nonambig: {0} und {1} (oder Elemente aus ihrer Substitutionsgruppe) verletzen ''Unique Particle Attribution''. Bei der Validierung f\u00FCr dieses Schema w\u00FCrde eine Mehrdeutigkeit f\u00FCr diese beiden Partikel erstellt.
         cos-particle-restrict.a = cos-particle-restrict.a: Abgeleitetes Partikel ist leer, und die Basis kann nicht geleert werden.
         cos-particle-restrict.b = cos-particle-restrict.b: Basispartikel ist leer, aber das abgeleitete Partikel ist nicht leer.
-        cos-particle-restrict.2 = cos-particle-restrict.2: Unzul\u00E4ssige Partikeleinschr\u00E4nkung: "{0}".
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: Typ "{1}" ist atomar. Daher muss die zugeh\u00F6rige "{''base type definition''}" "{0}" eine atomare Simple Type-Definition oder ein integrierter primitiver Datentyp sein.
-        cos-st-restricts.2.1 = cos-st-restricts.2.1: In der Definition von Listentyp "{0}" ist Typ "{1}" ein ung\u00FCltiger Elementtyp, da er entweder ein Listentyp oder ein Vereinigungsmengentyp ist, der eine Liste enth\u00E4lt.
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: Komponente "{"final"}" der "{"item type definition"}" "{0}" enth\u00E4lt "list". Dies bedeutet, dass "{0}" nicht als Elementtyp f\u00FCr Listentyp "{1}" verwendet werden kann.
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: Komponente "{"final"}" der "{"member type definitions"}" "{0}" enth\u00E4lt "union". Dies bedeutet, dass "{0}" nicht als Mitgliedstyp f\u00FCr Vereinigungsmengentyp "{1}" verwendet werden kann.
-        cos-valid-default.2.1 = cos-valid-default.2.1: Element "{0}" hat einen Werte-Constraint und muss ein Misch- oder ein einfaches Contentmodell haben.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Da Element "{0}" einen "{''value constraint''}" hat und seine Typdefinition einen gemischten "{''content type''}" hat, muss das Partikel des "{''content type''}" geleert werden k\u00F6nnen.
-        c-props-correct.2 = c-props-correct.2: Kardinalit\u00E4t von Feldern f\u00FCr keyref "{0}" und Schl\u00FCssel "{1}" muss sich gegenseitig entsprechen.
-        ct-props-correct.3 = ct-props-correct.3: Zyklische Definitionen f\u00FCr Complex Type "{0}" ermittelt. Dies bedeutet, dass "{0}" in der eigenen Typhierarchie enthalten ist. Dies ist ein Fehler.
-        ct-props-correct.4 = ct-props-correct.4: Fehler bei Typ "{0}". Es wurden doppelte Attributverwendungen mit demselben Namen und Ziel-Namespace angegeben. Name der doppelten Attributverwendung lautet "{1}".
-        ct-props-correct.5 = ct-props-correct.5: Fehler bei Typ "{0}". Zwei Attributdeklarationen ("{1}" und "{2}") haben Typen, die aus ID abgeleitet wurden.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: Typ "{0}" wurde durch die Einschr\u00E4nkung von Typ "{1}" abgeleitet. "{1}" hat aber eine "{''final''}"-Eigenschaft, die die Ableitung durch Einschr\u00E4nkung nicht zul\u00E4sst.
-        derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: Fehler bei Typ "{0}". Attributverwendung "{1}" in diesem Typ hat den "use"-Wert "{2}", der nicht mit dem Wert von "required" in einer \u00FCbereinstimmenden Attributverwendung im Basistyp konsistent ist.
-        derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: Fehler bei Typ "{0}". Attributverwendung "{1}" in diesem Typ hat den Typ "{2}", der nicht auf g\u00FCltige Weise von "{3}" abgeleitet wurde, dem Typ der \u00FCbereinstimmenden Attributverwendung im Basistyp.
-        derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: Fehler bei Typ "{0}". Attributverwendung "{1}" in diesem Typ hat einen effektiven Werte-Constraint, der nicht fest ist, und der effektive Werte-Constraint der \u00FCbereinstimmenden Attributverwendung im Basistyp ist fest.
-        derivation-ok-restriction.2.1.3.b = derivation-ok-restriction.2.1.3.b: Fehler bei Typ "{0}". Attributverwendung "{1}" in diesem Typ hat einen effektiven festen Werte-Constraint mit dem Wert "{2}". Dies ist nicht mit dem Wert "{3}" f\u00FCr den festen effektiven Werte-Constraint der \u00FCbereinstimmenden Attributverwendung im Basistyp konsistent.
-        derivation-ok-restriction.2.2.a = derivation-ok-restriction.2.2.a: Fehler bei Typ "{0}". Attributverwendung "{1}" in diesem Typ hat keine \u00FCbereinstimmende Attributverwendung in der Basis, und der Basistyp hat kein Platzhalterattribut.
-        derivation-ok-restriction.2.2.b = derivation-ok-restriction.2.2.b: Fehler bei Typ "{0}". Attributverwendung "{1}" in diesem Typ hat keine \u00FCbereinstimmende Attributverwendung in der Basis, und der Platzhalter im Basistyp l\u00E4sst den Namespace "{2}" dieser Attributverwendung nicht zu.
-        derivation-ok-restriction.3 = derivation-ok-restriction.3: Fehler bei Typ "{0}". Bei Attributverwendung "{1}" im Basistyp ist REQUIRED "true", aber es ist keine \u00FCbereinstimmende Attributverwendung im abgeleiteten Typ vorhanden.
-        derivation-ok-restriction.4.1 = derivation-ok-restriction.4.1: Fehler bei Typ "{0}". Ableitung hat einen Attributplatzhalter, aber die Basis hat keinen.
-        derivation-ok-restriction.4.2 = derivation-ok-restriction.4.2: Fehler bei Typ "{0}". Platzhalter in der Ableitung ist keine g\u00FCltige Platzhalter-Teilmenge des Platzhalters in der Basis.
-        derivation-ok-restriction.4.3 = derivation-ok-restriction.4.3: Fehler bei Typ "{0}". Prozesscontent des Platzhalters in der Ableitung ({1}) ist schw\u00E4cher als der Content in der Basis ({2}).
-        derivation-ok-restriction.5.2.2.1 = derivation-ok-restriction.5.2.2.1: Fehler bei Typ "{0}". Einfacher Contenttyp dieses Typs "{1}" ist keine g\u00FCltige Einschr\u00E4nkung des einfachen Contenttyps der Basis "{2}".
-        derivation-ok-restriction.5.3.2 = derivation-ok-restriction.5.3.2: Fehler bei Typ "{0}". Contenttyp dieses Typs ist leer, aber der Contenttyps der Basis "{1}" ist nicht leer oder kann nicht geleert werden.
-        derivation-ok-restriction.5.4.1.2 = derivation-ok-restriction.5.4.1.2: Fehler bei Typ "{0}". Contenttyp dieses Typs ist "mixed", aber der Contenttyps der Basis "{1}" nicht.
-        derivation-ok-restriction.5.4.2 = derivation-ok-restriction.5.4.2: Fehler bei Typ "{0}". Partikel des Typs ist keine g\u00FCltige Einschr\u00E4nkung des Partikels der Basis.
-        enumeration-required-notation = enumeration-required-notation: NOTATION-Typ "{0}", der von {2} "{1}" verwendet wird, muss einen Enumerations-Facet-Wert haben, der die von diesem Typ verwendeten Notationselemente angibt.
-        enumeration-valid-restriction = enumeration-valid-restriction: Enumerationswert "{0}" ist nicht im Wertebereich des Basistyps {1} vorhanden.
-        e-props-correct.2 = e-props-correct.2: Ung\u00FCltiger Werte-Constraint-Wert "{1}" in Element "{0}".
-        e-props-correct.4 = e-props-correct.4: "{"type definition"}" von Element "{0}" wurde nicht auf g\u00FCltige Weise von der "{"type definition"}" von substitutionHead "{1}" abgeleitet, oder die "{"substitution group exclusions"}"-Eigenschaft von "{1}" l\u00E4sst diese Ableitung nicht zu.
-        e-props-correct.5 = e-props-correct.5: "{"value constraint"}" darf nicht bei Element "{0}" vorhanden sein, da die "{"type definition"}" des Elements oder der "{"content type"}" der "{"type definition"}" "ID" ist oder von ID abgeleitet wurde.
-        e-props-correct.6 = e-props-correct.6: Zyklische Substitutionsgruppe f\u00FCr Element "{0}" ermittelt.
-        fractionDigits-valid-restriction = fractionDigits-valid-restriction: In der Definition von {2} ist der Wert "{0}" f\u00FCr Facet "fractionDigits" ung\u00FCltig, da er <= dem Wert f\u00FCr "fractionDigits" sein muss, der in einem der Vorg\u00E4ngertypen auf "{1}" gesetzt wurde.
-        fractionDigits-totalDigits = fractionDigits-totalDigits: In der Definition von {2} ist der Wert "{0}" f\u00FCr Facet "fractionDigits" ung\u00FCltig, da der Wert <= dem Wert f\u00FCr "totalDigits" sein muss, der "{1}" ist.
-        length-minLength-maxLength.1.1 = length-minLength-maxLength.1.1: Bei Typ {0} gilt es als Fehler, wenn der Wert von length "{1}" kleiner als der Wert von minLength "{2}" ist.
+        cos-particle-restrict.2 = cos-particle-restrict.2: Unzul\u00E4ssige Partikeleinschr\u00E4nkung: ''{0}''.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: Typ ''{1}'' ist atomar. Daher muss die zugeh\u00F6rige '{'base type definition'}' ''{0}'' eine atomare Simple Type-Definition oder ein integrierter primitiver Datentyp sein.
+        cos-st-restricts.2.1 = cos-st-restricts.2.1: In der Definition von Listentyp ''{0}'' ist Typ ''{1}'' ein ung\u00FCltiger Elementtyp, da er entweder ein Listentyp oder ein Vereinigungsmengentyp ist, der eine Liste enth\u00E4lt.
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: Komponente '{'final'}' der '{'item type definition'}' ''{0}'' enth\u00E4lt ''list''. Dies bedeutet, dass ''{0}'' nicht als Elementtyp f\u00FCr Listentyp ''{1}'' verwendet werden kann.
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: Komponente '{'final'}' der '{'member type definitions'}' ''{0}'' enth\u00E4lt ''union''. Dies bedeutet, dass ''{0}'' nicht als Mitgliedstyp f\u00FCr Vereinigungsmengentyp ''{1}'' verwendet werden kann.
+        cos-valid-default.2.1 = cos-valid-default.2.1: Element ''{0}'' hat einen Werte-Constraint und muss ein Misch- oder ein einfaches Contentmodell haben.
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Da Element ''{0}'' einen '{'value constraint'}' hat und seine Typdefinition einen gemischten '{'content type'}' hat, muss das Partikel des '{'content type'}' geleert werden k\u00F6nnen.
+        c-props-correct.2 = c-props-correct.2: Kardinalit\u00E4t von Feldern f\u00FCr keyref ''{0}'' und Schl\u00FCssel ''{1}'' muss sich gegenseitig entsprechen.
+        ct-props-correct.3 = ct-props-correct.3: Zyklische Definitionen f\u00FCr Complex Type ''{0}'' ermittelt. Dies bedeutet, dass ''{0}'' in der eigenen Typhierarchie enthalten ist. Dies ist ein Fehler.
+        ct-props-correct.4 = ct-props-correct.4: Fehler bei Typ ''{0}''. Es wurden doppelte Attributverwendungen mit demselben Namen und Ziel-Namespace angegeben. Name der doppelten Attributverwendung lautet ''{1}''.
+        ct-props-correct.5 = ct-props-correct.5: Fehler bei Typ ''{0}''. Zwei Attributdeklarationen (''{1}'' und ''{2}'') haben Typen, die aus ID abgeleitet wurden.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: Typ ''{0}'' wurde durch die Einschr\u00E4nkung von Typ ''{1}'' abgeleitet. ''{1}'' hat aber eine '{'final'}'-Eigenschaft, die die Ableitung durch Einschr\u00E4nkung nicht zul\u00E4sst.
+        derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: Fehler bei Typ ''{0}''. Attributverwendung ''{1}'' in diesem Typ hat den ''use''-Wert ''{2}'', der nicht mit dem Wert von ''required'' in einer \u00FCbereinstimmenden Attributverwendung im Basistyp konsistent ist.
+        derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: Fehler bei Typ ''{0}''. Attributverwendung ''{1}'' in diesem Typ hat den Typ ''{2}'', der nicht auf g\u00FCltige Weise von ''{3}'' abgeleitet wurde, dem Typ der \u00FCbereinstimmenden Attributverwendung im Basistyp.
+        derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: Fehler bei Typ ''{0}''. Attributverwendung ''{1}'' in diesem Typ hat einen effektiven Werte-Constraint, der nicht fest ist, und der effektive Werte-Constraint der \u00FCbereinstimmenden Attributverwendung im Basistyp ist fest.
+        derivation-ok-restriction.2.1.3.b = derivation-ok-restriction.2.1.3.b: Fehler bei Typ ''{0}''. Attributverwendung ''{1}'' in diesem Typ hat einen effektiven festen Werte-Constraint mit dem Wert ''{2}''. Dies ist nicht mit dem Wert ''{3}'' f\u00FCr den festen effektiven Werte-Constraint der \u00FCbereinstimmenden Attributverwendung im Basistyp konsistent.
+        derivation-ok-restriction.2.2.a = derivation-ok-restriction.2.2.a: Fehler bei Typ ''{0}''. Attributverwendung ''{1}'' in diesem Typ hat keine \u00FCbereinstimmende Attributverwendung in der Basis, und der Basistyp hat kein Platzhalterattribut.
+        derivation-ok-restriction.2.2.b = derivation-ok-restriction.2.2.b: Fehler bei Typ ''{0}''. Attributverwendung ''{1}'' in diesem Typ hat keine \u00FCbereinstimmende Attributverwendung in der Basis, und der Platzhalter im Basistyp l\u00E4sst den Namespace ''{2}'' dieser Attributverwendung nicht zu.
+        derivation-ok-restriction.3 = derivation-ok-restriction.3: Fehler bei Typ ''{0}''. Bei Attributverwendung ''{1}'' im Basistyp ist REQUIRED ''true'', aber es ist keine \u00FCbereinstimmende Attributverwendung im abgeleiteten Typ vorhanden.
+        derivation-ok-restriction.4.1 = derivation-ok-restriction.4.1: Fehler bei Typ ''{0}''. Ableitung hat einen Attributplatzhalter, aber die Basis hat keinen.
+        derivation-ok-restriction.4.2 = derivation-ok-restriction.4.2: Fehler bei Typ ''{0}''. Platzhalter in der Ableitung ist keine g\u00FCltige Platzhalter-Teilmenge des Platzhalters in der Basis.
+        derivation-ok-restriction.4.3 = derivation-ok-restriction.4.3: Fehler bei Typ ''{0}''. Prozesscontent des Platzhalters in der Ableitung ({1}) ist schw\u00E4cher als der Content in der Basis ({2}).
+        derivation-ok-restriction.5.2.2.1 = derivation-ok-restriction.5.2.2.1: Fehler bei Typ ''{0}''. Einfacher Contenttyp dieses Typs ''{1}'' ist keine g\u00FCltige Einschr\u00E4nkung des einfachen Contenttyps der Basis ''{2}''.
+        derivation-ok-restriction.5.3.2 = derivation-ok-restriction.5.3.2: Fehler bei Typ ''{0}''. Contenttyp dieses Typs ist leer, aber der Contenttyps der Basis ''{1}'' ist nicht leer oder kann nicht geleert werden.
+        derivation-ok-restriction.5.4.1.2 = derivation-ok-restriction.5.4.1.2: Fehler bei Typ ''{0}''. Contenttyp dieses Typs ist ''mixed'', aber der Contenttyps der Basis ''{1}'' nicht.
+        derivation-ok-restriction.5.4.2 = derivation-ok-restriction.5.4.2: Fehler bei Typ ''{0}''. Partikel des Typs ist keine g\u00FCltige Einschr\u00E4nkung des Partikels der Basis.
+        enumeration-required-notation = enumeration-required-notation: NOTATION-Typ ''{0}'', der von {2} ''{1}'' verwendet wird, muss einen Enumerations-Facet-Wert haben, der die von diesem Typ verwendeten Notationselemente angibt.
+        enumeration-valid-restriction = enumeration-valid-restriction: Enumerationswert ''{0}'' ist nicht im Wertebereich des Basistyps {1} vorhanden.
+        e-props-correct.2 = e-props-correct.2: Ung\u00FCltiger Werte-Constraint-Wert ''{1}'' in Element ''{0}''.
+        e-props-correct.4 = e-props-correct.4: '{'type definition'}' von Element ''{0}'' wurde nicht auf g\u00FCltige Weise von der '{'type definition'}' von substitutionHead ''{1}'' abgeleitet, oder die '{'substitution group exclusions'}'-Eigenschaft von ''{1}'' l\u00E4sst diese Ableitung nicht zu.
+        e-props-correct.5 = e-props-correct.5: '{'value constraint'}' darf nicht bei Element ''{0}'' vorhanden sein, da die '{'type definition'}' des Elements oder der '{'content type'}' der '{'type definition'}' ID ist oder von ID abgeleitet wurde.
+        e-props-correct.6 = e-props-correct.6: Zyklische Substitutionsgruppe f\u00FCr Element ''{0}'' ermittelt.
+        fractionDigits-valid-restriction = fractionDigits-valid-restriction: In der Definition von {2} ist der Wert ''{0}'' f\u00FCr Facet ''fractionDigits'' ung\u00FCltig, da er <= dem Wert f\u00FCr ''fractionDigits'' sein muss, der in einem der Vorg\u00E4ngertypen auf ''{1}'' gesetzt wurde.
+        fractionDigits-totalDigits = fractionDigits-totalDigits: In der Definition von {2} ist der Wert ''{0}'' f\u00FCr Facet ''fractionDigits'' ung\u00FCltig, da der Wert <= dem Wert f\u00FCr ''totalDigits'' sein muss, der ''{1}'' ist.
+        length-minLength-maxLength.1.1 = length-minLength-maxLength.1.1: Bei Typ {0} gilt es als Fehler, wenn der Wert von length ''{1}'' kleiner als der Wert von minLength ''{2}'' ist.
         length-minLength-maxLength.1.2.a = length-minLength-maxLength.1.2.a: Bei Typ {0} gilt es als Fehler, wenn die Basis kein minLength-Facet hat, wenn die aktuelle Einschr\u00E4nkung das minLength-Facet und die aktuelle Einschr\u00E4nkung oder Basis das length-Facet hat.
-        length-minLength-maxLength.1.2.b = length-minLength-maxLength.1.2.b: Bei Typ {0} gilt es als Fehler, wenn die aktuelle minLength "{1}" nicht mit der Basis-minLength "{2}" identisch ist.
-        length-minLength-maxLength.2.1 = length-minLength-maxLength.2.1: Bei Typ {0} gilt es als Fehler, wenn der Wert von length "{1}" gr\u00F6\u00DFer als der Wert von maxLength "{2}" ist.
+        length-minLength-maxLength.1.2.b = length-minLength-maxLength.1.2.b: Bei Typ {0} gilt es als Fehler, wenn die aktuelle minLength ''{1}'' nicht mit der Basis-minLength ''{2}'' identisch ist.
+        length-minLength-maxLength.2.1 = length-minLength-maxLength.2.1: Bei Typ {0} gilt es als Fehler, wenn der Wert von length ''{1}'' gr\u00F6\u00DFer als der Wert von maxLength ''{2}'' ist.
         length-minLength-maxLength.2.2.a = length-minLength-maxLength.2.2.a: Bei Typ {0} gilt es als Fehler, wenn die Basis kein maxLength-Facet hat, wenn die aktuelle Einschr\u00E4nkung das maxLength-Facet und die aktuelle Einschr\u00E4nkung oder Basis das length-Facet hat.
-        length-minLength-maxLength.2.2.b = length-minLength-maxLength.2.2.b: Bei Typ {0} gilt es als Fehler, wenn die aktuelle maxLength "{1}" nicht mit der Basis-maxLength "{2}" identisch ist.
-        length-valid-restriction = length-valid-restriction: Fehler bei Typ "{2}". Der Wert von length = "{0}" muss mit dem Wert des Basistyps "{1}" identisch sein.
-        maxExclusive-valid-restriction.1 = maxExclusive-valid-restriction.1: Fehler bei Typ "{2}". maxExclusive-Wert ="{0}" muss <= maxExclusive des Basistyps "{1}" sein.
-        maxExclusive-valid-restriction.2 = maxExclusive-valid-restriction.2: Fehler bei Typ "{2}". maxExclusive-Wert ="{0}" muss <= maxInclusive des Basistyps "{1}" sein.
-        maxExclusive-valid-restriction.3 = maxExclusive-valid-restriction.3: Fehler bei Typ "{2}". maxExclusive-Wert ="{0}" muss > minInclusive des Basistyps "{1}" sein.
-        maxExclusive-valid-restriction.4 = maxExclusive-valid-restriction.4: Fehler bei Typ "{2}". maxExclusive-Wert ="{0}" muss > minExclusive des Basistyps "{1}" sein.
-        maxInclusive-maxExclusive = maxInclusive-maxExclusive: Es gilt als Fehler, wenn sowohl maxInclusive als auch maxExclusive f\u00FCr denselben Datentyp angegeben werden. In {2} gilt: maxInclusive = "{0}" und maxExclusive = "{1}".
-        maxInclusive-valid-restriction.1 = maxInclusive-valid-restriction.1: Fehler bei Typ "{2}". maxInclusive-Wert ="{0}" muss <= maxInclusive des Basistyps "{1}" sein.
-        maxInclusive-valid-restriction.2 = maxInclusive-valid-restriction.2: Fehler bei Typ "{2}". maxInclusive-Wert ="{0}" muss < maxExclusive des Basistyps "{1}" sein.
-        maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: Fehler bei Typ "{2}". maxInclusive-Wert ="{0}" muss >= maxInclusive des Basistyps "{1}" sein.
-        maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: Fehler bei Typ "{2}". maxInclusive-Wert ="{0}" muss > minExclusive des Basistyps "{1}" sein.
-        maxLength-valid-restriction = maxLength-valid-restriction: In der Definition von {2} muss maxLength-Wert = "{0}" <= dem Wert des Basistyps "{1}" sein.
-        mg-props-correct.2 = mg-props-correct.2: Zyklische Definitionen f\u00FCr Gruppe "{0}" ermittelt. Rekursives Folgen der "{''term''}"-Werte der Partikel f\u00FChrt zu einem Partikel, dessen "{''term''}" die Gruppe selbst ist.
-        minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: In der Definition von {2} muss minExclusive-Wert = "{0}" <= maxExclusive-Wert = "{1}" sein.
-        minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: In der Definition von {2} muss minExclusive-Wert = "{0}" < maxInclusive-Wert = "{1}" sein.
-        minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: Fehler bei Typ "{2}". minExclusive-Wert ="{0}" muss >= minExclusive des Basistyps "{1}" sein.
-        minExclusive-valid-restriction.2 = minExclusive-valid-restriction.2: Fehler bei Typ "{2}". minExclusive-Wert ="{0}" muss <= maxInclusive des Basistyps "{1}" sein.
-        minExclusive-valid-restriction.3 = minExclusive-valid-restriction.3: Fehler bei Typ "{2}". minExclusive-Wert ="{0}" muss >= minInclusive des Basistyps "{1}" sein.
-        minExclusive-valid-restriction.4 = minExclusive-valid-restriction.4: Fehler bei Typ "{2}". minExclusive-Wert ="{0}" muss < maxExclusive des Basistyps "{1}" sein.
-        minInclusive-less-than-equal-to-maxInclusive = minInclusive-less-than-equal-to-maxInclusive: In der Definition von {2} muss minInclusive-Wert = "{0}" <= maxInclusive-Wert = "{1}" sein.
-        minInclusive-less-than-maxExclusive = minInclusive-less-than-maxExclusive: In der Definition von {2} muss minInclusive-Wert = "{0}" < maxExclusive-Wert = "{1}" sein.
-        minInclusive-minExclusive = minInclusive-minExclusive: Es gilt als Fehler, wenn sowohl minInclusive als auch minExclusive f\u00FCr denselben Datentyp angegeben werden. In {2} gilt: minInclusive = "{0}" und minExclusive = "{1}".
-        minInclusive-valid-restriction.1 = minInclusive-valid-restriction.1: Fehler bei Typ "{2}". minInclusive-Wert ="{0}" muss >= minInclusive des Basistyps "{1}" sein.
-        minInclusive-valid-restriction.2 = minInclusive-valid-restriction.2: Fehler bei Typ "{2}". minInclusive-Wert ="{0}" muss <= maxInclusive des Basistyps "{1}" sein.
-        minInclusive-valid-restriction.3 = minInclusive-valid-restriction.3: Fehler bei Typ "{2}". minInclusive-Wert ="{0}" muss > minExclusive des Basistyps "{1}" sein.
-        minInclusive-valid-restriction.4 = minInclusive-valid-restriction.4: Fehler bei Typ "{2}". minInclusive-Wert ="{0}" muss < maxExclusive des Basistyps "{1}" sein.
-        minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: In der Definition von {2} muss der Wert von minLength = "{0}" < dem Wert von maxLength = "{1}" sein.
-        minLength-valid-restriction = minLength-valid-restriction: In der Definition von {2} muss minLength = "{0}" >= dem Wert des Basistyps "{1}" sein.
-        no-xmlns = no-xmlns: {name} einer Attributdeklaration darf nicht mit "xmlns" \u00FCbereinstimmen.
-        no-xsi = no-xsi: "{"target namespace"}" einer Attributdeklaration darf nicht mit "{0}" \u00FCbereinstimmen.
-        p-props-correct.2.1 = p-props-correct.2.1: In der Deklaration von "{0}" ist der Wert von "minOccurs" "{1}", er darf aber nicht gr\u00F6\u00DFer als der Wert von "maxOccurs" sein, der "{2}" lautet.
+        length-minLength-maxLength.2.2.b = length-minLength-maxLength.2.2.b: Bei Typ {0} gilt es als Fehler, wenn die aktuelle maxLength ''{1}'' nicht mit der Basis-maxLength ''{2}'' identisch ist.
+        length-valid-restriction = length-valid-restriction: Fehler bei Typ ''{2}''. Der Wert von length = ''{0}'' muss mit dem Wert des Basistyps ''{1}'' identisch sein.
+        maxExclusive-valid-restriction.1 = maxExclusive-valid-restriction.1: Fehler bei Typ ''{2}''. maxExclusive-Wert =''{0}'' muss <= maxExclusive des Basistyps ''{1}'' sein.
+        maxExclusive-valid-restriction.2 = maxExclusive-valid-restriction.2: Fehler bei Typ ''{2}''. maxExclusive-Wert =''{0}'' muss <= maxInclusive des Basistyps ''{1}'' sein.
+        maxExclusive-valid-restriction.3 = maxExclusive-valid-restriction.3: Fehler bei Typ ''{2}''. maxExclusive-Wert =''{0}'' muss > minInclusive des Basistyps ''{1}'' sein.
+        maxExclusive-valid-restriction.4 = maxExclusive-valid-restriction.4: Fehler bei Typ ''{2}''. maxExclusive-Wert =''{0}'' muss > minExclusive des Basistyps ''{1}'' sein.
+        maxInclusive-maxExclusive = maxInclusive-maxExclusive: Es gilt als Fehler, wenn sowohl maxInclusive als auch maxExclusive f\u00FCr denselben Datentyp angegeben werden. In {2} gilt: maxInclusive = ''{0}'' und maxExclusive = ''{1}''.
+        maxInclusive-valid-restriction.1 = maxInclusive-valid-restriction.1: Fehler bei Typ ''{2}''. maxInclusive-Wert =''{0}'' muss <= maxInclusive des Basistyps ''{1}'' sein.
+        maxInclusive-valid-restriction.2 = maxInclusive-valid-restriction.2: Fehler bei Typ ''{2}''. maxInclusive-Wert =''{0}'' muss < maxExclusive des Basistyps ''{1}'' sein.
+        maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: Fehler bei Typ ''{2}''. maxInclusive-Wert =''{0}'' muss >= maxInclusive des Basistyps ''{1}'' sein.
+        maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: Fehler bei Typ ''{2}''. maxInclusive-Wert =''{0}'' muss > minExclusive des Basistyps ''{1}'' sein.
+        maxLength-valid-restriction = maxLength-valid-restriction: In der Definition von {2} muss maxLength-Wert = ''{0}'' <= dem Wert des Basistyps ''{1}'' sein.
+        mg-props-correct.2 = mg-props-correct.2: Zyklische Definitionen f\u00FCr Gruppe ''{0}'' ermittelt. Rekursives Folgen der '{'term'}'-Werte der Partikel f\u00FChrt zu einem Partikel, dessen '{'term'}' die Gruppe selbst ist.
+        minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: In der Definition von {2} muss minExclusive-Wert = ''{0}'' <= maxExclusive-Wert = ''{1}'' sein.
+        minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: In der Definition von {2} muss minExclusive-Wert = ''{0}'' < maxInclusive-Wert = ''{1}'' sein.
+        minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: Fehler bei Typ ''{2}''. minExclusive-Wert =''{0}'' muss >= minExclusive des Basistyps ''{1}'' sein.
+        minExclusive-valid-restriction.2 = minExclusive-valid-restriction.2: Fehler bei Typ ''{2}''. minExclusive-Wert =''{0}'' muss <= maxInclusive des Basistyps ''{1}'' sein.
+        minExclusive-valid-restriction.3 = minExclusive-valid-restriction.3: Fehler bei Typ ''{2}''. minExclusive-Wert =''{0}'' muss >= minInclusive des Basistyps ''{1}'' sein.
+        minExclusive-valid-restriction.4 = minExclusive-valid-restriction.4: Fehler bei Typ ''{2}''. minExclusive-Wert =''{0}'' muss < maxExclusive des Basistyps ''{1}'' sein.
+        minInclusive-less-than-equal-to-maxInclusive = minInclusive-less-than-equal-to-maxInclusive: In der Definition von {2} muss minInclusive-Wert = ''{0}'' <= maxInclusive-Wert = ''{1}'' sein.
+        minInclusive-less-than-maxExclusive = minInclusive-less-than-maxExclusive: In der Definition von {2} muss minInclusive-Wert = ''{0}'' < maxExclusive-Wert = ''{1}'' sein.
+        minInclusive-minExclusive = minInclusive-minExclusive: Es gilt als Fehler, wenn sowohl minInclusive als auch minExclusive f\u00FCr denselben Datentyp angegeben werden. In {2} gilt: minInclusive = ''{0}'' und minExclusive = ''{1}''.
+        minInclusive-valid-restriction.1 = minInclusive-valid-restriction.1: Fehler bei Typ ''{2}''. minInclusive-Wert =''{0}'' muss >= minInclusive des Basistyps ''{1}'' sein.
+        minInclusive-valid-restriction.2 = minInclusive-valid-restriction.2: Fehler bei Typ ''{2}''. minInclusive-Wert =''{0}'' muss <= maxInclusive des Basistyps ''{1}'' sein.
+        minInclusive-valid-restriction.3 = minInclusive-valid-restriction.3: Fehler bei Typ ''{2}''. minInclusive-Wert =''{0}'' muss > minExclusive des Basistyps ''{1}'' sein.
+        minInclusive-valid-restriction.4 = minInclusive-valid-restriction.4: Fehler bei Typ ''{2}''. minInclusive-Wert =''{0}'' muss < maxExclusive des Basistyps ''{1}'' sein.
+        minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: In der Definition von {2} muss der Wert von minLength = ''{0}'' < dem Wert von maxLength = ''{1}'' sein.
+        minLength-valid-restriction = minLength-valid-restriction: In der Definition von {2} muss minLength = ''{0}'' >= dem Wert des Basistyps ''{1}'' sein.
+        no-xmlns = no-xmlns: {name} einer Attributdeklaration darf nicht mit 'xmlns' \u00FCbereinstimmen.
+        no-xsi = no-xsi: '{'target namespace'}' einer Attributdeklaration darf nicht mit ''{0}'' \u00FCbereinstimmen.
+        p-props-correct.2.1 = p-props-correct.2.1: In der Deklaration von ''{0}'' ist der Wert von ''minOccurs'' ''{1}'', er darf aber nicht gr\u00F6\u00DFer als der Wert von ''maxOccurs'' sein, der ''{2}'' lautet.
         rcase-MapAndSum.1 = rcase-MapAndSum.1: Es ist keine vollst\u00E4ndige Funktionszuordnung zwischen den Partikeln vorhanden.
         rcase-MapAndSum.2 = rcase-MapAndSum.2: Vorkommensbereich der Gruppe ({0},{1}) ist keine g\u00FCltige Einschr\u00E4nkung des Vorkommensbereichs der Basisgruppe ({2},{3}).
-        rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: Elemente haben Namen und Ziel-Namespaces, die nicht identisch sind: Element "{0}" in Namespace "{1}" und Element "{2}" in Namespace "{3}".
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: Fehler beim Partikel, dessen "{"term"}" die Elementdeklaration "{0}" ist. "{"nillable"}" ist bei der Elementdeklaration "true", aber das entsprechende Partikel im Basistyp hat eine Elementdeklaration, bei der "{"nillable"}" "false" ist.
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: Fehler beim Partikel, dessen "{"term"}" die Elementdeklaration "{0}" ist. Der Vorkommensbereich ({1},{2}) ist keine g\u00FCltige Einschr\u00E4nkung des Bereichs ({3},{4}) des entsprechenden Partikels im Basistyp.
-        rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: Element "{0}" ist nicht fest, aber das entsprechende Element im Basistyp ist fest mit Wert "{1}".
-        rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: Element "{0}" ist fest mit dem Wert "{1}", aber das entsprechende Element im Basistyp ist fest mit Wert "{2}".
-        rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: Identity Constraints f\u00FCr Element "{0}" sind keine Teilmenge der Constraints in der Basis.
-        rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: Die unzul\u00E4ssigen Substitutionen f\u00FCr Element "{0}" sind keine Obermenge der Substitutionen in der Basis.
-        rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: Typ des Elements "{0}" "{1}" wurde nicht vom Typ des Basiselements "{2}" abgeleitet.
-        rcase-NSCompat.1 = rcase-NSCompat.1: Element "{0}" hat den Namespace "{1}". Dies wird vom Platzhalter in der Basis nicht zugelassen.
-        rcase-NSCompat.2 = rcase-NSCompat.2: Fehler beim Partikel, dessen "{"term"}" die Elementdeklaration "{0}" ist. Der Vorkommensbereich ({1},{2}) ist keine g\u00FCltige Einschr\u00E4nkung des Bereichs ({3},{4}) des entsprechenden Partikels im Basistyp.
+        rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: Elemente haben Namen und Ziel-Namespaces, die nicht identisch sind: Element ''{0}'' in Namespace ''{1}'' und Element ''{2}'' in Namespace ''{3}''.
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: Fehler beim Partikel, dessen '{'term'}' die Elementdeklaration ''{0}'' ist. '{'nillable'}' ist bei der Elementdeklaration ''true'', aber das entsprechende Partikel im Basistyp hat eine Elementdeklaration, bei der '{'nillable'}' ''false'' ist.
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: Fehler beim Partikel, dessen '{'term'}' die Elementdeklaration ''{0}'' ist. Der Vorkommensbereich ({1},{2}) ist keine g\u00FCltige Einschr\u00E4nkung des Bereichs ({3},{4}) des entsprechenden Partikels im Basistyp.
+        rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: Element ''{0}'' ist nicht fest, aber das entsprechende Element im Basistyp ist fest mit Wert ''{1}''.
+        rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: Element ''{0}'' ist fest mit dem Wert ''{1}'', aber das entsprechende Element im Basistyp ist fest mit Wert ''{2}''.
+        rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: Identity Constraints f\u00FCr Element ''{0}'' sind keine Teilmenge der Constraints in der Basis.
+        rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: Die unzul\u00E4ssigen Substitutionen f\u00FCr Element ''{0}'' sind keine Obermenge der Substitutionen in der Basis.
+        rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: Typ des Elements ''{0}'' ''{1}'' wurde nicht vom Typ des Basiselements ''{2}'' abgeleitet.
+        rcase-NSCompat.1 = rcase-NSCompat.1: Element ''{0}'' hat den Namespace ''{1}''. Dies wird vom Platzhalter in der Basis nicht zugelassen.
+        rcase-NSCompat.2 = rcase-NSCompat.2: Fehler beim Partikel, dessen '{'term'}' die Elementdeklaration ''{0}'' ist. Der Vorkommensbereich ({1},{2}) ist keine g\u00FCltige Einschr\u00E4nkung des Bereichs ({3},{4}) des entsprechenden Partikels im Basistyp.
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: Es ist keine vollst\u00E4ndige Funktionszuordnung zwischen den Partikeln vorhanden.
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: Vorkommensbereich der Gruppe ({0},{1}) ist keine g\u00FCltige Einschr\u00E4nkung des Bereichs des Basisplatzhalters ({2},{3}).
         rcase-NSSubset.1 = rcase-NSSubset.1: Platzhalter ist keine Teilmenge des entsprechenden Platzhalters in der Basis.
         rcase-NSSubset.2 = rcase-NSSubset.2: Vorkommensbereich des Platzhalters ({0},{1}) ist keine g\u00FCltige Einschr\u00E4nkung des Bereichs in der Basis ({2},{3}).
-        rcase-NSSubset.3 = rcase-NSSubset.3: Prozesscontent des Platzhalters ("{0}") ist schw\u00E4cher als der in der Basis "{1}".
+        rcase-NSSubset.3 = rcase-NSSubset.3: Prozesscontent des Platzhalters (''{0}'') ist schw\u00E4cher als der in der Basis ''{1}''.
         rcase-Recurse.1 = rcase-Recurse.1: Vorkommensbereich der Gruppe ({0},{1}) ist keine g\u00FCltige Einschr\u00E4nkung des Vorkommensbereichs der Basisgruppe ({2},{3}).
         rcase-Recurse.2 = rcase-Recurse.2: Es ist keine vollst\u00E4ndige Funktionszuordnung zwischen den Partikeln vorhanden.
         rcase-RecurseLax.1 = rcase-RecurseLax.1: Vorkommensbereich der Gruppe ({0},{1}) ist keine g\u00FCltige Einschr\u00E4nkung des Vorkommensbereichs der Basisgruppe ({2},{3}).
@@ -276,42 +282,49 @@
         rcase-RecurseUnordered.2 = rcase-RecurseUnordered.2: Es ist keine vollst\u00E4ndige Funktionszuordnung zwischen den Partikeln vorhanden.
 #        We're using sch-props-correct.2 instead of the old src-redefine.1
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
-        sch-props-correct.2 = sch-props-correct.2: Ein Schema kann nicht zwei globale Komponenten mit demselben Namen enthalten. Dieses Schema enth\u00E4lt zwei Vorkommen von "{0}".
-        st-props-correct.2 = st-props-correct.2: Zyklische Definitionen wurden f\u00FCr Simple Type "{0}" ermittelt. Dies bedeutet, dass "{0}" in der eigenen Typhierarchie enthalten ist. Dies ist ein Fehler.
-        st-props-correct.3 = st-props-correct.3: Fehler bei Typ "{0}". Der Wert von "{''final''}" der "{''base type definition''}" "{1}" l\u00E4sst keine Ableitung durch Einschr\u00E4nkung zu.
-        totalDigits-valid-restriction = totalDigits-valid-restriction: In der Definition von {2} ist der Wert "{0}" f\u00FCr Facet "totalDigits" ung\u00FCltig, da er <= dem Wert f\u00FCr "totalDigits" sein muss, der in einem der Vorg\u00E4ngertypen auf "{1}" gesetzt wurde.
-        whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: In der Definition von {0} ist der Wert "{1}" f\u00FCr Facet "whitespace" ung\u00FCltig, da der Wert f\u00FCr "whitespace" in einem der Vorg\u00E4ngertypen auf "collapse" gesetzt wurde.
-        whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: In der Definition von {0} ist der Wert "preserve" f\u00FCr Facet "whitespace" ung\u00FCltig, da der Wert f\u00FCr "whitespace" in einem der Vorg\u00E4ngertypen auf "replace" gesetzt wurde.
+        sch-props-correct.2 = sch-props-correct.2: Ein Schema kann nicht zwei globale Komponenten mit demselben Namen enthalten. Dieses Schema enth\u00E4lt zwei Vorkommen von ''{0}''.
+        st-props-correct.2 = st-props-correct.2: Zyklische Definitionen wurden f\u00FCr Simple Type ''{0}'' ermittelt. Dies bedeutet, dass ''{0}'' in der eigenen Typhierarchie enthalten ist. Dies ist ein Fehler.
+        st-props-correct.3 = st-props-correct.3: Fehler bei Typ ''{0}''. Der Wert von '{'final'}' der '{'base type definition'}' ''{1}'' l\u00E4sst keine Ableitung durch Einschr\u00E4nkung zu.
+        totalDigits-valid-restriction = totalDigits-valid-restriction: In der Definition von {2} ist der Wert ''{0}'' f\u00FCr Facet ''totalDigits'' ung\u00FCltig, da er <= dem Wert f\u00FCr ''totalDigits'' sein muss, der in einem der Vorg\u00E4ngertypen auf ''{1}'' gesetzt wurde.
+        whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: In der Definition von {0} ist der Wert ''{1}'' f\u00FCr Facet ''whitespace'' ung\u00FCltig, da der Wert f\u00FCr ''whitespace'' in einem der Vorg\u00E4ngertypen auf ''collapse'' gesetzt wurde.
+        whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: In der Definition von {0} ist der Wert ''preserve'' f\u00FCr Facet ''whitespace'' ung\u00FCltig, da der Wert f\u00FCr ''whitespace'' in einem der Vorg\u00E4ngertypen auf ''replace'' gesetzt wurde.
 
 #schema for Schemas
 
-        s4s-att-invalid-value = s4s-att-invalid-value: Ung\u00FCltiger Attributwert f\u00FCr "{1}" in Element "{0}". Aufgezeichneter Grund: {2}
-        s4s-att-must-appear = s4s-att-must-appear: Attribut "{1}" muss in Element "{0}" vorkommen.
-        s4s-att-not-allowed = s4s-att-not-allowed: Attribut "{1}" darf nicht in Element "{0}" vorkommen.
-        s4s-elt-invalid = s4s-elt-invalid: Element "{0}" ist kein g\u00FCltiges Element in einem Schemadokument.
-        s4s-elt-must-match.1 = s4s-elt-must-match.1: Content von "{0}" muss {1} entsprechen. Beim Start bei {2} ist ein Problem aufgetreten.
-        s4s-elt-must-match.2 = s4s-elt-must-match.2: Content von "{0}" muss {1} entsprechen. Nicht gen\u00FCgend Elemente gefunden.
+        s4s-att-invalid-value = s4s-att-invalid-value: Ung\u00FCltiger Attributwert f\u00FCr ''{1}'' in Element ''{0}''. Aufgezeichneter Grund: {2}
+        s4s-att-must-appear = s4s-att-must-appear: Attribut ''{1}'' muss in Element ''{0}'' vorkommen.
+        s4s-att-not-allowed = s4s-att-not-allowed: Attribut ''{1}'' darf nicht in Element ''{0}'' vorkommen.
+        s4s-elt-invalid = s4s-elt-invalid: Element ''{0}'' ist kein g\u00FCltiges Element in einem Schemadokument.
+        s4s-elt-must-match.1 = s4s-elt-must-match.1: Content von ''{0}'' muss {1} entsprechen. Beim Start bei {2} ist ein Problem aufgetreten.
+        s4s-elt-must-match.2 = s4s-elt-must-match.2: Content von ''{0}'' muss {1} entsprechen. Nicht gen\u00FCgend Elemente gefunden.
         # the "invalid-content" messages provide less information than the "must-match" counterparts above. They're used for complex types when providing a "match" would be an information dump
-        s4s-elt-invalid-content.1 = s4s-elt-invalid-content.1: Content von "{0}" ist ung\u00FCltig. Element "{1}" ist ung\u00FCltig, nicht an der erwarteten Stelle oder kommt zu oft vor.
-        s4s-elt-invalid-content.2 = s4s-elt-invalid-content.2: Content von "{0}" ist ung\u00FCltig. Element "{1}" darf nicht leer sein.
-        s4s-elt-invalid-content.3 = s4s-elt-invalid-content.3: Elemente mit dem Typ "{0}" k\u00F6nnen nicht nach Deklarationen als untergeordnete Elemente eines <schema>-Elements vorkommen.
-        s4s-elt-schema-ns = s4s-elt-schema-ns: Namespace des Elements "{0}" muss aus dem Schema-Namespace "http://www.w3.org/2001/XMLSchema" stammen.
-        s4s-elt-character = s4s-elt-character: In anderen Schemaelementen als "xs:appinfo" und "xs:documentation" sind nur Leerstellen zul\u00E4ssig. "{0}" gefunden.
+        s4s-elt-invalid-content.1 = s4s-elt-invalid-content.1: Content von ''{0}'' ist ung\u00FCltig. Element ''{1}'' ist ung\u00FCltig, nicht an der erwarteten Stelle oder kommt zu oft vor.
+        s4s-elt-invalid-content.2 = s4s-elt-invalid-content.2: Content von ''{0}'' ist ung\u00FCltig. Element ''{1}'' darf nicht leer sein.
+        s4s-elt-invalid-content.3 = s4s-elt-invalid-content.3: Elemente mit dem Typ ''{0}'' k\u00F6nnen nicht nach Deklarationen als untergeordnete Elemente eines <schema>-Elements vorkommen.
+        s4s-elt-schema-ns = s4s-elt-schema-ns: Namespace des Elements ''{0}'' muss aus dem Schema-Namespace ''http://www.w3.org/2001/XMLSchema'' stammen.
+        s4s-elt-character = s4s-elt-character: In anderen Schemaelementen als ''xs:appinfo'' und ''xs:documentation'' sind nur Leerstellen zul\u00E4ssig. ''{0}'' gefunden.
 
 # codes not defined by the spec
 
-        c-fields-xpaths = c-fields-xpaths: Feldwert = "{0}" ist ung\u00FCltig.
-        c-general-xpath = c-general-xpath: Ausdruck "{0}" ist ung\u00FCltig in Bezug auf die vom XML-Schema unterst\u00FCtzte XPath-Teilmenge.
-        c-general-xpath-ns = c-general-xpath-ns: Namespace-Pr\u00E4fix in XPath-Ausdruck "{0}" war an einen Namespace gebunden.
-        c-selector-xpath = c-selector-xpath: Selector-Wert = "{0}" ist ung\u00FCltig. Selector-XPaths k\u00F6nnen keine Attribute enthalten.
-        EmptyTargetNamespace = EmptyTargetNamespace: In Schemadokument "{0}" kann der Wert des "targetNamespace"-Attributs keine leere Zeichenfolge sein.
-        FacetValueFromBase = FacetValueFromBase: In der Deklaration von Typ "{0}" muss der Wert "{1}" von Facet "{2}" aus dem Wertebereich des Basistyps "{3}" stammen.
-        FixedFacetValue = FixedFacetValue: In der Definition von {3} ist der Wert "{1}" f\u00FCr Facet "{0}" ung\u00FCltig, da der Wert f\u00FCr "{0}" in einem der Vorg\u00E4ngertypen auf "{2}" gesetzt wurde und "{''fixed''}" = "true" ist.
-        InvalidRegex = InvalidRegex: Musterwert "{0}" ist kein g\u00FCltiger regul\u00E4rer Ausdruck. Der gemeldete Fehler war: "{1}" bei Spalte "{2}".
-        maxOccurLimit = Aktuelle Konfiguration des Parsers l\u00E4sst nicht zu, dass ein maxOccurs-Attributwert auf einen h\u00F6heren Wert als {0} gesetzt wird.
-        PublicSystemOnNotation = PublicSystemOnNotation: Mindestens eines der Elemente "public" und "system" muss im Element "notation" vorkommen.
-        SchemaLocation = SchemaLocation: schemaLocation-Wert = "{0}" muss eine gerade Anzahl an URIs haben.
-        TargetNamespace.1 = TargetNamespace.1: Namespace "{0}" wird erwartet, aber der Ziel-Namespace des Schemadokuments ist "{1}".
-        TargetNamespace.2 = TargetNamespace.2: Kein Namespace wird erwartet, aber das Schemadokument hat den Ziel-Namespace "{1}".
-        UndeclaredEntity = UndeclaredEntity: Entit\u00E4t "{0}" ist nicht deklariert.
-        UndeclaredPrefix = UndeclaredPrefix: "{0}" kann nicht als QName aufgel\u00F6st werden: Pr\u00E4fix "{1}" ist nicht deklariert.
+        c-fields-xpaths = c-fields-xpaths: Feldwert = ''{0}'' ist ung\u00FCltig.
+        c-general-xpath = c-general-xpath: Ausdruck ''{0}'' ist ung\u00FCltig in Bezug auf die vom XML-Schema unterst\u00FCtzte XPath-Teilmenge.
+        c-general-xpath-ns = c-general-xpath-ns: Namespace-Pr\u00E4fix in XPath-Ausdruck ''{0}'' war an einen Namespace gebunden.
+        c-selector-xpath = c-selector-xpath: Selector-Wert = ''{0}'' ist ung\u00FCltig. Selektor-XPaths k\u00F6nnen keine Attribute enthalten.
+        EmptyTargetNamespace = EmptyTargetNamespace: In Schemadokument ''{0}'' kann der Wert des ''targetNamespace''-Attributs keine leere Zeichenfolge sein.
+        FacetValueFromBase = FacetValueFromBase: In der Deklaration von Typ ''{0}'' muss der Wert ''{1}'' von Facet ''{2}'' aus dem Wertebereich des Basistyps ''{3}'' stammen.
+        FixedFacetValue = FixedFacetValue: In der Definition von {3} ist der Wert ''{1}'' f\u00FCr Facet ''{0}'' ung\u00FCltig, da der Wert f\u00FCr ''{0}'' in einem der Vorg\u00E4ngertypen auf ''{2}'' gesetzt wurde und ''{''fixed'}''' = true ist.
+        InvalidRegex = InvalidRegex: Musterwert ''{0}'' ist kein g\u00FCltiger regul\u00E4rer Ausdruck. Der gemeldete Fehler war: ''{1}'' bei Spalte ''{2}''.
+        MaxOccurLimit = Aktuelle Konfiguration des Parsers l\u00E4sst nicht zu, dass ein maxOccurs-Attributwert auf einen h\u00F6heren Wert als {0} gesetzt wird.
+        PublicSystemOnNotation = PublicSystemOnNotation: Mindestens eines der Elemente 'public' und 'system' muss im Element 'notation' vorkommen.
+        SchemaLocation = SchemaLocation: schemaLocation-Wert = ''{0}'' muss eine gerade Anzahl an URIs haben.
+        TargetNamespace.1 = TargetNamespace.1: Namespace ''{0}'' wird erwartet, aber der Ziel-Namespace des Schemadokuments ist ''{1}''.
+        TargetNamespace.2 = TargetNamespace.2: Kein Namespace wird erwartet, aber das Schemadokument hat den Ziel-Namespace ''{1}''.
+        UndeclaredEntity = UndeclaredEntity: Entity ''{0}'' ist nicht deklariert.
+        UndeclaredPrefix = UndeclaredPrefix: ''{0}'' kann nicht als QName aufgel\u00F6st werden: Pr\u00E4fix ''{1}'' ist nicht deklariert.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = Die Eigenschaft "http://java.sun.com/xml/jaxp/properties/schemaSource" darf keinen Wert des Typs "{0}" haben. M\u00F6gliche unterst\u00FCtzte Werttypen sind String, File, InputStream, InputSource oder ein Array dieser Typen.
+        jaxp12-schema-source-type.2 = Die Eigenschaft "http://java.sun.com/xml/jaxp/properties/schemaSource" darf keinen Arraywert des Typs "{0}" haben. M\u00F6gliche unterst\u00FCtzte Arraytypen sind Object, String, File, InputStream, InputSource.
+        jaxp12-schema-source-ns = Bei Verwendung eines Arrays von Objects als Wert der Eigenschaft "http://java.sun.com/xml/jaxp/properties/schemaSource" d\u00FCrfen keine zwei Schemas denselben Ziel-Namespace verwenden.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties
index 302bdb6..edbc9c3 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_es.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_es.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/16 09:06:34 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_es.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/14 05:09:25 gmolloy Exp $
 
         BadMessageKey = No se ha encontrado el mensaje de error correspondiente a la clave de mensaje.
         FormatFailed = Se ha producido un error interno al formatear el siguiente mensaje:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = Error de restricci\u00F3n de identidad (cvc-identity-constraint.4.2.1): el elemento "{0}" tiene una clave sin valor.
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: El elemento "{0}" no tiene ning\u00FAn valor para la clave "{1}".
         DuplicateField = Coincidencia duplicada en \u00E1mbito del campo "{0}".
-        DuplicateKey = Valor de clave duplicado [{0}] declarado para la restricci\u00F3n de identidad del elemento "{1}".
-        DuplicateUnique = Valor \u00FAnico duplicado [{0}] declarado para la restricci\u00F3n de identidad del elemento "{1}".
-        FieldMultipleMatch = Error de restricci\u00F3n de identidad: el campo "{0}" coincide con m\u00E1s de un valor en el \u00E1mbito de su selector; los campos deben coincidir con valores \u00FAnicos.
+        DuplicateKey = cvc-identity-constraint.4.2.2: Valor de clave duplicado [{0}] declarado para la restricci\u00F3n de identidad "{2}" del elemento "{1}".
+        DuplicateUnique = cvc-identity-constraint.4.1: Valor \u00FAnico duplicado [{0}] declarado para la restricci\u00F3n de identidad "{2}" del elemento "{1}".
+        FieldMultipleMatch = cvc-identity-constraint.3: El campo "{0}" de la restricci\u00F3n de identidad "{1}" coincide con m\u00E1s de un valor en el \u00E1mbito de su selector; los campos deben coincidir con valores \u00FAnicos.
         FixedDiffersFromActual = El contenido de este elemento no es equivalente al valor del atributo "fixed" en la declaraci\u00F3n del elemento del esquema.
-        KeyMatchesNillable = Error de restricci\u00F3n de identidad (cvc-identity-constraint.4.2.3): el elemento "{0}" tiene una clave que coincide con un elemento cuyo valor de Permite Nill est\u00E1 definido en true.
-        KeyNotEnoughValues = No se han especificado suficientes valores para la restricci\u00F3n de identidad <key name="{1}"> especificada para el elemento "{0}".
-        KeyNotFound = No se ha encontrado la clave ''{0}'' con el valor ''{1}'' para la restricci\u00F3n de identidad del elemento ''{2}''.
-        KeyRefNotEnoughValues = No se han especificado suficientes valores para la restricci\u00F3n de identidad <keyref name="{1}"> especificada para el elemento "{0}".
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: El elemento "{0}" tiene una clave "{1}" que coincide con un elemento cuyo valor de Permite Nill est\u00E1 definido en true.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: No se han especificado suficientes valores para la restricci\u00F3n de identidad <key name="{1}"> especificada para el elemento "{0}".
+        KeyNotFound = cvc-identity-constraint.4.3: No se ha encontrado la clave ''{0}'' con el valor ''{1}'' para la restricci\u00F3n de identidad del elemento ''{2}''.
         KeyRefOutOfScope = Error de restricci\u00F3n de identidad: la restricci\u00F3n de identidad "{0}" tiene una referencia de clave que hace referencia a una clave o elemento \u00FAnico que se encuentra fuera de \u00E1mbito.
         KeyRefReferNotFound = La declaraci\u00F3n de referencia de clave "{0}" hace referencia a una clave desconocida con el nombre "{1}".
-        UniqueNotEnoughValues = No se han especificado suficientes valores para la restricci\u00F3n de identidad <unique> especificada para el elemento "{0}".
-        UnknownField = Error de restricci\u00F3n de identidad interno; campo desconocido "{0}".
+        UnknownField = Error de restricci\u00F3n de identidad interno; campo desconocido "{0}" para la restricci\u00F3n de identidad "{2}" especificada para el elemento "{1}".
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: El valor ''{2}'' del atributo ''{1}'' del elemento ''{0}'' no es v\u00E1lido con respecto a su tipo, ''{3}''.
-        cvc-attribute.4 = cvc-attribute.4: El valor ''{2}'' del atributo ''{1}'' del elemento ''{0}'' no es v\u00E1lido con respecto a su ''{''value constraint''}'' fija. El atributo debe tener un valor de ''{3}''.
+        cvc-attribute.4 = cvc-attribute.4: El valor ''{2}'' del atributo ''{1}'' del elemento ''{0}'' no es v\u00E1lido con respecto a su '{'value constraint'}' fija. El atributo debe tener un valor de ''{3}''.
         cvc-complex-type.2.1 = cvc-complex-type.2.1: El elemento ''{0}'' no debe tener ning\u00FAn car\u00E1cter ni ning\u00FAn elemento de informaci\u00F3n de elemento [secundarios], porque el tipo de contenido de tipo est\u00E1 vac\u00EDo.
         cvc-complex-type.2.2 = cvc-complex-type.2.2: El elemento ''{0}'' no debe tener ning\u00FAn elemento [secundarios] y el valor debe ser v\u00E1lido.
         cvc-complex-type.2.3 = cvc-complex-type.2.3: El elemento ''{0}'' no debe tener ning\u00FAn car\u00E1cter [secundarios], porque el tipo de contenido del tipo es s\u00F3lo de elemento.
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: El contenido del elemento ''{0}'' no est\u00E1 completo. Se esperaba uno de ''{1}''.
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: El comod\u00EDn coincidente es estricto, pero no se ha encontrado ninguna declaraci\u00F3n para el elemento ''{0}''.
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: Se ha encontrado contenido no v\u00E1lido a partir del elemento ''{0}''. No se espera ning\u00FAn elemento secundario en este punto.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: Se ha encontrado contenido no v\u00E1lido a partir del elemento ''{0}''. No se espera ning\u00FAn elemento secundario ''{1}'' en este punto.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: Se ha encontrado contenido no v\u00E1lido a partir del elemento ''{0}''. No se espera ning\u00FAn elemento secundario ''{1}'' en este punto.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}'' puede producirse un m\u00E1ximo de ''{2}'' veces en la secuencia actual. Se ha superado este l\u00EDmite. En este punto se espera uno de ''{1}''.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}'' puede producirse un m\u00E1ximo de ''{1}'' veces en la secuencia actual. Se ha superado este l\u00EDmite. No se espera ning\u00FAn elemento secundario en este punto.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: Se ha encontrado contenido no v\u00E1lido a partir del elemento ''{0}''. Se esperaba que ''{1}'' se produjese un m\u00EDnimo de ''{2}'' veces en la secuencia actual. Se necesita una instancia m\u00E1s para cumplir este l\u00EDmite.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: Se ha encontrado contenido no v\u00E1lido a partir del elemento ''{0}''. Se esperaba que ''{1}'' se produjese un m\u00EDnimo de ''{2}'' veces en la secuencia actual. Se necesitan ''{3}'' instancias m\u00E1s para cumplir este l\u00EDmite.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: El contenido del elemento ''{0}'' no est\u00E1 completo. Se esperaba que ''{1}'' se produjese un m\u00EDnimo de ''{2}'' veces. Se necesita una instancia m\u00E1s para cumplir este l\u00EDmite.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: El contenido del elemento ''{0}'' no est\u00E1 completo. Se esperaba que ''{1}'' se produjese un m\u00EDnimo de ''{2}'' veces. Se necesitan ''{3}'' instancias m\u00E1s para cumplir este l\u00EDmite.
         cvc-complex-type.3.1 = cvc-complex-type.3.1: El valor ''{2}'' del atributo ''{1}'' del elemento ''{0}'' no es v\u00E1lido con respecto al uso de atributo correspondiente. El atributo ''{1}'' tiene un valor fijo de ''{3}''.
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: El elemento ''{0}'' no tiene un comod\u00EDn de atributo para el atributo ''{1}''.
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: No est\u00E1 permitido que el atributo ''{1}'' aparezca en el elemento ''{0}''.
         cvc-complex-type.4 = cvc-complex-type.4: El atributo ''{1}'' debe aparecer en el elemento ''{0}''.
         cvc-complex-type.5.1 = cvc-complex-type.5.1: En el elemento ''{0}'', el atributo ''{1}'' es un identificador de comod\u00EDn, pero ya existe un identificador de comod\u00EDn ''{2}''. S\u00F3lo puede existir uno.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: En el elemento ''{0}'', el atributo ''{1}'' es un identificador de comod\u00EDn, pero ya existe un atributo ''{2}'' derivado del identificador entre los ''{''attribute uses''}''.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: En el elemento ''{0}'', el atributo ''{1}'' es un identificador de comod\u00EDn, pero ya existe un atributo ''{2}'' derivado del identificador entre los '{'attribute uses'}'.
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}'' no es un valor v\u00E1lido para ''{1}''.
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}'' no es un valor v\u00E1lido de tipo de lista ''{1}''.
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}'' no es un valor v\u00E1lido de tipo de uni\u00F3n ''{1}''.
-        cvc-elt.1 = cvc-elt.1: No se ha encontrado la declaraci\u00F3n del elemento ''{0}''.
-        cvc-elt.2 = cvc-elt.2: El valor de ''{''abstract''}'' en la declaraci\u00F3n de elemento para ''{0}'' debe ser false.
-        cvc-elt.3.1 = cvc-elt.3.1: El atributo ''{1}'' no debe aparecer en el elemento ''{0}'', porque la propiedad ''{''nillable''}'' de ''{0}'' tiene el valor false.
+        cvc-elt.1.a = cvc-elt.1.a: No se ha encontrado la declaraci\u00F3n del elemento ''{0}''.
+        cvc-elt.1.b = cvc-elt.1.b: El nombre del elemento no coincide con el nombre de la declaraci\u00F3n de elemento. Se ha detectado ''{0}''. Se esperaba ''{1}''.
+        cvc-elt.2 = cvc-elt.2: El valor de '{'abstract'}' en la declaraci\u00F3n de elemento para ''{0}'' debe ser false.
+        cvc-elt.3.1 = cvc-elt.3.1: El atributo ''{1}'' no debe aparecer en el elemento ''{0}'', porque la propiedad '{'nillable'}' de ''{0}'' tiene el valor false.
         cvc-elt.3.2.1 = cvc-elt.3.2.1: El elemento ''{0}'' no debe tener ning\u00FAn car\u00E1cter ni informaci\u00F3n de elemento [secundarios], porque se ha especificado ''{1}''.
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: No debe haber ning\u00FAn valor fijo de ''{''value constraint''}'' para el elemento ''{0}'', porque se ha especificado ''{1}''.
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: No debe haber ning\u00FAn valor fijo de '{'value constraint'}' para el elemento ''{0}'', porque se ha especificado ''{1}''.
         cvc-elt.4.1 = cvc-elt.4.1: El valor ''{2}'' del atributo ''{1}'' del elemento ''{0}'' no es un QName v\u00E1lido.
         cvc-elt.4.2 = cvc-elt.4.2: No se puede resolver ''{1}'' en una definici\u00F3n de tipo para el elemento ''{0}''.
         cvc-elt.4.3 = cvc-elt.4.3: El tipo ''{1}'' no se ha derivado de forma v\u00E1lida de la definici\u00F3n de tipo ''{2}'' del elemento ''{0}''.
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: ''{''value constraint''}'' ''{2}'' del elemento ''{0}'' no es un valor por defecto v\u00E1lido para el tipo ''{1}''.
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: '{'value constraint'}' ''{2}'' del elemento ''{0}'' no es un valor por defecto v\u00E1lido para el tipo ''{1}''.
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: El elemento ''{0}'' no debe tener ning\u00FAn elemento de informaci\u00F3n de elemento [secundarios].
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: El valor ''{1}'' del elemento ''{0}'' no coincide con el valor de ''{''value constraint''}'' fijo ''{2}''.
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: El valor ''{1}'' del elemento ''{0}'' no coincide con el valor de ''{''value constraint''}'' ''{2}''.
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: El valor ''{1}'' del elemento ''{0}'' no coincide con el valor de '{'value constraint'}' fijo ''{2}''.
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: El valor ''{1}'' del elemento ''{0}'' no coincide con el valor de '{'value constraint'}' ''{2}''.
         cvc-enumeration-valid = cvc-enumeration-valid: El valor ''{0}'' no es de faceta v\u00E1lida con respecto a la enumeraci\u00F3n ''{1}''. Debe ser un valor de la enumeraci\u00F3n.
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: El valor ''{0}'' tiene {1} d\u00EDgitos fraccionarios, pero el n\u00FAmero de d\u00EDgitos fraccionarios se ha limitado a {2}.
         cvc-id.1 = cvc-id.1: No hay ning\u00FAn enlace de identificador/IDREF para IDREF ''{0}''.
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: El valor ''{0}'' con la longitud = ''{1}'' no es de faceta v\u00E1lida con respecto a minLength ''{2}'' para el tipo ''{3}''.
         cvc-pattern-valid = cvc-pattern-valid: El valor ''{0}'' no es de faceta v\u00E1lida con respecto al patr\u00F3n ''{1}'' para el tipo ''{2}''.
         cvc-totalDigits-valid = cvc-totalDigits-valid: El valor''{0}'' tiene {1} d\u00EDgitos totales, pero el n\u00FAmero de d\u00EDgitos totales se ha limitado a {2}.
+        cvc-type.1 = cvc-type.1: No se ha encontrado la definici\u00F3n de tipo ''{0}''.
         cvc-type.2 = cvc-type.2: La definici\u00F3n de tipo no puede ser abstracta para el elemento {0}.
         cvc-type.3.1.1 = cvc-type.3.1.1: El elemento ''{0}'' es un tipo simple, por lo que no puede tener atributos, excepto aquellos cuyo espacio de nombres sea ''http://www.w3.org/2001/XMLSchema-instance'' y cuyo [nombre local] sea de tipo ''type'', ''nil'', ''schemaLocation'' o ''noNamespaceSchemaLocation''. Sin embargo, se ha encontrado el atributo ''{1}''.
         cvc-type.3.1.2 = cvc-type.3.1.2: El elemento''{0}'' es un tipo simple, por lo que no debe tener ning\u00FAn elemento de informaci\u00F3n de elemento [secundarios].
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: Error en el grupo de atributos ''{0}''. Se han especificado usos de atributo duplicados con el mismo nombre y espacio de nombres de destino. El nombre del uso de atributo duplicado es ''{1}''.
         ag-props-correct.3 = ag-props-correct.3: Error en el grupo de atributos ''{0}''. Dos declaraciones de atributo, ''{1}'' y ''{2}'', tienen tipos que se derivan del identificador.
         a-props-correct.2 = a-props-correct.2: Valor de restricci\u00F3n de valor ''{1}'' no v\u00E1lido en el atributo ''{0}''.
-        a-props-correct.3 = a-props-correct.3: El atributo ''{0}'' no puede utilizar ''fixed'' ni ''default'', porque el valor de ''{''type definition''}'' del atributo es el identificador o se deriva del identificador.
-        au-props-correct.2 = au-props-correct.2: En la declaraci\u00F3n de atributo de ''{0}'', se ha especificado un valor fijo de ''{1}''. Por lo tanto, si el uso del atributo que hace referencia a ''{0}'' tambi\u00E9n tiene un valor de ''{''value constraint''}'', debe fijarse y el valor debe ser ''{1}''.
+        a-props-correct.3 = a-props-correct.3: El atributo ''{0}'' no puede utilizar ''fixed'' ni ''default'', porque el valor de '{'type definition'}' del atributo es el identificador o se deriva del identificador.
+        au-props-correct.2 = au-props-correct.2: En la declaraci\u00F3n de atributo de ''{0}'', se ha especificado un valor fijo de ''{1}''. Por lo tanto, si el uso del atributo que hace referencia a ''{0}'' tambi\u00E9n tiene un valor de '{'value constraint'}', debe fijarse y el valor debe ser ''{1}''.
         cos-all-limited.1.2 = cos-all-limited.1.2:Debe aparecer un grupo de modelos 'all' en una part\u00EDcula con '{'min occurs'}' = '{'max occurs'}' = 1 y dicha part\u00EDcula debe formar parte de un par que constituya el valor de '{'content type'}' de una definici\u00F3n de tipo complejo.
-        cos-all-limited.2 = cos-all-limited.2: El valor de ''{''max occurs''}'' de un elemento de un grupo de modelos ''all'' debe ser 0 o 1. El valor ''{0}'' del elemento ''{1}'' no es v\u00E1lido.
+        cos-all-limited.2 = cos-all-limited.2: El valor de '{'max occurs'}' de un elemento de un grupo de modelos ''all'' debe ser 0 o 1. El valor ''{0}'' del elemento ''{1}'' no es v\u00E1lido.
         cos-applicable-facets = cos-applicable-facets: El tipo {1} no permite la faceta ''{0}''.
         cos-ct-extends.1.1 = cos-ct-extends.1.1: El tipo ''{0}'' se ha derivado por extensi\u00F3n del tipo ''{1}''. Sin embargo, el atributo ''final'' de ''{1}'' proh\u00EDbe la derivaci\u00F3n por extensi\u00F3n.
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: El tipo de contenido de un tipo derivado y el de su base deben ser mixtos o ser ambos s\u00F3lo de elemento. El tipo ''{0}'' es de s\u00F3lo elemento, pero su tipo base no lo es.
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: La part\u00EDcula derivada est\u00E1 vac\u00EDa y la base no se puede vaciar.
         cos-particle-restrict.b = cos-particle-restrict.b: La part\u00EDcula base est\u00E1 vac\u00EDa, pero la part\u00EDcula derivada no.
         cos-particle-restrict.2 = cos-particle-restrict.2: Restricci\u00F3n de part\u00EDcula prohibida: ''{0}''.
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: El tipo ''{1}'' es at\u00F3mico, por lo que su ''{''base type definition''}'', ''{0}'', debe ser una definici\u00F3n de tipo simple at\u00F3mico o un tipo de dato primitivo incorporado.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: El tipo ''{1}'' es at\u00F3mico, por lo que su '{'base type definition'}', ''{0}'', debe ser una definici\u00F3n de tipo simple at\u00F3mico o un tipo de dato primitivo incorporado.
         cos-st-restricts.2.1 = cos-st-restricts.2.1: En la definici\u00F3n de tipo de lista ''{0}'', el tipo ''{1}'' es un tipo de elemento no v\u00E1lido porque es un tipo de lista o un tipo de uni\u00F3n que contiene una lista.
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: El componente ''{''final''}'' de ''{''item type definition''}'', ''{0}'', contiene ''list''. Significa que ''{0}'' no se puede utilizar como un tipo de elemento para el tipo de lista ''{1}''.
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: El componente ''{''final''}'' de ''{''member type definitions''}'', ''{0}'', contiene ''union''. Significa que ''{0}'' no se puede utilizar como un tipo de miembro para el tipo de uni\u00F3n ''{1}''.
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: El componente '{'final'}' de '{'item type definition'}', ''{0}'', contiene ''list''. Significa que ''{0}'' no se puede utilizar como un tipo de elemento para el tipo de lista ''{1}''.
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: El componente '{'final'}' de '{'member type definitions'}', ''{0}'', contiene ''union''. Significa que ''{0}'' no se puede utilizar como un tipo de miembro para el tipo de uni\u00F3n ''{1}''.
         cos-valid-default.2.1 = cos-valid-default.2.1: El elemento ''{0}'' contiene una restricci\u00F3n de valor y debe tener un modelo de contenido mixto o simple.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Como el elemento ''{0}'' tiene una ''{''value constraint''}'' y su definici\u00F3n de tipo tiene un ''{''content type''}'' mixto, la part\u00EDcula de ''{''content type''}'' debe poder vaciarse.
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Como el elemento ''{0}'' tiene una '{'value constraint'}' y su definici\u00F3n de tipo tiene un '{'content type'}' mixto, la part\u00EDcula de '{'content type'}' debe poder vaciarse.
         c-props-correct.2 = c-props-correct.2: La cardinalidad de los campos de la referencia de clave ''{0}'' y la clave ''{1}'' deben coincidir.
         ct-props-correct.3 = ct-props-correct.3: Se han detectado definiciones circulares para el tipo complejo ''{0}''. Significa que ''{0}'' est\u00E1 contenido en su propia jerarqu\u00EDa de tipos, lo que es un error.
         ct-props-correct.4 = ct-props-correct.4: Error para el tipo ''{0}''. Se han especificado usos de atributo duplicados con el mismo nombre y espacio de nombres de destino. El nombre del uso de atributo duplicado es ''{1}''.
         ct-props-correct.5 = ct-props-correct.5: Error para el tipo ''{0}''. Dos declaraciones de atributo, ''{1}'' y ''{2}'','' tienen tipos que se derivan del identificador.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: El tipo ''{0}'' se ha derivado por restricci\u00F3n del tipo ''{1}''. Sin embargo, ''{1}'' tiene una propiedad ''{''final''}'' que proh\u00EDbe la derivaci\u00F3n por restricci\u00F3n.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: El tipo ''{0}'' se ha derivado por restricci\u00F3n del tipo ''{1}''. Sin embargo, ''{1}'' tiene una propiedad '{'final'}' que proh\u00EDbe la derivaci\u00F3n por restricci\u00F3n.
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: Error para el tipo ''{0}''. El uso de atributo ''{1}'' en este tipo tiene un valor ''use'' de ''{2}'', que es incoherente con el valor de ''required'' en un uso de atributo coincidente del tipo base.
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: Error para el tipo ''{0}''. El uso de atributo ''{1}'' en este tipo tiene el tipo ''{2}'', que no se ha derivado de forma v\u00E1lida de ''{3}'', el tipo de uso de atributo coincidente del tipo base.
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: Error para el tipo ''{0}''. El uso de atributo ''{1}'' en este tipo tiene una restricci\u00F3n de valor efectivo que no es fija y la restricci\u00F3n de valor efectivo del uso de atributo coincidente en el tipo base es fija.
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation: El tipo NOTATION ''{0}'', utilizado por {2} ''{1}'', debe tener un valor de faceta de enumeraci\u00F3n que especifique los elementos de notaci\u00F3n que utiliza este tipo.
         enumeration-valid-restriction = enumeration-valid-restriction: El valor de enumeraci\u00F3n ''{0}'' no se encuentra en el espacio reservado para el valor del tipo base, {1}.
         e-props-correct.2 = e-props-correct.2: Valor de restricci\u00F3n de valor ''{1}'' no v\u00E1lido en el elemento ''{0}''.
-        e-props-correct.4 = e-props-correct.4: El valor de ''{''type definition''}'' del elemento ''{0}'' no se ha derivado de forma v\u00E1lida del valor de ''{''type definition''}'' de substitutionHead ''{1}'' o la propiedad ''{''substitution group exclusions''}'' de ''{1}'' no permite esta derivaci\u00F3n.
-        e-props-correct.5 = e-props-correct.5: Un valor de ''{''value constraint''}'' no debe estar presente en el elemento ''{0}'', porque la ''{''type definition''}'' del elemento o el ''{''content type''}'' de ''{''type definition''}'' es un identificador o se deriva del identificador.
+        e-props-correct.4 = e-props-correct.4: El valor de '{'type definition'}' del elemento ''{0}'' no se ha derivado de forma v\u00E1lida del valor de '{'type definition'}' de substitutionHead ''{1}'' o la propiedad '{'substitution group exclusions'}' de ''{1}'' no permite esta derivaci\u00F3n.
+        e-props-correct.5 = e-props-correct.5: Un valor de '{'value constraint'}' no debe estar presente en el elemento ''{0}'', porque la '{'type definition'}' del elemento o el '{'content type'}' de '{'type definition'}' es un identificador o se deriva del identificador.
         e-props-correct.6 = e-props-correct.6: Se ha detectado un grupo de sustituci\u00F3n circular para el elemento ''{0}''.
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: En la definici\u00F3n de {2}, el valor ''{0}'' para la faceta ''fractionDigits'' no es v\u00E1lido porque debe ser menor o igual que el valor de ''fractionDigits'' que se ha definido en ''{1}'' en uno de los tipos de ascendientes.
         fractionDigits-totalDigits = fractionDigits-totalDigits: En la definici\u00F3n de {2}, el valor ''{0}'' para la faceta ''fractionDigits'' no es v\u00E1lido porque debe ser menor o igual que el valor de ''totalDigits'', que es ''{1}''.
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: Error para el tipo ''{2}''. El valor de maxInclusive =''{0}'' debe ser mayor o igual que el valor de minInclusive del tipo base ''{1}''.
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: Error para el tipo ''{2}''. El valor de maxInclusive =''{0}'' debe ser mayor que el valor de minExclusive del tipo base ''{1}''.
         maxLength-valid-restriction = maxLength-valid-restriction: En la definici\u00F3n de {2}, el valor de maxLength = ''{0}'' debe ser menor o igual que el del tipo base ''{1}''.
-        mg-props-correct.2 = mg-props-correct.2: Se han detectado definiciones circulares para el grupo ''{0}''. El seguimiento recurrente de los valores ''{''term''}'' de las part\u00EDculas provoca una part\u00EDcula cuyo valor de ''{''term''}'' es el mismo grupo.
+        mg-props-correct.2 = mg-props-correct.2: Se han detectado definiciones circulares para el grupo ''{0}''. El seguimiento recurrente de los valores '{'term'}' de las part\u00EDculas provoca una part\u00EDcula cuyo valor de '{'term'}' es el mismo grupo.
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: En la definici\u00F3n de {2}, el valor de minExclusive = ''{0}'' debe ser menor o igual que el valor de maxExclusive = ''{1}''.
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: En la definici\u00F3n de {2}, el valor de minExclusive = ''{0}''debe ser menor que el valor de maxInclusive = ''{1}''.
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: Error para el tipo ''{2}''. El valor de minExclusive =''{0}'' debe ser mayor o igual que el valor de minExclusive del tipo base ''{1}''.
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: En la definici\u00F3n de {2}, el valor de minLength = ''{0}'' debe ser menor que el valor de maxLength = ''{1}''.
         minLength-valid-restriction = minLength-valid-restriction: En la definici\u00F3n de {2}, el valor de minLength = ''{0}'' debe ser mayor o igual que el del tipo base, ''{1}''.
         no-xmlns = no-xmlns: El valor de {name} de una declaraci\u00F3n de atributo no debe coincidir con 'xmlns'.
-        no-xsi = no-xsi: El valor de ''{''target namespace''}'' de una declaraci\u00F3n de atributo no debe coincidir con ''{0}''.
+        no-xsi = no-xsi: El valor de '{'target namespace'}' de una declaraci\u00F3n de atributo no debe coincidir con ''{0}''.
         p-props-correct.2.1 = p-props-correct.2.1: En la declaraci\u00F3n de ''{0}'', el valor de ''minOccurs'' es ''{1}'', pero no debe ser superior al valor de ''maxOccurs'', que es ''{2}''.
         rcase-MapAndSum.1 = rcase-MapAndSum.1: No existe ninguna asignaci\u00F3n funcional completa entre las part\u00EDculas.
         rcase-MapAndSum.2 = rcase-MapAndSum.2: El rango de incidencia del grupo, ({0},{1}), no es una restricci\u00F3n v\u00E1lida del rango de incidencia del grupo base, ({2},{3}).
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: Los elementos tienen nombres y espacios de nombres de destino distintos: El elemento''{0}'' en el espacio de nombres ''{1}'' y el elemento ''{2}'' en el espacio de nombres ''{3}''.
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: Error para la part\u00EDcula cuyo valor de ''{''term''}'' es la declaraci\u00F3n de elemento ''{0}''. El valor de ''{''nillable''}'' de la declaraci\u00F3n de elemento es true, pero la part\u00EDcula correspondiente en el tipo base tiene una declaraci\u00F3n de elemento cuyo valor de ''{''nillable''}'' es false.
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: Error para la part\u00EDcula cuyo valor de ''{''term''}'' es la declaraci\u00F3n de elemento ''{0}''. Su rango de incidencia, ({1},{2}), no es una restricci\u00F3n v\u00E1lida del rango, ({3},{4}, de la part\u00EDcula correspondiente en el tipo base.
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: Error para la part\u00EDcula cuyo valor de '{'term'}' es la declaraci\u00F3n de elemento ''{0}''. El valor de '{'nillable'}' de la declaraci\u00F3n de elemento es true, pero la part\u00EDcula correspondiente en el tipo base tiene una declaraci\u00F3n de elemento cuyo valor de '{'nillable'}' es false.
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: Error para la part\u00EDcula cuyo valor de '{'term'}' es la declaraci\u00F3n de elemento ''{0}''. Su rango de incidencia, ({1},{2}), no es una restricci\u00F3n v\u00E1lida del rango, ({3},{4}, de la part\u00EDcula correspondiente en el tipo base.
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: El elemento ''{0}'' no es fijo, pero el elemento correspondiente en el tipo base es fijo con el valor ''{1}''.
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: El elemento ''{0}'' es fijo con el valor ''{1}'', pero el elemento correspondiente en el tipo base es fijo con el valor ''{2}''.
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: Las restricciones de identidad del elemento ''{0}'' no son un subjuego de las de la base.
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: Las sustituciones no permitidas del elemento ''{0}'' no son un subjuego de las de la base.
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: El tipo de elemento ''{0}'', ''{1}'', no est\u00E1 derivado del tipo del elemento base, ''{2}''.
         rcase-NSCompat.1 = rcase-NSCompat.1: El elemento ''{0}'' tiene un espacio de nombres ''{1}'' que no est\u00E1 permitido por el comod\u00EDn de la base.
-        rcase-NSCompat.2 = rcase-NSCompat.2: Error para la part\u00EDcula cuyo valor de ''{''term''}'' es la declaraci\u00F3n de elemento ''{0}''. Su rango de incidencia, ({1},{2}), no es una restricci\u00F3n v\u00E1lida del rango, ({3},{4}, de la part\u00EDcula correspondiente en el tipo base.
+        rcase-NSCompat.2 = rcase-NSCompat.2: Error para la part\u00EDcula cuyo valor de '{'term'}' es la declaraci\u00F3n de elemento ''{0}''. Su rango de incidencia, ({1},{2}), no es una restricci\u00F3n v\u00E1lida del rango, ({3},{4}, de la part\u00EDcula correspondiente en el tipo base.
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: No existe ninguna asignaci\u00F3n funcional completa entre las part\u00EDculas.
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: El rango de incidencia del grupo, ({0},{1}), no es una restricci\u00F3n v\u00E1lida del rango de comod\u00EDn de la base, ({2},{3}).
         rcase-NSSubset.1 = rcase-NSSubset.1: El comod\u00EDn no es un subjuego del comod\u00EDn correspondiente de la base.
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: Un esquema no puede contener dos componentes globales con el mismo nombre; \u00E9ste contiene dos incidencias de ''{0}''.
         st-props-correct.2 = st-props-correct.2: Se han detectado definiciones circulares para el tipo simple ''{0}''. Significa que ''{0}'' est\u00E1 contenido en su propia jerarqu\u00EDa de tipos, lo que es un error.
-        st-props-correct.3 = st-props-correct.3: Error para el tipo ''{0}''. El valor de ''{''final''}'' de ''{''base type definition''}'', ''{1}'', proh\u00EDbe la derivaci\u00F3n por restricci\u00F3n.
+        st-props-correct.3 = st-props-correct.3: Error para el tipo ''{0}''. El valor de '{'final'}' de '{'base type definition'}', ''{1}'', proh\u00EDbe la derivaci\u00F3n por restricci\u00F3n.
         totalDigits-valid-restriction = totalDigits-valid-restriction: En la definici\u00F3n de {2}, el valor ''{0}'' para la faceta ''totalDigits'' no es v\u00E1lido porque debe ser menor o igual que el valor de ''totalDigits'' que se ha definido en ''{1}'' en uno de los tipos de ascendientes.
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: En la definici\u00F3n de {0}, el valor ''{1}'' para la faceta ''whitespace'' no es v\u00E1lido porque el valor de ''whitespace'' se ha definido en ''collapse'' en uno de los tipos de ascendientes.
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: En la definici\u00F3n de {0}, el valor ''preserve'' para la faceta ''whitespace'' no es v\u00E1lido porque el valor de ''whitespace'' se ha definido en ''replace'' en uno de los tipos de ascendientes.
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: El valor de selector = ''{0}'' no es v\u00E1lido; los valores de Xpath en el selector no pueden contener atributos.
         EmptyTargetNamespace = EmptyTargetNamespace: En el documento de esquema ''{0}'', el valor del atributo ''targetNamespace'' no puede ser una cadena vac\u00EDa.
         FacetValueFromBase = FacetValueFromBase: En la declaraci\u00F3n de tipo ''{0}'', el valor ''{1}'' de la faceta ''{2}'' debe proceder del espacio reservado para el valor del tipo base, ''{3}''.
-        FixedFacetValue = FixedFacetValue: En la definici\u00F3n de {3}, el valor ''{1}'' para la faceta ''{0}'' no es v\u00E1lido porque el valor de ''{0}'' se ha definido en ''{2}'' en uno de los tipos de ascendientes y ''{''fixed''}'' = true.
+        FixedFacetValue = FixedFacetValue: En la definici\u00F3n de {3}, el valor ''{1}'' para la faceta ''{0}'' no es v\u00E1lido porque el valor de ''{0}'' se ha definido en ''{2}'' en uno de los tipos de ascendientes y '{'fixed'}' = true.
         InvalidRegex = InvalidRegex: El valor del patr\u00F3n ''{0}'' no es una expresi\u00F3n regular v\u00E1lida. El error registrado ha sido: ''{1}'' en la columna ''{2}''.
-        maxOccurLimit = La configuraci\u00F3n actual del analizador no permite que la definici\u00F3n del valor del atributo maxOccurs sea mayor que {0}.
+        MaxOccurLimit = La configuraci\u00F3n actual del analizador no permite que la definici\u00F3n del valor del atributo maxOccurs sea mayor que {0}.
         PublicSystemOnNotation = PublicSystemOnNotation: Al menos un valor de ''public'' y ''system'' debe aparecer en el elemento ''notation''.
         SchemaLocation = SchemaLocation: El valor de schemaLocation = ''{0}'' debe tener un n\u00FAmero par de URI.
         TargetNamespace.1 = TargetNamespace.1: Se esperaba el espacio de nombres ''{0}'', pero el espacio de nombres de destino del documento de esquema es ''{1}''.
         TargetNamespace.2 = TargetNamespace.2: No se esperaba ning\u00FAn espacio de nombres, pero el documento de esquema tiene un espacio de nombres de destino ''{1}''.
         UndeclaredEntity = UndeclaredEntity: La entidad ''{0}'' no est\u00E1 declarada.
         UndeclaredPrefix = UndeclaredPrefix: No se puede resolver ''{0}'' como QName: no se ha declarado el prefijo ''{1}''.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = La propiedad ''http://java.sun.com/xml/jaxp/properties/schemaSource'' no puede tener un valor de tipo ''{0}''. Los posibles tipos de valor soportados son String, File, InputStream, InputSource o una matriz de estos tipos.
+        jaxp12-schema-source-type.2 = La propiedad ''http://java.sun.com/xml/jaxp/properties/schemaSource'' no puede tener un valor de matriz de tipo ''{0}''. Los posibles tipos de matriz soportados son Object, String, File, InputStream e InputSource.
+        jaxp12-schema-source-ns = Al utilizar una matriz de objetos como valor de la propiedad 'http://java.sun.com/xml/jaxp/properties/schemaSource', no es posible tener dos esquemas con el mismo espacio de nombres de destino.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties
index 33d3a76..5a53959 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_fr.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_fr.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/16 07:05:15 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_fr.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/12 05:13:35 gmolloy Exp $
 
         BadMessageKey = Le message d'erreur correspondant \u00E0 la cl\u00E9 de message est introuvable.
         FormatFailed = Une erreur interne est survenue lors du formatage du message suivant :\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = Erreur de contrainte d''identit\u00E9 (cvc-identity-constraint.4.2.1) : l''\u00E9l\u00E9ment "{0}" a une cl\u00E9 sans valeur.
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a : L''\u00E9l\u00E9ment "{0}" n''a aucune valeur pour la cl\u00E9 "{1}".
         DuplicateField = Correspondance en double dans la port\u00E9e du champ "{0}".
-        DuplicateKey = Valeur de cl\u00E9 en double [{0}] d\u00E9clar\u00E9e pour la contrainte d''identit\u00E9 de l''\u00E9l\u00E9ment "{1}".
-        DuplicateUnique = Valeur unique en double [{0}] d\u00E9clar\u00E9e pour la contrainte d''identit\u00E9 de l''\u00E9l\u00E9ment "{1}".
-        FieldMultipleMatch = Erreur de contrainte d''identit\u00E9 : le champ "{0}" concorde avec plusieurs valeurs dans la port\u00E9e de son s\u00E9lecteur ; les champs doivent concorder avec des valeurs uniques.
+        DuplicateKey = cvc-identity-constraint.4.2.2 : Valeur de cl\u00E9 en double [{0}] d\u00E9clar\u00E9e pour la contrainte d''identit\u00E9 "{2}" de l''\u00E9l\u00E9ment "{1}".
+        DuplicateUnique = cvc-identity-constraint.4.1 : Valeur unique en double [{0}] d\u00E9clar\u00E9e pour la contrainte d''identit\u00E9 "{2}" de l''\u00E9l\u00E9ment "{1}".
+        FieldMultipleMatch = cvc-identity-constraint.3 : Le champ "{0}" de la contrainte d''identit\u00E9 "{1}" concorde avec plusieurs valeurs dans la port\u00E9e de son s\u00E9lecteur ; les champs doivent concorder avec des valeurs uniques.
         FixedDiffersFromActual = Le contenu de l'\u00E9l\u00E9ment n'\u00E9quivaut pas \u00E0 la valeur de l'attribut "fixed" dans la d\u00E9claration de l'\u00E9l\u00E9ment du sch\u00E9ma.
-        KeyMatchesNillable = Erreur de contrainte d''identit\u00E9 (cvc-identity-constraint.4.2.3) : l''\u00E9l\u00E9ment "{0}" a une cl\u00E9 qui concorde avec un \u00E9l\u00E9ment dont l''attribut nillable a la valeur True.
-        KeyNotEnoughValues = Le nombre de valeurs indiqu\u00E9es pour la contrainte d''identit\u00E9 <key name="{1}"> de l''\u00E9l\u00E9ment "{0}" est insuffisant.
-        KeyNotFound = La cl\u00E9 ''{0}'' ayant la valeur ''{1}'' est introuvable pour la contrainte d''identit\u00E9 de l''\u00E9l\u00E9ment ''{2}''.
-        KeyRefNotEnoughValues = Le nombre de valeurs indiqu\u00E9es pour la contrainte d''identit\u00E9 <keyref name="{1}"> de l''\u00E9l\u00E9ment "{0}" est insuffisant.
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3 : L''\u00E9l\u00E9ment "{0}" dispose de la cl\u00E9 "{1}" qui concorde avec un \u00E9l\u00E9ment dont l''attribut nillable a la valeur True.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b : Le nombre de valeurs indiqu\u00E9es pour la contrainte d''identit\u00E9 <key name="{1}"> de l''\u00E9l\u00E9ment "{0}" est insuffisant.
+        KeyNotFound = cvc-identity-constraint.4.3 : La cl\u00E9 ''{0}'' ayant la valeur ''{1}'' est introuvable pour la contrainte d''identit\u00E9 de l''\u00E9l\u00E9ment ''{2}''.
         KeyRefOutOfScope = Erreur de contrainte d''identit\u00E9 : la contrainte d''identit\u00E9 "{0}" comporte une r\u00E9f\u00E9rence keyref se rapportant \u00E0 une cl\u00E9 ou \u00E0 une valeur unique hors port\u00E9e.
         KeyRefReferNotFound = La d\u00E9claration de r\u00E9f\u00E9rence de cl\u00E9 "{0}" se rapporte \u00E0 une cl\u00E9 inconnue portant le nom "{1}".
-        UniqueNotEnoughValues = Le nombre de valeurs indiqu\u00E9es pour la contrainte d''identit\u00E9 <unique> de l''\u00E9l\u00E9ment "{0}" est insuffisant.
-        UnknownField = Erreur de contrainte d''identit\u00E9 interne ; champ inconnu "{0}".
+        UnknownField = Erreur de contrainte d''identit\u00E9 interne ; champ inconnu "{0}" pour la contrainte d''identit\u00E9 "{2}" indiqu\u00E9e pour l''\u00E9l\u00E9ment "{1}".
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3 : La valeur ''{2}'' de l''attribut ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas valide par rapport \u00E0 son type, ''{3}''.
-        cvc-attribute.4 = cvc-attribute.4 : La valeur ''{2}'' de l''attribut ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas valide par rapport \u00E0 son attribut ''{''value constraint''}'' fixe. L''attribut doit avoir une valeur de ''{3}''.
+        cvc-attribute.4 = cvc-attribute.4 : La valeur ''{2}'' de l''attribut ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas valide par rapport \u00E0 son attribut '{'value constraint'}' fixe. L''attribut doit avoir une valeur de ''{3}''.
         cvc-complex-type.2.1 = cvc-complex-type.2.1 : L''\u00E9l\u00E9ment ''{0}'' ne doit comporter aucun enfant ([children]) de type caract\u00E8re ou \u00E9l\u00E9ment d''information, car le type de contenu du type est vide.
         cvc-complex-type.2.2 = cvc-complex-type.2.2 : L''\u00E9l\u00E9ment ''{0}'' ne doit comporter aucun enfant ([children]) de type \u00E9l\u00E9ment et la valeur doit \u00EAtre valide.
         cvc-complex-type.2.3 = cvc-complex-type.2.3 : L''\u00E9l\u00E9ment ''{0}'' ne doit comporter aucun enfant ([children]) de type caract\u00E8re, car le type porte le type de contenu "element-only".
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b : Le contenu de l''\u00E9l\u00E9ment ''{0}'' n''est pas complet. L''un des \u00E9l\u00E9ments ''{1}'' est attendu.
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c : Le caract\u00E8re g\u00E9n\u00E9rique concordant est strict, mais aucune d\u00E9claration ne peut \u00EAtre trouv\u00E9e pour l''\u00E9l\u00E9ment ''{0}''.
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d : Contenu non valide trouv\u00E9 \u00E0 partir de l''\u00E9l\u00E9ment ''{0}''. Aucun \u00E9l\u00E9ment enfant n''est attendu \u00E0 cet endroit.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d : Contenu non valide trouv\u00E9 \u00E0 partir de l''\u00E9l\u00E9ment ''{0}''. Aucun \u00E9l\u00E9ment enfant ''{1}'' n''est attendu \u00E0 cet endroit.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d : Contenu non valide trouv\u00E9 \u00E0 partir de l''\u00E9l\u00E9ment ''{0}''. Aucun \u00E9l\u00E9ment enfant ''{1}'' n''est attendu \u00E0 cet endroit.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e : ''{0}'' peut se produire au maximum ''{2}'' fois dans la s\u00E9quence en cours. Cette limite a \u00E9t\u00E9 d\u00E9pass\u00E9e. Un des \u00E9l\u00E9ments ''{1}'' est attendu \u00E0 cet endroit.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f : ''{0}'' peut se produire au maximum ''{1}'' fois dans la s\u00E9quence en cours. Cette limite a \u00E9t\u00E9 d\u00E9pass\u00E9e. Aucun \u00E9l\u00E9ment enfant n''est attendu \u00E0 cet endroit.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g : Contenu non valide trouv\u00E9 \u00E0 partir de l''\u00E9l\u00E9ment ''{0}''. ''{1}'' est cens\u00E9 se produire au minimum ''{2}'' fois dans la s\u00E9quence en cours. Une instance suppl\u00E9mentaire est requise pour respecter cette contrainte.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h : Contenu non valide trouv\u00E9 \u00E0 partir de l''\u00E9l\u00E9ment ''{0}''. ''{1}'' est cens\u00E9 se produire au minimum ''{2}'' fois dans la s\u00E9quence en cours. ''{3}'' instances suppl\u00E9mentaires sont requises pour respecter cette contrainte.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i : Le contenu de l''\u00E9l\u00E9ment ''{0}'' n''est pas complet. ''{1}'' est cens\u00E9 se produire au minimum ''{2}'' fois. Une instance suppl\u00E9mentaire est requise pour respecter cette contrainte.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j : Le contenu de l''\u00E9l\u00E9ment ''{0}'' n''est pas complet. ''{1}'' est cens\u00E9 se produire au minimum ''{2}'' fois. ''{3}'' instances suppl\u00E9mentaires sont requises pour respecter cette contrainte.
         cvc-complex-type.3.1 = cvc-complex-type.3.1 : La valeur ''{2}'' de l''attribut ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas valide par rapport \u00E0 la syntaxe d''attribut correspondante. L''attribut ''{1}'' a une valeur fixe de ''{3}''.
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1 : L''\u00E9l\u00E9ment ''{0}'' ne dispose d''aucun caract\u00E8re g\u00E9n\u00E9rique d''attribut pour l''attribut ''{1}''.
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2 : L''attribut ''{1}'' n''est pas autoris\u00E9 dans l''\u00E9l\u00E9ment ''{0}''.
         cvc-complex-type.4 = cvc-complex-type.4 : L''attribut ''{1}'' doit figurer dans l''\u00E9l\u00E9ment ''{0}''.
         cvc-complex-type.5.1 = cvc-complex-type.5.1 : Dans l''\u00E9l\u00E9ment ''{0}'', l''attribut ''{1}'' est un ID g\u00E9n\u00E9rique. Or, il existe d\u00E9j\u00E0 un ID g\u00E9n\u00E9rique ''{2}''. Il ne peut en exister qu''un seul.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2 : Dans l''\u00E9l\u00E9ment ''{0}'', l''attribut ''{1}'' est un ID g\u00E9n\u00E9rique. Or, il existe d\u00E9j\u00E0 un attribut ''{2}'' d\u00E9riv\u00E9 de l''ID dans ''{''attribute uses''}''.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2 : Dans l''\u00E9l\u00E9ment ''{0}'', l''attribut ''{1}'' est un ID g\u00E9n\u00E9rique. Or, il existe d\u00E9j\u00E0 un attribut ''{2}'' d\u00E9riv\u00E9 de l''ID dans '{'attribute uses'}'.
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1 : ''{0}'' n''est pas une valeur valide pour ''{1}''.
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2 : ''{0}'' n''est pas une valeur valide du type de liste ''{1}''.
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3 : ''{0}'' n''est pas une valeur valide du type d''union ''{1}''.
-        cvc-elt.1 = cvc-elt.1 : D\u00E9claration de l''\u00E9l\u00E9ment ''{0}'' introuvable.
-        cvc-elt.2 = cvc-elt.2 : La valeur de l''attribut ''{''abstract''}'' dans la d\u00E9claration de l''\u00E9l\u00E9ment pour ''{0}'' doit \u00EAtre False.
-        cvc-elt.3.1 = cvc-elt.3.1 : L''attribut ''{1}'' ne doit pas figurer dans l''\u00E9l\u00E9ment ''{0}'', car la propri\u00E9t\u00E9 ''{''nillable''}'' de ''{0}'' est False.
+        cvc-elt.1.a = cvc-elt.1.a : D\u00E9claration de l''\u00E9l\u00E9ment ''{0}'' introuvable.
+        cvc-elt.1.b = cvc-elt.1.b : Le nom de l''\u00E9l\u00E9ment ne concorde pas avec le nom de la d\u00E9claration d''\u00E9l\u00E9ment. Trouv\u00E9 : ''{0}''. Attendu : ''{1}''.
+        cvc-elt.2 = cvc-elt.2 : La valeur de l''attribut '{'abstract'}' dans la d\u00E9claration de l''\u00E9l\u00E9ment pour ''{0}'' doit \u00EAtre False.
+        cvc-elt.3.1 = cvc-elt.3.1 : L''attribut ''{1}'' ne doit pas figurer dans l''\u00E9l\u00E9ment ''{0}'', car la propri\u00E9t\u00E9 '{'nillable'}' de ''{0}'' est False.
         cvc-elt.3.2.1 = cvc-elt.3.2.1 : L''\u00E9l\u00E9ment ''{0}'' ne doit comporter aucun enfant ([children]) de type caract\u00E8re ou \u00E9l\u00E9ment d''information, car ''{1}'' est indiqu\u00E9.
-        cvc-elt.3.2.2 = cvc-elt.3.2.2 : Il ne doit y avoir aucun attribut ''{''value constraint''}'' fixe pour l''\u00E9l\u00E9ment ''{0}'', car ''{1}'' est indiqu\u00E9.
+        cvc-elt.3.2.2 = cvc-elt.3.2.2 : Il ne doit y avoir aucun attribut '{'value constraint'}' fixe pour l''\u00E9l\u00E9ment ''{0}'', car ''{1}'' est indiqu\u00E9.
         cvc-elt.4.1 = cvc-elt.4.1 : La valeur ''{2}'' de l''attribut ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas un QName valide.
         cvc-elt.4.2 = cvc-elt.4.2 : Impossible de r\u00E9soudre ''{1}'' en une d\u00E9finition de type pour l''\u00E9l\u00E9ment ''{0}''.
         cvc-elt.4.3 = cvc-elt.4.3 : La d\u00E9rivation du type ''{1}'' \u00E0 partir de la d\u00E9finition de type ''{2}'' de l''\u00E9l\u00E9ment "{0}" n''est pas valide.
-        cvc-elt.5.1.1 = cvc-elt.5.1.1 : L''attribut ''{''value constraint''}'' ''{2}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas une valeur par d\u00E9faut valide pour le type ''{1}''.
+        cvc-elt.5.1.1 = cvc-elt.5.1.1 : L''attribut '{'value constraint'}' ''{2}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas une valeur par d\u00E9faut valide pour le type ''{1}''.
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1 : L''\u00E9l\u00E9ment ''{0}'' ne doit comporter aucun enfant ([children]) de type \u00E9l\u00E9ment d''information.
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1 : La valeur ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' ne concorde pas avec la valeur de l''attribut ''{''value constraint''}'' fixe ''{2}''.
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2 : La valeur ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' ne concorde pas avec la valeur de l''attribut ''{''value constraint''}'' ''{2}''.
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1 : La valeur ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' ne concorde pas avec la valeur de l''attribut '{'value constraint'}' fixe ''{2}''.
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2 : La valeur ''{1}'' de l''\u00E9l\u00E9ment ''{0}'' ne concorde pas avec la valeur de l''attribut '{'value constraint'}' ''{2}''.
         cvc-enumeration-valid = cvc-enumeration-valid : La valeur ''{0}'' n''est pas un facet valide par rapport \u00E0 l''\u00E9num\u00E9ration ''{1}''. Il doit s''agir d''une valeur provenant de l''\u00E9num\u00E9ration.
         cvc-fractionDigits-valid = cvc-fractionDigits-valid : La valeur ''{0}'' poss\u00E8de {1} chiffres apr\u00E8s la virgule, mais le nombre de chiffres apr\u00E8s la virgule ne doit pas d\u00E9passer {2}.
         cvc-id.1 = cvc-id.1 : Aucune liaison ID/IDREF pour l''IDREF ''{0}''.
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid : La valeur ''{0}'', ayant pour longueur ''{1}'', n''est pas un facet valide par rapport \u00E0 minLength ''{2}'' pour le type ''{3}''.
         cvc-pattern-valid = cvc-pattern-valid : La valeur ''{0}'' n''est pas un facet valide par rapport au mod\u00E8le ''{1}'' pour le type ''{2}''.
         cvc-totalDigits-valid = cvc-totalDigits-valid : La valeur ''{0}'' poss\u00E8de un total de {1} chiffres, mais le nombre total de chiffres ne doit pas d\u00E9passer {2}.
+        cvc-type.1 = cvc-type.1 : La d\u00E9finition de type ''{0}'' est introuvable.
         cvc-type.2 = cvc-type.2 : La d\u00E9finition de type ne doit pas \u00EAtre abstract pour l''\u00E9l\u00E9ment {0}.
         cvc-type.3.1.1 = cvc-type.3.1.1 : L''\u00E9l\u00E9ment ''{0}'' est de type simple et ne peut donc pas avoir d''attributs, \u00E0 l''exception de ceux o\u00F9 le nom d''espace de noms est identique \u00E0 ''http://www.w3.org/2001/XMLSchema-instance'' et o\u00F9 [local name] est ''type'', ''nil'', ''schemaLocation'' ou ''noNamespaceSchemaLocation''. Cependant, l''attribut ''{1}'' a \u00E9t\u00E9 trouv\u00E9.
         cvc-type.3.1.2 = cvc-type.3.1.2 : L''\u00E9l\u00E9ment ''{0}'' est de type simple et ne doit comporter aucun enfant ([children]) de type \u00E9l\u00E9ment d''information.
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2 : Erreur dans le groupe d''attributs ''{0}''. Des occurrences d''attributs en double avec un nom et un espace de noms cible identiques sont indiqu\u00E9es. Le nom de l''occurrence d''attribut en double est ''{1}''.
         ag-props-correct.3 = ag-props-correct.3 : Erreur dans le groupe d''attributs ''{0}''. Deux d\u00E9clarations d''attribut, ''{1}'' et ''{2}'', ont des types d\u00E9riv\u00E9s de l''ID.
         a-props-correct.2 = a-props-correct.2 : Valeur de contrainte de valeur ''{1}'' non valide dans l''attribut ''{0}''.
-        a-props-correct.3 = a-props-correct.3 : L''attribut ''{0}'' ne peut pas utiliser ''fixed'' ou ''default'', car sa valeur ''{''type definition''}'' est identique \u00E0 l''ID ou en est d\u00E9riv\u00E9e.
-        au-props-correct.2 = au-props-correct.2 : Dans la d\u00E9claration d''attribut de ''{0}'', la valeur fixe ''{1}'' a \u00E9t\u00E9 indiqu\u00E9e. Par cons\u00E9quent, si l''occurrence de l''attribut faisant r\u00E9f\u00E9rence \u00E0 ''{0}'' comporte \u00E9galement ''{''value constraint''}'', celle-ci doit \u00EAtre fixe et sa valeur doit \u00EAtre ''{1}''.
+        a-props-correct.3 = a-props-correct.3 : L''attribut ''{0}'' ne peut pas utiliser ''fixed'' ou ''default'', car sa valeur '{'type definition'}' est identique \u00E0 l''ID ou en est d\u00E9riv\u00E9e.
+        au-props-correct.2 = au-props-correct.2 : Dans la d\u00E9claration d''attribut de ''{0}'', la valeur fixe ''{1}'' a \u00E9t\u00E9 indiqu\u00E9e. Par cons\u00E9quent, si l''occurrence de l''attribut faisant r\u00E9f\u00E9rence \u00E0 ''{0}'' comporte \u00E9galement '{'value constraint'}', celle-ci doit \u00EAtre fixe et sa valeur doit \u00EAtre ''{1}''.
         cos-all-limited.1.2 = cos-all-limited.1.2 : Un groupe de mod\u00E8les 'all' doit figurer dans une particule o\u00F9 '{'min occurs'}' = '{'max occurs'}' = 1. Cette particule doit en outre faire partie d'une paire constituant la valeur '{'content type'}' d'une d\u00E9finition de type complexe.
-        cos-all-limited.2 = cos-all-limited.2 : La valeur ''{''max occurs''}'' d''un \u00E9l\u00E9ment dans un groupe de mod\u00E8les ''all'' doit \u00EAtre 0 ou 1. La valeur ''{0}'' pour l''\u00E9l\u00E9ment ''{1}'' n''est pas valide.
+        cos-all-limited.2 = cos-all-limited.2 : La valeur '{'max occurs'}' d''un \u00E9l\u00E9ment dans un groupe de mod\u00E8les ''all'' doit \u00EAtre 0 ou 1. La valeur ''{0}'' pour l''\u00E9l\u00E9ment ''{1}'' n''est pas valide.
         cos-applicable-facets = cos-applicable-facets : Le facet ''{0}'' n''est pas autoris\u00E9 pour le type {1}.
         cos-ct-extends.1.1 = cos-ct-extends.1.1 : Le type ''{0}'' est d\u00E9riv\u00E9 par l''extension du type ''{1}''. Toutefois, l''attribut ''final'' de ''{1}'' n''autorise pas la d\u00E9rivation par extension.
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a : Le type de contenu d''un type d\u00E9riv\u00E9 et celui de sa base doivent tous les deux \u00EAtre mixtes (mixed) ou \u00E9l\u00E9ment uniquement (element-only). Le type ''{0}'' est \u00E9l\u00E9ment uniquement, mais le type de sa base ne l''est pas.
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a : La particule d\u00E9riv\u00E9e est vide et la base ne peut pas \u00EAtre vide.
         cos-particle-restrict.b = cos-particle-restrict.b : La particule de base est vide, mais la particule d\u00E9riv\u00E9e ne l'est pas.
         cos-particle-restrict.2 = cos-particle-restrict.2 : Restriction de particule interdite : ''{0}''.
-        cos-st-restricts.1.1 = cos-st-restricts.1.1 : Le type ''{1}'' \u00E9tant non d\u00E9composable, sa valeur ''{''base type definition''}'', ''{0}'', doit \u00EAtre une d\u00E9finition de type simple atomique ou un type de donn\u00E9es primitif int\u00E9gr\u00E9.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1 : Le type ''{1}'' \u00E9tant non d\u00E9composable, sa valeur '{'base type definition'}', ''{0}'', doit \u00EAtre une d\u00E9finition de type simple atomique ou un type de donn\u00E9es primitif int\u00E9gr\u00E9.
         cos-st-restricts.2.1 = cos-st-restricts.2.1 : Dans la d\u00E9finition du type de liste ''{0}'', le type ''{1}'' est un type d''\u00E9l\u00E9ment non valide car il s''agit d''un type de liste ou un type d''union contenant une liste.
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1 : Le composant ''{''final''}'' de la valeur ''{''item type definition''}'', ''{0}'', contient ''list''. Cela signifie que la valeur ''{0}'' ne peut pas \u00EAtre utilis\u00E9e en tant que type d''\u00E9l\u00E9ment pour le type de liste ''{1}''.
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1 : Le composant ''{''final''}'' de la valeur ''{''member type definitions''}'', ''{0}'', contient ''union''. Cela signifie que la valeur ''{0}'' ne peut pas \u00EAtre utilis\u00E9e en tant que type de membre pour le type d''union ''{1}''.
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1 : Le composant '{'final'}' de la valeur '{'item type definition'}', ''{0}'', contient ''list''. Cela signifie que la valeur ''{0}'' ne peut pas \u00EAtre utilis\u00E9e en tant que type d''\u00E9l\u00E9ment pour le type de liste ''{1}''.
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1 : Le composant '{'final'}' de la valeur '{'member type definitions'}', ''{0}'', contient ''union''. Cela signifie que la valeur ''{0}'' ne peut pas \u00EAtre utilis\u00E9e en tant que type de membre pour le type d''union ''{1}''.
         cos-valid-default.2.1 = cos-valid-default.2.1 : L''\u00E9l\u00E9ment ''{0}'' comporte une contrainte de valeur et doit disposer d''un mod\u00E8le de contenu mixte ou simple.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2 : Puisque l''\u00E9l\u00E9ment ''{0}'' comporte une valeur ''{''value constraint''}'' et que sa d\u00E9finition de type a la valeur ''{''content type''}'' mixte, la particule de ''{''content type''}'' doit pouvoir \u00EAtre vide.
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2 : Puisque l''\u00E9l\u00E9ment ''{0}'' comporte une valeur '{'value constraint'}' et que sa d\u00E9finition de type a la valeur '{'content type'}' mixte, la particule de '{'content type'}' doit pouvoir \u00EAtre vide.
         c-props-correct.2 = c-props-correct.2 : La cardinalit\u00E9 des champs pour les valeurs keyref ''{0}'' et key ''{1}'' doit concorder.
         ct-props-correct.3 = ct-props-correct.3 : D\u00E9finitions circulaires d\u00E9tect\u00E9es pour le type complexe ''{0}''. Cela signifie que ''{0}'' est contenu dans sa propre hi\u00E9rarchie des types, ce qui est une erreur.
         ct-props-correct.4 = ct-props-correct.4 : Erreur dans le type ''{0}''. Des occurrences d''attributs en double avec un nom et un espace de noms cible identiques sont indiqu\u00E9es. Le nom de l''occurrence d''attribut en double est ''{1}''.
         ct-props-correct.5 = ct-props-correct.5 : Erreur dans le type ''{0}''. Deux d\u00E9clarations d''attribut, ''{1}'' et ''{2}'', ont des types d\u00E9riv\u00E9s de l''ID.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1 : Le type ''{0}'' a \u00E9t\u00E9 d\u00E9riv\u00E9 par restriction du type ''{1}''. Cependant, ''{1}'' comporte une propri\u00E9t\u00E9 ''{''final''}'' interdisant la d\u00E9rivation par restriction.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1 : Le type ''{0}'' a \u00E9t\u00E9 d\u00E9riv\u00E9 par restriction du type ''{1}''. Cependant, ''{1}'' comporte une propri\u00E9t\u00E9 '{'final'}' interdisant la d\u00E9rivation par restriction.
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1 : Erreur dans le type ''{0}''. L''occurrence d''attribut ''{1}'' dans ce type comporte une valeur ''use'' de ''{2}'', ce qui est incoh\u00E9rent avec la valeur ''required'' dans une occurrence d''attribut correspondante dans le type de base.
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2 : Erreur dans le type ''{0}''. L''occurrence d''attribut ''{1}'' dans ce type comporte le type ''{2}'', dont la d\u00E9rivation \u00E0 partir de ''{3}'', le type de l''occurrence d''attribut correspondante dans le type de base, n''est pas valide.
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a : Erreur dans le type ''{0}''. L''occurrence d''attribut ''{1}'' dans ce type comporte une contrainte de valeur effective qui n''est pas fixe, et la contrainte de valeur effective de l''occurrence d''attribut correspondante dans le type de base est fixe.
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation : Le type NOTATION, ''{0}'' utilis\u00E9 par {2} ''{1}'', doit comporter une valeur de facet d''\u00E9num\u00E9ration indiquant les \u00E9l\u00E9ments de notation utilis\u00E9s par ce type.
         enumeration-valid-restriction = enumeration-valid-restriction : La valeur d''\u00E9num\u00E9ration ''{0}'' n''est pas comprise l''espace de valeurs du type de base, {1}.
         e-props-correct.2 = e-props-correct.2 : Valeur de contrainte de valeur ''{1}'' non valide dans l''\u00E9l\u00E9ment ''{0}''.
-        e-props-correct.4 = e-props-correct.4 : La valeur ''{''type definition''}'' de l''\u00E9l\u00E9ment ''{0}'' n''est pas d\u00E9riv\u00E9e de fa\u00E7on valide \u00E0 partir de la valeur ''{''type definition''}'' de l''\u00E9l\u00E9ment substitutionHead ''{1}'', ou la propri\u00E9t\u00E9 ''{''substitution group exclusions''}'' de ''{1}'' n''accepte pas cette d\u00E9rivation.
-        e-props-correct.5 = e-props-correct.5 : Une valeur ''{''value constraint''}'' ne doit pas figurer dans l''\u00E9l\u00E9ment ''{0}'', car sa valeur ''{''type definition''}'' ou le ''{''content type''}'' de sa valeur ''{''type definition''}'' est identique \u00E0 l''ID ou en est d\u00E9riv\u00E9.
+        e-props-correct.4 = e-props-correct.4 : La valeur '{'type definition'}' de l''\u00E9l\u00E9ment ''{0}'' n''est pas d\u00E9riv\u00E9e de fa\u00E7on valide \u00E0 partir de la valeur '{'type definition'}' de l''\u00E9l\u00E9ment substitutionHead ''{1}'', ou la propri\u00E9t\u00E9 '{'substitution group exclusions'}' de ''{1}'' n''accepte pas cette d\u00E9rivation.
+        e-props-correct.5 = e-props-correct.5 : Une valeur '{'value constraint'}' ne doit pas figurer dans l''\u00E9l\u00E9ment ''{0}'', car sa valeur '{'type definition'}' ou le '{'content type'}' de sa valeur '{'type definition'}' est identique \u00E0 l''ID ou en est d\u00E9riv\u00E9.
         e-props-correct.6 = e-props-correct.6 : Groupe de substitution circulaire d\u00E9tect\u00E9 pour \u00E9l\u00E9ment ''{0}''.
         fractionDigits-valid-restriction = fractionDigits-valid-restriction : Dans la d\u00E9finition de {2}, la valeur ''{0}'' pour le facet ''fractionDigits'' n''est pas valide car elle doit \u00EAtre <= \u00E0 la valeur de ''fractionDigits'', qui a \u00E9t\u00E9 d\u00E9finie sur ''{1}'' dans l''un des types d''anc\u00EAtre.
         fractionDigits-totalDigits = fractionDigits-totalDigits : Dans la d\u00E9finition de {2}, la valeur ''{0}'' pour le facet ''fractionDigits'' n''est pas valide car elle doit \u00EAtre <= \u00E0 la valeur de ''totalDigits'', d\u00E9finie sur ''{1}''.
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3 : Erreur dans le type ''{2}''. La valeur maxInclusive ''{0}'' doit \u00EAtre >= \u00E0 la valeur minInclusive du type de base ''{1}''.
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4 : Erreur dans le type ''{2}''. La valeur maxInclusive ''{0}'' doit \u00EAtre > \u00E0 la valeur minExclusive du type de base ''{1}''.
         maxLength-valid-restriction = maxLength-valid-restriction : Dans la d\u00E9finition de {2}, la valeur maxLength ''{0}'' doit \u00EAtre <= \u00E0 celle du type de base ''{1}''.
-        mg-props-correct.2 = mg-props-correct.2 : D\u00E9finitions circulaires d\u00E9tect\u00E9es pour le groupe ''{0}''. Le suivi r\u00E9cursif des valeurs ''{''term''}'' des particules conduit \u00E0 une particule o\u00F9 ''{''term''}'' est le groupe proprement dit.
+        mg-props-correct.2 = mg-props-correct.2 : D\u00E9finitions circulaires d\u00E9tect\u00E9es pour le groupe ''{0}''. Le suivi r\u00E9cursif des valeurs '{'term'}' des particules conduit \u00E0 une particule o\u00F9 '{'term'}' est le groupe proprement dit.
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive : Dans la d\u00E9finition de {2}, la valeur minExclusive ''{0}'' doit \u00EAtre <= \u00E0 la valeur maxExclusive ''{1}''.
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive : Dans la d\u00E9finition de {2}, la valeur minExclusive ''{0}'' doit \u00EAtre < \u00E0 la valeur maxInclusive ''{1}''.
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1 : Erreur dans le type ''{2}''. La valeur minExclusive ''{0}'' doit \u00EAtre >= \u00E0 la valeur minExclusive du type de base ''{1}''.
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: Dans la d\u00E9finition de {2}, la valeur de minLength ''{0}'' doit \u00EAtre < \u00E0 la valeur de maxLength ''{1}''.
         minLength-valid-restriction = minLength-valid-restriction : Dans la d\u00E9finition de {2}, la valeur de minLength ''{0}'' doit \u00EAtre >= \u00E0 celle du type de base, ''{1}''.
         no-xmlns = no-xmlns : La valeur {name} d'une d\u00E9claration d'attribut ne doit pas \u00EAtre identique \u00E0 'xmlns'.
-        no-xsi = no-xsi : La valeur ''{''target namespace''}'' d''une d\u00E9claration d''attribut ne doit pas \u00EAtre identique \u00E0 ''{0}''.
+        no-xsi = no-xsi : La valeur '{'target namespace'}' d''une d\u00E9claration d''attribut ne doit pas \u00EAtre identique \u00E0 ''{0}''.
         p-props-correct.2.1 = p-props-correct.2.1 : Dans la d\u00E9claration de ''{0}'', la valeur de ''minOccurs'' est ''{1}'', mais elle ne doit pas \u00EAtre sup\u00E9rieure \u00E0 la valeur de ''maxOccurs'', qui est ''{2}''.
         rcase-MapAndSum.1 = rcase-MapAndSum.1 : Aucune mise en correspondance fonctionnelle compl\u00E8te entre les particules.
         rcase-MapAndSum.2 = rcase-MapAndSum.2 : La plage d''occurrences du groupe, ({0},{1}), n''est pas une restriction valide de la plage d''occurrences du groupe de base, ({2},{3}).
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1 : Les \u00E9l\u00E9ments ont des noms (name) et des espaces de noms cible (target namespace) diff\u00E9rents : \u00E9l\u00E9ment "{0}" dans l''espace de noms "{1}" et \u00E9l\u00E9ment ''{2}'' dans l''espace de noms ''{3}''.
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2 : Erreur dans la particule o\u00F9 la valeur ''{''term''}'' est la d\u00E9claration d''\u00E9l\u00E9ment ''{0}''. La valeur ''{''nillable''}'' de la d\u00E9claration d''\u00E9l\u00E9ment est True, mais la particule correspondante dans le type de base comporte une d\u00E9claration d''\u00E9l\u00E9ment o\u00F9 la valeur ''{''nillable''}'' est False.
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3 : Erreur dans la particule o\u00F9 la valeur ''{''term''}'' est la d\u00E9claration d''\u00E9l\u00E9ment ''{0}''. Sa plage d''occurrences, ({1},{2}), n''est pas une restriction valide de la plage ({3},{4}) de la particule correspondante dans le type de base.
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2 : Erreur dans la particule o\u00F9 la valeur '{'term'}' est la d\u00E9claration d''\u00E9l\u00E9ment ''{0}''. La valeur '{'nillable'}' de la d\u00E9claration d''\u00E9l\u00E9ment est True, mais la particule correspondante dans le type de base comporte une d\u00E9claration d''\u00E9l\u00E9ment o\u00F9 la valeur '{'nillable'}' est False.
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3 : Erreur dans la particule o\u00F9 la valeur '{'term'}' est la d\u00E9claration d''\u00E9l\u00E9ment ''{0}''. Sa plage d''occurrences, ({1},{2}), n''est pas une restriction valide de la plage ({3},{4}) de la particule correspondante dans le type de base.
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a : L''\u00E9l\u00E9ment ''{0}'' n''est pas fixe, mais l''\u00E9l\u00E9ment correspondant dans le type de base est fixe avec la valeur ''{1}''.
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b : L''\u00E9l\u00E9ment ''{0}'' est fixe avec la valeur ''{1}'', mais l''\u00E9l\u00E9ment correspondant dans le type de base est fixe avec la valeur ''{2}''.
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5 : Les contraintes d''identit\u00E9 de l''\u00E9l\u00E9ment "{0}" ne sont pas un sous-ensemble de celles de la base.
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6 : Les substitutions non autoris\u00E9es pour l''\u00E9l\u00E9ment ''{0}'' ne sont pas un sur-ensemble de celles de la base.
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7 : Le type de l''\u00E9l\u00E9ment ''{0}'', ''{1}'', n''est pas d\u00E9riv\u00E9 du type de l''\u00E9l\u00E9ment de base, ''{2}''.
         rcase-NSCompat.1 = rcase-NSCompat.1 : L''\u00E9l\u00E9ment ''{0}'' comporte un espace de noms ''{1}'' non autoris\u00E9 par le caract\u00E8re g\u00E9n\u00E9rique de la base.
-        rcase-NSCompat.2 = rcase-NSCompat.2 : Erreur dans la particule o\u00F9 la valeur ''{''term''}'' est la d\u00E9claration d''\u00E9l\u00E9ment ''{0}''. Sa plage d''occurrences, ({1},{2}), n''est pas une restriction valide de la plage ({3},{4}) de la particule correspondante dans le type de base.
+        rcase-NSCompat.2 = rcase-NSCompat.2 : Erreur dans la particule o\u00F9 la valeur '{'term'}' est la d\u00E9claration d''\u00E9l\u00E9ment ''{0}''. Sa plage d''occurrences, ({1},{2}), n''est pas une restriction valide de la plage ({3},{4}) de la particule correspondante dans le type de base.
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1 : Aucune mise en correspondance fonctionnelle compl\u00E8te entre les particules.
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2 : La plage d''occurrences du groupe, ({0},{1}), n''est pas une restriction valide de la plage \u00E0 caract\u00E8re g\u00E9n\u00E9rique de la base, ({2},{3}).
         rcase-NSSubset.1 = rcase-NSSubset.1 : Le caract\u00E8re g\u00E9n\u00E9rique n'est pas un sous-ensemble du caract\u00E8re g\u00E9n\u00E9rique correspondant dans la base.
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2 : Un sch\u00E9ma ne peut pas contenir deux composants globaux de m\u00EAme nom ; celui-ci contient deux occurrences de ''{0}''.
         st-props-correct.2 = st-props-correct.2 : D\u00E9finitions circulaires d\u00E9tect\u00E9es pour le type simple ''{0}''. Cela signifie que ''{0}'' est contenu dans sa propre hi\u00E9rarchie des types, ce qui est une erreur.
-        st-props-correct.3 = st-props-correct.3 : Erreur dans le type ''{0}''. La valeur ''{''final''}'' de ''{''base type definition''}'', ''{1}'', n''accepte pas la d\u00E9rivation par restriction.
+        st-props-correct.3 = st-props-correct.3 : Erreur dans le type ''{0}''. La valeur '{'final'}' de '{'base type definition'}', ''{1}'', n''accepte pas la d\u00E9rivation par restriction.
         totalDigits-valid-restriction = totalDigits-valid-restriction : Dans la d\u00E9finition de {2}, la valeur ''{0}'' pour le facet ''totalDigits'' n''est pas valide car elle doit \u00EAtre <= \u00E0 la valeur de ''totalDigits'', qui a \u00E9t\u00E9 d\u00E9finie sur ''{1}'' dans l''un des types d''anc\u00EAtre.
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1 : Dans la d\u00E9finition de {0}, la valeur ''{1}'' du facet ''whitespace'' n''est pas valide car elle a \u00E9t\u00E9 d\u00E9finie sur ''collapse'' dans l''un des types d''anc\u00EAtre.
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2 : Dans la d\u00E9finition de {0}, la valeur ''preserve'' du facet ''whitespace'' n''est pas valide car la valeur de ''whitespace'' a \u00E9t\u00E9 d\u00E9finie sur ''replace'' dans l''un des types d''anc\u00EAtre.
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath : La valeur de s\u00E9lecteur ''{0}'' n''est pas valide ; les XPath de s\u00E9lecteur ne peuvent pas contenir d''attributs.
         EmptyTargetNamespace = EmptyTargetNamespace : Dans le document de sch\u00E9ma ''{0}'', la valeur de l''attribut ''targetNamespace'' ne peut pas \u00EAtre une cha\u00EEne vide.
         FacetValueFromBase = FacetValueFromBase : Dans la d\u00E9claration de type ''{0}'', la valeur ''{1}'' du facet ''{2}'' doit \u00EAtre issue de l''espace de valeurs du type de base, ''{3}''.
-        FixedFacetValue = FixedFacetValue : Dans la d\u00E9finition de {3}, la valeur ''{1}'' du facet ''{0}'' n''est pas valide, car la valeur de ''{0}'' a \u00E9t\u00E9 d\u00E9finie sur ''{2}'' dans l''un des types d''anc\u00EAtre, et ''{''fixed''}'' = true.
+        FixedFacetValue = FixedFacetValue : Dans la d\u00E9finition de {3}, la valeur ''{1}'' du facet ''{0}'' n''est pas valide, car la valeur de ''{0}'' a \u00E9t\u00E9 d\u00E9finie sur ''{2}'' dans l''un des types d''anc\u00EAtre, et '{'fixed'}' = true.
         InvalidRegex = InvalidRegex : La valeur de mod\u00E8le ''{0}'' n''est pas une expression r\u00E9guli\u00E8re valide. L''erreur signal\u00E9e est ''{1}'', au niveau de la colonne ''{2}''.
-        maxOccurLimit = La configuration en cours de l''analyseur ne permet pas de d\u00E9finir une valeur d''attribut maxOccurs sur une valeur sup\u00E9rieure \u00E0 {0}.
+        MaxOccurLimit = La configuration en cours de l''analyseur ne permet pas de d\u00E9finir une valeur d''attribut maxOccurs sur une valeur sup\u00E9rieure \u00E0 {0}.
         PublicSystemOnNotation = PublicSystemOnNotation : Au moins une des valeurs ''public'' et ''system'' doit figurer dans l'\u00E9l\u00E9ment ''notation''.
         SchemaLocation = SchemaLocation : La valeur schemaLocation ''{0}'' doit comporter un nombre pair d''URI.
         TargetNamespace.1 = TargetNamespace.1 : Espace de noms "{0}" attendu mais l''espace de noms cible du document de sch\u00E9ma est ''{1}''.
         TargetNamespace.2 = TargetNamespace.2 : Aucun espace de noms attendu mais le document de sch\u00E9ma comporte un espace de noms cible de ''{1}''.
         UndeclaredEntity = UndeclaredEntity : L''entit\u00E9 ''{0}'' n''est pas d\u00E9clar\u00E9e.
         UndeclaredPrefix = UndeclaredPrefix : Impossible de r\u00E9soudre ''{0}'' en un QName : le pr\u00E9fixe ''{1}'' n''est pas d\u00E9clar\u00E9.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = La propri\u00E9t\u00E9 ''http://java.sun.com/xml/jaxp/properties/schemaSource'' ne peut pas avoir une valeur de type ''{0}''. Les types de valeur possibles pris en charge sont String, File, InputStream, InputSource ou un tableau de ces types.
+        jaxp12-schema-source-type.2 = La propri\u00E9t\u00E9 ''http://java.sun.com/xml/jaxp/properties/schemaSource'' ne peut pas avoir une valeur de tableau de type ''{0}''. Les types de tableau possibles pris en charge sont Object, String, File, InputStream et InputSource.
+        jaxp12-schema-source-ns = En cas d'utilisation d'un tableau des objets comme valeur de la propri\u00E9t\u00E9 'http://java.sun.com/xml/jaxp/properties/schemaSource', il est interdit d'avoir deux sch\u00E9mas qui partagent le m\u00EAme espace de noms cible.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties
index 839c0da..06c792e 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_it.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_it.properties /st_wptg_1.8.0.0.0jdk/4 2013/11/06 08:14:00 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_it.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/12 03:53:19 gmolloy Exp $
 
         BadMessageKey = Impossibile trovare il messaggio di errore corrispondente alla chiave di messaggio.
         FormatFailed = Si \u00E8 verificato un errore interno durante la formattazione del seguente messaggio:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = Errore del vincolo di identit\u00E0 (cvc-identity-constraint.4.2.1): l''elemento "{0}" ha una chiave senza alcun valore.
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: l''elemento "{0}" non contiene valori per la chiave "{1}".
         DuplicateField = Corrispondenza duplicata nell''ambito per il campo "{0}".
-        DuplicateKey = Valore chiave duplicato [{0}] dichiarato per il vincolo di identit\u00E0 dell''elemento "{1}".
-        DuplicateUnique = Valore univoco duplicato [{0}] dichiarato per il vincolo di identit\u00E0 dell''elemento "{1}".
-        FieldMultipleMatch = Errore del vincolo di identit\u00E0: il campo "{0}" corrisponde a pi\u00F9 valori nell''ambito del proprio selettore; i campi devono corrispondere a valori univoci.
+        DuplicateKey = cvc-identity-constraint.4.2.2: valore chiave duplicato [{0}] dichiarato per il vincolo di identit\u00E0 "{2}" dell''elemento "{1}".
+        DuplicateUnique = cvc-identity-constraint.4.1: valore univoco duplicato [{0}] dichiarato per il vincolo di identit\u00E0 "{2}" dell''elemento "{1}".
+        FieldMultipleMatch = cvc-identity-constraint.3: il campo "{0}" del vincolo di identit\u00E0 "{1}" corrisponde a pi\u00F9 valori nell''ambito del proprio selettore; i campi devono corrispondere a valori univoci.
         FixedDiffersFromActual = Il contenuto di questo elemento non equivale al valore dell'attributo "fixed" nella dichiarazione dell'elemento nello schema.
-        KeyMatchesNillable = Errore del vincolo di identit\u00E0 (cvc-identity-constraint.4.2.3): l''elemento "{0}" ha una chiave corrispondente a un elemento con un valore annullabile impostato su true.
-        KeyNotEnoughValues = Valori insufficienti forniti per il vincolo di identit\u00E0 <key name="{1}"> specificato per l''elemento "{0}".
-        KeyNotFound = Chiave "{0}"con valore "{1}" non trovata per il vincolo di identit\u00E0 dell''elemento "{2}".
-        KeyRefNotEnoughValues = Valori insufficienti forniti per il vincolo di identit\u00E0 <keyref name="{1}"> specificato per l''elemento "{0}".
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: l''elemento "{0}" ha la chiave "{1}" che corrisponde a un elemento che ha l''attributo nillable impostato su true.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: valori insufficienti forniti per il vincolo di identit\u00E0 <key name="{1}"> specificato per l''elemento "{0}".
+        KeyNotFound = cvc-identity-constraint.4.3: chiave ''{0}'' con valore ''{1}'' non trovata per il vincolo di identit\u00E0 dell''elemento ''{2}''.
         KeyRefOutOfScope = Errore del vincolo di identit\u00E0: il vincolo di identit\u00E0 "{0}" ha un keyref che fa riferimento a una chiave o a un valore univoco fuori ambito.
         KeyRefReferNotFound = La dichiarazione "{0}" del riferimento chiave fa riferimento a una chiave sconosciuta denominata "{1}".
-        UniqueNotEnoughValues = Valori insufficienti forniti per il vincolo di identit\u00E0 <unique> specificato per l''elemento "{0}".
-        UnknownField = Errore interno del vincolo di identit\u00E0; campo "{0}" sconosciuto
+        UnknownField = Errore interno del vincolo di identit\u00E0; campo "{0}" sconosciuto per il vincolo di identit\u00E0 "{2}" specificato per l''elemento "{1}".
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: il valore ''{2}'' dell''attributo ''{1}'' sull''elemento ''{0}'' non \u00E8 valido rispetto al suo tipo ''{3}''.
-        cvc-attribute.4 = cvc-attribute.4: il valore ''{2}'' dell''attributo ''{1}'' sull''elemento ''{0}'' non \u00E8 valido rispetto al suo ''{''value constraint''}'' fisso. L''attributo deve avere un valore pari a ''{3}''.
+        cvc-attribute.4 = cvc-attribute.4: il valore ''{2}'' dell''attributo ''{1}'' sull''elemento ''{0}'' non \u00E8 valido rispetto al suo '{'value constraint'}' fisso. L''attributo deve avere un valore pari a ''{3}''.
         cvc-complex-type.2.1 = cvc-complex-type.2.1: l''elemento "{0}" non deve avere [children] di voci di informazioni di carattere o elemento perch\u00E9 il tipo di contenuto \u00E8 vuoto.
         cvc-complex-type.2.2 = cvc-complex-type.2.2: l''elemento "{0}" non deve avere [children] di tipo elemento e il valore deve essere valido.
         cvc-complex-type.2.3 = cvc-complex-type.2.3: l''elemento "{0}" non deve avere [children] di tipo carattere perch\u00E9 il tipo di contenuto \u00E8 di soli elementi.
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: il contenuto dell''elemento "{0}" non \u00E8 completo. \u00C8 previsto un elemento "{1}".
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: il carattere jolly corrispondente \u00E8 rigoroso ma non \u00E8 possibile trovare una dichiarazione per l''elemento "{0}".
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: contenuto non valido che inizia con l''elemento "{0}". Non sono previsti elementi figlio in questo punto.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: contenuto non valido che inizia con l''elemento "{0}". Non \u00E8 previsto un elemento figlio ''{1}'' in questo punto.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: contenuto non valido che inizia con l''elemento "{0}". Non \u00E8 previsto un elemento figlio ''{1}'' in questo punto.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}'' si pu\u00F2 verificare massimo ''{2}'' volte nella sequenza corrente. Questo limite \u00E8 stato superato. \u00C8 previsto un elemento ''{1}'' in questo punto.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}'' si pu\u00F2 verificare massimo ''{1}'' volte nella sequenza corrente. Questo limite \u00E8 stato superato. Non \u00E8 previsto un elemento figlio in questo punto.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: contenuto non valido che inizia con l''elemento ''{0}'' trovato. \u00C8 previsto che ''{1}'' si verifichi almeno ''{2}'' volte nella sequenza corrente. Per soddisfare questo vincolo, \u00E8 necessaria un''altra istanza.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: contenuto non valido che inizia con l''elemento ''{0}'' trovato. \u00C8 previsto che ''{1}'' si verifichi almeno ''{2}'' volte nella sequenza corrente. Per soddisfare questo vincolo, sono necessarie altre ''{3}'' istanze.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: il contenuto dell''elemento ''{0}'' non \u00E8 completo. \u00C8 previsto che ''{1}'' si verifichi almeno ''{2}'' volte. Per soddisfare questo vincolo, \u00E8 necessaria un''altra istanza.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: il contenuto dell''elemento ''{0}'' non \u00E8 completo. \u00C8 previsto che ''{1}'' si verifichi almeno ''{2}'' volte. Per soddisfare questo vincolo, sono necessarie altre ''{3}'' istanze.
         cvc-complex-type.3.1 = cvc-complex-type.3.1: il valore "{2}" dell''attributo "{1}" dell''elemento "{0}" non \u00E8 valido rispetto al uso corrispondente dell''attributo. L''attributo ''{1}'' ha un valore fisso pari a ''{3}''.
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: l''elemento "{0}" non ha un carattere jolly di attributo per l''attributo "{1}".
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: l''attributo "{1}" non \u00E8 consentito nell''elemento "{0}".
         cvc-complex-type.4 = cvc-complex-type.4: l''attributo ''{1}'' deve apparire sull''elemento "{0}".
         cvc-complex-type.5.1 = cvc-complex-type.5.1: nell''elemento "{0}", l''attributo "{1}" \u00E8 un ID Wild ma esiste gi\u00E0 un ID Wild "{2}". Pu\u00F2 esisterne solo uno.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: nell''elemento "{0}", l''attributo "{1}" \u00E8 un ID Wild ma esiste gi\u00E0 un attributo "{2}" derivato dall''ID tra ''{''attribute uses''}''.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: nell''elemento "{0}", l''attributo "{1}" \u00E8 un ID Wild ma esiste gi\u00E0 un attributo "{2}" derivato dall''ID tra '{'attribute uses'}'.
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: "{0}" non \u00E8 un valore valido per "{1}".
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: "{0}" non \u00E8 un valore valido per il tipo di lista "{1}".
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: "{0}" non \u00E8 un valore valido per il tipo di unione "{1}".
-        cvc-elt.1 = cvc-elt.1: impossibile trovare la dichiarazione dell''elemento "{0}".
-        cvc-elt.2 = cvc-elt.2: il valore di ''{''abstract''}'' nella dichiarazione di elemento per "{0}" deve essere false.
-        cvc-elt.3.1 = cvc-elt.3.1: l''attributo "{1}" non deve apparire sull''elemento "{0}" perch\u00E9 la propriet\u00E0 ''{''nillable''}'' di "{0}" \u00E8 false.
+        cvc-elt.1.a = cvc-elt.1.a: impossibile trovare la dichiarazione dell''elemento "{0}".
+        cvc-elt.1.b = cvc-elt.1.b: il nome dell''elemento non corrisponde al nome della dichiarazione dell''elemento. Visualizzato ''{0}''. Previsto ''{1}''.
+        cvc-elt.2 = cvc-elt.2: il valore di '{'abstract'}' nella dichiarazione di elemento per "{0}" deve essere false.
+        cvc-elt.3.1 = cvc-elt.3.1: l''attributo "{1}" non deve apparire sull''elemento "{0}" perch\u00E9 la propriet\u00E0 '{'nillable'}' di "{0}" \u00E8 false.
         cvc-elt.3.2.1 = cvc-elt.3.2.1: l''elemento "{0}" non deve avere [children] di informazioni di tipo carattere o elemento perch\u00E9 \u00E8 specificato "{1}".
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: non deve esistere alcun ''{''value constraint''}'' fisso per l''elemento "{0}" perch\u00E9 \u00E8 specificato "{1}".
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: non deve esistere alcun '{'value constraint'}' fisso per l''elemento "{0}" perch\u00E9 \u00E8 specificato "{1}".
         cvc-elt.4.1 = cvc-elt.4.1: il valore "{2}" dell''attributo "{1}" per l''elemento "{0}" non \u00E8 un QName valido.
         cvc-elt.4.2 = cvc-elt.4.2: impossibile risolvere "{1}" in una definizione tipo per l''elemento "{0}".
         cvc-elt.4.3 = cvc-elt.4.3: tipo "{1}" non derivato in modo valido dalla definizione tipo ''{2}'' dell''elemento "{0}".
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: ''{''value constraint''}'' "{2}" dell''elemento "{0}" non \u00E8 un valore predefinito valido per il tipo "{1}".
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: '{'value constraint'}' "{2}" dell''elemento "{0}" non \u00E8 un valore predefinito valido per il tipo "{1}".
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: l''elemento "{0}" non deve avere [children] di voci di informazioni di elemento.
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: il valore "{1}" dell''elemento "{0}" non corrisponde al valore fisso di ''{''value constraint''}'' "{2}".
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: il valore "{1}" dell''elemento "{0}" non corrisponde al valore di ''{''value constraint''}'' "{2}".
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: il valore "{1}" dell''elemento "{0}" non corrisponde al valore fisso di '{'value constraint'}' "{2}".
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: il valore "{1}" dell''elemento "{0}" non corrisponde al valore di '{'value constraint'}' "{2}".
         cvc-enumeration-valid = cvc-enumeration-valid: il valore "{0}" non \u00E8 valido come facet rispetto all''enumerazione "{1}". Deve essere un valore dell''enumerazione.
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: il valore ''{0}'' ha {1} cifre di frazione, ma il numero di cifre di frazione \u00E8 stato limitato a {2}.
         cvc-id.1 = cvc-id.1: non esiste alcuna associazione ID/IDREF per l''IDREF "{0}".
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: il valore "{0}" con lunghezza = "{1}" non \u00E8 valido come facet rispetto a minLength "{2}" per il tipo "{3}".
         cvc-pattern-valid = cvc-pattern-valid: il valore "{0}" non \u00E8 valido come facet rispetto al pattern "{1}" per il tipo ''{2}''.
         cvc-totalDigits-valid = cvc-totalDigits-valid: il valore ''{0}'' ha {1} cifre di totale, ma il numero di cifre di totale \u00E8 stato limitato a {2}.
+        cvc-type.1 = cvc-type.1: definizione tipo ''{0}'' non trovata.
         cvc-type.2 = cvc-type.2: la definizione tipo non pu\u00F2 essere astratta per l''elemento {0}.
         cvc-type.3.1.1 = cvc-type.3.1.1: l''elemento ''{0}'' \u00E8 di tipo semplice, quindi non pu\u00F2 avere attributi, tranne quelli il cui spazio di nomi \u00E8 uguale ''http://www.w3.org/2001/XMLSchema-instance'' e il cui [local name] \u00E8 uno tra ''type'', ''nil'', ''schemaLocation'' o ''noNamespaceSchemaLocation''. \u00C8 stato trovato l''attributo ''{1}''.
         cvc-type.3.1.2 = cvc-type.3.1.2: l''elemento "{0}" \u00E8 di tipo semplice, quindi non deve avere [children] di voci di informazioni di elemento.
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: errore per il gruppo di attributi "{0}". Sono specificati usi di attributi duplicati con lo stesso nome e spazio di nomi di destinazione. Il nome dell''uso dell''attributo duplicato \u00E8 "{1}".
         ag-props-correct.3 = ag-props-correct.3: errore per il gruppo di attributi "{0}". Due dichiarazioni di attributo, "{1}" e "{2}" hanno tipi derivati dall''ID.
         a-props-correct.2 = a-props-correct.2: valore di vincolo di valore "{1}" non valido nell''attributo "{0}".
-        a-props-correct.3 = a-props-correct.3: l''attributo ''{0}'' non pu\u00F2 utilizzare il valore ''fixed'' o ''default'' poich\u00E9 la ''{''type definition''}'' dell''attributo \u00E8 un ID o \u00E8 derivata dall''ID.
-        au-props-correct.2 = au-props-correct.2: nella dichiarazione di attributo di ''{0}'' \u00E8 stato specificato un valore fisso ''{1}''. Se, pertanto, l''uso dell''attributo che fa riferimento a ''{0}'' ha anche un valore ''{''value constraint''}'', deve essere fisso e il suo valore deve essere ''{1}''.
+        a-props-correct.3 = a-props-correct.3: l''attributo ''{0}'' non pu\u00F2 utilizzare il valore ''fixed'' o ''default'' poich\u00E9 la '{'type definition'}' dell''attributo \u00E8 un ID o \u00E8 derivata dall''ID.
+        au-props-correct.2 = au-props-correct.2: nella dichiarazione di attributo di ''{0}'' \u00E8 stato specificato un valore fisso ''{1}''. Se, pertanto, l''uso dell''attributo che fa riferimento a ''{0}'' ha anche un valore '{'value constraint'}', deve essere fisso e il suo valore deve essere ''{1}''.
         cos-all-limited.1.2 = cos-all-limited.1.2: deve apparire un gruppo di modelli 'all' in una parte con '{'min occurs'}' = '{'max occurs'}' = 1 e la parte deve far parte di una coppia che costituisca il '{'content type'}' di una definizione di tipo complesso.
-        cos-all-limited.2 = cos-all-limited.2: il valore ''{''max occurs''}'' di un elemento in un gruppo di modelli ''all'' deve essere 0 o 1. Il valore ''{0}'' per l''elemento ''{1}'' non \u00E8 valido.
+        cos-all-limited.2 = cos-all-limited.2: il valore '{'max occurs'}' di un elemento in un gruppo di modelli ''all'' deve essere 0 o 1. Il valore ''{0}'' per l''elemento ''{1}'' non \u00E8 valido.
         cos-applicable-facets = cos-applicable-facets: facet ''{0}'' non consentito dal tipo {1}.
         cos-ct-extends.1.1 = cos-ct-extends.1.1: il tipo ''{0}'' \u00E8 stato derivato mediante estensione dal tipo ''{1}'', ma l''attributo "final" di ''{1}'' impedisce la derivazione mediante estensione.
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: Il tipo di contenuto di un tipo derivato e quello della rispettiva base devono essere entrambi misti o di soli elementi. Il tipo ''{0}'' \u00E8 di soli elementi, mentre la rispettiva base non lo \u00E8.
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: la parte derivata \u00E8 vuota, mente la base non \u00E8 svuotabile.
         cos-particle-restrict.b = cos-particle-restrict.b: la parte della base \u00E8 vuota, mente la parte derivata non lo \u00E8.
         cos-particle-restrict.2 = cos-particle-restrict.2: limitazione di parte vietata: ''{0}''.
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: il tipo ''{1}'' \u00E8 indivisibile, quindi la ''{''base type definition''}'' "{0}" deve essere una definizione di tipo semplice indivisibile o un tipo di dati predefinito incorporato.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: il tipo ''{1}'' \u00E8 indivisibile, quindi la '{'base type definition'}' "{0}" deve essere una definizione di tipo semplice indivisibile o un tipo di dati predefinito incorporato.
         cos-st-restricts.2.1 = cos-st-restricts.2.1: nella definizione del tipo di lista ''{0}'', il tipo ''{1}'' non \u00E8 valido poich\u00E9 \u00E8 un tipo di lista o un tipo di unione che contiene una lista.
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: il componente ''{''final''}'' di ''{''item type definition''}'' ''{0}'' contiene ''list'', pertanto ''{0}'' non pu\u00F2 essere utilizzato come tipo di elemento per il tipo di lista ''{1}''.
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: il componente ''{''final''}'' di ''{''member type definitions''}'' ''{0}'' contiene ''union'', pertanto ''{0}'' non pu\u00F2 essere utilizzato come tipo di membro per il tipo di unione ''{1}''.
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: il componente '{'final'}' di '{'item type definition'}' ''{0}'' contiene ''list'', pertanto ''{0}'' non pu\u00F2 essere utilizzato come tipo di elemento per il tipo di lista ''{1}''.
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: il componente '{'final'}' di '{'member type definitions'}' ''{0}'' contiene ''union'', pertanto ''{0}'' non pu\u00F2 essere utilizzato come tipo di membro per il tipo di unione ''{1}''.
         cos-valid-default.2.1 = cos-valid-default.2.1: l''elemento "{0}" ha un vincolo di valore e deve avere un modello di contenuto misto o semplice.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: l''elemento ''{0}'' ha un ''{''value constraint''}'' e la rispettiva definizione del tipo contiene ''{''content type''}'' misto, quindi la parte di ''{''content type''}'' deve essere svuotabile.
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: l''elemento ''{0}'' ha un '{'value constraint'}' e la rispettiva definizione del tipo contiene '{'content type'}' misto, quindi la parte di '{'content type'}' deve essere svuotabile.
         c-props-correct.2 = c-props-correct.2: la cardinalit\u00E0 dei campi per il keyref "{0}" e per la chiave "{1}" deve corrispondere.
         ct-props-correct.3 = ct-props-correct.3: sono state rilevate definizioni circolari per il tipo complesso ''{0}''. Ci\u00F2 significa che ''{0}'' si trova all''interno della sua stessa gerarchia di tipi, il che \u00E8 errato.
         ct-props-correct.4 = ct-props-correct.4: errore per il tipo "{0}". Sono specificati usi di attributi duplicati con lo stesso nome e spazio di nomi di destinazione. Il nome dell''uso dell''attributo duplicato \u00E8 "{1}".
         ct-props-correct.5 = ct-props-correct.5: errore per il tipo "{0}". Due dichiarazioni di attributo, "{1}" e "{2}" hanno tipi derivati dall''ID.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: il tipo ''{0}'' \u00E8 stato derivato mediante limitazione dal tipo ''{1}'', ma ''{1}'' ha una propriet\u00E0 ''{''final''}'' che impedisce la derivazione mediante limitazione.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: il tipo ''{0}'' \u00E8 stato derivato mediante limitazione dal tipo ''{1}'', ma ''{1}'' ha una propriet\u00E0 '{'final'}' che impedisce la derivazione mediante limitazione.
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: errore per il tipo "{0}". Un uso dell''attributo ''{1}'' in questo tipo ha un valore "use" ''{2}'' che \u00E8 incoerente con il valore di ''required'' in un uso corrispondente dell''attributo nel tipo di base.
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.12: errore per il tipo "{0}". Un uso dell''attributo ''{1}'' in questo tipo ha un valore tipo ''{2}'' che \u00E8 stato derivato in modo valido da ''{3}'', ovvero dal tipo di uso corrispondente dell''attributo nel tipo di base.
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: errore per il tipo "{0}". L''uso dell''attributo ''{1}'' in questo tipo ha un vincolo di valore effettivo che \u00E8 fisso, mentre il vincolo di valore effettivo dell''uso dell''attributo corrispondente nel tipo di base \u00E8 fisso.
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation: il tipo NOTATION ''{0}'' utilizzato da {2} ''{1}'' deve avere un valore di facet di enumerazione che specifica gli elementi di notazione utilizzati da questo tipo.
         enumeration-valid-restriction = enumeration-valid-restriction: il valore di enumerazione "{0}" non \u00E8 nello spazio dei valori del tipo di base {1}.
         e-props-correct.2 = e-props-correct.2: valore di vincolo di valore "{1}" non valido nell''elemento "{0}".
-        e-props-correct.4 = e-props-correct.4: ''{''type definition''}'' dell''elemento "{0}" non \u00E8 stata derivata in modo valido da ''{''type definition''}'' di substitutionHead "{1}" o la propriet\u00E0 ''{''substitution group exclusions''}'' di ''{1}'' non consente questa derivazione.
-        e-props-correct.5 = e-props-correct.5: non deve esistere ''{''value constraint''}'' sull''elemento "{0}" perch\u00E9 ''{''type definition''}'' dell''elemento o ''{''content type''}'' di ''{''type definition''}'' \u00E8 un ID o \u00E8 derivato da un ID.
+        e-props-correct.4 = e-props-correct.4: '{'type definition'}' dell''elemento "{0}" non \u00E8 stata derivata in modo valido da '{'type definition'}' di substitutionHead "{1}" o la propriet\u00E0 '{'substitution group exclusions'}' di ''{1}'' non consente questa derivazione.
+        e-props-correct.5 = e-props-correct.5: non deve esistere '{'value constraint'}' sull''elemento "{0}" perch\u00E9 '{'type definition'}' dell''elemento o '{'content type'}' di '{'type definition'}' \u00E8 un ID o \u00E8 derivato da un ID.
         e-props-correct.6 = e-props-correct.6: gruppo di sostituzione circolare rilevato per l''elemento "{0}".
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: nella definizione di {2}, il valore ''{0}'' per il facet ''fractionDigits'' non \u00E8 valido. Deve essere <= rispetto al valore per ''fractionDigits'', impostato su ''{1}'' in uno dei tipi di predecessore.
         fractionDigits-totalDigits = fractionDigits-totalDigits: nella definizione di {2}, il valore ''{0}'' per il facet ''fractionDigits'' non \u00E8 valido. Il valore deve essere <= rispetto al valore per ''totalDigits'', impostato su ''{1}''.
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: errore per il tipo ''{2}''. Il valore maxInclusive ="{0}" deve essere >= minInclusive del tipo di base "{1}".
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: errore per il tipo ''{2}''. Il valore maxInclusive ="{0}" deve essere > minExclusive del tipo di base "{1}".
         maxLength-valid-restriction = maxLength-valid-restriction: nella definizione di {2}, il valore maxLength = "{0}" deve essere <= rispetto a quello del tipo di base "{1}".
-        mg-props-correct.2 = mg-props-correct.2: definizioni circolari rilevate per il gruppo ''{0}''. Se si seguono in maniera ricorsiva i valori ''{''term''}'' delle parti, se ne avr\u00E0 una il cui ''{''term''}'' \u00E8 il gruppo stesso.
+        mg-props-correct.2 = mg-props-correct.2: definizioni circolari rilevate per il gruppo ''{0}''. Se si seguono in maniera ricorsiva i valori '{'term'}' delle parti, se ne avr\u00E0 una il cui '{'term'}' \u00E8 il gruppo stesso.
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: nella definizione di {2}, il valore minExclusive = ''{0}'' deve essere <= rispetto al valore maxExclusive = ''{1}''.
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: nella definizione di {2}, il valore minExclusive = ''{0}'' deve essere <= rispetto al valore maxInclusive = ''{1}''.
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: errore per il tipo ''{2}''. Il valore minExclusive ="{0}" deve essere >= minExclusive del tipo di base "{1}".
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: nella definizione di {2}, il valore minLength = ''{0}'' deve essere < rispetto al valore maxLength = ''{1}''.
         minLength-valid-restriction = minLength-valid-restriction: nella definizione di {2}, minLength = ''{0}'' deve essere >= rispetto a quello del tipo di base ''{1}''.
         no-xmlns = no-xmlns: il {'name'} di una dichiarazione di attributo non deve corrispondere a 'xmlns'.
-        no-xsi = no-xsi: il ''{''target namespace''}'' di una dichiarazione di attributo non deve corrispondere a "{0}".
+        no-xsi = no-xsi: il '{'target namespace'}' di una dichiarazione di attributo non deve corrispondere a "{0}".
         p-props-correct.2.1 = p-props-correct.2.1: nella dichiarazione di ''{0}'', il valore di ''minOccurs'' \u00E8 ''{1}'', ma non deve essere maggiore del valore di ''maxOccurs'', che \u00E8 ''{2}''.
         rcase-MapAndSum.1 = rcase-MapAndSum.1: non esiste un mapping funzionale completo tra le parti.
         rcase-MapAndSum.2 = rcase-MapAndSum.2: l''intervallo di ricorrenza ({0},{1}) del gruppo non \u00E8 una limitazione valida dell''intervallo di ricorrenza ({2},{3}) del gruppo di base.
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: alcuni elementi hanno nomi e spazi di nomi di destinazione che non sono uguali: l''elemento "{0}" nello spazio di nomi "{1}" e l''elemento "{2}" nello spazio di nomi "{3}".
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: errore per la parte il cui ''{''term''}'' \u00E8 la dichiarazione di elemento ''{0}''. Il valore ''{''nillable''}'' della dichiarazione di elemento \u00E8 impostato su true, ma la parte corrispondente nel tipo di base contiene una dichiarazione di elemento per la quale ''{''nillable''}'' \u00E8 impostato su false.
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: errore per la parte il cui ''{''term''}'' \u00E8 la dichiarazione di elemento ''{0}''. L''intervallo di ricorrenza ({1},{2}) non \u00E8 una limitazione valida dell''intervallo ({3},{4}) della parte corrispondente nel tipo di base.
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: errore per la parte il cui '{'term'}' \u00E8 la dichiarazione di elemento ''{0}''. Il valore '{'nillable'}' della dichiarazione di elemento \u00E8 impostato su true, ma la parte corrispondente nel tipo di base contiene una dichiarazione di elemento per la quale '{'nillable'}' \u00E8 impostato su false.
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: errore per la parte il cui '{'term'}' \u00E8 la dichiarazione di elemento ''{0}''. L''intervallo di ricorrenza ({1},{2}) non \u00E8 una limitazione valida dell''intervallo ({3},{4}) della parte corrispondente nel tipo di base.
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: l''elemento "{0}" non \u00E8 fisso, ma l''elemento corrispondente nel tipo di base \u00E8 fisso con il valore ''{1}''.
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: l''elemento "{0}" \u00E8 fisso con il valore ''{1}'', ma l''elemento corrispondente nel tipo di base \u00E8 fisso con il valore ''{2}''.
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: i vincoli di identit\u00E0 per l''elemento "{0}" non sono un subset di quelli nella base.
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: le sostituzioni non consentite per l''elemento "{0}" non sono un superset di quelle nella base.
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: il tipo "{1}" dell''elemento "{0}" non deriva dal tipo dell''elemento di base "{2}".
         rcase-NSCompat.1 = rcase-NSCompat.1: l''elemento "{0}" ha uno spazio di nomi "{1}" che non \u00E8 consentito dal carattere jolly nella base.
-        rcase-NSCompat.2 = rcase-NSCompat.2: errore per la parte il cui ''{''term''}'' \u00E8 la dichiarazione di elemento ''{0}''. L''intervallo di ricorrenza ({1},{2}) non \u00E8 una limitazione valida dell''intervallo ({3},{4}) della parte corrispondente nel tipo di base.
+        rcase-NSCompat.2 = rcase-NSCompat.2: errore per la parte il cui '{'term'}' \u00E8 la dichiarazione di elemento ''{0}''. L''intervallo di ricorrenza ({1},{2}) non \u00E8 una limitazione valida dell''intervallo ({3},{4}) della parte corrispondente nel tipo di base.
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: non esiste un mapping funzionale completo tra le parti.
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: l''intervallo di ricorrenza ({0},{1}) del gruppo non \u00E8 una limitazione valida dell''intervallo ({2},{3}) del carattere jolly di base.
         rcase-NSSubset.1 = rcase-NSSubset.1: il carattere jolly non \u00E8 un subset del carattere jolly corrispondente nella base.
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: uno schema non pu\u00F2 contenere due componenti globali con lo stesso nome; questo contiene due ricorrenze di "{0}".
         st-props-correct.2 = st-props-correct.2: sono state rilevate definizioni circolari per il tipo semplice ''{0}''. Ci\u00F2 significa che ''{0}'' si trova all''interno della sua stessa gerarchia di tipi, il che \u00E8 errato.
-        st-props-correct.3 = st-props-correct.3: errore per il tipo ''{0}''. Il valore di ''{''final''}'' per ''{''base type definition''}'', ''{1}'', impedisce la derivazione mediante limitazione.
+        st-props-correct.3 = st-props-correct.3: errore per il tipo ''{0}''. Il valore di '{'final'}' per '{'base type definition'}', ''{1}'', impedisce la derivazione mediante limitazione.
         totalDigits-valid-restriction = totalDigits-valid-restriction: nella definizione di {2}, il valore ''{0}'' per il facet ''totalDigits'' non \u00E8 valido. Deve essere <= rispetto al valore per ''totalDigits'', impostato su ''{1}'' in uno dei tipi di predecessore.
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: nella definizione di {0}, il valore ''{1}'' per il facet ''whitespace'' non \u00E8 valido. Il valore per ''whitespace'' \u00E8 stato impostato su ''collapse'' in uno dei tipi di predecessore.
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: nella definizione di {0}, il valore ''preserve'' per il facet ''whitespace'' non \u00E8 valido. Il valore per ''whitespace'' \u00E8 stato impostato su ''replace'' in uno dei tipi di predecessore.
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: il valore del selettore = "{0}" non \u00E8 valido; gli XPath del selettore non possono contenere attributi.
         EmptyTargetNamespace = EmptyTargetNamespace: nel documento di schema ''{0}'' il valore dell''attributo ''targetNamespace'' non pu\u00F2 essere una stringa vuota.
         FacetValueFromBase = FacetValueFromBase: nella dichiarazione del tipo ''{0}'' il valore ''{1}'' del facet ''{2}'' deve provenire dallo spazio di valori del tipo di base ''{3}''.
-        FixedFacetValue = FixedFacetValue: nella definizione di {3}, il valore ''{1}'' per il facet ''{0}'' non \u00E8 valido. Il valore per ''{0}'' \u00E8 stato impostato su ''{2}'' in uno dei tipi di predecessore e ''{''fixed''}'' = true.
+        FixedFacetValue = FixedFacetValue: nella definizione di {3}, il valore ''{1}'' per il facet ''{0}'' non \u00E8 valido. Il valore per ''{0}'' \u00E8 stato impostato su ''{2}'' in uno dei tipi di predecessore e '{'fixed'}' = true.
         InvalidRegex = InvalidRegex: il valore di pattern "{0}" non \u00E8 un''espressione regolare valida. Errore segnalato ''{1}'' nella colonna ''{2}''.
-        maxOccurLimit = La configurazione corrente del parser non consente che un valore di attributo maxOccurs sia impostato su un valore maggiore del valore {0}.
+        MaxOccurLimit = La configurazione corrente del parser non consente che un valore di attributo maxOccurs sia impostato su un valore maggiore del valore {0}.
         PublicSystemOnNotation = PublicSystemOnNotation: almeno uno tra ''public'' e ''system'' deve essere presente nell'elemento ''notation''.
         SchemaLocation = SchemaLocation: il valore = ''{0}'' di schemaLocation deve avere un numero pari di URI.
         TargetNamespace.1 = TargetNamespace.1: lo spazio di nomi previsto \u00E8 "{0}", ma lo spazio di nomi di destinazione del documento dello schema \u00E8 "{1}".
         TargetNamespace.2 = TargetNamespace.2: non \u00E8 previsto nessuno spazio di nomi, ma il documento dello schema ha uno spazio di nomi di destinazione ''{1}''.
         UndeclaredEntity = UndeclaredEntity: l''entit\u00E0 ''{0}'' non \u00E8 stata dichiarata.
         UndeclaredPrefix = UndeclaredPrefix: impossibile risolvere ''{0}'' come QName. Il prefisso ''{1}'' non \u00E8 stato dichiarato.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = La propriet\u00E0 ''http://java.sun.com/xml/jaxp/properties/schemaSource'' non pu\u00F2 avere un valore di tipo ''{0}''. I tipi possibili di valori supportati sono String, File, InputStream, InputSource o un array di questi tipi.
+        jaxp12-schema-source-type.2 = La propriet\u00E0 ''http://java.sun.com/xml/jaxp/properties/schemaSource'' non pu\u00F2 avere un valore di array di tipo ''{0}''. I tipi possibili di array supportati sono Object, String, File, InputStream e InputSource.
+        jaxp12-schema-source-ns = Quando si utilizza un array di oggetti come valore della propriet\u00E0 'http://java.sun.com/xml/jaxp/properties/schemaSource', non \u00E8 possibile avere due schemi che condividono lo stesso spazio di nomi di destinazione.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties
index d8567e3..63997f8 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_ja.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/12 17:39:58 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_ja.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/12 00:37:07 gmolloy Exp $
 
         BadMessageKey = \u30E1\u30C3\u30BB\u30FC\u30B8\u30FB\u30AD\u30FC\u306B\u5BFE\u5FDC\u3059\u308B\u30A8\u30E9\u30FC\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
         FormatFailed = \u6B21\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u306E\u66F8\u5F0F\u8A2D\u5B9A\u4E2D\u306B\u5185\u90E8\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = \u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u30A8\u30E9\u30FC(cvc-identity-constraint.4.2.1): \u8981\u7D20"{0}"\u306B\u5024\u306E\u306A\u3044\u30AD\u30FC\u304C\u3042\u308A\u307E\u3059\u3002
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: \u30AD\u30FC"{1}"\u306E\u8981\u7D20"{0}"\u306B\u5024\u304C\u3042\u308A\u307E\u305B\u3093\u3002
         DuplicateField = \u30D5\u30A3\u30FC\u30EB\u30C9"{0}"\u306E\u30B9\u30B3\u30FC\u30D7\u5185\u3067\u4E00\u81F4\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\u3002
-        DuplicateKey = \u8981\u7D20"{1}"\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u3067\u5BA3\u8A00\u3055\u308C\u305Fkey\u306E\u5024[{0}]\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\u3002
-        DuplicateUnique = \u8981\u7D20"{1}"\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u3067\u5BA3\u8A00\u3055\u308C\u305Funique\u306E\u5024[{0}]\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\u3002
-        FieldMultipleMatch = \u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u30A8\u30E9\u30FC: \u30D5\u30A3\u30FC\u30EB\u30C9"{0}"\u304C\u30BB\u30EC\u30AF\u30BF\u306E\u30B9\u30B3\u30FC\u30D7\u5185\u306E\u8907\u6570\u306E\u5024\u3068\u4E00\u81F4\u3057\u3066\u3044\u307E\u3059\u3002\u30D5\u30A3\u30FC\u30EB\u30C9\u306Funique\u306E\u5024\u3068\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+        DuplicateKey = cvc-identity-constraint.4.2.2: \u8981\u7D20"{1}"\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04"{2}"\u3067\u5BA3\u8A00\u3055\u308C\u305Fkey\u306E\u5024[{0}]\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\u3002
+        DuplicateUnique = cvc-identity-constraint.4.1: \u8981\u7D20"{1}"\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04"{2}"\u3067\u5BA3\u8A00\u3055\u308C\u305Funique\u306E\u5024[{0}]\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\u3002
+        FieldMultipleMatch = cvc-identity-constraint.3: \u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04"{1}"\u306E\u30D5\u30A3\u30FC\u30EB\u30C9"{0}"\u304C\u30BB\u30EC\u30AF\u30BF\u306E\u30B9\u30B3\u30FC\u30D7\u5185\u306E\u8907\u6570\u306E\u5024\u3068\u4E00\u81F4\u3057\u3066\u3044\u307E\u3059\u3002\u30D5\u30A3\u30FC\u30EB\u30C9\u306Funique\u306E\u5024\u3068\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         FixedDiffersFromActual = \u3053\u306E\u8981\u7D20\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u306F\u3001\u30B9\u30AD\u30FC\u30DE\u5185\u306E\u8981\u7D20\u5BA3\u8A00\u3067\u306E"fixed"\u5C5E\u6027\u306E\u5024\u3068\u7570\u306A\u308A\u307E\u3059\u3002
-        KeyMatchesNillable = \u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u30A8\u30E9\u30FC(cvc-identity-constraint.4.2.3): \u8981\u7D20"{0}"\u306B\u306F\u3001nillable\u304Ctrue\u3067\u3042\u308B\u8981\u7D20\u3068\u4E00\u81F4\u3059\u308B\u30AD\u30FC\u304C\u3042\u308A\u307E\u3059\u3002
-        KeyNotEnoughValues = \u8981\u7D20"{0}"\u306B\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B<key name="{1}">\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u306B\u3001\u5341\u5206\u306A\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-        KeyNotFound = \u8981\u7D20''{2}''\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u3067\u3001\u5024''{1}''\u306E\u30AD\u30FC''{0}''\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
-        KeyRefNotEnoughValues = \u8981\u7D20"{0}"\u306B\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B<keyref name="{1}">\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u306B\u3001\u5341\u5206\u306A\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: \u8981\u7D20"{0}"\u306B\u306F\u3001nillable\u304Ctrue\u3067\u3042\u308B\u8981\u7D20\u3068\u4E00\u81F4\u3059\u308B\u30AD\u30FC"{1}"\u304C\u3042\u308A\u307E\u3059\u3002
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: \u8981\u7D20"{0}"\u306B\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B<key name="{1}">\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u306B\u3001\u5341\u5206\u306A\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+        KeyNotFound = cvc-identity-constraint.4.3: \u8981\u7D20''{2}''\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u3067\u3001\u5024''{1}''\u306E\u30AD\u30FC''{0}''\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
         KeyRefOutOfScope = \u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u30A8\u30E9\u30FC: \u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04"{0}"\u306B\u3001\u30B9\u30B3\u30FC\u30D7\u5916\u306Ekey\u3084unique\u3092\u53C2\u7167\u3057\u3066\u3044\u308Bkeyref\u304C\u3042\u308A\u307E\u3059\u3002
         KeyRefReferNotFound = \u30AD\u30FC\u53C2\u7167\u306E\u5BA3\u8A00"{0}"\u304C\u3001"{1}"\u3068\u3044\u3046\u540D\u524D\u306E\u4E0D\u660E\u306A\u30AD\u30FC\u3092\u53C2\u7167\u3057\u3066\u3044\u307E\u3059\u3002
-        UniqueNotEnoughValues = \u8981\u7D20"{0}"\u306B\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B<unique>\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u306B\u3001\u5341\u5206\u306A\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-        UnknownField = \u5185\u90E8\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u30A8\u30E9\u30FC: \u30D5\u30A3\u30FC\u30EB\u30C9"{0}"\u304C\u4E0D\u660E\u3067\u3059\u3002
+        UnknownField = \u5185\u90E8\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u30A8\u30E9\u30FC: \u8981\u7D20"{1}"\u306B\u6307\u5B9A\u3055\u308C\u305F\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04"{2}"\u306E\u30D5\u30A3\u30FC\u30EB\u30C9"{0}"\u304C\u4E0D\u660E\u3067\u3059\u3002
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: \u8981\u7D20''{0}''\u306E\u5C5E\u6027''{1}''\u306E\u5024''{2}''\u306F\u3001\u305D\u306E\u30BF\u30A4\u30D7''{3}''\u306B\u5BFE\u3057\u3066\u7121\u52B9\u3067\u3059\u3002
-        cvc-attribute.4 = cvc-attribute.4: \u8981\u7D20''{0}''\u306E\u5C5E\u6027''{1}''\u306E\u5024''{2}''\u306F\u3001\u56FA\u5B9A\u306E''{''value constraint''}''\u306B\u5BFE\u3057\u3066\u7121\u52B9\u3067\u3059\u3002\u5C5E\u6027\u306E\u5024\u306F''{3}''\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+        cvc-attribute.4 = cvc-attribute.4: \u8981\u7D20''{0}''\u306E\u5C5E\u6027''{1}''\u306E\u5024''{2}''\u306F\u3001\u56FA\u5B9A\u306E'{'value constraint'}'\u306B\u5BFE\u3057\u3066\u7121\u52B9\u3067\u3059\u3002\u5C5E\u6027\u306E\u5024\u306F''{3}''\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         cvc-complex-type.2.1 = cvc-complex-type.2.1: \u30BF\u30A4\u30D7\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u30FB\u30BF\u30A4\u30D7\u304C\u7A7A\u767D\u3067\u3042\u308B\u305F\u3081\u3001\u8981\u7D20''{0}''\u306B\u306F\u6587\u5B57\u3084\u8981\u7D20\u60C5\u5831\u30A2\u30A4\u30C6\u30E0[children]\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
         cvc-complex-type.2.2 = cvc-complex-type.2.2: \u8981\u7D20''{0}''\u306F\u8981\u7D20[children]\u3092\u542B\u307E\u305A\u3001\u6709\u52B9\u306A\u5024\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         cvc-complex-type.2.3 = cvc-complex-type.2.3: \u30BF\u30A4\u30D7\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u30FB\u30BF\u30A4\u30D7\u304C\u8981\u7D20\u306E\u307F\u3067\u3042\u308B\u305F\u3081\u3001\u8981\u7D20''{0}''\u306B\u306F\u6587\u5B57[children]\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: \u8981\u7D20''{0}''\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u306F\u4E0D\u5B8C\u5168\u3067\u3059\u3002''{1}''\u306E\u3044\u305A\u308C\u304B\u304C\u5FC5\u8981\u3067\u3059\u3002
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: \u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u306E\u4E00\u81F4\u306F\u53B3\u5BC6\u3067\u3059\u304C\u3001\u8981\u7D20''{0}''\u3067\u5BA3\u8A00\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: \u8981\u7D20''{0}''\u3067\u59CB\u307E\u308B\u7121\u52B9\u306A\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002\u3053\u3053\u3067\u306F\u5B50\u8981\u7D20\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: \u8981\u7D20''{0}''\u3067\u59CB\u307E\u308B\u7121\u52B9\u306A\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002\u3053\u3053\u3067\u306F\u5B50\u8981\u7D20''{1}''\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: \u8981\u7D20''{0}''\u3067\u59CB\u307E\u308B\u7121\u52B9\u306A\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002\u3053\u3053\u3067\u306F\u5B50\u8981\u7D20''{1}''\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}''\u306F\u73FE\u5728\u306E\u30B7\u30FC\u30B1\u30F3\u30B9\u3067\u6700\u5927''{2}''\u56DE\u767A\u751F\u3059\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u5236\u9650\u3092\u8D85\u3048\u307E\u3057\u305F\u3002\u3053\u3053\u3067\u306F''{1}''\u306E\u3044\u305A\u308C\u304B\u304C\u5FC5\u8981\u3067\u3059\u3002
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}''\u306F\u73FE\u5728\u306E\u30B7\u30FC\u30B1\u30F3\u30B9\u3067\u6700\u5927''{1}''\u56DE\u767A\u751F\u3059\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u5236\u9650\u3092\u8D85\u3048\u307E\u3057\u305F\u3002\u3053\u3053\u3067\u306F\u5B50\u8981\u7D20\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: \u8981\u7D20''{0}''\u3067\u59CB\u307E\u308B\u7121\u52B9\u306A\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002''{1}''\u306F\u73FE\u5728\u306E\u30B7\u30FC\u30B1\u30F3\u30B9\u3067\u5C11\u306A\u304F\u3068\u3082''{2}''\u56DE\u767A\u751F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u5236\u7D04\u3092\u6E80\u305F\u3059\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u3082\u30461\u3064\u5FC5\u8981\u3067\u3059\u3002
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: \u8981\u7D20''{0}''\u3067\u59CB\u307E\u308B\u7121\u52B9\u306A\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002''{1}''\u306F\u73FE\u5728\u306E\u30B7\u30FC\u30B1\u30F3\u30B9\u3067\u5C11\u306A\u304F\u3068\u3082''{2}''\u56DE\u767A\u751F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u5236\u7D04\u3092\u6E80\u305F\u3059\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u3082\u3046''{3}''\u500B\u5FC5\u8981\u3067\u3059\u3002
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: \u8981\u7D20''{0}''\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u4E0D\u5B8C\u5168\u3067\u3059\u3002''{1}''\u306F\u5C11\u306A\u304F\u3068\u3082''{2}''\u56DE\u767A\u751F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u5236\u7D04\u3092\u6E80\u305F\u3059\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u3082\u30461\u3064\u5FC5\u8981\u3067\u3059\u3002
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: \u8981\u7D20''{0}''\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u304C\u4E0D\u5B8C\u5168\u3067\u3059\u3002''{1}''\u306F\u5C11\u306A\u304F\u3068\u3082''{2}''\u56DE\u767A\u751F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u5236\u7D04\u3092\u6E80\u305F\u3059\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u3082\u3046''{3}''\u500B\u5FC5\u8981\u3067\u3059\u3002
         cvc-complex-type.3.1 = cvc-complex-type.3.1: \u8981\u7D20''{0}''\u306E\u5C5E\u6027''{1}''\u306E\u5024''{2}''\u306F\u3001\u5BFE\u5FDC\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306B\u5BFE\u3057\u3066\u7121\u52B9\u3067\u3059\u3002\u5C5E\u6027''{1}''\u306B\u306F\u56FA\u5B9A\u5024''{3}"\u304C\u3042\u308A\u307E\u3059\u3002
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: \u8981\u7D20''{0}''\u306B\u3001\u5C5E\u6027''{1}''\u7528\u306E\u5C5E\u6027\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u304C\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: \u8981\u7D20''{0}''\u306B\u5C5E\u6027''{1}''\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         cvc-complex-type.4 = cvc-complex-type.4: \u8981\u7D20''{0}''\u306B\u5C5E\u6027''{1}''\u304C\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         cvc-complex-type.5.1 = cvc-complex-type.5.1: \u8981\u7D20''{0}''\u3067\u306F\u5C5E\u6027''{1}''\u304CWild ID\u3067\u3059\u304C\u3001\u3059\u3067\u306BWild ID ''{2}''\u304C\u5B58\u5728\u3057\u3066\u3044\u307E\u3059\u3002\u8A31\u53EF\u3055\u308C\u308BWild ID\u306F1\u3064\u306E\u307F\u3067\u3059\u3002
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: \u8981\u7D20''{0}''\u3067\u306F\u5C5E\u6027''{1}''\u304CWild ID\u3067\u3059\u304C\u3001ID\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u5C5E\u6027''{2}''\u304C''{''attribute uses''}''\u306B\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059\u3002
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: \u8981\u7D20''{0}''\u3067\u306F\u5C5E\u6027''{1}''\u304CWild ID\u3067\u3059\u304C\u3001ID\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u5C5E\u6027''{2}''\u304C'{'attribute uses'}'\u306B\u3059\u3067\u306B\u5B58\u5728\u3057\u3066\u3044\u307E\u3059\u3002
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}''\u306F''{1}''\u306E\u6709\u52B9\u306A\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}''\u306F\u30EA\u30B9\u30C8\u30FB\u30BF\u30A4\u30D7''{1}''\u306E\u6709\u52B9\u306A\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}''\u306F\u5171\u7528\u4F53\u30BF\u30A4\u30D7''{1}''\u306E\u6709\u52B9\u306A\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
-        cvc-elt.1 = cvc-elt.1: \u8981\u7D20''{0}''\u306E\u5BA3\u8A00\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
-        cvc-elt.2 = cvc-elt.2: ''{0}''\u306B\u5BFE\u3059\u308B\u8981\u7D20\u5BA3\u8A00\u306E\u5024''{''abstract''}''\u306F\u3001false\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
-        cvc-elt.3.1 = cvc-elt.3.1: \u5C5E\u6027''{1}''\u306F\u8981\u7D20''{0}''\u306B\u8868\u793A\u3055\u308C\u307E\u305B\u3093\u3002\u3053\u308C\u306F\u3001''{''nillable''}''\u30D7\u30ED\u30D1\u30C6\u30A3(''{0}'')\u304Cfalse\u3067\u3042\u308B\u305F\u3081\u3067\u3059\u3002
+        cvc-elt.1.a = cvc-elt.1.a: \u8981\u7D20''{0}''\u306E\u5BA3\u8A00\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+        cvc-elt.1.b = cvc-elt.1.b: \u8981\u7D20\u306E\u540D\u524D\u304C\u8981\u7D20\u5BA3\u8A00\u306E\u540D\u524D\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002''{0}''\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002''{1}''\u304C\u5FC5\u8981\u3067\u3059\u3002
+        cvc-elt.2 = cvc-elt.2: ''{0}''\u306B\u5BFE\u3059\u308B\u8981\u7D20\u5BA3\u8A00\u306E\u5024'{'abstract'}'\u306F\u3001false\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+        cvc-elt.3.1 = cvc-elt.3.1: \u5C5E\u6027''{1}''\u306F\u8981\u7D20''{0}''\u306B\u8868\u793A\u3055\u308C\u307E\u305B\u3093\u3002\u3053\u308C\u306F\u3001'{'nillable'}'\u30D7\u30ED\u30D1\u30C6\u30A3(''{0}'')\u304Cfalse\u3067\u3042\u308B\u305F\u3081\u3067\u3059\u3002
         cvc-elt.3.2.1 = cvc-elt.3.2.1: ''{1}''\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B\u305F\u3081\u3001\u8981\u7D20''{0}''\u306B\u306F\u6587\u5B57\u3084\u8981\u7D20\u60C5\u5831[children]\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: \u56FA\u5B9A\u306E''{''value constraint''}''\u3092\u8981\u7D20''{0}''\u306B\u5BFE\u3057\u3066\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002''{1}''\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: \u56FA\u5B9A\u306E'{'value constraint'}'\u3092\u8981\u7D20''{0}''\u306B\u5BFE\u3057\u3066\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002''{1}''\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
         cvc-elt.4.1 = cvc-elt.4.1: \u8981\u7D20''{0}''\u306E\u5C5E\u6027''{1}''\u306E\u5024''{2}''\u306F\u6709\u52B9\u306AQName\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-elt.4.2 = cvc-elt.4.2: ''{1}''\u3092\u8981\u7D20''{0}''\u306E\u30BF\u30A4\u30D7\u5B9A\u7FA9\u306B\u89E3\u6C7A\u3067\u304D\u307E\u305B\u3093\u3002
         cvc-elt.4.3 = cvc-elt.4.3: \u30BF\u30A4\u30D7''{1}''\u306F\u3001\u8981\u7D20''{0}''\u306E\u30BF\u30A4\u30D7\u5B9A\u7FA9''{2}''\u304B\u3089\u6B63\u5E38\u306B\u5C0E\u51FA\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: ''{''value constraint''}'' ''{2}''(\u8981\u7D20''{0}'')\u306F\u3001\u30BF\u30A4\u30D7''{1}''\u306E\u6709\u52B9\u306A\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: '{'value constraint'}' ''{2}''(\u8981\u7D20''{0}'')\u306F\u3001\u30BF\u30A4\u30D7''{1}''\u306E\u6709\u52B9\u306A\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: \u8981\u7D20''{0}''\u306B\u306F\u8981\u7D20\u60C5\u5831\u30A2\u30A4\u30C6\u30E0[children]\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: \u8981\u7D20''{0}''\u306E\u5024''{1}''\u304C\u3001\u56FA\u5B9A\u306E''{''value constraint''}''\u5024''{2}''\u306B\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: \u8981\u7D20''{0}''\u306E\u5024''{1}''\u304C\u3001''{''value constraint''}''\u5024''{2}''\u306B\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: \u8981\u7D20''{0}''\u306E\u5024''{1}''\u304C\u3001\u56FA\u5B9A\u306E'{'value constraint'}'\u5024''{2}''\u306B\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: \u8981\u7D20''{0}''\u306E\u5024''{1}''\u304C\u3001'{'value constraint'}'\u5024''{2}''\u306B\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002
         cvc-enumeration-valid = cvc-enumeration-valid: \u5024''{0}''\u306F\u3001\u5217\u6319''{1}''\u306B\u5BFE\u3057\u3066\u30D5\u30A1\u30BB\u30C3\u30C8\u304C\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u5217\u6319\u304B\u3089\u306E\u5024\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: \u5024''{0}''\u306E\u5C0F\u6570\u306E\u6841\u6570\u306F{1}\u3067\u3059\u304C\u3001\u5C0F\u6570\u306E\u6841\u6570\u306F{2}\u306B\u5236\u9650\u3055\u308C\u3066\u3044\u307E\u3059\u3002
         cvc-id.1 = cvc-id.1: IDREF ''{0}''\u306EID/IDREF\u30D0\u30A4\u30F3\u30C7\u30A3\u30F3\u30B0\u306F\u3042\u308A\u307E\u305B\u3093\u3002
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: \u9577\u3055\u304C''{1}''\u3067\u3042\u308B\u5024''{0}''\u306F\u3001\u30BF\u30A4\u30D7''{3}''\u306EminLength ''{2}''\u306B\u5BFE\u3057\u3066\u30D5\u30A1\u30BB\u30C3\u30C8\u304C\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-pattern-valid = cvc-pattern-valid: \u5024''{0}''\u306F\u3001\u30BF\u30A4\u30D7''{2}''\u306E\u30D1\u30BF\u30FC\u30F3''{1}''\u306B\u5BFE\u3057\u3066\u30D5\u30A1\u30BB\u30C3\u30C8\u304C\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cvc-totalDigits-valid = cvc-totalDigits-valid: \u5024''{0}''\u306E\u7DCF\u6841\u6570\u306F{1}\u3067\u3059\u304C\u3001\u7DCF\u6841\u6570\u306F{2}\u306B\u5236\u9650\u3055\u308C\u3066\u3044\u307E\u3059\u3002
+        cvc-type.1 = cvc-type.1: \u30BF\u30A4\u30D7\u5B9A\u7FA9''{0}''\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002
         cvc-type.2 = cvc-type.2: \u30BF\u30A4\u30D7\u306E\u5B9A\u7FA9\u306F\u8981\u7D20{0}\u306B\u5BFE\u3057\u3066\u62BD\u8C61\u7684\u306B\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         cvc-type.3.1.1 = cvc-type.3.1.1: \u8981\u7D20''{0}''\u306F\u5358\u7D14\u578B\u3067\u3042\u308B\u305F\u3081\u3001\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u540D\u304C''http://www.w3.org/2001/XMLSchema-instance''\u3068\u540C\u4E00\u306E\u5C5E\u6027\u3068[local name]\u304C''type''\u3001''nil''\u3001''schemaLocation''\u307E\u305F\u306F''noNamespaceSchemaLocation''\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5C5E\u6027\u4EE5\u5916\u306F\u3001\u5C5E\u6027\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u305D\u308C\u306B\u3082\u304B\u304B\u308F\u3089\u305A\u5C5E\u6027''{1}''\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002
         cvc-type.3.1.2 = cvc-type.3.1.2: \u8981\u7D20''{0}''\u306F\u5358\u7D14\u578B\u3067\u3042\u308B\u305F\u3081\u3001\u8981\u7D20\u60C5\u5831\u30A2\u30A4\u30C6\u30E0[children]\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: \u5C5E\u6027\u30B0\u30EB\u30FC\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002\u540C\u3058\u540D\u524D\u304A\u3088\u3073\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u3092\u6301\u3064\u91CD\u8907\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u91CD\u8907\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306E\u540D\u524D\u306F''{1}''\u3067\u3059\u3002
         ag-props-correct.3 = ag-props-correct.3: \u5C5E\u6027\u30B0\u30EB\u30FC\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u30022\u3064\u306E\u5C5E\u6027\u5BA3\u8A00''{1}''\u3068''{2}''\u306BID\u304B\u3089\u5C0E\u51FA\u3057\u305F\u30BF\u30A4\u30D7\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
         a-props-correct.2 = a-props-correct.2: \u5C5E\u6027''{0}''\u306E\u5024\u5236\u7D04\u306E\u5024''{1}''\u304C\u7121\u52B9\u3067\u3059\u3002
-        a-props-correct.3 = a-props-correct.3: \u5C5E\u6027''{0}''\u3067\u306F''fixed''\u3082''default''\u3082\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u3053\u308C\u306F\u3001\u5C5E\u6027\u306E''{''type definition''}''\u304CID\u3067\u3042\u308B\u304B\u3001ID\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3042\u308B\u305F\u3081\u3067\u3059\u3002
-        au-props-correct.2 = au-props-correct.2: ''{0}''\u306E\u5C5E\u6027\u5BA3\u8A00\u3067\u306F\u3001\u56FA\u5B9A\u5024''{1}''\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u305D\u306E\u305F\u3081\u3001''{0}''\u3092\u53C2\u7167\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306B''{''value constraint''}''\u3082\u542B\u307E\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u305D\u308C\u3092\u56FA\u5B9A\u3057\u3001\u305D\u306E\u5024\u3092''{1}''\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+        a-props-correct.3 = a-props-correct.3: \u5C5E\u6027''{0}''\u3067\u306F''fixed''\u3082''default''\u3082\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u3053\u308C\u306F\u3001\u5C5E\u6027\u306E'{'type definition'}'\u304CID\u3067\u3042\u308B\u304B\u3001ID\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3042\u308B\u305F\u3081\u3067\u3059\u3002
+        au-props-correct.2 = au-props-correct.2: ''{0}''\u306E\u5C5E\u6027\u5BA3\u8A00\u3067\u306F\u3001\u56FA\u5B9A\u5024''{1}''\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u305D\u306E\u305F\u3081\u3001''{0}''\u3092\u53C2\u7167\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306B'{'value constraint'}'\u3082\u542B\u307E\u308C\u3066\u3044\u308B\u5834\u5408\u306F\u3001\u305D\u308C\u3092\u56FA\u5B9A\u3057\u3001\u305D\u306E\u5024\u3092''{1}''\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         cos-all-limited.1.2 = cos-all-limited.1.2: 'all'\u306E\u30E2\u30C7\u30EB\u30FB\u30B0\u30EB\u30FC\u30D7\u306F'{'min occurs'}' = '{'max occurs'}' = 1\u306E\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306B\u542B\u307E\u308C\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306F\u8907\u5408\u578B\u5B9A\u7FA9\u306E'{'content type'}'\u3092\u69CB\u6210\u3059\u308B1\u7D44\u306E\u4E00\u90E8\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
-        cos-all-limited.2 = cos-all-limited.2: ''all''\u306E\u30E2\u30C7\u30EB\u30FB\u30B0\u30EB\u30FC\u30D7\u306E\u8981\u7D20\u306E''{''max occurs''}''\u306F0\u304B1\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u8981\u7D20''{1}''\u306E\u5024''{0}''\u306F\u7121\u52B9\u3067\u3059\u3002
+        cos-all-limited.2 = cos-all-limited.2: ''all''\u306E\u30E2\u30C7\u30EB\u30FB\u30B0\u30EB\u30FC\u30D7\u306E\u8981\u7D20\u306E'{'max occurs'}'\u306F0\u304B1\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u8981\u7D20''{1}''\u306E\u5024''{0}''\u306F\u7121\u52B9\u3067\u3059\u3002
         cos-applicable-facets = cos-applicable-facets: \u30BF\u30A4\u30D7{1}\u306B\u30D5\u30A1\u30BB\u30C3\u30C8''{0}''\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
         cos-ct-extends.1.1 = cos-ct-extends.1.1: \u30BF\u30A4\u30D7''{0}''\u306F\u30BF\u30A4\u30D7''{1}''\u306E\u62E1\u5F35\u306B\u3088\u3063\u3066\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3059\u3002\u305F\u3060\u3057\u3001''{1}''\u306E''final''\u5C5E\u6027\u306B\u3088\u3063\u3066\u3001\u62E1\u5F35\u306B\u3088\u308B\u5C0E\u51FA\u304C\u7981\u6B62\u3055\u308C\u3066\u3044\u307E\u3059\u3002
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: \u5C0E\u51FA\u3055\u308C\u305F\u30BF\u30A4\u30D7\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u30FB\u30BF\u30A4\u30D7\u3068\u305D\u306E\u30D9\u30FC\u30B9\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u30FB\u30BF\u30A4\u30D7\u306F\u4E21\u65B9\u3068\u3082\u6DF7\u5408\u578B\u306B\u3059\u308B\u304B\u3001\u8981\u7D20\u306E\u307F\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30BF\u30A4\u30D7''{0}''\u306F\u8981\u7D20\u306E\u307F\u3067\u3059\u304C\u3001\u305D\u306E\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306F\u8981\u7D20\u306E\u307F\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: \u5C0E\u51FA\u3055\u308C\u305F\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u304C\u7A7A\u3067\u3042\u308A\u3001\u30D9\u30FC\u30B9\u306F\u7A7A\u306B\u3067\u304D\u307E\u305B\u3093\u3002
         cos-particle-restrict.b = cos-particle-restrict.b: \u30D9\u30FC\u30B9\u306E\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306F\u7A7A\u3067\u3059\u304C\u3001\u5C0E\u51FA\u3055\u308C\u305F\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306F\u7A7A\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         cos-particle-restrict.2 = cos-particle-restrict.2: \u7981\u6B62\u3055\u308C\u305F\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u5236\u9650: ''{0}''\u3002
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: \u30BF\u30A4\u30D7''{1}''\u306F\u30A2\u30C8\u30DF\u30C3\u30AF\u3067\u3042\u308B\u305F\u3081\u3001\u305D\u306E''{''base type definition''}'' ''{0}''\u306F\u30A2\u30C8\u30DF\u30C3\u30AF\u306E\u5358\u7D14\u578B\u5B9A\u7FA9\u304B\u30D7\u30EA\u30DF\u30C6\u30A3\u30D6\u306E\u7D44\u8FBC\u307F\u30C7\u30FC\u30BF\u578B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: \u30BF\u30A4\u30D7''{1}''\u306F\u30A2\u30C8\u30DF\u30C3\u30AF\u3067\u3042\u308B\u305F\u3081\u3001\u305D\u306E'{'base type definition'}' ''{0}''\u306F\u30A2\u30C8\u30DF\u30C3\u30AF\u306E\u5358\u7D14\u578B\u5B9A\u7FA9\u304B\u30D7\u30EA\u30DF\u30C6\u30A3\u30D6\u306E\u7D44\u8FBC\u307F\u30C7\u30FC\u30BF\u578B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         cos-st-restricts.2.1 = cos-st-restricts.2.1: \u30BF\u30A4\u30D7''{1}''\u306F\u30EA\u30B9\u30C8\u30FB\u30BF\u30A4\u30D7\u304B\u3001\u30EA\u30B9\u30C8\u3092\u542B\u3080\u5171\u7528\u4F53\u30BF\u30A4\u30D7\u3067\u3042\u308B\u305F\u3081\u3001\u30EA\u30B9\u30C8\u30FB\u30BF\u30A4\u30D7''{0}''\u306E\u5B9A\u7FA9\u3067\u306F\u7121\u52B9\u306A\u30A2\u30A4\u30C6\u30E0\u30FB\u30BF\u30A4\u30D7\u3067\u3059\u3002
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: ''{''item type definition''}'' ''{0}''\u306E''{''final''}''\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306B\u306F\u3001''list''\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u3064\u307E\u308A\u3001''{0}''\u306F\u30EA\u30B9\u30C8\u30FB\u30BF\u30A4\u30D7''{1}''\u306E\u30A2\u30A4\u30C6\u30E0\u30FB\u30BF\u30A4\u30D7\u3068\u3057\u3066\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: ''{''member type definitions''}'' ''{0}''\u306E''{''final''}''\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306B\u306F\u3001''union''\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u3064\u307E\u308A\u3001''{0}''\u306F\u5171\u7528\u4F53\u30BF\u30A4\u30D7''{1}''\u306E\u30E1\u30F3\u30D0\u30FC\u30FB\u30BF\u30A4\u30D7\u3068\u3057\u3066\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: '{'item type definition'}' ''{0}''\u306E'{'final'}'\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306B\u306F\u3001''list''\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u3064\u307E\u308A\u3001''{0}''\u306F\u30EA\u30B9\u30C8\u30FB\u30BF\u30A4\u30D7''{1}''\u306E\u30A2\u30A4\u30C6\u30E0\u30FB\u30BF\u30A4\u30D7\u3068\u3057\u3066\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: '{'member type definitions'}' ''{0}''\u306E'{'final'}'\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u306B\u306F\u3001''union''\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u3064\u307E\u308A\u3001''{0}''\u306F\u5171\u7528\u4F53\u30BF\u30A4\u30D7''{1}''\u306E\u30E1\u30F3\u30D0\u30FC\u30FB\u30BF\u30A4\u30D7\u3068\u3057\u3066\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
         cos-valid-default.2.1 = cos-valid-default.2.1: \u8981\u7D20''{0}''\u306B\u306F\u5024\u5236\u7D04\u304C\u542B\u307E\u308C\u3066\u304A\u308A\u3001\u6DF7\u5408\u307E\u305F\u306F\u5358\u7D14\u30B3\u30F3\u30C6\u30F3\u30C4\u30FB\u30E2\u30C7\u30EB\u304C\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: \u8981\u7D20''{0}''\u306B\u306F''{''value constraint''}''\u304C\u542B\u307E\u308C\u3066\u304A\u308A\u3001\u305D\u306E\u30BF\u30A4\u30D7\u5B9A\u7FA9\u306B\u306F\u6DF7\u5408''{''content type''}''\u304C\u542B\u307E\u308C\u3066\u3044\u308B\u305F\u3081\u3001''{''content type''}''\u306E\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306F\u7A7A\u306B\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: \u8981\u7D20''{0}''\u306B\u306F'{'value constraint'}'\u304C\u542B\u307E\u308C\u3066\u304A\u308A\u3001\u305D\u306E\u30BF\u30A4\u30D7\u5B9A\u7FA9\u306B\u306F\u6DF7\u5408'{'content type'}'\u304C\u542B\u307E\u308C\u3066\u3044\u308B\u305F\u3081\u3001'{'content type'}'\u306E\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306F\u7A7A\u306B\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         c-props-correct.2 = c-props-correct.2: keyref ''{0}''\u3068key ''{1}''\u306B\u5BFE\u3059\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u30AB\u30FC\u30C7\u30A3\u30CA\u30EA\u30C6\u30A3\u304C\u76F8\u4E92\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         ct-props-correct.3 = ct-props-correct.3: \u8907\u5408\u578B''{0}''\u3067\u5FAA\u74B0\u5B9A\u7FA9\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002\u3064\u307E\u308A\u3001''{0}''\u304C\u305D\u308C\u81EA\u4F53\u306E\u30BF\u30A4\u30D7\u968E\u5C64\u306B\u542B\u307E\u308C\u3066\u3044\u308B\u305F\u3081\u30A8\u30E9\u30FC\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002
         ct-props-correct.4 = ct-props-correct.4: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002\u540C\u3058\u540D\u524D\u304A\u3088\u3073\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u3092\u6301\u3064\u91CD\u8907\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u91CD\u8907\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306E\u540D\u524D\u306F''{1}''\u3067\u3059\u3002
         ct-props-correct.5 = ct-props-correct.5: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u30022\u3064\u306E\u5C5E\u6027\u5BA3\u8A00''{1}''\u3068''{2}''\u306BID\u304B\u3089\u5C0E\u51FA\u3057\u305F\u30BF\u30A4\u30D7\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: \u30BF\u30A4\u30D7''{0}''\u306F\u30BF\u30A4\u30D7''{1}''\u306E\u5236\u9650\u306B\u3088\u3063\u3066\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3059\u3002\u305F\u3060\u3057\u3001''{1}''\u306E''{''final''}''\u30D7\u30ED\u30D1\u30C6\u30A3\u306B\u3088\u3063\u3066\u3001\u5236\u9650\u306B\u3088\u308B\u5C0E\u51FA\u304C\u7981\u6B62\u3055\u308C\u3066\u3044\u307E\u3059\u3002
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: \u30BF\u30A4\u30D7''{0}''\u306F\u30BF\u30A4\u30D7''{1}''\u306E\u5236\u9650\u306B\u3088\u3063\u3066\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3059\u3002\u305F\u3060\u3057\u3001''{1}''\u306E'{'final'}'\u30D7\u30ED\u30D1\u30C6\u30A3\u306B\u3088\u3063\u3066\u3001\u5236\u9650\u306B\u3088\u308B\u5C0E\u51FA\u304C\u7981\u6B62\u3055\u308C\u3066\u3044\u307E\u3059\u3002
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002\u3053\u306E\u30BF\u30A4\u30D7\u306E\u5C5E\u6027\u4F7F\u7528''{1}''\u306B\u306F\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306E\u5024''required''\u3068\u4E00\u8CAB\u6027\u304C\u306A\u3044''{2}''\u306E''use''\u5024\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002\u3053\u306E\u30BF\u30A4\u30D7\u306E\u5C5E\u6027\u4F7F\u7528''{1}''\u306B\u306F\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306E\u30BF\u30A4\u30D7''{3}''\u304B\u3089\u6B63\u5E38\u306B\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u306F\u306A\u3044\u30BF\u30A4\u30D7''{2}''\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002\u3053\u306E\u30BF\u30A4\u30D7\u306E\u5C5E\u6027\u4F7F\u7528''{1}''\u306B\u306F\u3001\u56FA\u5B9A\u3055\u308C\u3066\u3044\u306A\u3044\u6709\u52B9\u306A\u5024\u5236\u7D04\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u304C\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u5C5E\u6027\u4F7F\u7528\u306E\u6709\u52B9\u306A\u5024\u5236\u7D04\u306F\u56FA\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation: {2} ''{1}''\u3067\u4F7F\u7528\u3055\u308C\u308BNOTATION\u30BF\u30A4\u30D7''{0}''\u306B\u306F\u3001\u3053\u306E\u30BF\u30A4\u30D7\u3067\u4F7F\u7528\u3055\u308C\u308B\u8868\u8A18\u6CD5\u8981\u7D20\u3092\u6307\u5B9A\u3059\u308B\u5217\u6319\u30D5\u30A1\u30BB\u30C3\u30C8\u5024\u304C\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         enumeration-valid-restriction = enumeration-valid-restriction: \u5217\u6319\u5024''{0}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5024\u7A7A\u9593{1}\u306B\u5B58\u5728\u3057\u307E\u305B\u3093\u3002
         e-props-correct.2 = e-props-correct.2: \u8981\u7D20''{0}''\u306E\u5024\u5236\u7D04\u306E\u5024''{1}''\u304C\u7121\u52B9\u3067\u3059\u3002
-        e-props-correct.4 = e-props-correct.4: \u8981\u7D20''{0}''\u306E''{''type definition''}''\u304CsubstitutionHead ''{1}''\u306E''{''type definition''}''\u304B\u3089\u6B63\u5E38\u306B\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u306A\u3044\u304B\u3001''{1}''\u306E''{''substitution group exclusions''}''\u30D7\u30ED\u30D1\u30C6\u30A3\u3067\u3053\u306E\u5C0E\u51FA\u304C\u8A31\u53EF\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-        e-props-correct.5 = e-props-correct.5: \u8981\u7D20\u306E''{''type definition''}''\u307E\u305F\u306F''{''type definition''}''\u306E''{''content type''}''\u306FID\u3067\u3042\u308B\u304B\u3001ID\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3042\u308B\u305F\u3081\u3001\u8981\u7D20''{0}''\u306B''{''value constraint''}''\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
+        e-props-correct.4 = e-props-correct.4: \u8981\u7D20''{0}''\u306E'{'type definition'}'\u304CsubstitutionHead ''{1}''\u306E'{'type definition'}'\u304B\u3089\u6B63\u5E38\u306B\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u306A\u3044\u304B\u3001''{1}''\u306E'{'substitution group exclusions'}'\u30D7\u30ED\u30D1\u30C6\u30A3\u3067\u3053\u306E\u5C0E\u51FA\u304C\u8A31\u53EF\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+        e-props-correct.5 = e-props-correct.5: \u8981\u7D20\u306E'{'type definition'}'\u307E\u305F\u306F'{'type definition'}'\u306E'{'content type'}'\u306FID\u3067\u3042\u308B\u304B\u3001ID\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u3042\u308B\u305F\u3081\u3001\u8981\u7D20''{0}''\u306B'{'value constraint'}'\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         e-props-correct.6 = e-props-correct.6: \u8981\u7D20''{0}''\u3067\u5FAA\u74B0\u7F6E\u63DB\u30B0\u30EB\u30FC\u30D7\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: \u30D5\u30A1\u30BB\u30C3\u30C8''fractionDigits''\u306E\u5024''{0}''\u306F\u3001\u7956\u5148\u30BF\u30A4\u30D7\u306E\u3044\u305A\u308C\u304B\u3067''{1}''\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308B''fractionDigits''\u306E\u5024\u4EE5\u4E0B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308B\u305F\u3081\u3001{2}\u306E\u5B9A\u7FA9\u3067\u306F\u7121\u52B9\u3067\u3059\u3002
         fractionDigits-totalDigits = fractionDigits-totalDigits: \u30D5\u30A1\u30BB\u30C3\u30C8''fractionDigits''\u306E\u5024''{0}''\u306F\u3001''totalDigits''\u306E\u5024''{1}''\u4EE5\u4E0B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308B\u305F\u3081\u3001{2}\u306E\u5B9A\u7FA9\u3067\u306F\u7121\u52B9\u3067\u3059\u3002
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: \u30BF\u30A4\u30D7''{2}''\u306E\u30A8\u30E9\u30FC\u3002maxInclusive\u306E\u5024''{0}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7''{1}''\u306EminInclusive\u4EE5\u4E0A\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: \u30BF\u30A4\u30D7''{2}''\u306E\u30A8\u30E9\u30FC\u3002maxInclusive\u306E\u5024''{0}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7''{1}''\u306EminExclusive\u3088\u308A\u5927\u304D\u304F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         maxLength-valid-restriction = maxLength-valid-restriction: {2}\u306E\u5B9A\u7FA9\u3067\u306F\u3001maxLength\u306E\u5024''{0}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7''{1}''\u306E\u5024\u4EE5\u4E0B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
-        mg-props-correct.2 = mg-props-correct.2: \u30B0\u30EB\u30FC\u30D7''{0}''\u3067\u5FAA\u74B0\u5B9A\u7FA9\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E''{''term''}''\u5024\u3092\u518D\u5E30\u7684\u306B\u305F\u3069\u308B\u3068\u3001''{''term''}''\u304C\u30B0\u30EB\u30FC\u30D7\u81EA\u4F53\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306B\u9054\u3057\u307E\u3059\u3002
+        mg-props-correct.2 = mg-props-correct.2: \u30B0\u30EB\u30FC\u30D7''{0}''\u3067\u5FAA\u74B0\u5B9A\u7FA9\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E'{'term'}'\u5024\u3092\u518D\u5E30\u7684\u306B\u305F\u3069\u308B\u3068\u3001'{'term'}'\u304C\u30B0\u30EB\u30FC\u30D7\u81EA\u4F53\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306B\u9054\u3057\u307E\u3059\u3002
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: {2}\u306E\u5B9A\u7FA9\u3067\u306F\u3001minExclusive\u306E\u5024''{0}''\u306FmaxExclusive\u306E\u5024''{1}''\u4EE5\u4E0B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: {2}\u306E\u5B9A\u7FA9\u3067\u306F\u3001minExclusive\u306E\u5024''{0}''\u306FmaxInclusive\u306E\u5024''{1}''\u3088\u308A\u5C0F\u3055\u304F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: \u30BF\u30A4\u30D7''{2}''\u306E\u30A8\u30E9\u30FC\u3002minExclusive\u306E\u5024''{0}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7''{1}''\u306EminExclusive\u4EE5\u4E0A\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: {2}\u306E\u5B9A\u7FA9\u3067\u306F\u3001minLength\u306E\u5024''{0}''\u306FmaxLength\u306E\u5024''{1}''\u3088\u308A\u5C0F\u3055\u304F\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         minLength-valid-restriction = minLength-valid-restriction: {2}\u306E\u5B9A\u7FA9\u3067\u306F\u3001minLength\u306E\u5024''{0}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7''{1}''\u306E\u5024\u4EE5\u4E0A\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         no-xmlns = no-xmlns: \u5C5E\u6027\u5BA3\u8A00\u306E{name}\u3092'xmlns'\u3068\u540C\u4E00\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
-        no-xsi = no-xsi: \u5C5E\u6027\u5BA3\u8A00\u306E''{''target namespace''}''\u3092''{0}''\u3068\u540C\u4E00\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
+        no-xsi = no-xsi: \u5C5E\u6027\u5BA3\u8A00\u306E'{'target namespace'}'\u3092''{0}''\u3068\u540C\u4E00\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         p-props-correct.2.1 = p-props-correct.2.1: ''{0}''\u306E\u5BA3\u8A00\u3067\u306F\u3001''minOccurs''\u306E\u5024\u306F''{1}''\u3067\u3059\u304C\u3001''maxOccurs''\u306E\u5024''{2}''\u3088\u308A\u5927\u304D\u304F\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         rcase-MapAndSum.1 = rcase-MapAndSum.1: \u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u9593\u306B\u5B8C\u5168\u306A\u6A5F\u80FD\u30DE\u30C3\u30D4\u30F3\u30B0\u304C\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-MapAndSum.2 = rcase-MapAndSum.2: \u30B0\u30EB\u30FC\u30D7\u306E\u51FA\u73FE\u7BC4\u56F2({0},{1})\u304C\u30D9\u30FC\u30B9\u30FB\u30B0\u30EB\u30FC\u30D7\u306E\u51FA\u73FE\u7BC4\u56F2({2},{3})\u306E\u6709\u52B9\u306A\u5236\u9650\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: \u8981\u7D20\u306B\u7570\u306A\u308B\u540D\u524D\u3084\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u304C\u542B\u307E\u308C\u307E\u3059: \u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9''{1}''\u306E\u8981\u7D20''{0}''\u304A\u3088\u3073\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9''{3}''\u306E\u8981\u7D20''{2}''\u3067\u3059\u3002
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: ''{''term''}''\u304C\u8981\u7D20\u5BA3\u8A00''{0}''\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u30A8\u30E9\u30FC\u3002\u8981\u7D20\u5BA3\u8A00\u306E''{''nillable''}''\u306Ftrue\u3067\u3059\u304C\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306B\u306F''{''nillable''}''\u304Cfalse\u306E\u8981\u7D20\u5BA3\u8A00\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: ''{''term''}''\u304C\u8981\u7D20\u5BA3\u8A00''{0}''\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u30A8\u30E9\u30FC\u3002\u51FA\u73FE\u7BC4\u56F2({1},{2})\u306F\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u7BC4\u56F2({3},{4}\u306E\u6709\u52B9\u306A\u5236\u9650\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: '{'term'}'\u304C\u8981\u7D20\u5BA3\u8A00''{0}''\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u30A8\u30E9\u30FC\u3002\u8981\u7D20\u5BA3\u8A00\u306E'{'nillable'}'\u306Ftrue\u3067\u3059\u304C\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306B\u306F'{'nillable'}'\u304Cfalse\u306E\u8981\u7D20\u5BA3\u8A00\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: '{'term'}'\u304C\u8981\u7D20\u5BA3\u8A00''{0}''\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u30A8\u30E9\u30FC\u3002\u51FA\u73FE\u7BC4\u56F2({1},{2})\u306F\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u7BC4\u56F2({3},{4}\u306E\u6709\u52B9\u306A\u5236\u9650\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: \u8981\u7D20''{0}''\u306F\u56FA\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u304C\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u8981\u7D20\u306F\u5024''{1}''\u3067\u56FA\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: \u8981\u7D20''{0}''\u306F\u5024''{1}''\u3067\u56FA\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u8981\u7D20\u306F\u5024''{2}''\u3067\u56FA\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: \u8981\u7D20''{0}''\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u304C\u30D9\u30FC\u30B9\u306E\u30A2\u30A4\u30C7\u30F3\u30C6\u30A3\u30C6\u30A3\u5236\u7D04\u306E\u30B5\u30D6\u30BB\u30C3\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: \u8981\u7D20''{0}''\u306Edisallowed substitutions\u306F\u30D9\u30FC\u30B9\u306Edisallowed substitutions\u306E\u30B9\u30FC\u30D1\u30FC\u30BB\u30C3\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: \u8981\u7D20''{0}''\u306E\u30BF\u30A4\u30D7''{1}''\u306F\u3001\u30D9\u30FC\u30B9\u8981\u7D20\u306E\u30BF\u30A4\u30D7''{2}''\u304B\u3089\u5C0E\u51FA\u3055\u308C\u305F\u3082\u306E\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NSCompat.1 = rcase-NSCompat.1: \u8981\u7D20''{0}''\u306B\u3001\u30D9\u30FC\u30B9\u306E\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u3067\u8A31\u53EF\u3055\u308C\u3066\u3044\u306A\u3044\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9''{1}''\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
-        rcase-NSCompat.2 = rcase-NSCompat.2: ''{''term''}''\u304C\u8981\u7D20\u5BA3\u8A00''{0}''\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u30A8\u30E9\u30FC\u3002\u51FA\u73FE\u7BC4\u56F2({1},{2})\u306F\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u7BC4\u56F2({3},{4}\u306E\u6709\u52B9\u306A\u5236\u9650\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+        rcase-NSCompat.2 = rcase-NSCompat.2: '{'term'}'\u304C\u8981\u7D20\u5BA3\u8A00''{0}''\u3067\u3042\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u30A8\u30E9\u30FC\u3002\u51FA\u73FE\u7BC4\u56F2({1},{2})\u306F\u3001\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u306E\u5BFE\u5FDC\u3059\u308B\u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u306E\u7BC4\u56F2({3},{4}\u306E\u6709\u52B9\u306A\u5236\u9650\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: \u30D1\u30FC\u30C6\u30A3\u30AF\u30EB\u9593\u306B\u5B8C\u5168\u306A\u6A5F\u80FD\u30DE\u30C3\u30D4\u30F3\u30B0\u304C\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: \u30B0\u30EB\u30FC\u30D7\u306E\u51FA\u73FE\u7BC4\u56F2({0},{1})\u304C\u30D9\u30FC\u30B9\u306E\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u306E\u7BC4\u56F2({2},{3})\u306E\u6709\u52B9\u306A\u5236\u9650\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
         rcase-NSSubset.1 = rcase-NSSubset.1: \u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u304C\u3001\u30D9\u30FC\u30B9\u306E\u5BFE\u5FDC\u3059\u308B\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u306E\u30B5\u30D6\u30BB\u30C3\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: \u30B9\u30AD\u30FC\u30DE\u306B\u306F\u540C\u3058\u540D\u524D\u3092\u6301\u30642\u3064\u306E\u30B0\u30ED\u30FC\u30D0\u30EB\u30FB\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u3053\u306E\u30B9\u30AD\u30FC\u30DE\u306B\u306F''{0}''\u304C2\u3064\u3042\u308A\u307E\u3059\u3002
         st-props-correct.2 = st-props-correct.2: \u5358\u7D14\u578B''{0}''\u3067\u5FAA\u74B0\u5B9A\u7FA9\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002\u3064\u307E\u308A\u3001''{0}''\u304C\u305D\u308C\u81EA\u4F53\u306E\u30BF\u30A4\u30D7\u968E\u5C64\u306B\u542B\u307E\u308C\u3066\u3044\u308B\u305F\u3081\u30A8\u30E9\u30FC\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002
-        st-props-correct.3 = st-props-correct.3: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002''{''base type definition''}''\u306E''{''final''}''\u306E\u5024''{1}''\u306F\u3001\u5236\u9650\u306B\u3088\u3063\u3066\u5C0E\u51FA\u3092\u7981\u6B62\u3057\u3066\u3044\u307E\u3059\u3002
+        st-props-correct.3 = st-props-correct.3: \u30BF\u30A4\u30D7''{0}''\u306E\u30A8\u30E9\u30FC\u3002'{'base type definition'}'\u306E'{'final'}'\u306E\u5024''{1}''\u306F\u3001\u5236\u9650\u306B\u3088\u3063\u3066\u5C0E\u51FA\u3092\u7981\u6B62\u3057\u3066\u3044\u307E\u3059\u3002
         totalDigits-valid-restriction = totalDigits-valid-restriction: \u30D5\u30A1\u30BB\u30C3\u30C8''totalDigits''\u306E\u5024''{0}''\u306F\u3001\u7956\u5148\u30BF\u30A4\u30D7\u306E\u3044\u305A\u308C\u304B\u3067''{1}''\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308B''totalDigits''\u306E\u5024\u4EE5\u4E0B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308B\u305F\u3081\u3001{2}\u306E\u5B9A\u7FA9\u3067\u306F\u7121\u52B9\u3067\u3059\u3002
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: \u7956\u5148\u30BF\u30A4\u30D7\u306E\u3044\u305A\u308C\u304B\u3067''whitespace''\u306E\u5024\u304C''collapse''\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308B\u305F\u3081\u3001{0}\u306E\u5B9A\u7FA9\u3067\u306F\u30D5\u30A1\u30BB\u30C3\u30C8''whitespace''\u306E\u5024''{1}''\u306F\u7121\u52B9\u3067\u3059\u3002
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: \u7956\u5148\u30BF\u30A4\u30D7\u306E\u3044\u305A\u308C\u304B\u3067''whitespace''\u306E\u5024\u304C''replace''\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u308B\u305F\u3081\u3001{0}\u306E\u5B9A\u7FA9\u3067\u306F\u30D5\u30A1\u30BB\u30C3\u30C8''whitespace''\u306E\u5024''preserve''\u306F\u7121\u52B9\u3067\u3059\u3002
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: selector\u306E\u5024''{0}''\u306F\u7121\u52B9\u3067\u3059\u3002selector\u306EXPath\u306B\u306F\u5C5E\u6027\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         EmptyTargetNamespace = EmptyTargetNamespace: \u30B9\u30AD\u30FC\u30DE\u30FB\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8''{0}''\u3067\u306F\u3001''targetNamespace''\u5C5E\u6027\u306E\u5024\u3092\u7A7A\u306E\u6587\u5B57\u5217\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
         FacetValueFromBase = FacetValueFromBase: \u30BF\u30A4\u30D7''{0}''\u306E\u5BA3\u8A00\u3067\u306F\u3001\u30D5\u30A1\u30BB\u30C3\u30C8''{2}''\u306E\u5024''{1}''\u306F\u30D9\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7''{3}''\u306E\u5024\u7A7A\u9593\u304B\u3089\u306E\u3082\u306E\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
-        FixedFacetValue = FixedFacetValue: {3}\u306E\u5B9A\u7FA9\u3067\u306F\u30D5\u30A1\u30BB\u30C3\u30C8''{0}''\u306E\u5024''{1}''\u306F\u7121\u52B9\u3067\u3059\u3002\u3053\u308C\u306F\u3001''{0}''\u306E\u5024\u304C\u7956\u5148\u30BF\u30A4\u30D7\u306E\u3044\u305A\u308C\u304B\u3067''{2}''\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u304A\u308A\u3001''{''fixed''}'' = true\u3067\u3042\u308B\u305F\u3081\u3067\u3059\u3002
+        FixedFacetValue = FixedFacetValue: {3}\u306E\u5B9A\u7FA9\u3067\u306F\u30D5\u30A1\u30BB\u30C3\u30C8''{0}''\u306E\u5024''{1}''\u306F\u7121\u52B9\u3067\u3059\u3002\u3053\u308C\u306F\u3001''{0}''\u306E\u5024\u304C\u7956\u5148\u30BF\u30A4\u30D7\u306E\u3044\u305A\u308C\u304B\u3067''{2}''\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u304A\u308A\u3001'{'fixed'}' = true\u3067\u3042\u308B\u305F\u3081\u3067\u3059\u3002
         InvalidRegex = InvalidRegex: pattern\u306E\u5024''{0}''\u306F\u7121\u52B9\u306A\u6B63\u898F\u8868\u73FE\u3067\u3059\u3002\u5217''{2}''\u3067''{1}''\u30A8\u30E9\u30FC\u304C\u5831\u544A\u3055\u308C\u307E\u3057\u305F\u3002
-        maxOccurLimit = \u73FE\u5728\u306E\u30D1\u30FC\u30B5\u30FC\u306E\u69CB\u6210\u3067\u306F\u3001maxOccurs\u5C5E\u6027\u306B\u5024{0}\u3088\u308A\u5927\u304D\u3044\u5024\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u305B\u3093\u3002
+        MaxOccurLimit = \u73FE\u5728\u306E\u30D1\u30FC\u30B5\u30FC\u306E\u69CB\u6210\u3067\u306F\u3001maxOccurs\u5C5E\u6027\u306B\u5024{0}\u3088\u308A\u5927\u304D\u3044\u5024\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u305B\u3093\u3002
         PublicSystemOnNotation = PublicSystemOnNotation: \u8981\u7D20''notation''\u306B\u306F''public''\u304A\u3088\u3073''system''\u306E\u5C11\u306A\u304F\u3068\u30821\u3064\u304C\u5FC5\u8981\u3067\u3059\u3002
         SchemaLocation = SchemaLocation: schemaLocation\u306E\u5024''{0}''\u306B\u306F\u5076\u6570\u500B\u306EURI\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
         TargetNamespace.1 = TargetNamespace.1: \u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9''{0}''\u304C\u5FC5\u8981\u3067\u3059\u304C\u3001\u30B9\u30AD\u30FC\u30DE\u30FB\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u306F''{1}''\u3067\u3059\u3002
         TargetNamespace.2 = TargetNamespace.2: \u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u306F\u5FC5\u8981\u3042\u308A\u307E\u305B\u3093\u304C\u3001\u30B9\u30AD\u30FC\u30DE\u30FB\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B''{1}''\u306E\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002
         UndeclaredEntity = UndeclaredEntity: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3''{0}''\u304C\u5BA3\u8A00\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
         UndeclaredPrefix = UndeclaredPrefix: ''{0}''\u3092QName\u3068\u3057\u3066\u89E3\u6C7A\u3067\u304D\u307E\u305B\u3093\u3002\u63A5\u982D\u8F9E''{1}''\u304C\u5BA3\u8A00\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = ''http://java.sun.com/xml/jaxp/properties/schemaSource''\u30D7\u30ED\u30D1\u30C6\u30A3\u306F\u30BF\u30A4\u30D7''{0}''\u306E\u5024\u3092\u6301\u3064\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u53EF\u80FD\u306A\u5024\u306E\u30BF\u30A4\u30D7\u306FString\u3001File\u3001InputStream\u3001InputSource\u307E\u305F\u306F\u3053\u308C\u3089\u306E\u30BF\u30A4\u30D7\u306E\u914D\u5217\u3067\u3059\u3002
+        jaxp12-schema-source-type.2 = ''http://java.sun.com/xml/jaxp/properties/schemaSource''\u30D7\u30ED\u30D1\u30C6\u30A3\u306F\u30BF\u30A4\u30D7''{0}''\u306E\u914D\u5217\u5024\u3092\u6301\u3064\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u53EF\u80FD\u306A\u914D\u5217\u306E\u30BF\u30A4\u30D7\u306FObject\u3001String\u3001File\u3001InputStream\u304A\u3088\u3073InputSource\u3067\u3059\u3002
+        jaxp12-schema-source-ns = 'http://java.sun.com/xml/jaxp/properties/schemaSource' property\u306E\u5024\u3068\u3057\u3066Objects\u306E\u914D\u5217\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u3001\u540C\u3058\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\u3092\u5171\u6709\u3059\u308B\u30012\u3064\u306E\u30B9\u30AD\u30FC\u30DE\u3092\u6301\u3064\u3053\u3068\u306F\u7121\u52B9\u3067\u3059\u3002
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties
index 77a2806..f9dcbdc 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_ko.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_ko.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/16 02:31:34 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_ko.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/12 02:39:51 gmolloy Exp $
 
         BadMessageKey = \uBA54\uC2DC\uC9C0 \uD0A4\uC5D0 \uD574\uB2F9\uD558\uB294 \uC624\uB958 \uBA54\uC2DC\uC9C0\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         FormatFailed = \uB2E4\uC74C \uBA54\uC2DC\uC9C0\uC758 \uD615\uC2DD\uC744 \uC9C0\uC815\uD558\uB294 \uC911 \uB0B4\uBD80 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = ID \uC81C\uC57D \uC870\uAC74 \uC624\uB958(cvc-identity-constraint.4.2.1): "{0}" \uC694\uC18C\uC5D0 \uAC12\uC774 \uC5C6\uB294 \uD0A4\uAC00 \uC788\uC2B5\uB2C8\uB2E4.
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: "{0}" \uC694\uC18C\uC5D0 "{1}" \uD0A4\uC5D0 \uB300\uD55C \uAC12\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.
         DuplicateField = "{0}" \uD544\uB4DC \uBC94\uC704\uC5D0 \uC911\uBCF5 \uC0AC\uD56D\uC774 \uC788\uC2B5\uB2C8\uB2E4.
-        DuplicateKey = \uC911\uBCF5 \uD0A4 \uAC12 [{0}]\uC774(\uAC00) "{1}" \uC694\uC18C\uC758 ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uC120\uC5B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
-        DuplicateUnique = \uC911\uBCF5 \uACE0\uC720 \uAC12 [{0}]\uC774(\uAC00) "{1}" \uC694\uC18C\uC758 ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uC120\uC5B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
-        FieldMultipleMatch = ID \uC81C\uC57D \uC870\uAC74 \uC624\uB958: "{0}" \uD544\uB4DC\uAC00 \uD574\uB2F9 \uC120\uD0DD\uAE30 \uBC94\uC704 \uB0B4\uC5D0 \uD3EC\uD568\uB41C \uC5EC\uB7EC \uAC12\uACFC \uC77C\uCE58\uD569\uB2C8\uB2E4. \uD544\uB4DC\uB294 \uACE0\uC720 \uAC12\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4.
+        DuplicateKey = cvc-identity-constraint.4.2.2: "{1}" \uC694\uC18C\uC758 ID \uC81C\uC57D \uC870\uAC74 "{2}"\uC5D0 \uB300\uD574 \uC911\uBCF5 \uD0A4 \uAC12 [{0}]\uC774(\uAC00) \uC120\uC5B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
+        DuplicateUnique = cvc-identity-constraint.4.1: "{1}" \uC694\uC18C\uC758 ID \uC81C\uC57D \uC870\uAC74 "{2}"\uC5D0 \uC911\uBCF5 \uACE0\uC720 \uAC12 [{0}]\uC774(\uAC00) \uC120\uC5B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
+        FieldMultipleMatch = cvc-identity-constraint.3: ID \uC81C\uC57D \uC870\uAC74 "{1}"\uC758 "{0}" \uD544\uB4DC\uAC00 \uD574\uB2F9 \uC120\uD0DD\uAE30 \uBC94\uC704 \uB0B4\uC758 \uAC12 \uB458 \uC774\uC0C1\uACFC \uC77C\uCE58\uD569\uB2C8\uB2E4. \uD544\uB4DC\uB294 \uACE0\uC720 \uAC12\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4.
         FixedDiffersFromActual = \uC774 \uC694\uC18C\uC758 \uCF58\uD150\uCE20\uAC00 \uC2A4\uD0A4\uB9C8\uC758 \uC694\uC18C \uC120\uC5B8\uC5D0 \uC788\uB294 "fixed" \uC18D\uC131\uAC12\uACFC \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
-        KeyMatchesNillable = ID \uC81C\uC57D \uC870\uAC74 \uC624\uB958(cvc-identity-constraint.4.2.3): "{0}" \uC694\uC18C\uC5D0 nillable\uC774 true\uB85C \uC124\uC815\uB41C \uC694\uC18C\uC640 \uC77C\uCE58\uD558\uB294 \uD0A4\uAC00 \uC788\uC2B5\uB2C8\uB2E4.
-        KeyNotEnoughValues = "{0}" \uC694\uC18C\uC758 <key name="{1}"> ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uC9C0\uC815\uB41C \uAC12\uC774 \uBD80\uC871\uD569\uB2C8\uB2E4.
-        KeyNotFound = ''{2}'' \uC694\uC18C\uC758 ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uAC12\uC774 ''{1}''\uC778 ''{0}'' \uD0A4\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-        KeyRefNotEnoughValues = "{0}" \uC694\uC18C\uC758 <keyref name="{1}"> ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uC9C0\uC815\uB41C \uAC12\uC774 \uBD80\uC871\uD569\uB2C8\uB2E4.
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: "{0}" \uC694\uC18C\uC5D0 nillable\uC774 true\uB85C \uC124\uC815\uB41C \uC694\uC18C\uC640 \uC77C\uCE58\uD558\uB294 "{1}" \uD0A4\uAC00 \uC788\uC2B5\uB2C8\uB2E4.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: "{0}" \uC694\uC18C\uC758 <key name="{1}"> ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uC9C0\uC815\uB41C \uAC12\uC774 \uBD80\uC871\uD569\uB2C8\uB2E4.
+        KeyNotFound = cvc-identity-constraint.4.3: ''{2}'' \uC694\uC18C\uC758 ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uAC12\uC774 ''{1}''\uC778 ''{0}'' \uD0A4\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         KeyRefOutOfScope = ID \uC81C\uC57D \uC870\uAC74 \uC624\uB958: ID \uC81C\uC57D \uC870\uAC74 "{0}"\uC758 keyref\uAC00 \uBC94\uC704\uC5D0\uC11C \uBC97\uC5B4\uB09C \uD0A4 \uB610\uB294 \uACE0\uC720 \uD56D\uBAA9\uC744 \uCC38\uC870\uD569\uB2C8\uB2E4.
         KeyRefReferNotFound = \uD0A4 \uCC38\uC870 \uC120\uC5B8 "{0}"\uC740(\uB294) \uC774\uB984\uC774 "{1}"\uC778 \uC54C \uC218 \uC5C6\uB294 \uD0A4\uB97C \uCC38\uC870\uD569\uB2C8\uB2E4.
-        UniqueNotEnoughValues = "{0}" \uC694\uC18C\uC758 <unique> ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD574 \uC9C0\uC815\uB41C \uAC12\uC774 \uBD80\uC871\uD569\uB2C8\uB2E4.
-        UnknownField = \uB0B4\uBD80 ID \uC81C\uC57D \uC870\uAC74 \uC624\uB958: "{0}"\uC740(\uB294) \uC54C \uC218 \uC5C6\uB294 \uD544\uB4DC\uC785\uB2C8\uB2E4.
+        UnknownField = \uB0B4\uBD80 ID \uC81C\uC57D \uC870\uAC74 \uC624\uB958: {1} \uC694\uC18C\uC5D0 \uB300\uD574 \uC9C0\uC815\uB41C ID \uC81C\uC57D \uC870\uAC74 "{2}"\uC5D0 \uB300\uD55C \uC54C \uC218 \uC5C6\uB294 \uD544\uB4DC "{0}"\uC785\uB2C8\uB2E4.
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uC18D\uC131\uC5D0 \uB300\uD55C ''{2}'' \uAC12\uC774 ''{3}'' \uC720\uD615\uC5D0 \uB300\uD574 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
-        cvc-attribute.4 = cvc-attribute.4: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uC18D\uC131\uC5D0 \uB300\uD55C ''{2}'' \uAC12\uC774 \uACE0\uC815\uB41C ''{''value constraint''}''\uC5D0 \uB300\uD574 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. \uC18D\uC131\uC758 \uAC12\uC740 ''{3}''\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
+        cvc-attribute.4 = cvc-attribute.4: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uC18D\uC131\uC5D0 \uB300\uD55C ''{2}'' \uAC12\uC774 \uACE0\uC815\uB41C '{'value constraint'}'\uC5D0 \uB300\uD574 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. \uC18D\uC131\uC758 \uAC12\uC740 ''{3}''\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         cvc-complex-type.2.1 = cvc-complex-type.2.1: \uC720\uD615\uC758 \uCF58\uD150\uCE20 \uC720\uD615\uC774 \uBE44\uC5B4 \uC788\uC73C\uBBC0\uB85C ''{0}'' \uC694\uC18C\uC5D0\uB294 \uBB38\uC790 \uB610\uB294 \uC694\uC18C \uC815\uBCF4 \uD56D\uBAA9 [children]\uC774 \uC5C6\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         cvc-complex-type.2.2 = cvc-complex-type.2.2: ''{0}'' \uC694\uC18C\uC5D0\uB294 \uC694\uC18C [children]\uC774 \uC5C6\uC5B4\uC57C \uD558\uBA70 \uAC12\uC774 \uC801\uD569\uD574\uC57C \uD569\uB2C8\uB2E4.
         cvc-complex-type.2.3 = cvc-complex-type.2.3: \uC720\uD615\uC758 \uCF58\uD150\uCE20 \uC720\uD615\uC774 \uC694\uC18C \uC804\uC6A9\uC774\uBBC0\uB85C ''{0}'' \uC694\uC18C\uC5D0\uB294 \uBB38\uC790 [children]\uC774 \uD3EC\uD568\uB420 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: ''{0}'' \uC694\uC18C\uC758 \uCF58\uD150\uCE20\uAC00 \uBD88\uC644\uC804\uD569\uB2C8\uB2E4. ''{1}'' \uC911 \uD558\uB098\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4.
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: \uC77C\uCE58\uD558\uB294 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790\uAC00 \uC5C4\uACA9\uD558\uAC8C \uC801\uC6A9\uB418\uC9C0\uB9CC ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD55C \uC120\uC5B8\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: ''{0}'' \uC694\uC18C\uB85C \uC2DC\uC791\uD558\uB294 \uBD80\uC801\uD569\uD55C \uCF58\uD150\uCE20\uAC00 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC5EC\uAE30\uC5D0\uB294 \uD558\uC704 \uC694\uC18C\uAC00 \uD544\uC694\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: ''{0}'' \uC694\uC18C\uB85C \uC2DC\uC791\uD558\uB294 \uBD80\uC801\uD569\uD55C \uCF58\uD150\uCE20\uAC00 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC5EC\uAE30\uC5D0\uB294 \uD558\uC704 \uC694\uC18C ''{1}''\uC774(\uAC00) \uD544\uC694\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: ''{0}'' \uC694\uC18C\uB85C \uC2DC\uC791\uD558\uB294 \uBD80\uC801\uD569\uD55C \uCF58\uD150\uCE20\uAC00 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC5EC\uAE30\uC5D0\uB294 \uD558\uC704 \uC694\uC18C ''{1}''\uC774(\uAC00) \uD544\uC694\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}''\uC740(\uB294) \uD604\uC7AC \uC2DC\uD000\uC2A4\uC5D0\uC11C \uCD5C\uB300 ''{2}''\uBC88 \uBC1C\uC0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC774 \uC81C\uD55C\uC774 \uCD08\uACFC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC774 \uC9C0\uC810\uC5D0\uC11C\uB294 ''{1}'' \uC911 \uD558\uB098\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}''\uC740(\uB294) \uD604\uC7AC \uC2DC\uD000\uC2A4\uC5D0\uC11C \uCD5C\uB300 ''{1}''\uBC88 \uBC1C\uC0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC774 \uC81C\uD55C\uC774 \uCD08\uACFC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC774 \uC9C0\uC810\uC5D0\uC11C\uB294 \uD558\uC704 \uC694\uC18C\uAC00 \uD544\uC694\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: ''{0}'' \uC694\uC18C\uB85C \uC2DC\uC791\uD558\uB294 \uBD80\uC801\uD569\uD55C \uCF58\uD150\uCE20\uAC00 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uD604\uC7AC \uC2DC\uD000\uC2A4\uC5D0\uC11C ''{1}''\uC740(\uB294) ''{2}''\uBC88 \uC774\uC0C1 \uBC1C\uC0DD\uD574\uC57C \uD569\uB2C8\uB2E4. \uC774 \uC81C\uC57D \uC870\uAC74\uC744 \uB9CC\uC871\uD558\uB824\uBA74 \uC778\uC2A4\uD134\uC2A4\uAC00 \uD558\uB098 \uB354 \uD544\uC694\uD569\uB2C8\uB2E4.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: ''{0}'' \uC694\uC18C\uB85C \uC2DC\uC791\uD558\uB294 \uBD80\uC801\uD569\uD55C \uCF58\uD150\uCE20\uAC00 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uD604\uC7AC \uC2DC\uD000\uC2A4\uC5D0\uC11C ''{1}''\uC740(\uB294) ''{2}''\uBC88 \uC774\uC0C1 \uBC1C\uC0DD\uD574\uC57C \uD569\uB2C8\uB2E4. \uC774 \uC81C\uC57D \uC870\uAC74\uC744 \uB9CC\uC871\uD558\uB824\uBA74 \uC778\uC2A4\uD134\uC2A4\uAC00 ''{3}''\uAC1C \uB354 \uD544\uC694\uD569\uB2C8\uB2E4.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: ''{0}'' \uC694\uC18C\uC758 \uCF58\uD150\uCE20\uAC00 \uC644\uBCBD\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. ''{1}''\uC740(\uB294) ''{2}''\uBC88 \uC774\uC0C1 \uBC1C\uC0DD\uD574\uC57C \uD569\uB2C8\uB2E4. \uC774 \uC81C\uC57D \uC870\uAC74\uC744 \uB9CC\uC871\uD558\uB824\uBA74 \uC778\uC2A4\uD134\uC2A4\uAC00 \uD558\uB098 \uB354 \uD544\uC694\uD569\uB2C8\uB2E4.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: ''{0}'' \uC694\uC18C\uC758 \uCF58\uD150\uCE20\uAC00 \uC644\uBCBD\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. ''{1}''\uC740(\uB294) ''{2}''\uBC88 \uC774\uC0C1 \uBC1C\uC0DD\uD574\uC57C \uD569\uB2C8\uB2E4. \uC774 \uC81C\uC57D \uC870\uAC74\uC744 \uB9CC\uC871\uD558\uB824\uBA74 \uC778\uC2A4\uD134\uC2A4\uAC00 ''{3}''\uAC1C \uB354 \uD544\uC694\uD569\uB2C8\uB2E4.
         cvc-complex-type.3.1 = cvc-complex-type.3.1: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uC18D\uC131\uC5D0 \uB300\uD55C ''{2}'' \uAC12\uC774 \uD574\uB2F9 \uC18D\uC131 \uC0AC\uC6A9\uC5D0 \uB300\uD574 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. ''{1}'' \uC18D\uC131\uC758 \uACE0\uC815\uB41C \uAC12\uC774 ''{3}''\uC785\uB2C8\uB2E4.
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: ''{0}'' \uC694\uC18C\uC5D0 ''{1}'' \uC18D\uC131\uC5D0 \uB300\uD55C \uC18D\uC131 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: ''{1}'' \uC18D\uC131\uC740 ''{0}'' \uC694\uC18C\uC5D0 \uB098\uD0C0\uB0A0 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cvc-complex-type.4 = cvc-complex-type.4: ''{1}'' \uC18D\uC131\uC740 ''{0}'' \uC694\uC18C\uC5D0 \uB098\uD0C0\uB098\uC57C \uD569\uB2C8\uB2E4.
         cvc-complex-type.5.1 = cvc-complex-type.5.1: ''{0}'' \uC694\uC18C\uC5D0\uC11C ''{1}'' \uC18D\uC131\uC774 \uB300\uCCB4 ID\uC774\uC9C0\uB9CC \uB300\uCCB4 ID ''{2}''\uC774(\uAC00) \uC774\uBBF8 \uC788\uC2B5\uB2C8\uB2E4. \uD558\uB098\uB9CC \uC0AC\uC6A9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: ''{0}'' \uC694\uC18C\uC5D0\uC11C ''{1}'' \uC18D\uC131\uC774 \uB300\uCCB4 ID\uC774\uC9C0\uB9CC ''{''attribute uses''}'' \uC911 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C ''{2}'' \uC18D\uC131\uC774 \uC774\uBBF8 \uC788\uC2B5\uB2C8\uB2E4.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: ''{0}'' \uC694\uC18C\uC5D0\uC11C ''{1}'' \uC18D\uC131\uC774 \uB300\uCCB4 ID\uC774\uC9C0\uB9CC '{'attribute uses'}' \uC911 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C ''{2}'' \uC18D\uC131\uC774 \uC774\uBBF8 \uC788\uC2B5\uB2C8\uB2E4.
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}''\uC740(\uB294) ''{1}''\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uAC12\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}''\uC740(\uB294) \uBAA9\uB85D \uC720\uD615 ''{1}''\uC758 \uC801\uD569\uD55C \uAC12\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}''\uC740(\uB294) \uD569\uC9D1\uD569 \uC720\uD615 ''{1}''\uC758 \uC801\uD569\uD55C \uAC12\uC774 \uC544\uB2D9\uB2C8\uB2E4.
-        cvc-elt.1 = cvc-elt.1: ''{0}'' \uC694\uC18C\uC758 \uC120\uC5B8\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-        cvc-elt.2 = cvc-elt.2: ''{0}''\uC5D0 \uB300\uD55C \uC694\uC18C \uC120\uC5B8\uC5D0\uC11C ''{''abstract''}''\uC758 \uAC12\uC740 false\uC5EC\uC57C \uD569\uB2C8\uB2E4.
-        cvc-elt.3.1 = cvc-elt.3.1: ''{0}''\uC758 ''{''nillable''}'' \uC18D\uC131\uC774 false\uC774\uBBC0\uB85C ''{1}'' \uC18D\uC131\uC740 ''{0}'' \uC694\uC18C\uC5D0 \uB098\uD0C0\uB098\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
+        cvc-elt.1.a = cvc-elt.1.a: ''{0}'' \uC694\uC18C\uC758 \uC120\uC5B8\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+        cvc-elt.1.b = cvc-elt.1.b: \uC694\uC18C\uC758 \uC774\uB984\uC774 \uC694\uC18C \uC120\uC5B8 \uC774\uB984\uACFC \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. ''{0}''\uC774(\uAC00) \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. ''{1}''\uC774(\uAC00) \uD544\uC694\uD569\uB2C8\uB2E4.
+        cvc-elt.2 = cvc-elt.2: ''{0}''\uC5D0 \uB300\uD55C \uC694\uC18C \uC120\uC5B8\uC5D0\uC11C '{'abstract'}'\uC758 \uAC12\uC740 false\uC5EC\uC57C \uD569\uB2C8\uB2E4.
+        cvc-elt.3.1 = cvc-elt.3.1: ''{0}''\uC758 '{'nillable'}' \uC18D\uC131\uC774 false\uC774\uBBC0\uB85C ''{1}'' \uC18D\uC131\uC740 ''{0}'' \uC694\uC18C\uC5D0 \uB098\uD0C0\uB098\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
         cvc-elt.3.2.1 = cvc-elt.3.2.1: ''{1}''\uC774(\uAC00) \uC9C0\uC815\uB418\uC5C8\uC73C\uBBC0\uB85C ''{0}'' \uC694\uC18C\uC5D0\uB294 \uBB38\uC790 \uB610\uB294 \uC694\uC18C \uC815\uBCF4 [children]\uC774 \uD3EC\uD568\uB420 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: ''{1}''\uC774(\uAC00) \uC9C0\uC815\uB418\uC5C8\uC73C\uBBC0\uB85C ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD574 \uACE0\uC815\uB41C ''{''value constraint''}''\uAC00 \uC5C6\uC5B4\uC57C \uD569\uB2C8\uB2E4.
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: ''{1}''\uC774(\uAC00) \uC9C0\uC815\uB418\uC5C8\uC73C\uBBC0\uB85C ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD574 \uACE0\uC815\uB41C '{'value constraint'}'\uAC00 \uC5C6\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         cvc-elt.4.1 = cvc-elt.4.1: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uC18D\uC131\uC5D0 \uB300\uD55C ''{2}'' \uAC12\uC740 \uC801\uD569\uD55C QName\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         cvc-elt.4.2 = cvc-elt.4.2: ''{1}''\uC744(\uB97C) ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD55C \uC720\uD615 \uC815\uC758\uB85C \uBD84\uC11D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cvc-elt.4.3 = cvc-elt.4.3: ''{1}'' \uC720\uD615\uC740 ''{0}'' \uC694\uC18C\uC758 \uC720\uD615 \uC815\uC758 ''{2}''\uC5D0\uC11C \uC801\uD569\uD558\uAC8C \uD30C\uC0DD\uB41C \uAC83\uC774 \uC544\uB2D9\uB2C8\uB2E4.
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: ''{0}'' \uC694\uC18C\uC758 ''{''value constraint''}'' ''{2}''\uC740(\uB294) ''{1}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uAE30\uBCF8\uAC12\uC774 \uC544\uB2D9\uB2C8\uB2E4.
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: ''{0}'' \uC694\uC18C\uC758 '{'value constraint'}' ''{2}''\uC740(\uB294) ''{1}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uAE30\uBCF8\uAC12\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: ''{0}'' \uC694\uC18C\uC5D0\uB294 \uC694\uC18C \uC815\uBCF4 \uD56D\uBAA9 [children]\uC774 \uC5C6\uC5B4\uC57C \uD569\uB2C8\uB2E4.
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uAC12\uC774 \uACE0\uC815\uB41C ''{''value constraint''}'' \uAC12 ''{2}''\uACFC(\uC640) \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uAC12\uC774 ''{''value constraint''}'' \uAC12 ''{2}''\uACFC(\uC640) \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uAC12\uC774 \uACE0\uC815\uB41C '{'value constraint'}' \uAC12 ''{2}''\uACFC(\uC640) \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: ''{0}'' \uC694\uC18C\uC758 ''{1}'' \uAC12\uC774 '{'value constraint'}' \uAC12 ''{2}''\uACFC(\uC640) \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
         cvc-enumeration-valid = cvc-enumeration-valid: ''{0}'' \uAC12\uC740 ''{1}'' \uBAA9\uB85D\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uBA74\uC774 \uC544\uB2D9\uB2C8\uB2E4. \uBAA9\uB85D\uC758 \uAC12\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: ''{0}'' \uAC12\uC758 \uC18C\uC218\uC810 \uC774\uD558 \uC790\uB9BF\uC218\uAC00 {1}\uC774\uC9C0\uB9CC \uC18C\uC218\uC810 \uC774\uD558 \uC790\uB9BF\uC218\uB294 {2}(\uC73C)\uB85C \uC81C\uD55C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
         cvc-id.1 = cvc-id.1: IDREF ''{0}''\uC5D0 \uB300\uD55C ID/IDREF \uBC14\uC778\uB529\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: length = ''{1}''\uC778 ''{0}'' \uAC12\uC740 ''{3}'' \uC720\uD615\uC758 minLength ''{2}''\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uBA74\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         cvc-pattern-valid = cvc-pattern-valid: ''{0}'' \uAC12\uC740 ''{2}'' \uC720\uD615\uC758 ''{1}'' \uD328\uD134\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uBA74\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         cvc-totalDigits-valid = cvc-totalDigits-valid: ''{0}'' \uAC12\uC758 \uCD1D \uC790\uB9BF\uC218\uAC00 {1}\uC774\uC9C0\uB9CC \uCD1D \uC790\uB9BF\uC218\uB294 {2}(\uC73C)\uB85C \uC81C\uD55C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
+        cvc-type.1 = cvc-type.1: \uC720\uD615 \uC815\uC758 ''{0}''\uC744(\uB97C) \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cvc-type.2 = cvc-type.2: {0} \uC694\uC18C\uC5D0 \uB300\uD55C \uC720\uD615 \uC815\uC758\uB294 \uCD94\uC0C1\uC801\uC77C \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cvc-type.3.1.1 = cvc-type.3.1.1: ''{0}'' \uC694\uC18C\uB294 \uB2E8\uC21C \uC720\uD615\uC774\uBBC0\uB85C \uB124\uC784\uC2A4\uD398\uC774\uC2A4 \uC774\uB984\uC774 ''http://www.w3.org/2001/XMLSchema-instance''\uC774\uBA70 [local name]\uC774 ''type'', ''nil'', ''schemaLocation'' \uB610\uB294 ''noNamespaceSchemaLocation'' \uC911 \uD558\uB098\uC778 \uC18D\uC131\uC744 \uC81C\uC678\uD558\uACE0 \uB2E4\uB978 \uC18D\uC131\uC744 \uD3EC\uD568\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uD558\uC9C0\uB9CC ''{1}'' \uC18D\uC131\uC774 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
         cvc-type.3.1.2 = cvc-type.3.1.2: ''{0}'' \uC694\uC18C\uB294 \uB2E8\uC21C \uC720\uD615\uC774\uBBC0\uB85C \uC694\uC18C \uC815\uBCF4 \uD56D\uBAA9 [children]\uC744 \uD3EC\uD568\uD558\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: \uC18D\uC131 \uADF8\uB8F9 ''{0}''\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC774\uB984 \uBC0F \uB300\uC0C1 \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 \uB3D9\uC77C\uD55C \uC911\uBCF5 \uC18D\uC131 \uC0AC\uC6A9\uC774 \uC9C0\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC911\uBCF5 \uC18D\uC131 \uC0AC\uC6A9\uC758 \uC774\uB984\uC740 ''{1}''\uC785\uB2C8\uB2E4.
         ag-props-correct.3 = ag-props-correct.3: \uC18D\uC131 \uADF8\uB8F9 ''{0}''\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uB450 \uAC1C\uC758 \uC18D\uC131 \uC120\uC5B8 ''{1}'' \uBC0F ''{2}''\uC5D0 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C \uC720\uD615\uC774 \uC788\uC2B5\uB2C8\uB2E4.
         a-props-correct.2 = a-props-correct.2: ''{0}'' \uC18D\uC131\uC758 \uAC12 \uC81C\uC57D \uC870\uAC74 \uAC12 ''{1}''\uC774(\uAC00) \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
-        a-props-correct.3 = a-props-correct.3: \uC18D\uC131\uC758 ''{''type definition''}''\uC774 ID\uC774\uAC70\uB098 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C \uAC83\uC774\uBBC0\uB85C ''{0}'' \uC18D\uC131\uC740 ''fixed'' \uB610\uB294 ''default''\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-        au-props-correct.2 = au-props-correct.2: ''{0}''\uC758 \uC18D\uC131 \uC120\uC5B8\uC5D0\uC11C \uACE0\uC815\uB41C \uAC12 ''{1}''\uC774(\uAC00) \uC9C0\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC744(\uB97C) \uCC38\uC870\uD558\uB294 \uC18D\uC131 \uC0AC\uC6A9\uC5D0\uB3C4 ''{''value constraint''}''\uAC00 \uC788\uC744 \uACBD\uC6B0 \uACE0\uC815\uB418\uC5B4\uC57C \uD558\uBA70 \uAC12\uC740 ''{1}''\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
+        a-props-correct.3 = a-props-correct.3: \uC18D\uC131\uC758 '{'type definition'}'\uC774 ID\uC774\uAC70\uB098 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C \uAC83\uC774\uBBC0\uB85C ''{0}'' \uC18D\uC131\uC740 ''fixed'' \uB610\uB294 ''default''\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+        au-props-correct.2 = au-props-correct.2: ''{0}''\uC758 \uC18D\uC131 \uC120\uC5B8\uC5D0\uC11C \uACE0\uC815\uB41C \uAC12 ''{1}''\uC774(\uAC00) \uC9C0\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC744(\uB97C) \uCC38\uC870\uD558\uB294 \uC18D\uC131 \uC0AC\uC6A9\uC5D0\uB3C4 '{'value constraint'}'\uAC00 \uC788\uC744 \uACBD\uC6B0 \uACE0\uC815\uB418\uC5B4\uC57C \uD558\uBA70 \uAC12\uC740 ''{1}''\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         cos-all-limited.1.2 = cos-all-limited.1.2: 'all' \uBAA8\uB378 \uADF8\uB8F9\uC774 '{'min occurs'}' = '{'max occurs'}' = 1\uC778 \uC870\uAC01\uC5D0 \uB098\uD0C0\uB098\uC57C \uD558\uBA70 \uD574\uB2F9 \uC870\uAC01\uC740 \uBCF5\uD569 \uC720\uD615 \uC815\uC758\uC758 '{'content type'}'\uC744 \uAD6C\uC131\uD558\uB294 \uC30D\uC758 \uC77C\uBD80\uC5EC\uC57C \uD569\uB2C8\uB2E4.
-        cos-all-limited.2 = cos-all-limited.2: ''all'' \uBAA8\uB378 \uADF8\uB8F9\uC5D0 \uD3EC\uD568\uB41C \uC694\uC18C\uC758 ''{''max occurs''}''\uB294 0 \uB610\uB294 1\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4. ''{1}'' \uC694\uC18C\uC5D0 \uB300\uD55C ''{0}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
+        cos-all-limited.2 = cos-all-limited.2: ''all'' \uBAA8\uB378 \uADF8\uB8F9\uC5D0 \uD3EC\uD568\uB41C \uC694\uC18C\uC758 '{'max occurs'}'\uB294 0 \uB610\uB294 1\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4. ''{1}'' \uC694\uC18C\uC5D0 \uB300\uD55C ''{0}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
         cos-applicable-facets = cos-applicable-facets: {1} \uC720\uD615\uC5D0\uC11C\uB294 ''{0}'' \uBA74\uC774 \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
         cos-ct-extends.1.1 = cos-ct-extends.1.1: ''{0}'' \uC720\uD615\uC740 ''{1}'' \uC720\uD615\uC5D0\uC11C \uD655\uC7A5\uC5D0 \uC758\uD574 \uD30C\uC0DD\uB418\uC5C8\uC9C0\uB9CC ''{1}''\uC758 ''final'' \uC18D\uC131\uC740 \uD655\uC7A5\uC5D0 \uC758\uD55C \uD30C\uC0DD\uC744 \uAE08\uC9C0\uD569\uB2C8\uB2E4.
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: \uD30C\uC0DD\uB41C \uC720\uD615\uACFC \uD574\uB2F9 \uAE30\uBCF8 \uC720\uD615\uC758 \uCF58\uD150\uCE20 \uC720\uD615\uC740 \uBAA8\uB450 \uD63C\uD569\uB418\uAC70\uB098 \uBAA8\uB450 \uC694\uC18C \uC804\uC6A9\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4. ''{0}'' \uC720\uD615\uC740 \uC694\uC18C \uC804\uC6A9\uC774\uC9C0\uB9CC \uD574\uB2F9 \uAE30\uBCF8 \uC720\uD615\uC740 \uC694\uC18C \uC804\uC6A9\uC774 \uC544\uB2D9\uB2C8\uB2E4.
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: \uD30C\uC0DD\uB41C \uC870\uAC01\uC774 \uBE44\uC5B4 \uC788\uC73C\uBBC0\uB85C \uAE30\uBCF8 \uC870\uAC01\uC744 \uBE44\uC6B8 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cos-particle-restrict.b = cos-particle-restrict.b: \uAE30\uBCF8 \uC870\uAC01\uC740 \uBE44\uC5B4 \uC788\uC9C0\uB9CC \uD30C\uC0DD\uB41C \uC870\uAC01\uC740 \uBE44\uC5B4 \uC788\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
         cos-particle-restrict.2 = cos-particle-restrict.2: \uAE08\uC9C0\uB41C \uC870\uAC01 \uC81C\uD55C \uC0AC\uD56D: ''{0}''.
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: ''{1}'' \uC720\uD615\uC774 \uAE30\uBCF8 \uB2E8\uC704\uC774\uBBC0\uB85C \uD574\uB2F9 ''{''base type definition''}'' ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uB2E8\uC21C \uC720\uD615 \uC815\uC758 \uB610\uB294 \uB0B4\uC7A5\uB41C \uAE30\uBCF8 \uB370\uC774\uD130 \uC720\uD615\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: ''{1}'' \uC720\uD615\uC774 \uAE30\uBCF8 \uB2E8\uC704\uC774\uBBC0\uB85C \uD574\uB2F9 '{'base type definition'}' ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uB2E8\uC21C \uC720\uD615 \uC815\uC758 \uB610\uB294 \uB0B4\uC7A5\uB41C \uAE30\uBCF8 \uB370\uC774\uD130 \uC720\uD615\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         cos-st-restricts.2.1 = cos-st-restricts.2.1: \uBAA9\uB85D \uC720\uD615 ''{0}''\uC758 \uC815\uC758\uC5D0\uC11C ''{1}'' \uC720\uD615\uC740 \uBAA9\uB85D \uC720\uD615\uC774\uAC70\uB098 \uBAA9\uB85D\uC744 \uD3EC\uD568\uD558\uB294 \uD569\uC9D1\uD569 \uC720\uD615\uC774\uBBC0\uB85C \uBD80\uC801\uD569\uD55C \uD56D\uBAA9 \uC720\uD615\uC785\uB2C8\uB2E4.
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: ''{''item type definition''}'' ''{0}''\uC758 ''{''final''}'' \uAD6C\uC131 \uC694\uC18C\uC5D0 ''list''\uAC00 \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC744(\uB97C) \uBAA9\uB85D \uC720\uD615 ''{1}''\uC5D0 \uB300\uD55C \uD56D\uBAA9 \uC720\uD615\uC73C\uB85C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: ''{''member type definitions''}'' ''{0}''\uC758 ''{''final''}'' \uAD6C\uC131 \uC694\uC18C\uC5D0 ''union''\uC774 \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC744(\uB97C) \uD569\uC9D1\uD569 \uC720\uD615 ''{1}''\uC5D0 \uB300\uD55C \uBA64\uBC84 \uC720\uD615\uC73C\uB85C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: '{'item type definition'}' ''{0}''\uC758 '{'final'}' \uAD6C\uC131 \uC694\uC18C\uC5D0 ''list''\uAC00 \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC744(\uB97C) \uBAA9\uB85D \uC720\uD615 ''{1}''\uC5D0 \uB300\uD55C \uD56D\uBAA9 \uC720\uD615\uC73C\uB85C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: '{'member type definitions'}' ''{0}''\uC758 '{'final'}' \uAD6C\uC131 \uC694\uC18C\uC5D0 ''union''\uC774 \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC744(\uB97C) \uD569\uC9D1\uD569 \uC720\uD615 ''{1}''\uC5D0 \uB300\uD55C \uBA64\uBC84 \uC720\uD615\uC73C\uB85C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         cos-valid-default.2.1 = cos-valid-default.2.1: ''{0}'' \uC694\uC18C\uC5D0 \uAC12 \uC81C\uC57D \uC870\uAC74\uC774 \uC788\uC73C\uBBC0\uB85C \uD63C\uD569 \uB610\uB294 \uB2E8\uC21C \uCF58\uD150\uCE20 \uBAA8\uB378\uC774 \uD3EC\uD568\uB418\uC5B4\uC57C \uD569\uB2C8\uB2E4.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: ''{0}'' \uC694\uC18C\uC5D0 ''{''value constraint''}''\uAC00 \uC788\uC73C\uBA70 \uD574\uB2F9 \uC720\uD615 \uC815\uC758\uC5D0 \uD63C\uD569 ''{''content type''}''\uC774 \uC788\uC73C\uBBC0\uB85C ''{''content type''}''\uC758 \uC870\uAC01\uC744 \uBE44\uC6B8 \uC218 \uC788\uC5B4\uC57C \uD569\uB2C8\uB2E4.
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: ''{0}'' \uC694\uC18C\uC5D0 '{'value constraint'}'\uAC00 \uC788\uC73C\uBA70 \uD574\uB2F9 \uC720\uD615 \uC815\uC758\uC5D0 \uD63C\uD569 '{'content type'}'\uC774 \uC788\uC73C\uBBC0\uB85C '{'content type'}'\uC758 \uC870\uAC01\uC744 \uBE44\uC6B8 \uC218 \uC788\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         c-props-correct.2 = c-props-correct.2: keyref ''{0}''\uACFC(\uC640) \uD0A4 ''{1}''\uC5D0 \uB300\uD55C \uD544\uB4DC \uAE30\uC218\uB294 \uC11C\uB85C \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4.
         ct-props-correct.3 = ct-props-correct.3: \uBCF5\uD569 \uC720\uD615 ''{0}''\uC5D0 \uB300\uD55C \uC21C\uD658 \uC815\uC758\uAC00 \uAC10\uC9C0\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC740(\uB294) \uACE0\uC720\uD55C \uC720\uD615 \uACC4\uCE35\uC5D0 \uD3EC\uD568\uB41C \uAC83\uC774\uBA70 \uC774\uB294 \uC624\uB958\uC785\uB2C8\uB2E4.
         ct-props-correct.4 = ct-props-correct.4: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC774\uB984 \uBC0F \uB300\uC0C1 \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 \uB3D9\uC77C\uD55C \uC911\uBCF5 \uC18D\uC131 \uC0AC\uC6A9\uC774 \uC9C0\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC911\uBCF5 \uC18D\uC131 \uC0AC\uC6A9\uC758 \uC774\uB984\uC740 ''{1}''\uC785\uB2C8\uB2E4.
         ct-props-correct.5 = ct-props-correct.5: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uB450 \uAC1C\uC758 \uC18D\uC131 \uC120\uC5B8 ''{1}'' \uBC0F ''{2}''\uC5D0 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C \uC720\uD615\uC774 \uC788\uC2B5\uB2C8\uB2E4.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: ''{0}'' \uC720\uD615\uC740 ''{1}'' \uC720\uD615\uC5D0\uC11C \uC81C\uD55C \uC0AC\uD56D\uC5D0 \uC758\uD574 \uD30C\uC0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uD558\uC9C0\uB9CC ''{1}''\uC5D0\uB294 \uC81C\uD55C \uC0AC\uD56D\uC5D0 \uC758\uD55C \uD30C\uC0DD\uC744 \uAE08\uC9C0\uD558\uB294 ''{''final''}'' \uC18D\uC131\uC774 \uC788\uC2B5\uB2C8\uB2E4.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: ''{0}'' \uC720\uD615\uC740 ''{1}'' \uC720\uD615\uC5D0\uC11C \uC81C\uD55C \uC0AC\uD56D\uC5D0 \uC758\uD574 \uD30C\uC0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uD558\uC9C0\uB9CC ''{1}''\uC5D0\uB294 \uC81C\uD55C \uC0AC\uD56D\uC5D0 \uC758\uD55C \uD30C\uC0DD\uC744 \uAE08\uC9C0\uD558\uB294 '{'final'}' \uC18D\uC131\uC774 \uC788\uC2B5\uB2C8\uB2E4.
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC774 \uC720\uD615\uC758 \uC18D\uC131 \uC0AC\uC6A9 ''{1}''\uC5D0 \uB300\uD55C ''use'' \uAC12\uC774 ''{2}''\uC785\uB2C8\uB2E4. \uC774\uB294 \uAE30\uBCF8 \uC720\uD615\uC758 \uC77C\uCE58\uD558\uB294 \uC18D\uC131 \uC0AC\uC6A9\uC5D0 \uB300\uD55C \uAC12\uC778 ''required''\uC640 \uB2E4\uB985\uB2C8\uB2E4.
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC774 \uC720\uD615\uC758 \uC18D\uC131 \uC0AC\uC6A9 ''{1}''\uC5D0 \uB300\uD55C \uC720\uD615\uC774 ''{2}''\uC785\uB2C8\uB2E4. \uC774\uB294 \uAE30\uBCF8 \uC720\uD615\uC758 \uC77C\uCE58\uD558\uB294 \uC18D\uC131 \uC0AC\uC6A9\uC5D0 \uB300\uD55C \uC720\uD615\uC778 ''{3}''\uC5D0\uC11C \uC801\uD569\uD558\uAC8C \uD30C\uC0DD\uB41C \uAC83\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC774 \uC720\uD615\uC758 \uC18D\uC131 \uC0AC\uC6A9 ''{1}''\uC5D0\uB294 \uACE0\uC815\uB418\uC9C0 \uC54A\uC740 \uC720\uD6A8\uD55C \uAC12 \uC81C\uC57D \uC870\uAC74\uC774 \uC788\uC73C\uBA70, \uAE30\uBCF8 \uC720\uD615\uC758 \uC77C\uCE58\uD558\uB294 \uC18D\uC131 \uC0AC\uC6A9\uC5D0 \uB300\uD55C \uC720\uD6A8\uD55C \uAC12 \uC81C\uC57D \uC870\uAC74\uC740 \uACE0\uC815\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation: {2} ''{1}''\uC5D0 \uC0AC\uC6A9\uB418\uB294 NOTATION \uC720\uD615 ''{0}''\uC5D0\uB294 \uC774 \uC720\uD615\uC5D0 \uC0AC\uC6A9\uB418\uB294 \uD45C\uAE30\uBC95 \uC694\uC18C\uB97C \uC9C0\uC815\uD558\uB294 \uBAA9\uB85D \uBA74 \uAC12\uC774 \uC788\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         enumeration-valid-restriction = enumeration-valid-restriction: \uBAA9\uB85D \uAC12 ''{0}''\uC774(\uAC00) \uAE30\uBCF8 \uC720\uD615 {1}\uC758 \uAC12 \uACF5\uAC04\uC5D0 \uC5C6\uC2B5\uB2C8\uB2E4.
         e-props-correct.2 = e-props-correct.2: ''{0}'' \uC694\uC18C\uC758 \uAC12 \uC81C\uC57D \uC870\uAC74 \uAC12 ''{1}''\uC774(\uAC00) \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
-        e-props-correct.4 = e-props-correct.4: ''{0}'' \uC694\uC18C\uC758 ''{''type definition''}''\uC774 substitutionHead ''{1}''\uC758 ''{''type definition''}''\uC5D0\uC11C \uC801\uD569\uD558\uAC8C \uD30C\uC0DD\uB41C \uAC83\uC774 \uC544\uB2C8\uAC70\uB098 ''{1}''\uC758 ''{''substitution group exclusions''}'' \uC18D\uC131\uC774 \uC774 \uD30C\uC0DD\uC744 \uD5C8\uC6A9\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
-        e-props-correct.5 = e-props-correct.5: \uC694\uC18C\uC758 ''{''type definition''}'' \uB610\uB294 ''{''type definition''}''\uC758 ''{''content type''}''\uC774 ID\uC774\uAC70\uB098 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C \uAC83\uC774\uBBC0\uB85C ''{''value constraint''}''\uB294 ''{0}'' \uC694\uC18C\uC5D0 \uC5C6\uC5B4\uC57C \uD569\uB2C8\uB2E4.
+        e-props-correct.4 = e-props-correct.4: ''{0}'' \uC694\uC18C\uC758 '{'type definition'}'\uC774 substitutionHead ''{1}''\uC758 '{'type definition'}'\uC5D0\uC11C \uC801\uD569\uD558\uAC8C \uD30C\uC0DD\uB41C \uAC83\uC774 \uC544\uB2C8\uAC70\uB098 ''{1}''\uC758 '{'substitution group exclusions'}' \uC18D\uC131\uC774 \uC774 \uD30C\uC0DD\uC744 \uD5C8\uC6A9\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+        e-props-correct.5 = e-props-correct.5: \uC694\uC18C\uC758 '{'type definition'}' \uB610\uB294 '{'type definition'}'\uC758 '{'content type'}'\uC774 ID\uC774\uAC70\uB098 ID\uC5D0\uC11C \uD30C\uC0DD\uB41C \uAC83\uC774\uBBC0\uB85C '{'value constraint'}'\uB294 ''{0}'' \uC694\uC18C\uC5D0 \uC5C6\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         e-props-correct.6 = e-props-correct.6: ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD55C \uC21C\uD658 \uB300\uCCB4 \uADF8\uB8F9\uC774 \uAC10\uC9C0\uB418\uC5C8\uC2B5\uB2C8\uB2E4..
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: {2}\uC758 \uC815\uC758\uC5D0\uC11C ''fractionDigits'' \uBA74\uC5D0 \uB300\uD55C ''{0}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. \uC774 \uAC12\uC740 \uC870\uC0C1 \uC720\uD615 \uC911 \uD558\uB098\uC5D0\uC11C ''{1}''(\uC73C)\uB85C \uC124\uC815\uB41C ''fractionDigits''\uC5D0 \uB300\uD55C \uAC12\uBCF4\uB2E4 \uC791\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
         fractionDigits-totalDigits = fractionDigits-totalDigits: {2}\uC758 \uC815\uC758\uC5D0\uC11C ''fractionDigits'' \uBA74\uC5D0 \uB300\uD55C ''{0}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. \uC774 \uAC12\uC740 ''totalDigits''\uC5D0 \uB300\uD55C \uAC12\uC778 ''{1}''\uBCF4\uB2E4 \uC791\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: ''{2}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. maxInclusive \uAC12 = ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uC720\uD615 ''{1}''\uC758 minInclusive\uBCF4\uB2E4 \uD06C\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: ''{2}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. maxInclusive \uAC12 = ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uC720\uD615 ''{1}''\uC758 minExclusive\uBCF4\uB2E4 \uCEE4\uC57C \uD569\uB2C8\uB2E4.
         maxLength-valid-restriction = maxLength-valid-restriction: {2}\uC758 \uC815\uC758\uC5D0\uC11C maxLength \uAC12 = ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uC720\uD615 ''{1}''\uC758 \uAC12\uBCF4\uB2E4 \uC791\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
-        mg-props-correct.2 = mg-props-correct.2: ''{0}'' \uADF8\uB8F9\uC5D0 \uB300\uD55C \uC21C\uD658 \uC815\uC758\uAC00 \uAC10\uC9C0\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC21C\uD658\uC801\uC73C\uB85C \uB4A4\uC5D0 \uC624\uB294 ''{''term''}'' \uC870\uAC01 \uAC12\uC774 ''{''term''}''\uC774 \uADF8\uB8F9 \uC790\uC2E0\uC778 \uC870\uAC01\uC5D0 \uB3C4\uB2EC\uD569\uB2C8\uB2E4.
+        mg-props-correct.2 = mg-props-correct.2: ''{0}'' \uADF8\uB8F9\uC5D0 \uB300\uD55C \uC21C\uD658 \uC815\uC758\uAC00 \uAC10\uC9C0\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uC21C\uD658\uC801\uC73C\uB85C \uB4A4\uC5D0 \uC624\uB294 '{'term'}' \uC870\uAC01 \uAC12\uC774 '{'term'}'\uC774 \uADF8\uB8F9 \uC790\uC2E0\uC778 \uC870\uAC01\uC5D0 \uB3C4\uB2EC\uD569\uB2C8\uB2E4.
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: {2}\uC758 \uC815\uC758\uC5D0\uC11C minExclusive \uAC12 = ''{0}''\uC740(\uB294) maxExclusive \uAC12 = ''{1}''\uBCF4\uB2E4 \uC791\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: {2}\uC758 \uC815\uC758\uC5D0\uC11C minExclusive \uAC12 = ''{0}''\uC740(\uB294) maxInclusive \uAC12 = ''{1}''\uBCF4\uB2E4 \uC791\uC544\uC57C \uD569\uB2C8\uB2E4.
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: ''{2}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. minExclusive \uAC12 = ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uC720\uD615 ''{1}''\uC758 minExclusive\uBCF4\uB2E4 \uD06C\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: {2}\uC758 \uC815\uC758\uC5D0\uC11C minLength \uAC12 = ''{0}''\uC740(\uB294) maxLength \uAC12 = ''{1}''\uBCF4\uB2E4 \uC791\uC544\uC57C \uD569\uB2C8\uB2E4.
         minLength-valid-restriction = minLength-valid-restriction: {2}\uC758 \uC815\uC758\uC5D0\uC11C minLength = ''{0}''\uC740(\uB294) \uAE30\uBCF8 \uC720\uD615 ''{1}''\uC758 \uAC12\uBCF4\uB2E4 \uD06C\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
         no-xmlns = no-xmlns: \uC18D\uC131 \uC120\uC5B8\uC758 {name}\uC740 'xmlns'\uC640 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
-        no-xsi = no-xsi: \uC18D\uC131 \uC120\uC5B8\uC758 ''{''target namespace''}''\uB294 ''{0}''\uACFC(\uC640) \uC77C\uCE58\uD558\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
+        no-xsi = no-xsi: \uC18D\uC131 \uC120\uC5B8\uC758 '{'target namespace'}'\uB294 ''{0}''\uACFC(\uC640) \uC77C\uCE58\uD558\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
         p-props-correct.2.1 = p-props-correct.2.1: ''{0}''\uC758 \uC120\uC5B8\uC5D0\uC11C ''minOccurs'' \uAC12\uC774 ''{1}''\uC774\uC9C0\uB9CC \uC774 \uAC12\uC740 ''maxOccurs'' \uAC12 ''{2}''\uBCF4\uB2E4 \uD06C\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4.
         rcase-MapAndSum.1 = rcase-MapAndSum.1: \uC870\uAC01 \uAC04 \uC804\uCCB4 \uAE30\uB2A5 \uB9E4\uD551\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.
         rcase-MapAndSum.2 = rcase-MapAndSum.2: \uADF8\uB8F9\uC758 \uBC1C\uC0DD \uBC94\uC704({0},{1})\uAC00 \uAE30\uBCF8 \uADF8\uB8F9\uC758 \uBC1C\uC0DD \uBC94\uC704({2},{3})\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC81C\uD55C \uC0AC\uD56D\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: \uC694\uC18C\uC5D0 \uB3D9\uC77C\uD558\uC9C0 \uC54A\uC740 \uC774\uB984 \uBC0F \uB300\uC0C1 \uB124\uC784\uC2A4\uD398\uC774\uC2A4(''{1}'' \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uC758 ''{0}'' \uC694\uC18C \uBC0F ''{3}'' \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uC758 ''{2}'' \uC694\uC18C)\uAC00 \uC788\uC2B5\uB2C8\uB2E4.
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: ''{''term''}''\uC774 \uC694\uC18C \uC120\uC5B8 ''{0}''\uC778 \uC870\uAC01\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC694\uC18C \uC120\uC5B8\uC758 ''{''nillable''}''\uC774 true\uC774\uC9C0\uB9CC \uAE30\uBCF8 \uC720\uD615\uC758 \uD574\uB2F9 \uC870\uAC01\uC5D0 ''{''nillable''}''\uC774 false\uC778 \uC694\uC18C \uC120\uC5B8\uC774 \uC788\uC2B5\uB2C8\uB2E4.
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: ''{''term''}''\uC774 \uC694\uC18C \uC120\uC5B8 ''{0}''\uC778 \uC870\uAC01\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uBC18\uBCF5 \uBC94\uC704({1},{2})\uAC00 \uAE30\uBCF8 \uC720\uD615\uC5D0 \uC788\uB294 \uD574\uB2F9 \uC870\uAC01\uC758 \uBC94\uC704({3},{4})\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC81C\uD55C \uC0AC\uD56D\uC774 \uC544\uB2D9\uB2C8\uB2E4.
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: '{'term'}'\uC774 \uC694\uC18C \uC120\uC5B8 ''{0}''\uC778 \uC870\uAC01\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uC694\uC18C \uC120\uC5B8\uC758 '{'nillable'}'\uC774 true\uC774\uC9C0\uB9CC \uAE30\uBCF8 \uC720\uD615\uC758 \uD574\uB2F9 \uC870\uAC01\uC5D0 '{'nillable'}'\uC774 false\uC778 \uC694\uC18C \uC120\uC5B8\uC774 \uC788\uC2B5\uB2C8\uB2E4.
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: '{'term'}'\uC774 \uC694\uC18C \uC120\uC5B8 ''{0}''\uC778 \uC870\uAC01\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uBC18\uBCF5 \uBC94\uC704({1},{2})\uAC00 \uAE30\uBCF8 \uC720\uD615\uC5D0 \uC788\uB294 \uD574\uB2F9 \uC870\uAC01\uC758 \uBC94\uC704({3},{4})\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC81C\uD55C \uC0AC\uD56D\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: ''{0}'' \uC694\uC18C\uB294 \uACE0\uC815\uB418\uC5B4 \uC788\uC9C0 \uC54A\uC9C0\uB9CC \uAE30\uBCF8 \uC720\uD615\uC758 \uD574\uB2F9 \uC694\uC18C\uB294 ''{1}'' \uAC12\uC73C\uB85C \uACE0\uC815\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: ''{0}'' \uC694\uC18C\uB294 ''{1}'' \uAC12\uC73C\uB85C \uACE0\uC815\uB418\uC5B4 \uC788\uC9C0\uB9CC \uAE30\uBCF8 \uC720\uD615\uC758 \uD574\uB2F9 \uC694\uC18C\uB294 ''{2}'' \uAC12\uC73C\uB85C \uACE0\uC815\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD55C ID \uC81C\uC57D \uC870\uAC74\uC740 \uAE30\uBCF8 \uC720\uD615\uC758 ID \uC81C\uC57D \uC870\uAC74\uC5D0 \uB300\uD55C \uBD80\uBD84 \uC9D1\uD569\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: ''{0}'' \uC694\uC18C\uC5D0 \uB300\uD574 \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uB294 \uB300\uCCB4\uB294 \uAE30\uBCF8 \uC720\uD615\uC758 \uD574\uB2F9 \uB300\uCCB4\uC5D0 \uB300\uD55C \uB300\uC9D1\uD569\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: ''{0}'' \uC694\uC18C\uC758 \uC720\uD615 ''{1}''\uC740(\uB294) \uAE30\uBCF8 \uC694\uC18C\uC758 \uC720\uD615 ''{2}''\uC5D0\uC11C \uD30C\uC0DD\uB41C \uAC83\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NSCompat.1 = rcase-NSCompat.1: ''{0}'' \uC694\uC18C\uC5D0\uB294 \uAE30\uBCF8 \uC720\uD615\uC758 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790\uC5D0\uC11C \uD5C8\uC6A9\uD558\uC9C0 \uC54A\uB294 ''{1}'' \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 \uC788\uC2B5\uB2C8\uB2E4.
-        rcase-NSCompat.2 = rcase-NSCompat.2: ''{''term''}''\uC774 \uC694\uC18C \uC120\uC5B8 ''{0}''\uC778 \uC870\uAC01\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uBC18\uBCF5 \uBC94\uC704({1},{2})\uAC00 \uAE30\uBCF8 \uC720\uD615\uC5D0 \uC788\uB294 \uD574\uB2F9 \uC870\uAC01\uC758 \uBC94\uC704({3},{4})\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC81C\uD55C \uC0AC\uD56D\uC774 \uC544\uB2D9\uB2C8\uB2E4.
+        rcase-NSCompat.2 = rcase-NSCompat.2: '{'term'}'\uC774 \uC694\uC18C \uC120\uC5B8 ''{0}''\uC778 \uC870\uAC01\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. \uBC18\uBCF5 \uBC94\uC704({1},{2})\uAC00 \uAE30\uBCF8 \uC720\uD615\uC5D0 \uC788\uB294 \uD574\uB2F9 \uC870\uAC01\uC758 \uBC94\uC704({3},{4})\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC81C\uD55C \uC0AC\uD56D\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: \uC870\uAC01 \uAC04 \uC804\uCCB4 \uAE30\uB2A5 \uB9E4\uD551\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: \uADF8\uB8F9\uC758 \uBC1C\uC0DD \uBC94\uC704({0},{1})\uAC00 \uAE30\uBCF8 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790\uC758 \uBC94\uC704({2},{3})\uC5D0 \uB300\uD574 \uC801\uD569\uD55C \uC81C\uD55C \uC0AC\uD56D\uC774 \uC544\uB2D9\uB2C8\uB2E4.
         rcase-NSSubset.1 = rcase-NSSubset.1: \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790\uAC00 \uAE30\uBCF8 \uC720\uD615\uC758 \uD574\uB2F9 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790\uC5D0 \uB300\uD55C \uBD80\uBD84 \uC9D1\uD569\uC774 \uC544\uB2D9\uB2C8\uB2E4.
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: \uC2A4\uD0A4\uB9C8\uC5D0\uB294 \uB3D9\uC77C\uD55C \uC774\uB984\uC744 \uAC00\uC9C4 \uB450 \uAC1C\uC758 \uC804\uC5ED \uAD6C\uC131 \uC694\uC18C\uAC00 \uD3EC\uD568\uB420 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uC774 \uC2A4\uD0A4\uB9C8\uC5D0\uB294 \uB450 \uAC1C\uC758 ''{0}''\uC774(\uAC00) \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.
         st-props-correct.2 = st-props-correct.2: \uB2E8\uC21C \uC720\uD615 ''{0}''\uC5D0 \uB300\uD55C \uC21C\uD658 \uC815\uC758\uAC00 \uAC10\uC9C0\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uB530\uB77C\uC11C ''{0}''\uC740(\uB294) \uACE0\uC720\uD55C \uC720\uD615 \uACC4\uCE35\uC5D0 \uD3EC\uD568\uB41C \uAC83\uC774\uBA70 \uC774\uB294 \uC624\uB958\uC785\uB2C8\uB2E4.
-        st-props-correct.3 = st-props-correct.3: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. ''{''base type definition''}'' ''{1}''\uC758 ''{''final''}'' \uAC12\uC740 \uC81C\uD55C \uC0AC\uD56D\uC5D0 \uC758\uD55C \uD30C\uC0DD\uC744 \uAE08\uC9C0\uD569\uB2C8\uB2E4.
+        st-props-correct.3 = st-props-correct.3: ''{0}'' \uC720\uD615\uC5D0 \uB300\uD574 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. '{'base type definition'}' ''{1}''\uC758 '{'final'}' \uAC12\uC740 \uC81C\uD55C \uC0AC\uD56D\uC5D0 \uC758\uD55C \uD30C\uC0DD\uC744 \uAE08\uC9C0\uD569\uB2C8\uB2E4.
         totalDigits-valid-restriction = totalDigits-valid-restriction: {2}\uC758 \uC815\uC758\uC5D0\uC11C ''totalDigits'' \uBA74\uC5D0 \uB300\uD55C ''{0}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. \uC774 \uAC12\uC740 \uC870\uC0C1 \uC720\uD615 \uC911 \uD558\uB098\uC5D0\uC11C ''{1}''(\uC73C)\uB85C \uC124\uC815\uB41C ''totalDigits''\uC5D0 \uB300\uD55C \uAC12\uBCF4\uB2E4 \uC791\uAC70\uB098 \uAC19\uC544\uC57C \uD569\uB2C8\uB2E4.
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: {0}\uC758 \uC815\uC758\uC5D0\uC11C ''whitespace'' \uBA74\uC5D0 \uB300\uD55C ''{1}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. ''whitespace''\uC5D0 \uB300\uD55C \uAC12\uC774 \uC870\uC0C1 \uC720\uD615 \uC911 \uD558\uB098\uC5D0\uC11C ''collapse''\uB85C \uC124\uC815\uB418\uC5C8\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4.
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: {0}\uC758 \uC815\uC758\uC5D0\uC11C ''whitespace'' \uBA74\uC5D0 \uB300\uD55C ''preserve'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. ''whitespace''\uC5D0 \uB300\uD55C \uAC12\uC774 \uC870\uC0C1 \uC720\uD615 \uC911 \uD558\uB098\uC5D0\uC11C ''replace''\uB85C \uC124\uC815\uB418\uC5C8\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4.
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: \uC120\uD0DD\uAE30 \uAC12 = ''{0}''\uC774(\uAC00) \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. \uC120\uD0DD\uAE30 XPath\uC5D0\uB294 \uC18D\uC131\uC774 \uD3EC\uD568\uB420 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         EmptyTargetNamespace = EmptyTargetNamespace: \uC2A4\uD0A4\uB9C8 \uBB38\uC11C ''{0}''\uC758 ''targetNamespace'' \uC18D\uC131\uAC12\uC740 \uBE48 \uBB38\uC790\uC5F4\uC77C \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         FacetValueFromBase = FacetValueFromBase: ''{0}'' \uC720\uD615\uC758 \uC120\uC5B8\uC5D0\uC11C ''{2}'' \uBA74\uC758 ''{1}'' \uAC12\uC740 \uAE30\uBCF8 \uC720\uD615 ''{3}''\uC758 \uAC12 \uACF5\uBC31\uC5D0\uC11C \uC640\uC57C \uD569\uB2C8\uB2E4.
-        FixedFacetValue = FixedFacetValue: {3}\uC758 \uC815\uC758\uC5D0\uC11C ''{0}'' \uBA74\uC5D0 \uB300\uD55C ''{1}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. ''{0}''\uC5D0 \uB300\uD55C \uAC12\uC774 \uC870\uC0C1 \uC720\uD615 \uC911 \uD558\uB098\uC5D0\uC11C ''{2}''(\uC73C)\uB85C \uC124\uC815\uB418\uC5C8\uC73C\uBA70 ''{''fixed''}'' = true\uC774\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4.
+        FixedFacetValue = FixedFacetValue: {3}\uC758 \uC815\uC758\uC5D0\uC11C ''{0}'' \uBA74\uC5D0 \uB300\uD55C ''{1}'' \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4. ''{0}''\uC5D0 \uB300\uD55C \uAC12\uC774 \uC870\uC0C1 \uC720\uD615 \uC911 \uD558\uB098\uC5D0\uC11C ''{2}''(\uC73C)\uB85C \uC124\uC815\uB418\uC5C8\uC73C\uBA70 '{'fixed'}' = true\uC774\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4.
         InvalidRegex = InvalidRegex: \uD328\uD134 \uAC12 ''{0}''\uC740(\uB294) \uC801\uD569\uD55C \uC815\uADDC \uD45C\uD604\uC2DD\uC774 \uC544\uB2D9\uB2C8\uB2E4. ''{2}'' \uC5F4\uC5D0\uC11C ''{1}'' \uC624\uB958\uAC00 \uBCF4\uACE0\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
-        maxOccurLimit = \uAD6C\uBB38 \uBD84\uC11D\uAE30\uC758 \uD604\uC7AC \uAD6C\uC131\uC5D0\uC11C maxOccurs \uC18D\uC131\uAC12\uC744 {0} \uAC12\uBCF4\uB2E4 \uD06C\uAC8C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+        MaxOccurLimit = \uAD6C\uBB38 \uBD84\uC11D\uAE30\uC758 \uD604\uC7AC \uAD6C\uC131\uC5D0\uC11C maxOccurs \uC18D\uC131\uAC12\uC744 {0} \uAC12\uBCF4\uB2E4 \uD06C\uAC8C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
         PublicSystemOnNotation = PublicSystemOnNotation: \uD558\uB098 \uC774\uC0C1\uC758 ''public''\uACFC ''system''\uC774 ''notation'' \uC694\uC18C\uC5D0 \uB098\uD0C0\uB098\uC57C \uD569\uB2C8\uB2E4.
         SchemaLocation = SchemaLocation: schemaLocation \uAC12 = ''{0}''\uC5D0\uB294 \uC9DD\uC218 \uAC1C\uC758 URI\uAC00 \uC788\uC5B4\uC57C \uD569\uB2C8\uB2E4.
         TargetNamespace.1 = TargetNamespace.1: ''{0}'' \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 \uD544\uC694\uD558\uC9C0\uB9CC \uC2A4\uD0A4\uB9C8 \uBB38\uC11C\uC758 \uB300\uC0C1 \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 ''{1}''\uC785\uB2C8\uB2E4.
         TargetNamespace.2 = TargetNamespace.2: \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 \uD544\uC694\uD558\uC9C0 \uC54A\uC9C0\uB9CC \uC2A4\uD0A4\uB9C8 \uBB38\uC11C\uC758 \uB300\uC0C1 \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uAC00 ''{1}''\uC785\uB2C8\uB2E4.
         UndeclaredEntity = UndeclaredEntity: ''{0}'' \uC5D4\uD2F0\uD2F0\uAC00 \uC120\uC5B8\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
         UndeclaredPrefix = UndeclaredPrefix: ''{0}''\uC744(\uB97C) QName\uC73C\uB85C \uBD84\uC11D\uD560 \uC218 \uC5C6\uC74C: ''{1}'' \uC811\uB450\uC5B4\uAC00 \uC120\uC5B8\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = ''http://java.sun.com/xml/jaxp/properties/schemaSource'' \uC18D\uC131\uC5D0 ''{0}'' \uC720\uD615\uC758 \uAC12\uC774 \uC788\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uAC00\uB2A5\uD55C \uC9C0\uC6D0\uB418\uB294 \uAC12 \uC720\uD615\uC740 String, File, InputStream, InputSource \uB610\uB294 \uC774\uB7EC\uD55C \uC720\uD615\uC758 \uBC30\uC5F4\uC785\uB2C8\uB2E4.
+        jaxp12-schema-source-type.2 = ''http://java.sun.com/xml/jaxp/properties/schemaSource'' \uC18D\uC131\uC5D0 ''{0}'' \uC720\uD615\uC758 \uBC30\uC5F4 \uAC12\uC774 \uC788\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uAC00\uB2A5\uD55C \uC9C0\uC6D0\uB418\uB294 \uAC12 \uC720\uD615\uC740 Object, String, File, InputStream \uBC0F InputSource\uC785\uB2C8\uB2E4.
+        jaxp12-schema-source-ns = \uAC1D\uCCB4 \uBC30\uC5F4\uC744 'http://java.sun.com/xml/jaxp/properties/schemaSource' \uC18D\uC131\uC758 \uAC12\uC73C\uB85C \uC0AC\uC6A9 \uC911\uC778 \uACBD\uC6B0 \uB3D9\uC77C\uD55C \uB300\uC0C1 \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uB97C \uACF5\uC720\uD558\uB294 \uC2A4\uD0A4\uB9C8 \uB450 \uAC1C\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties
index 5e3e288..0abad5e 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_pt_BR.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/11 12:46:54 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_pt_BR.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/12 18:01:34 gmolloy Exp $
 
         BadMessageKey = N\u00E3o foi poss\u00EDvel encontrar a mensagem de erro correspondente \u00E0 chave da mensagem.
         FormatFailed = Ocorreu um erro interno ao formatar a mensagem a seguir:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = Erro de Restri\u00E7\u00E3o de identidade (cvc-identity-constraint.4.2.1):  o elemento "{0}" tem uma chave sem valor.
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: O Elemento "{0}" n\u00E3o tem valor para a chave "{1}".
         DuplicateField = Correspond\u00EAncia duplicada no escopo do campo "{0}".
-        DuplicateKey = Valor da chave duplicado [{0}] declarado para a restri\u00E7\u00E3o de identidade do elemento "{1}".
-        DuplicateUnique = Valor exclusivo duplicado [{0}] declarado para a restri\u00E7\u00E3o de identidade do elemento "{1}".
-        FieldMultipleMatch = Erro de restri\u00E7\u00E3o de identidade: o campo "{0}" corresponde a mais de um valor no escopo deste seletor; os campos devem corresponder a valores exclusivos.
+        DuplicateKey = cvc-identity-constraint.4.2.2: Valor de chave duplicado [{0}] declarado para a restri\u00E7\u00E3o de identidade "{2}" do elemento "{1}".
+        DuplicateUnique = cvc-identity-constraint.4.1: Valor exclusivo duplicado [{0}] declarado para a restri\u00E7\u00E3o de identidade "{2}" do elemento "{1}".
+        FieldMultipleMatch = cvc-identity-constraint.3: O campo "{0}" da restri\u00E7\u00E3o de identidade "{1}" corresponde a mais de um valor no escopo de seu seletor; os campos devem corresponder a valores exclusivos.
         FixedDiffersFromActual = O conte\u00FAdo deste elemento n\u00E3o \u00E9 equivalente ao valor do atributo "fixed" na declara\u00E7\u00E3o do elemento do esquema.
-        KeyMatchesNillable = Erro de restri\u00E7\u00E3o de identidade (cvc-identity-constraint.4.2.3): o elemento "{0}" tem uma chave que corresponde a um elemento o qual tem anul\u00E1vel definido como verdadeiro.
-        KeyNotEnoughValues = N\u00E3o h\u00E1 valores suficientes especificados para a restri\u00E7\u00E3o de identidade de <key name="{1}"> especificada para o elemento "{0}".
-        KeyNotFound = Chave ''{0}'' com valor ''{1}'' n\u00E3o encontrada para a restri\u00E7\u00E3o de identidade do elemento ''{2}''.
-        KeyRefNotEnoughValues = N\u00E3o h\u00E1 valores suficientes especificados para a restri\u00E7\u00E3o de identidade de <keyref name="{1}"> especificada para o elemento "{0}".
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: O elemento "{0}" tem a chave "{1}" que corresponde a um elemento que tem o valor anul\u00E1vel definido como verdadeiro.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: Valores insuficientes especificados para a restri\u00E7\u00E3o de identidade <key name="{1}"> especificada para o elemento "{0}".
+        KeyNotFound = cvc-identity-constraint.4.3: A Chave ''{0}'' com o valor ''{1}'' n\u00E3o foi encontrada para a restri\u00E7\u00E3o de identidade do elemento ''{2}''.
         KeyRefOutOfScope = Erro de restri\u00E7\u00E3o de identidade: a restri\u00E7\u00E3o de identidade "{0}" tem uma keyref que se refere a uma chave exclusiva a qual est\u00E1 fora do escopo.
         KeyRefReferNotFound = A declara\u00E7\u00E3o de refer\u00EAncia da chave "{0}" refere-se a uma chave com o nome "{1}".
-        UniqueNotEnoughValues = N\u00E3o h\u00E1 valores suficientes especificados para a restri\u00E7\u00E3o de identidade <unique> especificada para o elemento "{0}".
-        UnknownField = Erro interno de restri\u00E7\u00E3o de identidade; campo desconhecido "{0}".
+        UnknownField = Erro interno de restri\u00E7\u00E3o de identidade; o campo desconhecido "{0}" para a restri\u00E7\u00E3o de identidade "{2}" foi especificado para o elemento "{1}".
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: O valor ''{2}'' do atributo ''{1}'' no elemento ''{0}'' n\u00E3o \u00E9 v\u00E1lido em rela\u00E7\u00E3o ao seu tipo, ''{3}''.
-        cvc-attribute.4 = cvc-attribute.4: O valor ''{2}'' do atributo ''{1}'' no elemento ''{0}'' n\u00E3o \u00E9 v\u00E1lido em rela\u00E7\u00E3o \u00E0 sua ''{''value constraint''}'' fixa. O atributo deve ter um valor ''{3}''.
+        cvc-attribute.4 = cvc-attribute.4: O valor ''{2}'' do atributo ''{1}'' no elemento ''{0}'' n\u00E3o \u00E9 v\u00E1lido em rela\u00E7\u00E3o \u00E0 sua '{'value constraint'}' fixa. O atributo deve ter um valor ''{3}''.
         cvc-complex-type.2.1 = cvc-complex-type.2.1: O elemento ''{0}'' n\u00E3o deve ter um caractere ou um item com informa\u00E7\u00F5es do elemento [children] porque o tipo de conte\u00FAdo do tipo \u00E9 vazio.
         cvc-complex-type.2.2 = cvc-complex-type.2.2: O elemento ''{0}'' n\u00E3o deve ter um elemento [children] e o valor deve ser v\u00E1lido.
         cvc-complex-type.2.3 = cvc-complex-type.2.3: O elemento ''{0}'' n\u00E3o pode ter um caractere [children] porque o tipo de conte\u00FAdo do tipo \u00E9 somente elemento.
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: O conte\u00FAdo do elemento ''{0}'' n\u00E3o est\u00E1 completo. Era esperado um dos ''{1}''.
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: O curinga correspondente \u00E9 restrito, mas nenhuma declara\u00E7\u00E3o pode ser encontrada para o elemento ''{0}''.
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: Conte\u00FAdo inv\u00E1lido encontrado ao iniciar com o elemento ''{0}''. Nenhum elemento filho \u00E9 esperado neste ponto.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: Foi encontrado um conte\u00FAdo inv\u00E1lido come\u00E7ando com o elemento ''{0}''. Nenhum elemento filho "{1}" \u00E9 esperado neste ponto.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: Foi encontrado um conte\u00FAdo inv\u00E1lido come\u00E7ando com o elemento ''{0}''. Nenhum elemento filho "{1}" \u00E9 esperado neste ponto.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}'' pode ocorrer no m\u00E1ximo ''{2}'' vezes na sequ\u00EAncia atual. Esse limite foi excedido. Nesse ponto, um de ''{1}'' \u00E9 esperado.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}'' pode ocorrer no m\u00E1ximo ''{1}'' vezes na sequ\u00EAncia atual. Esse limite foi excedido. Nenhum elemento filho \u00E9 esperado nesse ponto.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: Foi encontrado um conte\u00FAdo inv\u00E1lido que come\u00E7a com o elemento ''{0}''. O esperado era que ''{1}'' ocorresse no m\u00EDnimo ''{2}'' vezes na sequ\u00EAncia atual. Uma inst\u00E2ncia a mais \u00E9 necess\u00E1ria para satisfazer essa restri\u00E7\u00E3o.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: Foi encontrado um conte\u00FAdo inv\u00E1lido que come\u00E7a com o elemento ''{0}''. O esperado era que ''{1}'' ocorresse no m\u00EDnimo ''{2}'' vezes na sequ\u00EAncia atual. ''{3}'' inst\u00E2ncias a mais s\u00E3o necess\u00E1rias para satisfazer essa restri\u00E7\u00E3o.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: O conte\u00FAdo do elemento ''{0}'' n\u00E3o est\u00E1 completo. O esperado era que ''{1}'' ocorresse no m\u00EDnimo ''{2}'' vezes. Uma inst\u00E2ncia a mais \u00E9 necess\u00E1ria para satisfazer essa restri\u00E7\u00E3o.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: O conte\u00FAdo do elemento ''{0}'' n\u00E3o est\u00E1 completo. O esperado era que ''{1}'' ocorresse no m\u00EDnimo ''{2}'' vezes. ''{3}'' inst\u00E2ncias a mais s\u00E3o necess\u00E1rias para satisfazer essa restri\u00E7\u00E3o.
         cvc-complex-type.3.1 = cvc-complex-type.3.1: O valor ''{2}'' do atributo ''{1}'' do elemento ''{0}'' n\u00E3o \u00E9 v\u00E1lido em rela\u00E7\u00E3o ao uso do atributo correspondente. O atributo ''{1}'' tem um valor fixo de ''{3}''.
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: O elemento ''{0}'' n\u00E3o tem um curinga do atributo ''{1}''.
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: O atributo ''{1}'' n\u00E3o pode aparecer no elemento ''{0}''.
         cvc-complex-type.4 = cvc-complex-type.4: O atributo ''{1}'' deve aparecer no elemento ''{0}''.
         cvc-complex-type.5.1 = cvc-complex-type.5.1: No elemento ''{0}'', o atributo ''{1}'' \u00E9 um ID Curinga, mas j\u00E1 existe um ID Curinga ''{2}''. Pode haver somente um.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: No elemento, ''{0}'', o atributo ''{1}'' \u00E9 um ID Curinga, mas j\u00E1 existe um atributo ''{2}'' obtido do ID entre os ''{''attribute uses''}''.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: No elemento, ''{0}'', o atributo ''{1}'' \u00E9 um ID Curinga, mas j\u00E1 existe um atributo ''{2}'' obtido do ID entre os '{'attribute uses'}'.
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}'' n\u00E3o \u00E9 um valor v\u00E1lido para ''{1}''.
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}'' n\u00E3o \u00E9 um valor v\u00E1lido do tipo de lista ''{1}''.
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}'' n\u00E3o \u00E9 um valor v\u00E1lido do tipo de uni\u00E3o ''{1}''.
-        cvc-elt.1 = cvc-elt.1: N\u00E3o pode localizar a declara\u00E7\u00E3o do elemento ''{0}''.
+        cvc-elt.1.a = cvc-elt.1.a: N\u00E3o foi poss\u00EDvel encontrar a declara\u00E7\u00E3o do elemento ''{0}''.
+        cvc-elt.1.b = cvc-elt.1.b: O nome do elemento n\u00E3o corresponde ao nome da declara\u00E7\u00E3o do elemento. Foi visto ''{0}''. Era esperado ''{1}''.
         cvc-elt.2 = cvc-elt.2: O valor de "{"abstract"}" na declara\u00E7\u00E3o do elemento para ''{0}'' deve ser falso.
-        cvc-elt.3.1 = cvc-elt.3.1: O atributo ''{1}'' n\u00E3o deve aparecer no elemento ''{0}'' porque a propriedade ''{''nillable''}'' de ''{0}'' \u00E9 falsa.
+        cvc-elt.3.1 = cvc-elt.3.1: O atributo ''{1}'' n\u00E3o deve aparecer no elemento ''{0}'' porque a propriedade '{'nillable'}' de ''{0}'' \u00E9 falsa.
         cvc-elt.3.2.1 = cvc-elt.3.2.1: O elemento ''{0}'' n\u00E3o pode ter informa\u00E7\u00F5es de caractere ou de elemento [children] porque ''{1}'' foi especificado.
         cvc-elt.3.2.2 = cvc-elt.3.2.2: N\u00E3o deve haver "{"value constraint"}" fixo para o elemento ''{0}'' porque ''{1}'' foi especificado.
         cvc-elt.4.1 = cvc-elt.4.1: O valor ''{2}'' do atributo ''{1}'' do elemento ''{0}'' n\u00E3o \u00E9 um QName v\u00E1lido.
         cvc-elt.4.2 = cvc-elt.4.2: N\u00E3o \u00E9 poss\u00EDvel resolver ''{1}'' para uma defini\u00E7\u00E3o de tipo de elemento ''{0}''.
         cvc-elt.4.3 = cvc-elt.4.3: O tipo ''{1}'' n\u00E3o \u00E9 obtido de forma v\u00E1lida da defini\u00E7\u00E3o do tipo, ''{2}'', do elemento ''{0}''.
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: "{"value constraint"}" ''{2}'' do elemento ''{0}'' n\u00E3o \u00E9 um valor default v\u00E1lido para o tipo ''{1}''.
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: "{"value constraint"}" ''{2}'' do elemento ''{0}'' n\u00E3o \u00E9 um valor padr\u00E3o v\u00E1lido para o tipo ''{1}''.
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: O elemento ''{0}'' n\u00E3o deve ter item de informa\u00E7\u00F5es do elemento [children].
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: O valor ''{1}'' do elemento ''{0}'' n\u00E3o corresponde ao valor fixo de ''{''value constraint''}'' ''{2}''.
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: O valor ''{1}'' do elemento ''{0}'' n\u00E3o corresponde ao valor de ''{''value constraint''}'' ''{2}'' .
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: O valor ''{1}'' do elemento ''{0}'' n\u00E3o corresponde ao valor fixo de '{'value constraint'}' ''{2}''.
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: O valor ''{1}'' do elemento ''{0}'' n\u00E3o corresponde ao valor de '{'value constraint'}' ''{2}'' .
         cvc-enumeration-valid = cvc-enumeration-valid: O valor ''{0}'' n\u00E3o tem um aspecto v\u00E1lido em rela\u00E7\u00E3o \u00E0 enumera\u00E7\u00E3o ''{1}''. Deve ser um valor da enumera\u00E7\u00E3o.
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: O valor ''{0}'' tem {1} d\u00EDgitos fracion\u00E1rios, mas o n\u00FAmero de d\u00EDgitos fracion\u00E1rios foi limitado a {2}.
         cvc-id.1 = cvc-id.1: N\u00E3o h\u00E1 associa\u00E7\u00E3o de ID/IDREF para IDREF ''{0}''.
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: O valor ''{0}'' com tamanho = ''{1}'' n\u00E3o tem um aspecto v\u00E1lido em rela\u00E7\u00E3o ao minLength ''{2}'' do tipo ''{3}''.
         cvc-pattern-valid = cvc-pattern-valid: O valor ''{0}'' n\u00E3o tem um aspecto v\u00E1lido em rela\u00E7\u00E3o ao padr\u00E3o ''{1}'' do tipo ''{2}''.
         cvc-totalDigits-valid = cvc-totalDigits-valid: O valor ''{0}'' tem {1} d\u00EDgitos do total, mas o n\u00FAmero de d\u00EDgitos do total foi limitado a {2}.
+        cvc-type.1 = cvc-type.1: A defini\u00E7\u00E3o ''{0}'' de tipo n\u00E3o foi encontrada.
         cvc-type.2 = cvc-type.2: A defini\u00E7\u00E3o do tipo n\u00E3o pode ser abstrata para o elemento {0}.
         cvc-type.3.1.1 = cvc-type.3.1.1: O elemento ''{0}'' tem um tipo simples. Dessa forma, n\u00E3o pode haver atributos, exceto aqueles cujo nome do namespace \u00E9 id\u00EAntico a ''http://www.w3.org/2001/XMLSchema-instance'' e cujo [local name] \u00E9 um dos seguintes ''type'', ''nil'', ''schemaLocation'' ou ''noNamespaceSchemaLocation''. No entanto, o atributo ''{1}'' foi encontrado.
         cvc-type.3.1.2 = cvc-type.3.1.2: O elemento ''{0}'' tem um tipo simples. Dessa forma, n\u00E3o deve haver um item de informa\u00E7\u00F5es do elemento [children].
@@ -114,8 +120,8 @@
         schema_reference.access = schema_reference: falha ao ler o documento de esquema ''{0}'' porque o acesso a ''{1}'' n\u00E3o \u00E9 permitido em decorr\u00EAncia de uma restri\u00E7\u00E3o definida pela propriedade accessExternalSchema. 
         schema_reference.4 = schema_reference.4: Falha ao ler o documento do esquema ''{0}'' porque 1) n\u00E3o foi poss\u00EDvel encontrar o documento; 2) n\u00E3o foi poss\u00EDvel ler o documento; 3) o elemento-raiz do documento n\u00E3o \u00E9 <xsd:schema>.
         src-annotation = src-annotation: os elementos de <annotation> podem conter somente os elementos <appinfo> e <documentation>, mas foi encontrado ''{0}''.
-        src-attribute.1 = src-attribute.1: As propriedades ''default'' e ''fixed'' n\u00E3o podem estar presentes na declara\u00E7\u00E3o do atributo ''{0}''. Use somente uma delas.
-        src-attribute.2 = src-attribute.2: : A propriedade ''default'' est\u00E1 presente no atributo ''{0}''. Dessa forma, o valor de ''use'' deve ser ''optional''.
+        src-attribute.1 = src-attribute.1: As propriedades ''padr\u00E3o'' e ''fixed'' n\u00E3o podem estar presentes na declara\u00E7\u00E3o do atributo ''{0}''. Use somente uma delas.
+        src-attribute.2 = src-attribute.2: : A propriedade ''padr\u00E3o'' est\u00E1 presente no atributo ''{0}''. Dessa forma, o valor de ''use'' deve ser ''optional''.
         src-attribute.3.1 = src-attribute.3.1: 'ref' ou 'name' deve estar presente na declara\u00E7\u00E3o do atributo de local.
         src-attribute.3.2 = src-attribute.3.2: O conte\u00FAdo deve corresponder a (annotation?) da refer\u00EAncia do atributo ''{0}''.
         src-attribute.4 = src-attribute.4: O atributo ''{0}'' tem um atributo ''type'' e um ''simpleType'' filho an\u00F4nimo. Somente um deles \u00E9 permitido para um atributo.
@@ -126,7 +132,7 @@
         src-ct.2.2 = src-ct.2.2: Erro de Representa\u00E7\u00E3o de Defini\u00E7\u00E3o do Tipo Complexo do tipo ''{0}''. Quando um complexType com simpleContent \u00E9 restrito a um complexType com conte\u00FAdo misto e part\u00EDcula esvazi\u00E1vel, ent\u00E3o deve haver um <simpleType> entre os filhos de <restriction>.
         src-ct.4 = src-ct.4: Erro de Representa\u00E7\u00E3o de Defini\u00E7\u00E3o de Tipo Complexo do tipo ''{0}''. A intersec\u00E7\u00E3o de curingas n\u00E3o \u00E9 express\u00EDvel.
         src-ct.5 = src-ct.5: Erro de Representa\u00E7\u00E3o da Defini\u00E7\u00E3o do Tipo Complexo do tipo ''{0}''. A uni\u00E3o de curingas n\u00E3o \u00E9 express\u00EDvel.
-        src-element.1 = src-element.1: As propriedades ''default'' e ''fixed'' n\u00E3o podem estar presentes na declara\u00E7\u00E3o do elemento ''{0}''. Use somente uma delas.
+        src-element.1 = src-element.1: As propriedades ''padr\u00E3o'' e ''fixed'' n\u00E3o podem estar presentes na declara\u00E7\u00E3o do elemento ''{0}''. Use somente uma delas.
         src-element.2.1 = src-attribute.2.1: 'ref' ou 'name' deve estar presente na declara\u00E7\u00E3o de elemento do local.
         src-element.2.2 = src-element.2.2: Como ''{0}'' cont\u00E9m o atributo ''ref'', seu conte\u00FAdo deve ser correspondente (annotation?). No entanto, ''{1}'' foi encontrado.
         src-element.3 = src-element.3: O elemento ''{0}'' tem um atributo ''type'' e um filho ''anonymous type''. Somente um deles \u00E9 permitido para um elemento.
@@ -168,8 +174,8 @@
         ag-props-correct.2 = ag-props-correct.2: Erro do grupo de atributos ''{0}''. Os usos do atributo duplicado com o mesmo nome e namespace de destino foram especificados. O nome de uso do atributo duplicado \u00E9 ''{1}''.
         ag-props-correct.3 = ag-props-correct.3: Erro do grupo de atributos ''{0}''. Duas declara\u00E7\u00F5es de atributo ''{1}'' e ''{2}'' t\u00EAm tipos que s\u00E3o obtidos do ID.
         a-props-correct.2 = a-props-correct.2: Valor de restri\u00E7\u00E3o inv\u00E1lido ''{1}'' no atributo ''{0}''.
-        a-props-correct.3 = a-props-correct.3: O atributo ''{0}'' n\u00E3o pode usar ''fixed'' ou ''default'' porque o ''{''type definition''}'' do atributo \u00E9 ID ou \u00E9 obtida do ID.
-        au-props-correct.2 = au-props-correct.2: Na declara\u00E7\u00E3o do atributo de ''{0}'', foi especificado um valor fixo de ''{1}''. Dessa forma, se o uso do atributo que faz refer\u00EAncia a ''{0}'' tamb\u00E9m tiver uma ''{''value constraint''}'', ele deve ser corrigido e seu valor deve ser ''{1}''.
+        a-props-correct.3 = a-props-correct.3: O atributo ''{0}'' n\u00E3o pode usar ''fixed'' ou ''padr\u00E3o'' porque o '{'type definition'}' do atributo \u00E9 ID ou \u00E9 obtida do ID.
+        au-props-correct.2 = au-props-correct.2: Na declara\u00E7\u00E3o do atributo de ''{0}'', foi especificado um valor fixo de ''{1}''. Dessa forma, se o uso do atributo que faz refer\u00EAncia a ''{0}'' tamb\u00E9m tiver uma '{'value constraint'}', ele deve ser corrigido e seu valor deve ser ''{1}''.
         cos-all-limited.1.2 = cos-all-limited.1.2: Um grupo de modelos 'all' deve ser exibido em uma part\u00EDcula com '{'min occurs'}' = '{'max occurs'}' = 1 e essa part\u00EDcula deve fazer parte de um par que constitui o '{'content type'}' de uma defini\u00E7\u00E3o de tipo complexa.
         cos-all-limited.2 = cos-all-limited.2: O "{"max occurs"}" de um elemento em um grupo de modelos ''all'' deve ser 0 ou 1. O valor ''{0}'' do elemento ''{1}'' \u00E9 inv\u00E1lido.
         cos-applicable-facets = cos-applicable-facets: O aspecto ''{0}'' n\u00E3o \u00E9 permitido pelo tipo {1}.
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: A part\u00EDcula obtida est\u00E1 vazia e a base n\u00E3o pode ser esvaziada.
         cos-particle-restrict.b = cos-particle-restrict.b: A part\u00EDcula base est\u00E1 vazia, mas a part\u00EDcula obtida n\u00E3o est\u00E1.
         cos-particle-restrict.2 = cos-particle-restrict.2: Restri\u00E7\u00E3o de part\u00EDcula proibida: ''{0}''.
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: O tipo ''{1}'' \u00E9 at\u00F4mico. Dessa forma, sua ''{''base type definition''}'', ''{0}'', deve ser uma defini\u00E7\u00E3o de tipo simples at\u00F4mico ou um tipo de dados primitivo criado.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: O tipo ''{1}'' \u00E9 at\u00F4mico. Dessa forma, sua '{'base type definition'}', ''{0}'', deve ser uma defini\u00E7\u00E3o de tipo simples at\u00F4mico ou um tipo de dados primitivo criado.
         cos-st-restricts.2.1 = cos-st-restricts.2.1: Na defini\u00E7\u00E3o do tipo de lista ''{0}'', o tipo ''{1}'' \u00E9 um tipo de item inv\u00E1lido porque \u00E9 um tipo  de lista ou um tipo de uni\u00E3o que cont\u00E9m uma lista.
         cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: O componente "{"final"}" da "{"item type definition"}" ''{0}'' cont\u00E9m ''list''. Isso significa que ''{0}'' n\u00E3o pode ser usado como um tipo de item do tipo de lista ''{1}''.
         cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: O componente "{"final"}" de "{"member type definitions"}", ''{0}'', cont\u00E9m ''union''. Isso significa que ''{0}'' n\u00E3o pode ser usado como um tipo de membro do tipo de uni\u00E3o ''{1}''.
-        cos-valid-default.2.1 = cos-valid-default.2.1: O elemento ''{0}'' tem uma restri\u00E7\u00E3o de valor e deve ter um modelo de conte\u00FAdo simples ou misto.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Como o elemento ''{0}'' tem uma ''{''value constraint''}'' e sua defini\u00E7\u00E3o de tipo tem {''content type''}'' misto, ent\u00E3o a part\u00EDcula do ''{''content type''}'' deve ser esvazi\u00E1vel.
+        cos-valid-default.2.1 = cos-valid-padr\u00E3o.2.1: O elemento ''{0}'' tem uma restri\u00E7\u00E3o de valor e deve ter um modelo de conte\u00FAdo simples ou misto.
+        cos-valid-default.2.2.2 = cos-valid-padr\u00E3o.2.2.2: Como o elemento ''{0}'' tem uma '{'value constraint'}' e sua defini\u00E7\u00E3o de tipo tem {''content type'}' misto, ent\u00E3o a part\u00EDcula do '{'content type'}' deve ser esvazi\u00E1vel.
         c-props-correct.2 = c-props-correct.2: A cardinalidade dos Campos de keyref ''{0}'' e chave ''{1}'' deve ser correspondente.
         ct-props-correct.3 = ct-props-correct.3: Defini\u00E7\u00F5es circulares detectadas para o tipo complexo ''{0}''. Isso significa que ''{0}'' est\u00E1 contido em sua pr\u00F3pria hierarquia de tipo, o que \u00E9 um erro.
         ct-props-correct.4 = ct-props-correct.4: Erro do tipo ''{0}''. Os usos do atributo duplicado com o mesmo nome e namespace de destino foram especificados. O nome do uso do atributo duplicado \u00E9 ''{1}''.
         ct-props-correct.5 = ct-props-correct.5: Erro do tipo ''{0}''. Duas declara\u00E7\u00F5es do atributo ''{1}'' e ''{2}'' t\u00EAm tipos que s\u00E3o obtidos do ID.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: O tipo ''{0}'' foi obtido por meio da restri\u00E7\u00E3o do tipo ''{1}''. No entanto, ''{1}'' tem uma propriedade ''{''final''}'' que pro\u00EDbe a deriva\u00E7\u00E3o por restri\u00E7\u00E3o.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: O tipo ''{0}'' foi obtido por meio da restri\u00E7\u00E3o do tipo ''{1}''. No entanto, ''{1}'' tem uma propriedade '{'final'}' que pro\u00EDbe a deriva\u00E7\u00E3o por restri\u00E7\u00E3o.
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: Erro do tipo ''{0}''. O uso do atributo ''{1}'' neste tipo tem um valor de ''uso'' de ''{2}'', que \u00E9 inconsistente com o valor ''obrigat\u00F3rio'' em um uso de atributo correspondente no tipo de base.
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: Erro do tipo ''{0}''. O uso do atributo ''{1}'' neste tipo tem o tipo ''{2}'', que \u00E9 obtido de forma v\u00E1lida de "{3}", o tipo de uso do atributo correspondente no tipo de base.
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: Erro do tipo ''{0}''. O uso do atributo ''{1}'' neste tipo tem uma restri\u00E7\u00E3o de valor efetivo que n\u00E3o \u00E9 fixa e a restri\u00E7\u00E3o de valor efetivo do atributo correspondente no tipo de base \u00E9 fixa.
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: Erro do tipo ''{2}''. O valor maxInclusive =''{0}'' deve ser > = minInclusive do tipo de base ''{1}''.
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: Erro do tipo ''{2}''. O valor maxInclusive =''{0}'' deve ser > minInclusive do tipo de base ''{1}''.
         maxLength-valid-restriction = maxLength-valid-restriction: Na defini\u00E7\u00E3o de {2}, o valor maxLength = ''{0}'' deve ser <= que o do tipo de base ''{1}''.
-        mg-props-correct.2 = mg-props-correct.2: Defini\u00E7\u00F5es circulares detectadas para o grupo ''{0}''. Seguir de forma recursiva dos valores de ''{''term''}'' das part\u00EDculas conduz a uma part\u00EDcula cujo ''{''term''}'' \u00E9 o pr\u00F3prio grupo.
+        mg-props-correct.2 = mg-props-correct.2: Defini\u00E7\u00F5es circulares detectadas para o grupo ''{0}''. Seguir de forma recursiva dos valores de '{'term'}' das part\u00EDculas conduz a uma part\u00EDcula cujo '{'term'}' \u00E9 o pr\u00F3prio grupo.
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: Na defini\u00E7\u00E3o de {2}, o valor minExclusive = ''{0}'' deve ser <= que o valor maxExclusive = ''{1}''.
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: Na defini\u00E7\u00E3o de {2}, o valor minExclusive = ''{0}'' deve ser <= que o valor maxInclusive = ''{1}''.
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: Erro do tipo ''{2}''. O valor minExclusive =''{0}'' deve ser >= minExclusive do tipo de base ''{1}''.
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: Um esquema n\u00E3o pode conter dois componentes globais com o mesmo nome; este esquema cont\u00E9m duas ocorr\u00EAncias de ''{0}''.
         st-props-correct.2 = st-props-correct.2: Defini\u00E7\u00F5es circulares detectadas para o tipo simples {0}''. Isso significa que ''{0}'' est\u00E1 contido em sua pr\u00F3pria hierarquia de tipo, o que \u00E9 um erro.
-        st-props-correct.3 = st-props-correct.3: Erro do tipo ''{0}''. O valor de ''{''final''}'' da ''{''base type definition''}'', ''{1}'', pro\u00EDbe a obten\u00E7\u00E3o por restri\u00E7\u00E3o.
+        st-props-correct.3 = st-props-correct.3: Erro do tipo ''{0}''. O valor de '{'final'}' da '{'base type definition'}', ''{1}'', pro\u00EDbe a obten\u00E7\u00E3o por restri\u00E7\u00E3o.
         totalDigits-valid-restriction = totalDigits-valid-restriction: Na defini\u00E7\u00E3o de {2}, o valor ''{0}'' do "totalDigits"'' do aspecto \u00E9 inv\u00E1lido porque ele deve ser <= ao valor de ''totalDigits", que foi definido como ''{1}'' em um dos tipos de ancestrais.
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: Na defini\u00E7\u00E3o de {0}, o valor ''{1}'' do aspecto ''whitespace'' \u00E9 inv\u00E1lido porque o valor para ''whitespace'' foi definido como ''colapse'' em um dos tipos de ancestrais.
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: Na defini\u00E7\u00E3o de {0}, o valor do aspecto ''preserve'' \u00E9 inv\u00E1lido para o aspecto "whitespace" porque o valor para ''whitespace'' foi definido como ''replace'' em um dos tipos de ancestrais.
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: O valor do seletor = ''{0}'' n\u00E3o \u00E9 v\u00E1lido; os xpaths do seletor n\u00E3o podem conter atributos.
         EmptyTargetNamespace = EmptyTargetNamespace: No documento do esquema ''{0}'', o valor do atributo ''targetNamespace'' n\u00E3o pode ser uma string vazia.
         FacetValueFromBase = FacetValueFromBase: Na declara\u00E7\u00E3o do tipo ''{0}'', o valor ''{1}'' do aspecto ''{2}'' deve ser proveniente do espa\u00E7o de valor do tipo de base, ''{3}''.
-        FixedFacetValue = FixedFacetValue: Na defini\u00E7\u00E3o de {3}, o valor ''{1}'' do aspecto ''{0}'' \u00E9 inv\u00E1lido porque o valor de ''{0}'' foi enviado para ''{2}'' em um dos tipos de ancestrais e ''{''fixed''}'' = true.
+        FixedFacetValue = FixedFacetValue: Na defini\u00E7\u00E3o de {3}, o valor ''{1}'' do aspecto ''{0}'' \u00E9 inv\u00E1lido porque o valor de ''{0}'' foi enviado para ''{2}'' em um dos tipos de ancestrais e '{'fixed'}' = true.
         InvalidRegex = InvalidRegex: O valor do padr\u00E3o ''{0}'' n\u00E3o \u00E9 uma express\u00E3o regular v\u00E1lida. O erro reportado foi: ''{1}'' na coluna ''{2}''.
-        maxOccurLimit = A configura\u00E7\u00E3o atual do parser n\u00E3o permite que o valor de um atributo maxOccurs seja definido como maior que o valor {0}.
+        MaxOccurLimit = A configura\u00E7\u00E3o atual do parser n\u00E3o permite que o valor de um atributo maxOccurs seja definido como maior que o valor {0}.
         PublicSystemOnNotation = PublicSystemOnNotation: Pelo menos ''public'' e ''system'' devem aparecer no elemento ''notation''.
         SchemaLocation = SchemaLocation: schemaLocation value = ''{0}''deve ter n\u00FAmero par de URIs.
         TargetNamespace.1 = TargetNamespace.1: Esperava o namespace ''{0}'', mas o namespace de destino do documento do esquema \u00E9 ''{1}''.
         TargetNamespace.2 = TargetNamespace.2: Exceto no namespace, mas o documento do esquema tem um namespace de destino ''{1}''.
         UndeclaredEntity = UndeclaredEntity: A entidade ''{0}'' n\u00E3o foi declarada.
         UndeclaredPrefix = UndeclaredPrefix: N\u00E3o \u00E9 poss\u00EDvel resolver ''{0}'' como um QName: o prefixo ''{1}'' n\u00E3o foi declarado.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = A propriedade ''http://java.sun.com/xml/jaxp/properties/schemaSource'' n\u00E3o pode ter um valor do tipo ''{0}''. Os tipos poss\u00EDveis do valor suportados s\u00E3o String, File, InputStream, InputSource ou um array desses tipos.
+        jaxp12-schema-source-type.2 = A propriedade ''http://java.sun.com/xml/jaxp/properties/schemaSource'' n\u00E3o pode ter um valor de array do tipo ''{0}''. Os tipos poss\u00EDveis do array suportados s\u00E3o Object, String, File, InputStream e InputSource.
+        jaxp12-schema-source-ns = Ao utilizar um array do tipo Object como valor da propriedade 'http://java.sun.com/xml/jaxp/properties/schemaSource', n\u00E3o \u00E9 v\u00E1lido ter dois esquemas que compartilham o mesmo namespace de destino.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties
index f14d85b..eeaf778 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_sv.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/16 06:50:58 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_sv.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
 
         BadMessageKey = Hittar inte felmeddelandet som motsvarar meddelandenyckeln.
         FormatFailed = Ett internt fel intr\u00E4ffade vid formatering av f\u00F6ljande meddelande:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = Fel vid id-begr\u00E4nsning (cvc-identity-constraint.4.2.1): elementet "{0}" har en nyckel som saknar v\u00E4rde.
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: Elementet "{0}" har inget v\u00E4rde f\u00F6r nyckeln "{1}".
         DuplicateField = Dubblettmatchning inom omfattningen av f\u00E4ltet "{0}".
-        DuplicateKey = Duplicerat nyckelv\u00E4rde [{0}] har deklarerats f\u00F6r id-begr\u00E4nsning av elementet "{1}".
-        DuplicateUnique = Duplicerat unikt v\u00E4rde [{0}] har deklarerats f\u00F6r id-begr\u00E4nsning av elementet "{1}".
-        FieldMultipleMatch = Fel vid id-begr\u00E4nsning: f\u00E4ltet "{0}" matchar fler \u00E4n ett v\u00E4rde inom omfattningen av v\u00E4ljaren; f\u00E4lt m\u00E5ste matcha unika v\u00E4rden.
+        DuplicateKey = cvc-identity-constraint.4.2.2: Duplicerat nyckelv\u00E4rde [{0}] har deklarerats f\u00F6r identitetsbegr\u00E4nsningen "{2}" f\u00F6r elementet "{1}".
+        DuplicateUnique = cvc-identity-constraint.4.1: Duplicerat unikt v\u00E4rde [{0}] har deklarerats f\u00F6r identitetsbegr\u00E4nsningen "{2}" f\u00F6r elementet "{1}".
+        FieldMultipleMatch = cvc-identity-constraint.3: F\u00E4ltet "{0}" f\u00F6r identitetsbegr\u00E4nsningen "{1}" matchar flera v\u00E4rden inom omfattningen f\u00F6r v\u00E4ljaren. F\u00E4lt m\u00E5ste matcha unika v\u00E4rden.
         FixedDiffersFromActual = Elementets inneh\u00E5ll motsvarar inte v\u00E4rdet av attributet som anges som "fixed" i elementdeklarationen i schemat.
-        KeyMatchesNillable = Fel vid id-begr\u00E4nsning (cvc-identity-constraint.4.2.3): elementet "{0}" har en nyckel som matchar ett element med nullbart v\u00E4rde angivet som true.
-        KeyNotEnoughValues = Det finns inte tillr\u00E4ckligt m\u00E5nga v\u00E4rden angivna f\u00F6r <key name="{1}"> som id-begr\u00E4nsning f\u00F6r elementet "{0}".
-        KeyNotFound = Nyckeln ''{0}'' med v\u00E4rdet ''{1}'' hittades inte f\u00F6r id-begr\u00E4nsning f\u00F6r element ''{2}''.
-        KeyRefNotEnoughValues = Det finns inte tillr\u00E4ckligt m\u00E5nga v\u00E4rden angivna f\u00F6r <keyref name="{1}"> som id-begr\u00E4nsning f\u00F6r elementet "{0}".
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: Elementet "{0}" har nyckeln "{1}" som matchar ett element d\u00E4r nillable \u00E4r angett till sant.
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: Inte tillr\u00E4ckligt m\u00E5nga v\u00E4rden har angetts f\u00F6r identitetsbegr\u00E4nsningen <key name="{1}"> som har angetts f\u00F6r elementet "{0}".
+        KeyNotFound = cvc-identity-constraint.4.3: Nyckeln ''{0}'' med v\u00E4rdet ''{1}'' hittades inte f\u00F6r identitetsbegr\u00E4nsningen f\u00F6r elementet ''{2}''.
         KeyRefOutOfScope = Fel vid id-begr\u00E4nsning: id-begr\u00E4nsning "{0}" har en nyckelreferens som refererar till nyckel eller unikt v\u00E4rde utanf\u00F6r definitionsomr\u00E5det.
         KeyRefReferNotFound = Nyckelreferensdeklarationen "{0}" refererar till ok\u00E4nd nyckel med namnet "{1}".
-        UniqueNotEnoughValues = Det finns inte tillr\u00E4ckligt m\u00E5nga v\u00E4rden angivna f\u00F6r <unique> som id-begr\u00E4nsning f\u00F6r elementet "{0}".
-        UnknownField = Fel vid intern id-begr\u00E4nsning; ok\u00E4nt f\u00E4lt "{0}".
+        UnknownField = Internt identitetsbegr\u00E4nsningsfel: det ok\u00E4nda f\u00E4ltet "{0}" f\u00F6r identitetsbegr\u00E4nsningen "{2}" har angetts f\u00F6r elementet "{1}".
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: V\u00E4rdet ''{2}'' f\u00F6r attributet ''{1}'' i elementet ''{0}'' har ogiltig typ, ''{3}''.
-        cvc-attribute.4 = cvc-attribute.4: V\u00E4rdet ''{2}'' f\u00F6r attributet ''{1}'' i elementet ''{0}'' har ogiltig fast ''{''v\u00E4rdebegr\u00E4nsning''}''. Attributet m\u00E5ste ha v\u00E4rdet ''{3}''.
+        cvc-attribute.4 = cvc-attribute.4: V\u00E4rdet ''{2}'' f\u00F6r attributet ''{1}'' i elementet ''{0}'' har ogiltig fast '{'v\u00E4rdebegr\u00E4nsning'}'. Attributet m\u00E5ste ha v\u00E4rdet ''{3}''.
         cvc-complex-type.2.1 = cvc-complex-type.2.1: Elementet ''{0}'' f\u00E5r inte ha [underordnade] objekt med tecken- eller elementinformation, eftersom inneh\u00E5llstyp \u00E4r tomt.
         cvc-complex-type.2.2 = cvc-complex-type.2.2: Elementet ''{0}'' f\u00E5r inte ha [underordnade] element och v\u00E4rdet m\u00E5ste vara giltigt.
         cvc-complex-type.2.3 = cvc-complex-type.2.3: Elementet ''{0}'' f\u00E5r inte ha [underordnade] tecken, eftersom inneh\u00E5llstyp \u00E4r endast element.
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: Inneh\u00E5llet i elementet ''{0}'' \u00E4r inte fullst\u00E4ndigt. N\u00E5got av ''{1}'' f\u00F6rv\u00E4ntas.
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: Matchningen av jokertecken \u00E4r strikt, men ingen deklaration hittades f\u00F6r elementet ''{0}''.
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: Ogiltigt inneh\u00E5ll hittades med b\u00F6rjan med elementet ''{0}''. Inget underordnat element f\u00F6rv\u00E4ntas i det h\u00E4r skedet.
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: Ogiltigt inneh\u00E5ll hittades med b\u00F6rjan med elementet ''{0}''. Det underordnade elementet ''{1}'' f\u00F6rv\u00E4ntas i det h\u00E4r skedet.
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: Ogiltigt inneh\u00E5ll hittades med b\u00F6rjan med elementet ''{0}''. Det underordnade elementet ''{1}'' f\u00F6rv\u00E4ntas i det h\u00E4r skedet.
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}'' kan intr\u00E4ffa h\u00F6gst ''{2}'' g\u00E5nger i den aktuella sekvensen. Den h\u00E4r gr\u00E4nsen har \u00F6verskridits. Vid den h\u00E4r punkten f\u00F6rv\u00E4ntas n\u00E5got av ''{1}''.
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}'' kan intr\u00E4ffa h\u00F6gst ''{1}'' g\u00E5nger i den aktuella sekvensen. Den h\u00E4r gr\u00E4nsen har \u00F6verskridits. Inget underordnat element f\u00F6rv\u00E4ntas vid den h\u00E4r punkten.
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: Ogiltigt inneh\u00E5ll hittades med b\u00F6rjan fr\u00E5n elementet ''{0}''. ''{1}'' f\u00F6rv\u00E4ntas intr\u00E4ffa minst ''{2}'' g\u00E5nger i den aktuella sekvensen. En till instans kr\u00E4vs f\u00F6r att uppfylla den h\u00E4r begr\u00E4nsningen.
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.g: Ogiltigt inneh\u00E5ll hittades med b\u00F6rjan fr\u00E5n elementet ''{0}''. ''{1}'' f\u00F6rv\u00E4ntas intr\u00E4ffa minst ''{2}'' g\u00E5nger i den aktuella sekvensen. ''{3}'' till instanser kr\u00E4vs f\u00F6r att uppfylla den h\u00E4r begr\u00E4nsningen.
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: Inneh\u00E5llet i elementet ''{0}'' \u00E4r inte fullst\u00E4ndigt. ''{1}'' f\u00F6rv\u00E4ntas intr\u00E4ffa minst ''{2}'' g\u00E5nger. En till instans kr\u00E4vs f\u00F6r att uppfylla den h\u00E4r begr\u00E4nsningen.
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: Inneh\u00E5llet i elementet ''{0}'' \u00E4r inte fullst\u00E4ndigt. ''{1}'' f\u00F6rv\u00E4ntas intr\u00E4ffa minst ''{2}'' g\u00E5nger. ''{3}'' till instanser kr\u00E4vs f\u00F6r att uppfylla den h\u00E4r begr\u00E4nsningen.
         cvc-complex-type.3.1 = cvc-complex-type.3.1: V\u00E4rdet ''{2}'' f\u00F6r attributet ''{1}'' i elementet ''{0}'' \u00E4r inte giltigt med motsvarande attributanv\u00E4ndning. Attributet ''{1}'' har det fasta v\u00E4rdet ''{3}''.
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: Elementet ''{0}'' saknar attributjokertecken f\u00F6r attributet ''{1}''.
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: Attributet ''{1}'' \u00E4r inte till\u00E5tet i elementet ''{0}''.
         cvc-complex-type.4 = cvc-complex-type.4: Attributet ''{1}'' m\u00E5ste anger i elementet ''{0}''.
         cvc-complex-type.5.1 = cvc-complex-type.5.1: I elementet ''{0}'' \u00E4r attributet ''{1}'' ett joker-id. Joker-id ''{2}'' finns redan och endast ett id kan anv\u00E4ndas.
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: I elementet ''{0}'' \u00E4r attributet ''{1}'' ett joker-id. Det finns redan ett attribut ''{2}'' som tas fr\u00E5n id bland ''{''attributanv\u00E4ndningar''}''.
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: I elementet ''{0}'' \u00E4r attributet ''{1}'' ett joker-id. Det finns redan ett attribut ''{2}'' som tas fr\u00E5n id bland '{'attributanv\u00E4ndningar'}'.
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}'' \u00E4r inte n\u00E5got giltigt v\u00E4rde f\u00F6r ''{1}''.
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}'' \u00E4r inte n\u00E5got giltigt v\u00E4rde f\u00F6r listtyp ''{1}''.
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}'' \u00E4r inte n\u00E5got giltigt v\u00E4rde f\u00F6r uniontyp ''{1}''.
-        cvc-elt.1 = cvc-elt.1: Kan inte hitta deklarationen f\u00F6r elementet ''{0}''.
-        cvc-elt.2 = cvc-elt.2: V\u00E4rdet f\u00F6r ''{''abstrakt''}'' i elementdeklarationen f\u00F6r ''{0}'' m\u00E5ste anges som false.
-        cvc-elt.3.1 = cvc-elt.3.1: Attributet ''{1}'' f\u00E5r inte anges i elementet ''{0}'', eftersom ''{''nullbar''}'' egenskap f\u00F6r ''{0}'' har angetts som false.
+        cvc-elt.1.a = cvc-elt.1.a: Kan inte hitta deklarationen f\u00F6r elementet ''{0}''.
+        cvc-elt.1.b = cvc-elt.1.b: Namnet p\u00E5 elementet matchar inte namnet p\u00E5 elementdeklarationen. P\u00E5tr\u00E4ffade ''{0}''. F\u00F6rv\u00E4ntade ''{1}''.
+        cvc-elt.2 = cvc-elt.2: V\u00E4rdet f\u00F6r '{'abstrakt'}' i elementdeklarationen f\u00F6r ''{0}'' m\u00E5ste anges som false.
+        cvc-elt.3.1 = cvc-elt.3.1: Attributet ''{1}'' f\u00E5r inte anges i elementet ''{0}'', eftersom '{'nullbar'}' egenskap f\u00F6r ''{0}'' har angetts som false.
         cvc-elt.3.2.1 = cvc-elt.3.2.1: Elementet ''{0}'' f\u00E5r inte inneh\u00E5lla [underordnade] med tecken- eller elementinformation eftersom ''{1}'' har angetts.
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: Det f\u00E5r inte finnas n\u00E5gon fast ''{''v\u00E4rdebegr\u00E4nsning''}'' f\u00F6r elementet ''{0}'' eftersom ''{1}'' har angetts.
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: Det f\u00E5r inte finnas n\u00E5gon fast '{'v\u00E4rdebegr\u00E4nsning'}' f\u00F6r elementet ''{0}'' eftersom ''{1}'' har angetts.
         cvc-elt.4.1 = cvc-elt.4.1: V\u00E4rdet ''{2}'' f\u00F6r attributet ''{1}'' i elementet ''{0}'' \u00E4r inte n\u00E5got giltigt QName.
         cvc-elt.4.2 = cvc-elt.4.2: Kan inte matcha ''{1}'' med typdefinition f\u00F6r elementet ''{0}''.
         cvc-elt.4.3 = cvc-elt.4.3: Typ ''{1}'' \u00E4r inte giltigt att tas fr\u00E5n typdefinitionen ''{2}'' i elementet ''{0}''.
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: ''{''v\u00E4rdebegr\u00E4nsning''}'' ''{2}'' i elementet ''{0}'' \u00E4r inte n\u00E5got giltigt standardv\u00E4rde f\u00F6r typ ''{1}''.
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: '{'v\u00E4rdebegr\u00E4nsning'}' ''{2}'' i elementet ''{0}'' \u00E4r inte n\u00E5got giltigt standardv\u00E4rde f\u00F6r typ ''{1}''.
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: Elementet ''{0}'' f\u00E5r inte ha [underordnade] objekt med elementinformation.
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: V\u00E4rdet ''{1}'' i elementet ''{0}'' matchar inte v\u00E4rdet med fast ''{''v\u00E4rdebegr\u00E4nsning''}'', ''{2}''.
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: V\u00E4rdet ''{1}'' i elementet ''{0}'' matchar inte v\u00E4rdet med ''{''v\u00E4rdebegr\u00E4nsning''}'', ''{2}''.
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: V\u00E4rdet ''{1}'' i elementet ''{0}'' matchar inte v\u00E4rdet med fast '{'v\u00E4rdebegr\u00E4nsning'}', ''{2}''.
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: V\u00E4rdet ''{1}'' i elementet ''{0}'' matchar inte v\u00E4rdet med '{'v\u00E4rdebegr\u00E4nsning'}', ''{2}''.
         cvc-enumeration-valid = cvc-enumeration-valid: V\u00E4rdet ''{0}'' \u00E4r ogiltigt med aktuell uppr\u00E4kning ''{1}''. V\u00E4rdet m\u00E5ste ing\u00E5 i uppr\u00E4kningen.
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: V\u00E4rdet ''{0}'' har {1} br\u00E5ktalssiffror, men antalet br\u00E5ktalssiffror \u00E4r begr\u00E4nsat till {2}.
         cvc-id.1 = cvc-id.1: Det finns ingen ID/IDREF-bindning f\u00F6r IDREF ''{0}''.
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: V\u00E4rdet ''{0}'' med l\u00E4ngd = ''{1}'' \u00E4r ogiltigt med aktuellt minLength ''{2}'' f\u00F6r typ ''{3}''.
         cvc-pattern-valid = cvc-pattern-valid: V\u00E4rdet ''{0}'' \u00E4r ogiltigt med aktuellt m\u00F6nster ''{1}'' f\u00F6r typ ''{2}''.
         cvc-totalDigits-valid = cvc-totalDigits-valid: V\u00E4rdet ''{0}'' har {1} siffror, men det totala antalet siffror \u00E4r begr\u00E4nsat till {2}.
+        cvc-type.1 = cvc-type.1: Typdefinitionen ''{0}'' hittades inte.
         cvc-type.2 = cvc-type.2: Typdefinitionen kan inte vara abstrakt f\u00F6r elementet {0}.
         cvc-type.3.1.1 = cvc-type.3.1.1: Elementet ''{0}'' har enkel typ och kan inte inneh\u00E5lla attribut, ut\u00F6ver s\u00E5dana vars namnrymd \u00E4r identisk med ''http://www.w3.org/2001/XMLSchema-instance'' och vars [lokala namn] har n\u00E5gotdera av ''type'', ''nil'', ''schemaLocation'' eller ''noNamespaceSchemaLocation''. Hittade dock attributet ''{1}''.
         cvc-type.3.1.2 = cvc-type.3.1.2: Elementet ''{0}'' har enkel typ och f\u00E5r inte inneh\u00E5lla [underordnade] med elementinformation.
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: Ett fel intr\u00E4ffade f\u00F6r attributgruppen ''{0}''. Duplicerad attributanv\u00E4ndning med samma namn och namnrymd. Namnet p\u00E5 dubbletten \u00E4r ''{1}''.
         ag-props-correct.3 = ag-props-correct.3: Ett fel intr\u00E4ffade f\u00F6r attributgruppen ''{0}''. Tv\u00E5 attributdeklarationer, ''{1}'' och ''{2}'' har angetts med typer som h\u00E4rleds fr\u00E5n ID.
         a-props-correct.2 = a-props-correct.2: Ogiltigt v\u00E4rde f\u00F6r begr\u00E4nsning, ''{1}'', i attributet ''{0}''.
-        a-props-correct.3 = a-props-correct.3: Attributet ''{0}'' f\u00E5r inte anv\u00E4nda ''fixed'' eller ''default'', eftersom attributets ''{''typdefinition''}'' \u00E4r ID eller h\u00E4rleds fr\u00E5n ID.
-        au-props-correct.2 = au-props-correct.2: Det fasta v\u00E4rdet ''{1}'' har angetts i attributdeklarationen ''{0}''. Om attributet som refererar till ''{0}'' \u00E4ven inneh\u00E5ller en ''{''v\u00E4rdebegr\u00E4nsning''}'' m\u00E5ste du l\u00F6sa detta och ange v\u00E4rdet ''{1}''.
+        a-props-correct.3 = a-props-correct.3: Attributet ''{0}'' f\u00E5r inte anv\u00E4nda ''fixed'' eller ''default'', eftersom attributets '{'typdefinition'}' \u00E4r ID eller h\u00E4rleds fr\u00E5n ID.
+        au-props-correct.2 = au-props-correct.2: Det fasta v\u00E4rdet ''{1}'' har angetts i attributdeklarationen ''{0}''. Om attributet som refererar till ''{0}'' \u00E4ven inneh\u00E5ller en '{'v\u00E4rdebegr\u00E4nsning'}' m\u00E5ste du l\u00F6sa detta och ange v\u00E4rdet ''{1}''.
         cos-all-limited.1.2 = cos-all-limited.1.2: En 'all'-modellgrupp m\u00E5ste anges i en partikel med '{'min f\u00F6rekomster'}' = '{'max f\u00F6rekomster'}' = 1 och partikeln m\u00E5ste vara en del i ett par som utg\u00F6r '{'inneh\u00E5llstyp'}' i en komplex typdefinition.
-        cos-all-limited.2 = cos-all-limited.2: V\u00E4rdet f\u00F6r ''{''max f\u00F6rekomster''}'' i ett element i en ''all''-modellgrupp m\u00E5ste vara 0 eller 1. V\u00E4rdet ''{0}'' f\u00F6r elementet ''{1}'' \u00E4r ogiltigt.
+        cos-all-limited.2 = cos-all-limited.2: V\u00E4rdet f\u00F6r '{'max f\u00F6rekomster'}' i ett element i en ''all''-modellgrupp m\u00E5ste vara 0 eller 1. V\u00E4rdet ''{0}'' f\u00F6r elementet ''{1}'' \u00E4r ogiltigt.
         cos-applicable-facets = cos-applicable-facets: Aspekten (facet) ''{0}'' \u00E4r inte till\u00E5ten med typ {1}.
         cos-ct-extends.1.1 = cos-ct-extends.1.1: Typ ''{0}'' h\u00E4rleds fr\u00E5n ett till\u00E4gg fr\u00E5n typ ''{1}''. Attributet ''final'' i ''{1}'' till\u00E5ter dock inte h\u00E4rledning av till\u00E4gg.
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: Inneh\u00E5llstyp f\u00F6r h\u00E4rledd typ och f\u00F6r basen m\u00E5ste b\u00E5da vara blandade eller endast element. Typ ''{0}'' \u00E4r endast element, men d\u00E4remot inte basen.
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: H\u00E4rledd partikel \u00E4r tom och basen \u00E4r inte t\u00F6mningsbar.
         cos-particle-restrict.b = cos-particle-restrict.b: Baspartikeln \u00E4r tom, men den h\u00E4rledda partikeln \u00E4r inte det.
         cos-particle-restrict.2 = cos-particle-restrict.2: F\u00F6rbjuden partikelbegr\u00E4nsning: ''{0}''.
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: Typ ''{1}'' \u00E4r atomisk och d\u00E4rf\u00F6r m\u00E5ste ''{''bastypdefinitionen''}'', ''{0}'', anges som atomisk enkel typ eller inbyggd primitiv datatyp.
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: Typ ''{1}'' \u00E4r atomisk och d\u00E4rf\u00F6r m\u00E5ste '{'bastypdefinitionen'}', ''{0}'', anges som atomisk enkel typ eller inbyggd primitiv datatyp.
         cos-st-restricts.2.1 = cos-st-restricts.2.1: I definitionen av listtyp ''{0}'' \u00E4r typ ''{1}'' en ogiltig objekttyp eftersom det \u00E4r antingen en listtyp eller en uniontyp som inneh\u00E5ller en lista.
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: Den ''{''sista''}'' komponenten i ''{''objekttypdefinitionen''}'', ''{0}'', inneh\u00E5ller ''list''. Detta betyder att ''{0}'' inte kan anv\u00E4ndas som objekttyp f\u00F6r listtyp ''{1}''.
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: Den ''{''sista''}'' komponenten i ''{''medlemtypdefinitionerna''}'', ''{0}'', inneh\u00E5ller ''union''. Detta betyder att ''{0}'' inte kan anv\u00E4ndas som medlemstyp f\u00F6r uniontyp ''{1}''.
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: Den '{'sista'}' komponenten i '{'objekttypdefinitionen'}', ''{0}'', inneh\u00E5ller ''list''. Detta betyder att ''{0}'' inte kan anv\u00E4ndas som objekttyp f\u00F6r listtyp ''{1}''.
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: Den '{'sista'}' komponenten i '{'medlemtypdefinitionerna'}', ''{0}'', inneh\u00E5ller ''union''. Detta betyder att ''{0}'' inte kan anv\u00E4ndas som medlemstyp f\u00F6r uniontyp ''{1}''.
         cos-valid-default.2.1 = cos-valid-default.2.1: Elementet ''{0}'' har en v\u00E4rdebegr\u00E4nsning och m\u00E5ste ha en blandad eller enkel inneh\u00E5llsmodell.
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Eftersom elementet ''{0}'' har en ''{''v\u00E4rdebegr\u00E4nsning''}'' och typdefinitionen har blandad ''{''inneh\u00E5llstyp''}'' s\u00E5 m\u00E5ste partikeln av ''{''inneh\u00E5llstyp''}'' vara t\u00F6mningsbar.
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: Eftersom elementet ''{0}'' har en '{'v\u00E4rdebegr\u00E4nsning'}' och typdefinitionen har blandad '{'inneh\u00E5llstyp'}' s\u00E5 m\u00E5ste partikeln av '{'inneh\u00E5llstyp'}' vara t\u00F6mningsbar.
         c-props-correct.2 = c-props-correct.2: Kardinalitet av f\u00E4lt med nyckelreferens ''{0}'' och nyckel ''{1}'' m\u00E5ste matcha varandra.
         ct-props-correct.3 = ct-props-correct.3: Cirkul\u00E4ra definitioner har identifierats f\u00F6r komplex typ ''{0}''. Detta inneb\u00E4r att ''{0}'' ing\u00E5r i sin egen typhierarki, vilket \u00E4r fel.
         ct-props-correct.4 = ct-props-correct.4: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. Duplicerad attributanv\u00E4ndning med samma namn och namnrymd. Namnet p\u00E5 dubbletten \u00E4r ''{1}''.
         ct-props-correct.5 = ct-props-correct.5: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. Tv\u00E5 attributdeklarationer, ''{1}'' och ''{2}'', anv\u00E4nds med typer som h\u00E4rleds fr\u00E5n ID.
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: Typ ''{0}'' h\u00E4rleddes genom begr\u00E4nsning fr\u00E5n typ ''{1}''. ''{1}'' har d\u00E4remot en ''{''slutlig''}'' egenskap som f\u00F6rbjuder h\u00E4rledning via begr\u00E4nsning.
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: Typ ''{0}'' h\u00E4rleddes genom begr\u00E4nsning fr\u00E5n typ ''{1}''. ''{1}'' har d\u00E4remot en '{'slutlig'}' egenskap som f\u00F6rbjuder h\u00E4rledning via begr\u00E4nsning.
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. Attributanv\u00E4ndning ''{1}'' i denna typ har ''use''-v\u00E4rdet ''{2}'' vilket inte \u00E4r konsekvent med v\u00E4rdet f\u00F6r ''required'' i matchande attributanv\u00E4ndning i bastypen.
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. Attributanv\u00E4ndning ''{1}'' i denna typ har typ ''{2}'', som inte f\u00E5r h\u00E4rledas fr\u00E5n ''{3}'', typ i matchande attributanv\u00E4ndning i bastypen.
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. Attributanv\u00E4ndning ''{1}'' i denna typ har en effektiv v\u00E4rdebegr\u00E4nsning som inte \u00E4r fast, medan den effektiva v\u00E4rdebegr\u00E4nsningen i matchande attributanv\u00E4ndning i bastypen \u00E4r fast.
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation: NOTATION-typ, ''{0}'' anv\u00E4nds av {2} ''{1}'', m\u00E5ste anges med uppr\u00E4kningsaspektv\u00E4rde som specificerar de notationselement som anv\u00E4nds av denna typ.
         enumeration-valid-restriction = enumeration-valid-restriction: Uppr\u00E4kningsv\u00E4rdet ''{0}'' finns inte i bastypens, {1}, v\u00E4rdeutrymme.
         e-props-correct.2 = e-props-correct.2: Ogiltigt v\u00E4rde f\u00F6r begr\u00E4nsningsv\u00E4rde ''{1}'' i elementet ''{0}''.
-        e-props-correct.4 = e-props-correct.4: ''{''Typdefinition''}'' f\u00F6r elementet ''{0}'' har en ogiltig h\u00E4rledning fr\u00E5n ''{''typdefinitionen''}'' f\u00F6r substitutionHead ''{1}'' eller s\u00E5 till\u00E5ts inte denna h\u00E4rledning av egenskapen ''{1}'' f\u00F6r ''{''ers\u00E4ttningsgruppexkluderingar''}''.
-        e-props-correct.5 = e-props-correct.5: En ''{''v\u00E4rdebegr\u00E4nsning''}'' f\u00E5r inte finnas med i elementet ''{0}'' eftersom elementets ''{''typdefinition''}'' eller ''{''typdefinitionens''}'' ''{''inneh\u00E5llstyp''}'' \u00E4r ID, eller h\u00E4rleds fr\u00E5n ID.
+        e-props-correct.4 = e-props-correct.4: '{'Typdefinition'}' f\u00F6r elementet ''{0}'' har en ogiltig h\u00E4rledning fr\u00E5n '{'typdefinitionen'}' f\u00F6r substitutionHead ''{1}'' eller s\u00E5 till\u00E5ts inte denna h\u00E4rledning av egenskapen ''{1}'' f\u00F6r '{'ers\u00E4ttningsgruppexkluderingar'}'.
+        e-props-correct.5 = e-props-correct.5: En '{'v\u00E4rdebegr\u00E4nsning'}' f\u00E5r inte finnas med i elementet ''{0}'' eftersom elementets '{'typdefinition'}' eller '{'typdefinitionens'}' '{'inneh\u00E5llstyp'}' \u00E4r ID, eller h\u00E4rleds fr\u00E5n ID.
         e-props-correct.6 = e-props-correct.6: Cirkul\u00E4r ers\u00E4ttningsgrupp identifierades f\u00F6r elementet ''{0}''.
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: I definitionen f\u00F6r {2} \u00E4r v\u00E4rdet ''{0}'' f\u00F6r ''fractionDigits'' ogiltigt eftersom det m\u00E5ste vara mindre \u00E4n eller lika med v\u00E4rdet f\u00F6r ''fractionDigits'' som har angetts som ''{1}'' i n\u00E5gon typ f\u00F6r \u00F6verordnad.
         fractionDigits-totalDigits = fractionDigits-totalDigits: I definitionen av {2} \u00E4r v\u00E4rdet ''{0}'' f\u00F6r ''fractionDigits'' ogiltigt eftersom v\u00E4rdet m\u00E5ste vara mindre \u00E4n eller lika med v\u00E4rdet f\u00F6r ''totalDigits'' som \u00E4r ''{1}''.
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: Ett fel intr\u00E4ffade f\u00F6r typ ''{2}''. maxInclusive-v\u00E4rdet ''{0}'' m\u00E5ste vara st\u00F6rre \u00E4n eller lika med minInclusive i bastyp ''{1}''.
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: Ett fel intr\u00E4ffade f\u00F6r typ ''{2}''. maxInclusive-v\u00E4rdet ''{0}'' m\u00E5ste vara st\u00F6rre \u00E4n minExclusive i bastyp ''{1}''.
         maxLength-valid-restriction = maxLength-valid-restriction: I definitionen f\u00F6r {2} m\u00E5ste maxLength-v\u00E4rdet ''{0}'' vara mindre \u00E4n eller lika med v\u00E4rdet i bastyp ''{1}''.
-        mg-props-correct.2 = mg-props-correct.2: Cirkul\u00E4ra definitioner identifierades f\u00F6r gruppen ''{0}''. Rekursivt efterf\u00F6ljande v\u00E4rdena f\u00F6r ''{''term''}'' i partiklarna leder till en partikel vars ''{''term''}'' \u00E4r den ursprungliga gruppen.
+        mg-props-correct.2 = mg-props-correct.2: Cirkul\u00E4ra definitioner identifierades f\u00F6r gruppen ''{0}''. Rekursivt efterf\u00F6ljande v\u00E4rdena f\u00F6r '{'term'}' i partiklarna leder till en partikel vars '{'term'}' \u00E4r den ursprungliga gruppen.
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: I definitionen f\u00F6r {2} m\u00E5ste minExclusive-v\u00E4rdet ''{0}'' vara mindre \u00E4n eller lika med maxExclusive-v\u00E4rdet ''{1}''.
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: I definitionen f\u00F6r {2} m\u00E5ste minExclusive-v\u00E4rdet ''{0}'' vara mindre \u00E4n maxInclusive-v\u00E4rdet ''{1}''.
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: Ett fel intr\u00E4ffade f\u00F6r typ ''{2}''. minExclusive-v\u00E4rdet ''{0}'' m\u00E5ste vara st\u00F6rre \u00E4n eller lika med minExclusive i bastyp ''{1}''.
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: I definitionen f\u00F6r {2} m\u00E5ste minLength-v\u00E4rdet ''{0}'' vara mindre \u00E4n maxLength-v\u00E4rdet ''{1}''.
         minLength-valid-restriction = minLength-valid-restriction: I definitionen f\u00F6r {2} m\u00E5ste minLength-v\u00E4rdet ''{0}'' vara st\u00F6rre \u00E4n eller lika med v\u00E4rdet i bastyp ''{1}''.
         no-xmlns = no-xmlns: Ett {namn} p\u00E5 en attributdeklaration f\u00E5r inte matcha 'xmlns'.
-        no-xsi = no-xsi: En  ''{''m\u00E5lnamnrymd''}'' i en attributdeklaration f\u00E5r inte matcha ''{0}''.
+        no-xsi = no-xsi: En  '{'m\u00E5lnamnrymd'}' i en attributdeklaration f\u00E5r inte matcha ''{0}''.
         p-props-correct.2.1 = p-props-correct.2.1: I deklarationen ''{0}'' \u00E4r v\u00E4rdet f\u00F6r ''minOccurs'' ''{1}'', men det f\u00E5r inte vara st\u00F6rre \u00E4n v\u00E4rdet f\u00F6r ''maxOccurs'' (som \u00E4r ''{2}'').
         rcase-MapAndSum.1 = rcase-MapAndSum.1: Det finns ingen fullst\u00E4ndigt fungerande mappning mellan partiklarna.
         rcase-MapAndSum.2 = rcase-MapAndSum.2: Gruppens f\u00F6rekomstintervall ({0},{1}) \u00E4r inte n\u00E5gon giltig begr\u00E4nsning f\u00F6r basgruppens f\u00F6rekomstintervall, ({2},{3}).
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: Element har namn och m\u00E5lnamnrymder som inte \u00E4r desamma: Elementet ''{0}'' i namnrymd ''{1}'' och elementet ''{2}'' i namnrymd ''{3}''.
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: Ett fel intr\u00E4ffade f\u00F6r partikeln vars ''{''term''}'' \u00E4r elementdeklarationen ''{0}''. Elementdeklarationens v\u00E4rde som \u00E4r ''{''nullbart''}'' har angetts som true, men motsvarande partikel i bastypen har en elementdeklaration vars v\u00E4rde som \u00E4r ''{''nullbart''}'' har angetts som false.
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: Ett fel intr\u00E4ffade f\u00F6r partikeln vars  ''{''term''}'' \u00E4r elementdeklarationen ''{0}''. F\u00F6rekomstintervallet, ({1},{2}), \u00E4r inte n\u00E5gon giltig begr\u00E4nsning f\u00F6r intervallet, ({3},{4}, i motsvarande partikel i bastypen.
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: Ett fel intr\u00E4ffade f\u00F6r partikeln vars '{'term'}' \u00E4r elementdeklarationen ''{0}''. Elementdeklarationens v\u00E4rde som \u00E4r '{'nullbart'}' har angetts som true, men motsvarande partikel i bastypen har en elementdeklaration vars v\u00E4rde som \u00E4r '{'nullbart'}' har angetts som false.
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: Ett fel intr\u00E4ffade f\u00F6r partikeln vars  '{'term'}' \u00E4r elementdeklarationen ''{0}''. F\u00F6rekomstintervallet, ({1},{2}), \u00E4r inte n\u00E5gon giltig begr\u00E4nsning f\u00F6r intervallet, ({3},{4}, i motsvarande partikel i bastypen.
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: Elementet ''{0}'' har inte n\u00E5got fast v\u00E4rde, men motsvarande element i bastypen har angetts med det fasta v\u00E4rdet ''{1}''.
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: Elementet ''{0}'' har det fasta v\u00E4rdet ''{1}'', men motsvarande element i bastypen har angetts med det fasta v\u00E4rdet ''{2}''.
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: Identitetsbegr\u00E4nsningarna f\u00F6r elementet ''{0}'' \u00E4r inte n\u00E5gon del av de som finns i basen.
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: De avaktiverade ers\u00E4ttningarna f\u00F6r elementet ''{0}'' \u00E4r inte inneslutna i basen.
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: Elementtyp ''{0}'', ''{1}'' h\u00E4rleds inte fr\u00E5n typ av baselement, ''{2}''.
         rcase-NSCompat.1 = rcase-NSCompat.1: Elementet ''{0}'' har namnrymden ''{1}'' som inte \u00E4r till\u00E5tet av jokertecknet i basen.
-        rcase-NSCompat.2 = rcase-NSCompat.2: Ett fel intr\u00E4ffade f\u00F6r partikeln vars ''{''term''}'' \u00E4r elementdeklarationen ''{0}''. F\u00F6rekomstintervallet, ({1},{2}), \u00E4r inte n\u00E5gon giltig begr\u00E4nsning f\u00F6r intervallet, ({3},{4}, i motsvarande partikel i bastypen.
+        rcase-NSCompat.2 = rcase-NSCompat.2: Ett fel intr\u00E4ffade f\u00F6r partikeln vars '{'term'}' \u00E4r elementdeklarationen ''{0}''. F\u00F6rekomstintervallet, ({1},{2}), \u00E4r inte n\u00E5gon giltig begr\u00E4nsning f\u00F6r intervallet, ({3},{4}, i motsvarande partikel i bastypen.
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: Det finns ingen fullst\u00E4ndigt fungerande mappning mellan partiklarna.
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: Gruppens f\u00F6rekomstintervall ({0},{1}) \u00E4r inte n\u00E5gon giltig begr\u00E4nsning f\u00F6r basjokertecknets intervall, ({2},{3}).
         rcase-NSSubset.1 = rcase-NSSubset.1: Jokertecknet \u00E4r inte n\u00E5gon del av motsvarande jokertecken i basen.
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: Ett schema kan inte inneh\u00E5lla tv\u00E5 globala komponenter med samma namn. Detta schema har tv\u00E5 f\u00F6rekomster av ''{0}''.
         st-props-correct.2 = st-props-correct.2: Cirkul\u00E4ra definitioner har identifierats f\u00F6r enkel typ ''{0}''. Detta inneb\u00E4r att ''{0}'' ing\u00E5r i sin egen typhierarki, vilket \u00E4r fel.
-        st-props-correct.3 = st-props-correct.3: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. V\u00E4rdet f\u00F6r ''{''slutgiltigt''}'' i ''{''bastypdefinitionen''}'', ''{1}'', f\u00F6rbjuder h\u00E4rledning med begr\u00E4nsning.
+        st-props-correct.3 = st-props-correct.3: Ett fel intr\u00E4ffade f\u00F6r typ ''{0}''. V\u00E4rdet f\u00F6r '{'slutgiltigt'}' i '{'bastypdefinitionen'}', ''{1}'', f\u00F6rbjuder h\u00E4rledning med begr\u00E4nsning.
         totalDigits-valid-restriction = totalDigits-valid-restriction: I definitionen f\u00F6r {2} \u00E4r v\u00E4rdet ''{0}'' f\u00F6r ''totalDigits'' ogiltigt eftersom det m\u00E5ste vara mindre \u00E4n eller lika med v\u00E4rdet f\u00F6r ''totalDigits'' som har angetts som ''{1}'' i n\u00E5gon typ f\u00F6r \u00F6verordnad.
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: I definitionen f\u00F6r {0} \u00E4r v\u00E4rdet ''{1}'' f\u00F6r ''whitespace'' ogiltigt, eftersom v\u00E4rdet f\u00F6r ''whitespace'' har angetts som ''collapse'' i n\u00E5gon typ f\u00F6r \u00F6verordnad.
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: I definitionen f\u00F6r {0} \u00E4r v\u00E4rdet ''preserve'' f\u00F6r ''whitespace'' ogiltigt, eftersom v\u00E4rdet f\u00F6r ''whitespace'' har angetts som ''replace'' i n\u00E5gon typ f\u00F6r \u00F6verordnad.
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: V\u00E4ljarv\u00E4rdet ''{0}'' \u00E4r ogiltigt; xpath f\u00F6r v\u00E4ljare f\u00E5r inte inneh\u00E5lla attribut.
         EmptyTargetNamespace = EmptyTargetNamespace: I schemadokumentet ''{0}'' f\u00E5r v\u00E4rdet f\u00F6r attributet ''targetNamespace'' inte vara en tom str\u00E4ng.
         FacetValueFromBase = FacetValueFromBase: I deklarationen av typ ''{0}'' m\u00E5ste v\u00E4rdet ''{1}'' f\u00F6r aspekt ''{2}'' komma fr\u00E5n v\u00E4rdeutrymmet i bastypen ''{3}''.
-        FixedFacetValue = FixedFacetValue: I definitionen f\u00F6r {3} \u00E4r v\u00E4rdet ''{1}'' f\u00F6r aspekten ''{0}'' ogiltigt eftersom v\u00E4rdet f\u00F6r ''{0}'' har angetts som ''{2}'' i n\u00E5gon av typerna f\u00F6r \u00F6verordnade samtidigt som ''{''fast''}'' = true.
+        FixedFacetValue = FixedFacetValue: I definitionen f\u00F6r {3} \u00E4r v\u00E4rdet ''{1}'' f\u00F6r aspekten ''{0}'' ogiltigt eftersom v\u00E4rdet f\u00F6r ''{0}'' har angetts som ''{2}'' i n\u00E5gon av typerna f\u00F6r \u00F6verordnade samtidigt som '{'fast'}' = true.
         InvalidRegex = InvalidRegex: M\u00F6nsterv\u00E4rdet ''{0}'' \u00E4r inte n\u00E5got giltigt regulj\u00E4rt uttryck. Det rapporterade felet \u00E4r: ''{1}'' i kolumn ''{2}''.
-        maxOccurLimit = Den aktuella konfigurationen f\u00F6r parsern till\u00E5ter inte att attributv\u00E4rdet f\u00F6r Occurs anges som st\u00F6rre \u00E4n v\u00E4rdet {0}.
+        MaxOccurLimit = Den aktuella konfigurationen f\u00F6r parsern till\u00E5ter inte att attributv\u00E4rdet f\u00F6r Occurs anges som st\u00F6rre \u00E4n v\u00E4rdet {0}.
         PublicSystemOnNotation = PublicSystemOnNotation: \u00C5tminstone ett av ''public'' och ''system'' m\u00E5ste anges i elementets ''notation''.
         SchemaLocation = SchemaLocation: schemaLocation-v\u00E4rdet ''{0}'' m\u00E5ste anges med ett j\u00E4mnt antal URI:er.
         TargetNamespace.1 = TargetNamespace.1: F\u00F6rv\u00E4ntade namnrymden ''{0}'', men m\u00E5lnamnrymden f\u00F6r schemadokumentet \u00E4r ''{1}''.
         TargetNamespace.2 = TargetNamespace.2: F\u00F6rv\u00E4ntade inte n\u00E5gon namnrymd, men schemadokumentet har angetts med m\u00E5lnamnrymden ''{1}''.
         UndeclaredEntity = UndeclaredEntity: Enhet ''{0}'' har inte deklarerats.
         UndeclaredPrefix = UndeclaredPrefix: Kan inte matcha ''{0}'' som QName: prefixet ''{1}'' har inte deklarerats.
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = Egenskapen ''http://java.sun.com/xml/jaxp/properties/schemaSource'' kan inte ha ett v\u00E4rde av typen {0}''. M\u00F6jliga typer av v\u00E4rden som st\u00F6ds \u00E4r String, File, InputStream och InputSource, och en uppst\u00E4llning av de h\u00E4r typerna.
+        jaxp12-schema-source-type.2 = Egenskapen ''http://java.sun.com/xml/jaxp/properties/schemaSource'' kan inte ha ett uppst\u00E4llningsv\u00E4rde av typen {0}''. M\u00F6jliga typer av uppst\u00E4llningar som st\u00F6ds \u00E4r Object, String, File, InputStream och InputSource.
+        jaxp12-schema-source-ns = N\u00E4r du anv\u00E4nder en uppst\u00E4llning med objekt som v\u00E4rde f\u00F6r egenskapen 'http://java.sun.com/xml/jaxp/properties/schemaSource' \u00E4r det inte till\u00E5tet att ha tv\u00E5 scheman med samma m\u00E5lnamnrymd.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties
index 0f42323..bf51b62 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_zh_CN.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/16 04:44:25 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_zh_CN.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/13 05:10:27 gmolloy Exp $
 
         BadMessageKey = \u627E\u4E0D\u5230\u4E0E\u6D88\u606F\u5173\u952E\u5B57\u5BF9\u5E94\u7684\u9519\u8BEF\u6D88\u606F\u3002
         FormatFailed = \u8BBE\u7F6E\u4EE5\u4E0B\u6D88\u606F\u7684\u683C\u5F0F\u65F6\u51FA\u73B0\u5185\u90E8\u9519\u8BEF:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u9519\u8BEF (cvc-identity-constraint.4.2.1): \u5143\u7D20 "{0}" \u7684\u4E00\u4E2A\u5173\u952E\u5B57\u6CA1\u6709\u503C\u3002
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: \u5143\u7D20 "{0}" \u4E0D\u5177\u6709\u5173\u952E\u5B57 "{1}" \u7684\u503C\u3002
         DuplicateField = \u5B57\u6BB5 "{0}" \u5728\u4F5C\u7528\u57DF\u5185\u6709\u91CD\u590D\u5339\u914D\u3002
-        DuplicateKey = \u4E3A\u5143\u7D20 "{1}" \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u58F0\u660E\u7684\u5173\u952E\u5B57\u503C [{0}] \u91CD\u590D\u3002
-        DuplicateUnique = \u4E3A\u5143\u7D20 "{1}" \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u58F0\u660E\u7684\u552F\u4E00\u503C [{0}] \u91CD\u590D\u3002
-        FieldMultipleMatch = \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u9519\u8BEF: \u5B57\u6BB5 "{0}" \u4E0E\u5176\u9009\u62E9\u5668\u4F5C\u7528\u57DF\u5185\u7684\u591A\u4E2A\u503C\u5339\u914D; \u5B57\u6BB5\u5FC5\u987B\u4E0E\u552F\u4E00\u503C\u5339\u914D\u3002
+        DuplicateKey = cvc-identity-constraint.4.2.2: \u4E3A\u5143\u7D20 "{1}" \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6 "{2}" \u58F0\u660E\u7684\u5173\u952E\u5B57\u503C [{0}] \u91CD\u590D\u3002
+        DuplicateUnique = cvc-identity-constraint.4.1: \u4E3A\u5143\u7D20 "{1}" \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6 "{2}" \u58F0\u660E\u7684\u552F\u4E00\u503C [{0}] \u91CD\u590D\u3002
+        FieldMultipleMatch = cvc-identity-constraint.3: \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6 "{1}" \u7684\u5B57\u6BB5 "{0}" \u4E0E\u5176\u9009\u62E9\u5668\u4F5C\u7528\u57DF\u5185\u7684\u591A\u4E2A\u503C\u5339\u914D; \u5B57\u6BB5\u5FC5\u987B\u4E0E\u552F\u4E00\u503C\u5339\u914D\u3002
         FixedDiffersFromActual = \u6B64\u5143\u7D20\u7684\u5185\u5BB9\u4E0E\u65B9\u6848\u4E2D\u5143\u7D20\u58F0\u660E\u7684 "fixed" \u5C5E\u6027\u7684\u503C\u4E0D\u76F8\u540C\u3002
-        KeyMatchesNillable = \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u9519\u8BEF (cvc-identity-constraint.4.2.3): \u5143\u7D20 "{0}" \u5177\u6709\u4E00\u4E2A\u4E0E nillable \u8BBE\u7F6E\u4E3A\u201C\u771F\u201D\u7684\u5143\u7D20\u5339\u914D\u7684\u5173\u952E\u5B57\u3002
-        KeyNotEnoughValues = \u5BF9\u4E8E\u4E3A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <key name="{1}"> \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6, \u6CA1\u6709\u4E3A\u5B83\u6307\u5B9A\u8DB3\u591F\u7684\u503C\u3002
-        KeyNotFound = \u6CA1\u6709\u4E3A\u5143\u7D20 ''{2}'' \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u627E\u5230\u503C\u4E3A ''{1}'' \u7684\u5173\u952E\u5B57 ''{0}''\u3002
-        KeyRefNotEnoughValues = \u5BF9\u4E8E\u4E3A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <keyref name="{1}"> \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6, \u6CA1\u6709\u4E3A\u5B83\u6307\u5B9A\u8DB3\u591F\u7684\u503C\u3002
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: \u5143\u7D20 "{0}" \u5177\u6709\u7684\u5173\u952E\u5B57 "{1}" \u4E0E nillable \u8BBE\u7F6E\u4E3A\u201C\u771F\u201D\u7684\u5143\u7D20\u5339\u914D\u3002
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: \u5BF9\u4E8E\u4E3A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <key name="{1}"> \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6, \u6CA1\u6709\u4E3A\u5B83\u6307\u5B9A\u8DB3\u591F\u7684\u503C\u3002
+        KeyNotFound = cvc-identity-constraint.4.3: \u6CA1\u6709\u4E3A\u5143\u7D20 ''{2}'' \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u627E\u5230\u503C\u4E3A ''{1}'' \u7684\u5173\u952E\u5B57 ''{0}''\u3002
         KeyRefOutOfScope = \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u9519\u8BEF: \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6 "{0}" \u5177\u6709\u4E00\u4E2A\u5F15\u7528\u4E86\u4F5C\u7528\u57DF\u4E4B\u5916\u7684\u5173\u952E\u5B57\u6216\u552F\u4E00\u503C\u7684 keyref\u3002
         KeyRefReferNotFound = \u5173\u952E\u5B57\u5F15\u7528\u58F0\u660E "{0}" \u5F15\u7528\u4E86\u540D\u4E3A "{1}" \u7684\u672A\u77E5\u5173\u952E\u5B57\u3002
-        UniqueNotEnoughValues = \u5BF9\u4E8E\u4E3A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <unique> \u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6, \u6CA1\u6709\u4E3A\u5B83\u6307\u5B9A\u8DB3\u591F\u7684\u503C\u3002
-        UnknownField = \u5185\u90E8\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u9519\u8BEF; \u5B57\u6BB5 "{0}" \u672A\u77E5\u3002
+        UnknownField = \u5185\u90E8\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u9519\u8BEF; \u4E3A\u5143\u7D20 "{1}" \u6307\u5B9A\u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6 "{2}" \u7684\u5B57\u6BB5 "{0}" \u672A\u77E5\u3002
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u7684\u503C ''{2}'' \u4E0E\u5176\u7C7B\u578B ''{3}'' \u4E0D\u5339\u914D\u3002
-        cvc-attribute.4 = cvc-attribute.4: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u7684\u503C ''{2}'' \u4E0E\u5176\u56FA\u5B9A\u7684 ''{''value constraint''}'' \u4E0D\u5339\u914D\u3002\u8BE5\u5C5E\u6027\u7684\u503C\u5FC5\u987B\u4E3A ''{3}''\u3002
+        cvc-attribute.4 = cvc-attribute.4: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u7684\u503C ''{2}'' \u4E0E\u5176\u56FA\u5B9A\u7684 '{'value constraint'}' \u4E0D\u5339\u914D\u3002\u8BE5\u5C5E\u6027\u7684\u503C\u5FC5\u987B\u4E3A ''{3}''\u3002
         cvc-complex-type.2.1 = cvc-complex-type.2.1: \u5143\u7D20 ''{0}'' \u5FC5\u987B\u4E0D\u542B\u5B57\u7B26\u6216\u5143\u7D20\u4FE1\u606F\u9879 [\u5B50\u7EA7], \u56E0\u4E3A\u8BE5\u7C7B\u578B\u7684\u5185\u5BB9\u7C7B\u578B\u4E3A\u7A7A\u3002
         cvc-complex-type.2.2 = cvc-complex-type.2.2: \u5143\u7D20 ''{0}'' \u5FC5\u987B\u4E0D\u542B\u5143\u7D20 [\u5B50\u7EA7], \u5E76\u4E14\u5176\u503C\u5FC5\u987B\u6709\u6548\u3002
         cvc-complex-type.2.3 = cvc-complex-type.2.3: \u5143\u7D20 ''{0}'' \u5FC5\u987B\u4E0D\u542B\u5B57\u7B26 [\u5B50\u7EA7], \u56E0\u4E3A\u8BE5\u7C7B\u578B\u7684\u5185\u5BB9\u7C7B\u578B\u4E3A\u201C\u4EC5\u5143\u7D20\u201D\u3002
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: \u5143\u7D20 ''{0}'' \u7684\u5185\u5BB9\u4E0D\u5B8C\u6574\u3002\u5E94\u4E3A ''{1}'' \u4E4B\u4E00\u3002
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: \u901A\u914D\u7B26\u7684\u5339\u914D\u5F88\u5168\u9762, \u4F46\u65E0\u6CD5\u627E\u5230\u5143\u7D20 ''{0}'' \u7684\u58F0\u660E\u3002
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: \u53D1\u73B0\u4E86\u4EE5\u5143\u7D20 ''{0}'' \u5F00\u5934\u7684\u65E0\u6548\u5185\u5BB9\u3002\u6B64\u5904\u4E0D\u5E94\u542B\u6709\u5B50\u5143\u7D20\u3002
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: \u53D1\u73B0\u4E86\u4EE5\u5143\u7D20 ''{0}'' \u5F00\u5934\u7684\u65E0\u6548\u5185\u5BB9\u3002\u6B64\u5904\u4E0D\u5E94\u542B\u6709\u5B50\u5143\u7D20 ''{1}''\u3002
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: \u53D1\u73B0\u4E86\u4EE5\u5143\u7D20 ''{0}'' \u5F00\u5934\u7684\u65E0\u6548\u5185\u5BB9\u3002\u6B64\u5904\u4E0D\u5E94\u542B\u6709\u5B50\u5143\u7D20 ''{1}''\u3002
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}'' \u5728\u5F53\u524D\u5E8F\u5217\u4E2D\u6700\u591A\u53EF\u4EE5\u51FA\u73B0 ''{2}'' \u6B21\u3002\u5DF2\u8D85\u8FC7\u6B64\u9650\u5236\u3002\u6B64\u5904\u9884\u671F\u4E3A ''{1}'' \u4E4B\u4E00\u3002
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}'' \u5728\u5F53\u524D\u5E8F\u5217\u4E2D\u6700\u591A\u53EF\u4EE5\u51FA\u73B0 ''{1}'' \u6B21\u3002\u5DF2\u8D85\u8FC7\u6B64\u9650\u5236\u3002\u6B64\u5904\u9884\u671F\u6CA1\u6709\u5B50\u5143\u7D20\u3002
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: \u53D1\u73B0\u4E86\u4EE5\u5143\u7D20 ''{0}'' \u5F00\u5934\u7684\u65E0\u6548\u5185\u5BB9\u3002''{1}'' \u9884\u671F\u5728\u5F53\u524D\u5E8F\u5217\u4E2D\u6700\u5C11\u51FA\u73B0 ''{2}'' \u6B21\u3002\u53E6\u5916\u4E00\u4E2A\u5B9E\u4F8B\u5FC5\u987B\u6EE1\u8DB3\u6B64\u7EA6\u675F\u6761\u4EF6\u3002
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: \u53D1\u73B0\u4E86\u4EE5\u5143\u7D20 ''{0}'' \u5F00\u5934\u7684\u65E0\u6548\u5185\u5BB9\u3002''{1}'' \u9884\u671F\u5728\u5F53\u524D\u5E8F\u5217\u4E2D\u6700\u5C11\u51FA\u73B0 ''{2}'' \u6B21\u3002\u53E6\u5916 ''{3}'' \u4E2A\u5B9E\u4F8B\u5FC5\u987B\u6EE1\u8DB3\u6B64\u7EA6\u675F\u6761\u4EF6\u3002
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: \u5143\u7D20 ''{0}'' \u7684\u5185\u5BB9\u4E0D\u5B8C\u6574\u3002''{1}'' \u9884\u671F\u6700\u5C11\u51FA\u73B0 ''{2}'' \u6B21\u3002\u53E6\u5916\u4E00\u4E2A\u5B9E\u4F8B\u5FC5\u987B\u6EE1\u8DB3\u6B64\u7EA6\u675F\u6761\u4EF6\u3002
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: \u5143\u7D20 ''{0}'' \u7684\u5185\u5BB9\u4E0D\u5B8C\u6574\u3002''{1}'' \u9884\u671F\u6700\u5C11\u51FA\u73B0 ''{2}'' \u6B21\u3002\u53E6\u5916 ''{3}'' \u4E2A\u5B9E\u4F8B\u5FC5\u987B\u6EE1\u8DB3\u6B64\u7EA6\u675F\u6761\u4EF6\u3002
         cvc-complex-type.3.1 = cvc-complex-type.3.1: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u7684\u503C ''{2}'' \u4E0E\u76F8\u5E94\u7684\u5C5E\u6027\u7528\u6CD5\u4E0D\u5339\u914D\u3002\u5C5E\u6027 ''{1}'' \u5177\u6709\u56FA\u5B9A\u503C ''{3}''\u3002
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: \u5143\u7D20 ''{0}'' \u6CA1\u6709\u5C5E\u6027 ''{1}'' \u7684\u5C5E\u6027\u901A\u914D\u7B26\u3002
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: \u5143\u7D20 ''{0}'' \u4E2D\u4E0D\u5141\u8BB8\u51FA\u73B0\u5C5E\u6027 ''{1}''\u3002
         cvc-complex-type.4 = cvc-complex-type.4: \u5143\u7D20 ''{0}'' \u4E2D\u5FC5\u987B\u5305\u542B\u5C5E\u6027 ''{1}''\u3002
         cvc-complex-type.5.1 = cvc-complex-type.5.1: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u662F\u4E00\u4E2A\u901A\u7528 ID\u3002\u4F46\u5DF2\u5B58\u5728\u901A\u7528 ID ''{2}''\u3002\u53EA\u80FD\u6709\u4E00\u4E2A\u901A\u7528 ID\u3002
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u662F\u4E00\u4E2A\u901A\u7528 ID\u3002\u4F46\u5DF2\u6709\u4E00\u4E2A\u5C5E\u6027 ''{2}'' \u662F\u4ECE ''{''attribute uses''}'' \u4E2D\u7684 ID \u6D3E\u751F\u7684\u3002
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: \u5728\u5143\u7D20 ''{0}'' \u4E2D, \u5C5E\u6027 ''{1}'' \u662F\u4E00\u4E2A\u901A\u7528 ID\u3002\u4F46\u5DF2\u6709\u4E00\u4E2A\u5C5E\u6027 ''{2}'' \u662F\u4ECE '{'attribute uses'}' \u4E2D\u7684 ID \u6D3E\u751F\u7684\u3002
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}'' \u4E0D\u662F ''{1}'' \u7684\u6709\u6548\u503C\u3002
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}'' \u4E0D\u662F\u5217\u8868\u7C7B\u578B ''{1}'' \u7684\u6709\u6548\u503C\u3002
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}'' \u4E0D\u662F\u8054\u5408\u7C7B\u578B ''{1}'' \u7684\u6709\u6548\u503C\u3002
-        cvc-elt.1 = cvc-elt.1: \u627E\u4E0D\u5230\u5143\u7D20 ''{0}'' \u7684\u58F0\u660E\u3002
-        cvc-elt.2 = cvc-elt.2: ''{0}'' \u7684\u5143\u7D20\u58F0\u660E\u4E2D ''{''abstract''}'' \u7684\u503C\u5FC5\u987B\u4E3A\u201C\u5047\u201D\u3002
-        cvc-elt.3.1 = cvc-elt.3.1: \u5143\u7D20 ''{0}'' \u4E2D\u4E0D\u80FD\u5305\u542B\u5C5E\u6027 ''{1}'', \u56E0\u4E3A ''{0}'' \u7684 ''{''nillable''}'' \u5C5E\u6027\u4E3A\u201C\u5047\u201D\u3002
+        cvc-elt.1.a = cvc-elt.1.a: \u627E\u4E0D\u5230\u5143\u7D20 ''{0}'' \u7684\u58F0\u660E\u3002
+        cvc-elt.1.b = cvc-elt.1.b: \u5143\u7D20\u7684\u540D\u79F0\u4E0E\u5143\u7D20\u58F0\u660E\u7684\u540D\u79F0\u4E0D\u5339\u914D\u3002\u5B9E\u9645\u4E3A ''{0}''\u3002\u9884\u671F\u4E3A ''{1}''\u3002
+        cvc-elt.2 = cvc-elt.2: ''{0}'' \u7684\u5143\u7D20\u58F0\u660E\u4E2D '{'abstract'}' \u7684\u503C\u5FC5\u987B\u4E3A\u201C\u5047\u201D\u3002
+        cvc-elt.3.1 = cvc-elt.3.1: \u5143\u7D20 ''{0}'' \u4E2D\u4E0D\u80FD\u5305\u542B\u5C5E\u6027 ''{1}'', \u56E0\u4E3A ''{0}'' \u7684 '{'nillable'}' \u5C5E\u6027\u4E3A\u201C\u5047\u201D\u3002
         cvc-elt.3.2.1 = cvc-elt.3.2.1: \u5143\u7D20 ''{0}'' \u5FC5\u987B\u4E0D\u542B\u5B57\u7B26\u6216\u5143\u7D20\u4FE1\u606F [\u5B50\u7EA7], \u56E0\u4E3A\u5DF2\u6307\u5B9A ''{1}''\u3002
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: \u5143\u7D20 ''{0}'' \u4E0D\u80FD\u5305\u542B\u56FA\u5B9A\u7684 ''{''value constraint''}'', \u56E0\u4E3A\u5DF2\u6307\u5B9A ''{1}''\u3002
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: \u5143\u7D20 ''{0}'' \u4E0D\u80FD\u5305\u542B\u56FA\u5B9A\u7684 '{'value constraint'}', \u56E0\u4E3A\u5DF2\u6307\u5B9A ''{1}''\u3002
         cvc-elt.4.1 = cvc-elt.4.1: \u5143\u7D20 ''{0}'' \u7684\u5C5E\u6027 ''{1}'' \u7684\u503C ''{2}'' \u4E0D\u662F\u6709\u6548\u7684\u9650\u5B9A\u540D\u3002
         cvc-elt.4.2 = cvc-elt.4.2: \u65E0\u6CD5\u5C06 ''{1}'' \u89E3\u6790\u4E3A\u5143\u7D20 ''{0}'' \u7684\u7C7B\u578B\u5B9A\u4E49\u3002
         cvc-elt.4.3 = cvc-elt.4.3: \u7C7B\u578B ''{1}'' \u4E0D\u662F\u4ECE\u5143\u7D20 ''{0}'' \u7684\u7C7B\u578B\u5B9A\u4E49 ''{2}'' \u6709\u6548\u6D3E\u751F\u7684\u3002
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: \u5143\u7D20 ''{0}'' \u7684 ''{''value constraint''}'' ''{2}'' \u4E0D\u662F\u7C7B\u578B ''{1}'' \u7684\u6709\u6548\u9ED8\u8BA4\u503C\u3002
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: \u5143\u7D20 ''{0}'' \u7684 '{'value constraint'}' ''{2}'' \u4E0D\u662F\u7C7B\u578B ''{1}'' \u7684\u6709\u6548\u9ED8\u8BA4\u503C\u3002
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: \u5143\u7D20 ''{0}'' \u5FC5\u987B\u4E0D\u542B\u5143\u7D20\u4FE1\u606F\u9879 [\u5B50\u7EA7]\u3002
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0E\u56FA\u5B9A\u7684 ''{''value constraint''}'' \u503C ''{2}'' \u4E0D\u5339\u914D\u3002
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0E ''{''value constraint''}'' \u503C ''{2}'' \u4E0D\u5339\u914D\u3002
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0E\u56FA\u5B9A\u7684 '{'value constraint'}' \u503C ''{2}'' \u4E0D\u5339\u914D\u3002
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0E '{'value constraint'}' \u503C ''{2}'' \u4E0D\u5339\u914D\u3002
         cvc-enumeration-valid = cvc-enumeration-valid: \u5BF9\u4E8E\u679A\u4E3E ''{1}'', \u503C ''{0}'' \u4E0D\u5177\u6709\u9762\u6709\u6548\u6027\u3002\u5B83\u5FC5\u987B\u662F\u6765\u81EA\u679A\u4E3E\u7684\u503C\u3002
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: \u503C ''{0}'' \u5177\u6709 {1} \u4F4D\u5C0F\u6570, \u4F46\u5C0F\u6570\u4F4D\u6570\u5DF2\u9650\u5236\u4E3A {2}\u3002
         cvc-id.1 = cvc-id.1: IDREF ''{0}'' \u6CA1\u6709 ID/IDREF \u7ED1\u5B9A\u3002
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: \u5BF9\u4E8E\u7C7B\u578B\u4E3A ''{3}'' \u7684 minLength ''{2}'', length = ''{1}'' \u7684\u503C ''{0}'' \u4E0D\u5177\u6709\u9762\u6709\u6548\u6027\u3002
         cvc-pattern-valid = cvc-pattern-valid: \u5BF9\u4E8E\u7C7B\u578B\u4E3A ''{2}'' \u7684\u6A21\u5F0F ''{1}'', \u503C ''{0}'' \u4E0D\u5177\u6709\u9762\u6709\u6548\u6027\u3002
         cvc-totalDigits-valid = cvc-totalDigits-valid: \u503C ''{0}'' \u603B\u5171\u6709 {1} \u4F4D, \u4F46\u603B\u4F4D\u6570\u5DF2\u9650\u5236\u4E3A {2}\u3002
+        cvc-type.1 = cvc-type.1: \u627E\u4E0D\u5230\u7C7B\u578B\u5B9A\u4E49 ''{0}''\u3002
         cvc-type.2 = cvc-type.2: \u65E0\u6CD5\u4E3A\u5143\u7D20 {0} \u63D0\u53D6\u7C7B\u578B\u5B9A\u4E49\u3002
         cvc-type.3.1.1 = cvc-type.3.1.1: \u5143\u7D20 ''{0}'' \u662F\u7B80\u5355\u7C7B\u578B, \u56E0\u6B64\u5FC5\u987B\u4E0D\u542B\u5C5E\u6027 (\u9664\u4E86\u90A3\u4E9B\u540D\u79F0\u7A7A\u95F4\u540D\u4E0E ''http://www.w3.org/2001/XMLSchema-instance'' \u76F8\u540C\u4E14 [\u672C\u5730\u540D\u79F0] \u4E3A ''type'', ''nil'', ''schemaLocation'' \u6216 ''noNamespaceSchemaLocation'' \u7684\u5143\u7D20)\u3002\u4F46\u662F\u53D1\u73B0\u4E86\u5C5E\u6027 ''{1}''\u3002
         cvc-type.3.1.2 = cvc-type.3.1.2: \u5143\u7D20 ''{0}'' \u662F\u7B80\u5355\u7C7B\u578B, \u56E0\u6B64\u5B83\u5FC5\u987B\u4E0D\u542B\u5143\u7D20\u4FE1\u606F\u9879 [\u5B50\u7EA7]\u3002
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: \u5C5E\u6027\u7EC4 ''{0}'' \u9519\u8BEF\u3002\u6307\u5B9A\u4E86\u5177\u6709\u76F8\u540C\u540D\u79F0\u548C\u76EE\u6807\u540D\u79F0\u7A7A\u95F4\u7684\u91CD\u590D\u5C5E\u6027\u7528\u6CD5\u3002\u91CD\u590D\u5C5E\u6027\u7528\u6CD5\u7684\u540D\u79F0\u4E3A ''{1}''\u3002
         ag-props-correct.3 = ag-props-correct.3: \u5C5E\u6027\u7EC4 ''{0}'' \u9519\u8BEF\u3002\u4E24\u4E2A\u5C5E\u6027\u58F0\u660E ''{1}'' \u548C ''{2}'' \u5177\u6709\u7684\u7C7B\u578B\u662F\u4ECE ID \u6D3E\u751F\u7684\u3002
         a-props-correct.2 = a-props-correct.2: \u5C5E\u6027 ''{0}'' \u4E2D\u7684\u503C\u7EA6\u675F\u6761\u4EF6\u7684\u503C ''{1}'' \u65E0\u6548\u3002
-        a-props-correct.3 = a-props-correct.3: \u5C5E\u6027 ''{0}'' \u4E0D\u80FD\u4F7F\u7528 ''fixed'' \u6216 ''default'', \u56E0\u4E3A\u5176 ''{''type definition''}'' \u4E3A ID, \u6216\u8005\u662F\u4ECE ID \u6D3E\u751F\u7684\u3002
-        au-props-correct.2 = au-props-correct.2: \u5728 ''{0}'' \u7684\u5C5E\u6027\u58F0\u660E\u4E2D, \u6307\u5B9A\u4E86\u56FA\u5B9A\u503C ''{1}''\u3002\u56E0\u6B64\u5982\u679C\u5F15\u7528 ''{0}'' \u7684\u5C5E\u6027\u7528\u6CD5\u540C\u65F6\u5177\u6709 ''{''value constraint''}'', \u5219\u5B83\u5FC5\u987B\u662F\u56FA\u5B9A\u7684, \u5E76\u4E14\u5176\u503C\u5FC5\u987B\u4E3A ''{1}''\u3002
+        a-props-correct.3 = a-props-correct.3: \u5C5E\u6027 ''{0}'' \u4E0D\u80FD\u4F7F\u7528 ''fixed'' \u6216 ''default'', \u56E0\u4E3A\u5176 '{'type definition'}' \u4E3A ID, \u6216\u8005\u662F\u4ECE ID \u6D3E\u751F\u7684\u3002
+        au-props-correct.2 = au-props-correct.2: \u5728 ''{0}'' \u7684\u5C5E\u6027\u58F0\u660E\u4E2D, \u6307\u5B9A\u4E86\u56FA\u5B9A\u503C ''{1}''\u3002\u56E0\u6B64\u5982\u679C\u5F15\u7528 ''{0}'' \u7684\u5C5E\u6027\u7528\u6CD5\u540C\u65F6\u5177\u6709 '{'value constraint'}', \u5219\u5B83\u5FC5\u987B\u662F\u56FA\u5B9A\u7684, \u5E76\u4E14\u5176\u503C\u5FC5\u987B\u4E3A ''{1}''\u3002
         cos-all-limited.1.2 = cos-all-limited.1.2: '{'min occurs'}' = '{'max occurs'}' = 1 \u7684\u7C92\u5B50\u4E2D\u5FC5\u987B\u5305\u542B 'all' \u6A21\u578B\u7EC4, \u8BE5\u7C92\u5B50\u5FC5\u987B\u662F\u7EC4\u6210\u590D\u6742\u7C7B\u578B\u5B9A\u4E49\u7684 '{'content type'}' \u5BF9\u7684\u4E00\u90E8\u5206\u3002
-        cos-all-limited.2 = cos-all-limited.2: \u5728 ''all'' \u6A21\u578B\u7EC4\u4E2D\u5143\u7D20\u7684 ''{''max occurs''}'' \u5FC5\u987B\u4E3A 0 \u6216 1\u3002\u5143\u7D20 ''{1}'' \u7684\u503C ''{0}'' \u65E0\u6548\u3002
+        cos-all-limited.2 = cos-all-limited.2: \u5728 ''all'' \u6A21\u578B\u7EC4\u4E2D\u5143\u7D20\u7684 '{'max occurs'}' \u5FC5\u987B\u4E3A 0 \u6216 1\u3002\u5143\u7D20 ''{1}'' \u7684\u503C ''{0}'' \u65E0\u6548\u3002
         cos-applicable-facets = cos-applicable-facets: \u7C7B\u578B {1} \u4E0D\u5141\u8BB8\u9762 ''{0}''\u3002
         cos-ct-extends.1.1 = cos-ct-extends.1.1: \u7C7B\u578B ''{0}'' \u662F\u4ECE\u7C7B\u578B ''{1}'' \u7684\u6269\u5C55\u6D3E\u751F\u7684\u3002\u4F46\u662F, ''{1}'' \u7684 ''final'' \u5C5E\u6027\u7981\u6B62\u7531\u6269\u5C55\u6D3E\u751F\u3002
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: \u6D3E\u751F\u7C7B\u578B\u53CA\u5176\u57FA\u7C7B\u578B\u7684\u5185\u5BB9\u7C7B\u578B\u90FD\u5FC5\u987B\u4E3A\u201C\u6DF7\u5408\u201D\u6216\u201C\u4EC5\u5143\u7D20\u201D\u3002\u7C7B\u578B ''{0}'' \u4E3A\u201C\u4EC5\u5143\u7D20\u201D, \u4F46\u5176\u57FA\u7C7B\u578B\u4E0D\u662F\u3002
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: \u6D3E\u751F\u7684\u7C92\u5B50\u4E3A\u7A7A, \u800C\u57FA\u7C92\u5B50\u4E0D\u53EF\u4E3A\u7A7A\u3002
         cos-particle-restrict.b = cos-particle-restrict.b: \u57FA\u7C92\u5B50\u4E3A\u7A7A, \u4F46\u6D3E\u751F\u7C92\u5B50\u4E0D\u4E3A\u7A7A\u3002
         cos-particle-restrict.2 = cos-particle-restrict.2: \u7981\u6B62\u7C92\u5B50\u9650\u5236: ''{0}''\u3002
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: \u7C7B\u578B ''{1}'' \u4E3A\u539F\u5B50, \u56E0\u6B64\u5176 ''{''base type definition''}'' ''{0}'' \u5FC5\u987B\u4E3A\u539F\u5B50\u7B80\u5355\u7C7B\u578B\u5B9A\u4E49\u6216\u5185\u7F6E\u57FA\u5143\u6570\u636E\u7C7B\u578B\u3002
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: \u7C7B\u578B ''{1}'' \u4E3A\u539F\u5B50, \u56E0\u6B64\u5176 '{'base type definition'}' ''{0}'' \u5FC5\u987B\u4E3A\u539F\u5B50\u7B80\u5355\u7C7B\u578B\u5B9A\u4E49\u6216\u5185\u7F6E\u57FA\u5143\u6570\u636E\u7C7B\u578B\u3002
         cos-st-restricts.2.1 = cos-st-restricts.2.1: \u5728\u5217\u8868\u7C7B\u578B ''{0}'' \u7684\u5B9A\u4E49\u4E2D, \u7C7B\u578B ''{1}'' \u662F\u65E0\u6548\u7684\u9879\u7C7B\u578B, \u56E0\u4E3A\u5B83\u65E2\u4E0D\u662F\u5217\u8868\u7C7B\u578B, \u4E5F\u4E0D\u662F\u5305\u542B\u5217\u8868\u7684\u8054\u5408\u7C7B\u578B\u3002
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: ''{''item type definition''}'' \u7684 ''{''final''}'' \u7EC4\u4EF6 ''{0}'' \u5305\u542B ''list''\u3002\u8FD9\u8868\u793A ''{0}'' \u4E0D\u80FD\u7528\u4F5C\u5217\u8868\u7C7B\u578B ''{1}'' \u7684\u9879\u7C7B\u578B\u3002
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: ''{''member type definitions''}'' ''{0}'' \u7684 ''{''final''}'' \u7EC4\u4EF6\u5305\u542B ''union''\u3002\u8FD9\u8868\u793A ''{0}'' \u4E0D\u80FD\u7528\u4F5C\u8054\u5408\u7C7B\u578B ''{1}'' \u7684\u6210\u5458\u7C7B\u578B\u3002
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: '{'item type definition'}' \u7684 '{'final'}' \u7EC4\u4EF6 ''{0}'' \u5305\u542B ''list''\u3002\u8FD9\u8868\u793A ''{0}'' \u4E0D\u80FD\u7528\u4F5C\u5217\u8868\u7C7B\u578B ''{1}'' \u7684\u9879\u7C7B\u578B\u3002
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: '{'member type definitions'}' ''{0}'' \u7684 '{'final'}' \u7EC4\u4EF6\u5305\u542B ''union''\u3002\u8FD9\u8868\u793A ''{0}'' \u4E0D\u80FD\u7528\u4F5C\u8054\u5408\u7C7B\u578B ''{1}'' \u7684\u6210\u5458\u7C7B\u578B\u3002
         cos-valid-default.2.1 = cos-valid-default.2.1: \u5143\u7D20 ''{0}'' \u5177\u6709\u503C\u7EA6\u675F\u6761\u4EF6, \u5E76\u4E14\u5FC5\u987B\u5177\u6709\u201C\u6DF7\u5408\u201D\u6216\u201C\u7B80\u5355\u201D\u5185\u5BB9\u6A21\u578B\u3002
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: \u7531\u4E8E\u5143\u7D20 ''{0}'' \u5177\u6709 ''{''value constraint''}'', \u5E76\u4E14\u5176\u7C7B\u578B\u5B9A\u4E49\u5177\u6709\u6DF7\u5408\u7684 ''{''content type''}'', \u5219 ''{''content type''}'' \u7684\u7C92\u5B50\u5FC5\u987B\u53EF\u4E3A\u7A7A\u3002
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: \u7531\u4E8E\u5143\u7D20 ''{0}'' \u5177\u6709 '{'value constraint'}', \u5E76\u4E14\u5176\u7C7B\u578B\u5B9A\u4E49\u5177\u6709\u6DF7\u5408\u7684 '{'content type'}', \u5219 '{'content type'}' \u7684\u7C92\u5B50\u5FC5\u987B\u53EF\u4E3A\u7A7A\u3002
         c-props-correct.2 = c-props-correct.2: \u952E\u5F15\u7528 ''{0}'' \u548C\u952E ''{1}'' \u4E2D\u5B57\u6BB5\u7684\u57FA\u6570\u5FC5\u987B\u76F8\u540C\u3002
         ct-props-correct.3 = ct-props-correct.3: \u5728\u590D\u6742\u7C7B\u578B ''{0}'' \u4E2D\u68C0\u6D4B\u5230\u5FAA\u73AF\u5B9A\u4E49\u3002\u8FD9\u8868\u793A ''{0}'' \u5305\u542B\u5728\u5176\u81EA\u8EAB\u7684\u7C7B\u578B\u5206\u5C42\u7ED3\u6784\u4E2D, \u8FD9\u662F\u9519\u8BEF\u7684\u3002
         ct-props-correct.4 = ct-props-correct.4: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002\u6307\u5B9A\u4E86\u5177\u6709\u76F8\u540C\u540D\u79F0\u548C\u76EE\u6807\u540D\u79F0\u7A7A\u95F4\u7684\u91CD\u590D\u5C5E\u6027\u7528\u6CD5\u3002\u91CD\u590D\u5C5E\u6027\u7528\u6CD5\u7684\u540D\u79F0\u4E3A ''{1}''\u3002
         ct-props-correct.5 = ct-props-correct.5: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002\u4E24\u4E2A\u5C5E\u6027\u58F0\u660E ''{1}'' \u548C ''{2}'' \u5177\u6709\u4ECE ID \u6D3E\u751F\u7684\u7C7B\u578B\u3002
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: \u7C7B\u578B ''{0}'' \u7531\u9650\u5236\u4ECE\u7C7B\u578B ''{1}'' \u6D3E\u751F\u3002\u4F46\u662F, ''{1}'' \u5177\u6709\u7981\u6B62\u7531\u9650\u5236\u6D3E\u751F\u7684 ''{''final''}'' \u5C5E\u6027\u3002
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: \u7C7B\u578B ''{0}'' \u7531\u9650\u5236\u4ECE\u7C7B\u578B ''{1}'' \u6D3E\u751F\u3002\u4F46\u662F, ''{1}'' \u5177\u6709\u7981\u6B62\u7531\u9650\u5236\u6D3E\u751F\u7684 '{'final'}' \u5C5E\u6027\u3002
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002\u6B64\u7C7B\u578B\u4E2D\u7684\u5C5E\u6027\u7528\u6CD5 ''{1}'' \u5177\u6709 ''{2}'' \u7684 ''use'' \u503C, \u8FD9\u4E0E\u57FA\u7C7B\u578B\u4E2D\u7684\u5339\u914D\u5C5E\u6027\u7528\u6CD5\u7684 ''required'' \u503C\u4E0D\u4E00\u81F4\u3002
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002\u6B64\u7C7B\u578B\u4E2D\u7684\u5C5E\u6027\u7528\u6CD5 ''{1}'' \u5177\u6709\u7C7B\u578B ''{2}'', \u5B83\u4E0D\u662F\u4ECE\u57FA\u7C7B\u578B\u4E2D\u7684\u5339\u914D\u5C5E\u6027\u7528\u6CD5\u7684\u7C7B\u578B ''{3}'' \u6709\u6548\u6D3E\u751F\u7684\u3002
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002\u6B64\u7C7B\u578B\u4E2D\u7684\u5C5E\u6027\u7528\u6CD5 ''{1}'' \u5177\u6709\u4E0D\u56FA\u5B9A\u7684\u6709\u6548\u503C\u7EA6\u675F\u6761\u4EF6, \u800C\u57FA\u7C7B\u578B\u4E2D\u7684\u5339\u914D\u5C5E\u6027\u7528\u6CD5\u7684\u6709\u6548\u503C\u7EA6\u675F\u6761\u4EF6\u662F\u56FA\u5B9A\u7684\u3002
@@ -210,8 +216,8 @@
         enumeration-required-notation = enumeration-required-notation: {2} ''{1}'' \u4F7F\u7528\u7684 NOTATION \u7C7B\u578B ''{0}'' \u5FC5\u987B\u5177\u6709\u679A\u4E3E\u9762\u503C, \u7528\u4E8E\u6307\u5B9A\u6B64\u7C7B\u578B\u4F7F\u7528\u7684\u6CE8\u91CA\u5143\u7D20\u3002
         enumeration-valid-restriction = enumeration-valid-restriction: \u679A\u4E3E\u503C ''{0}'' \u4E0D\u5728\u57FA\u7C7B\u578B {1} \u7684\u503C\u7A7A\u95F4\u4E2D\u3002
         e-props-correct.2 = e-props-correct.2: \u5143\u7D20 ''{0}'' \u4E2D\u7684\u503C\u7EA6\u675F\u6761\u4EF6\u7684\u503C ''{1}'' \u65E0\u6548\u3002
-        e-props-correct.4 = e-props-correct.4: \u5143\u7D20 ''{0}'' \u7684 ''{''type definition''}'' \u4E0D\u662F\u4ECE substitutionHead ''{1}'' \u7684 ''{''type definition''}'' \u6709\u6548\u6D3E\u751F\u7684, \u6216\u8005 ''{1}'' \u7684 ''{''substitution group exclusions''}'' \u5C5E\u6027\u4E0D\u5141\u8BB8\u8FDB\u884C\u6B64\u6D3E\u751F\u3002
-        e-props-correct.5 = e-props-correct.5: \u5143\u7D20 ''{0}'' \u4E2D\u4E0D\u80FD\u5305\u542B ''{''value constraint''}'', \u56E0\u4E3A\u5143\u7D20\u7684 ''{''type definition''}'' \u6216 ''{''type definition''}'' \u7684 ''{''content type''}'' \u4E3A ID, \u6216\u8005\u662F\u4ECE ID \u6D3E\u751F\u7684\u3002
+        e-props-correct.4 = e-props-correct.4: \u5143\u7D20 ''{0}'' \u7684 '{'type definition'}' \u4E0D\u662F\u4ECE substitutionHead ''{1}'' \u7684 '{'type definition'}' \u6709\u6548\u6D3E\u751F\u7684, \u6216\u8005 ''{1}'' \u7684 '{'substitution group exclusions'}' \u5C5E\u6027\u4E0D\u5141\u8BB8\u8FDB\u884C\u6B64\u6D3E\u751F\u3002
+        e-props-correct.5 = e-props-correct.5: \u5143\u7D20 ''{0}'' \u4E2D\u4E0D\u80FD\u5305\u542B '{'value constraint'}', \u56E0\u4E3A\u5143\u7D20\u7684 '{'type definition'}' \u6216 '{'type definition'}' \u7684 '{'content type'}' \u4E3A ID, \u6216\u8005\u662F\u4ECE ID \u6D3E\u751F\u7684\u3002
         e-props-correct.6 = e-props-correct.6: \u5728\u5143\u7D20 ''{0}'' \u4E2D\u68C0\u6D4B\u5230\u5FAA\u73AF\u66FF\u4EE3\u7EC4\u3002
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''fractionDigits'' \u7684\u503C ''{0}'' \u65E0\u6548, \u56E0\u4E3A\u8BE5\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E ''fractionDigits'' \u7684\u503C, \u4F46\u5728\u539F\u7EA7\u7C7B\u578B\u4E4B\u4E00\u4E2D\u5DF2\u5C06\u5176\u8BBE\u7F6E\u4E3A ''{1}''\u3002
         fractionDigits-totalDigits = fractionDigits-totalDigits: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''fractionDigits'' \u7684\u503C ''{0}'' \u65E0\u6548, \u56E0\u4E3A\u8BE5\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E ''totalDigits'' \u7684\u503C ''{1}''\u3002
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: \u7C7B\u578B ''{2}'' \u9519\u8BEF\u3002maxInclusive \u503C ''{0}'' \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E\u57FA\u7C7B\u578B ''{1}'' \u7684 minInclusive\u3002
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: \u7C7B\u578B ''{2}'' \u9519\u8BEF\u3002maxInclusive \u503C ''{0}'' \u5FC5\u987B\u5927\u4E8E\u57FA\u7C7B\u578B ''{1}'' \u7684 minExclusive\u3002
         maxLength-valid-restriction = maxLength-valid-restriction: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, maxLength \u503C ''{0}'' \u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E\u57FA\u7C7B\u578B ''{1}'' \u7684 maxLength\u3002
-        mg-props-correct.2 = mg-props-correct.2: \u5728\u7EC4 ''{0}'' \u4E2D\u68C0\u6D4B\u5230\u5FAA\u73AF\u5B9A\u4E49\u3002\u9012\u5F52\u8DDF\u968F\u7C92\u5B50\u7684 ''{''term''}'' \u4EE5\u4E0B\u503C\u4F1A\u5F15\u5BFC\u5230\u5176 ''{''term''}'' \u662F\u7EC4\u81EA\u8EAB\u7684\u7C92\u5B50\u3002
+        mg-props-correct.2 = mg-props-correct.2: \u5728\u7EC4 ''{0}'' \u4E2D\u68C0\u6D4B\u5230\u5FAA\u73AF\u5B9A\u4E49\u3002\u9012\u5F52\u8DDF\u968F\u7C92\u5B50\u7684 '{'term'}' \u4EE5\u4E0B\u503C\u4F1A\u5F15\u5BFC\u5230\u5176 '{'term'}' \u662F\u7EC4\u81EA\u8EAB\u7684\u7C92\u5B50\u3002
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, minExclusive \u503C ''{0}'' \u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E maxExclusive \u503C ''{1}''\u3002
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, minExclusive \u503C ''{0}'' \u5FC5\u987B\u5C0F\u4E8E maxInclusive \u503C ''{1}''\u3002
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: \u7C7B\u578B ''{2}'' \u9519\u8BEF\u3002minExclusive \u503C ''{0}'' \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E\u57FA\u7C7B\u578B ''{1}'' \u7684 minExclusive\u3002
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, minLength \u7684\u503C ''{0}'' \u5FC5\u987B\u5C0F\u4E8E maxLength \u7684\u503C ''{1}''\u3002
         minLength-valid-restriction = minLength-valid-restriction: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, minLength ''{0}'' \u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E\u57FA\u7C7B\u578B\u7684 minLength ''{1}''\u3002
         no-xmlns = no-xmlns: \u5C5E\u6027\u58F0\u660E\u7684 {name} \u4E0D\u80FD\u4E0E 'xmlns' \u5339\u914D\u3002
-        no-xsi = no-xsi: \u5C5E\u6027\u58F0\u660E\u7684 ''{''target namespace''}'' \u4E0D\u80FD\u4E0E ''{0}'' \u5339\u914D\u3002
+        no-xsi = no-xsi: \u5C5E\u6027\u58F0\u660E\u7684 '{'target namespace'}' \u4E0D\u80FD\u4E0E ''{0}'' \u5339\u914D\u3002
         p-props-correct.2.1 = p-props-correct.2.1: \u5728 ''{0}'' \u7684\u58F0\u660E\u4E2D, ''minOccurs'' \u7684\u503C\u4E3A ''{1}'', \u4F46\u8BE5\u503C\u4E0D\u80FD\u5927\u4E8E ''maxOccurs'' \u7684\u503C ''{2}''\u3002
         rcase-MapAndSum.1 = rcase-MapAndSum.1: \u7C92\u5B50\u4E4B\u95F4\u6CA1\u6709\u5B8C\u6574\u7684\u529F\u80FD\u6620\u5C04\u3002
         rcase-MapAndSum.2 = rcase-MapAndSum.2: \u7EC4\u7684\u53D1\u751F\u8303\u56F4 ({0},{1}) \u4E0D\u5728\u57FA\u7EC4\u7684\u53D1\u751F\u8303\u56F4 ({2},{3}) \u7684\u6709\u6548\u9650\u5236\u4E4B\u5185\u3002
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: \u5143\u7D20\u7684\u540D\u79F0\u548C\u76EE\u6807\u540D\u79F0\u7A7A\u95F4\u4E0D\u76F8\u540C: \u540D\u79F0\u7A7A\u95F4 ''{1}'' \u4E2D\u7684\u5143\u7D20\u4E3A ''{0}'', \u540D\u79F0\u7A7A\u95F4 ''{3}'' \u4E2D\u7684\u5143\u7D20\u4E3A ''{2}''\u3002
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: \u5176 ''{''term''}'' \u4E3A\u5143\u7D20\u58F0\u660E ''{0}'' \u7684\u7C92\u5B50\u9519\u8BEF\u3002\u5143\u7D20\u58F0\u660E\u7684 ''{''nillable''}'' \u4E3A\u201C\u771F\u201D, \u4F46\u57FA\u7C7B\u578B\u4E2D\u5BF9\u5E94\u7684\u7C92\u5B50\u5177\u6709 ''{''nillable''}'' \u4E3A\u201C\u5047\u201D\u7684\u5143\u7D20\u58F0\u660E\u3002
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: \u5176 ''{''term''}'' \u4E3A\u5143\u7D20\u58F0\u660E ''{0}'' \u7684\u7C92\u5B50\u9519\u8BEF\u3002\u8BE5\u7C92\u5B50\u7684\u53D1\u751F\u8303\u56F4 ({1},{2}) \u4E0D\u5728\u57FA\u7C7B\u578B\u4E2D\u5BF9\u5E94\u7C92\u5B50\u7684\u8303\u56F4 ({3},{4}) \u7684\u6709\u6548\u9650\u5236\u4E4B\u5185\u3002
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: \u5176 '{'term'}' \u4E3A\u5143\u7D20\u58F0\u660E ''{0}'' \u7684\u7C92\u5B50\u9519\u8BEF\u3002\u5143\u7D20\u58F0\u660E\u7684 '{'nillable'}' \u4E3A\u201C\u771F\u201D, \u4F46\u57FA\u7C7B\u578B\u4E2D\u5BF9\u5E94\u7684\u7C92\u5B50\u5177\u6709 '{'nillable'}' \u4E3A\u201C\u5047\u201D\u7684\u5143\u7D20\u58F0\u660E\u3002
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: \u5176 '{'term'}' \u4E3A\u5143\u7D20\u58F0\u660E ''{0}'' \u7684\u7C92\u5B50\u9519\u8BEF\u3002\u8BE5\u7C92\u5B50\u7684\u53D1\u751F\u8303\u56F4 ({1},{2}) \u4E0D\u5728\u57FA\u7C7B\u578B\u4E2D\u5BF9\u5E94\u7C92\u5B50\u7684\u8303\u56F4 ({3},{4}) \u7684\u6709\u6548\u9650\u5236\u4E4B\u5185\u3002
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: \u5143\u7D20 ''{0}'' \u4E0D\u662F\u56FA\u5B9A\u7684, \u4F46\u57FA\u7C7B\u578B\u4E2D\u7684\u5BF9\u5E94\u5143\u7D20\u662F\u56FA\u5B9A\u7684, \u4E14\u503C\u4E3A ''{1}''\u3002
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: \u5143\u7D20 ''{0}'' \u662F\u56FA\u5B9A\u7684, \u4E14\u503C\u4E3A ''{1}'', \u4F46\u57FA\u7C7B\u578B\u4E2D\u7684\u5BF9\u5E94\u5143\u7D20\u662F\u56FA\u5B9A\u7684, \u4E14\u503C\u4E3A ''{2}''\u3002
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: \u5143\u7D20 ''{0}'' \u7684\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u4E0D\u662F\u57FA\u7C7B\u578B\u4E2D\u90A3\u4E9B\u8EAB\u4EFD\u7EA6\u675F\u6761\u4EF6\u7684\u5B50\u96C6\u3002
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: \u5143\u7D20 ''{0}'' \u7684\u4E0D\u63A5\u53D7\u66FF\u4EE3\u4E0D\u662F\u57FA\u5143\u7D20\u4E2D\u4E0D\u63A5\u53D7\u66FF\u4EE3\u7684\u8D85\u96C6\u3002
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: \u5143\u7D20 ''{0}'' \u7684\u7C7B\u578B ''{1}'' \u4E0D\u662F\u4ECE\u57FA\u5143\u7D20\u7684\u7C7B\u578B ''{2}'' \u6D3E\u751F\u7684\u3002
         rcase-NSCompat.1 = rcase-NSCompat.1: \u5143\u7D20 ''{0}'' \u5177\u6709\u540D\u79F0\u7A7A\u95F4 ''{1}'', \u5728\u57FA\u5143\u7D20\u4E2D, \u901A\u914D\u7B26\u4E0D\u5141\u8BB8\u5177\u6709\u6B64\u540D\u79F0\u7A7A\u95F4\u3002
-        rcase-NSCompat.2 = rcase-NSCompat.2: \u5176 ''{''term''}'' \u4E3A\u5143\u7D20\u58F0\u660E ''{0}'' \u7684\u7C92\u5B50\u9519\u8BEF\u3002\u8BE5\u7C92\u5B50\u7684\u53D1\u751F\u8303\u56F4 ({1},{2}) \u4E0D\u5728\u57FA\u7C7B\u578B\u4E2D\u5BF9\u5E94\u7C92\u5B50\u7684\u8303\u56F4 ({3},{4}) \u7684\u6709\u6548\u9650\u5236\u4E4B\u5185\u3002
+        rcase-NSCompat.2 = rcase-NSCompat.2: \u5176 '{'term'}' \u4E3A\u5143\u7D20\u58F0\u660E ''{0}'' \u7684\u7C92\u5B50\u9519\u8BEF\u3002\u8BE5\u7C92\u5B50\u7684\u53D1\u751F\u8303\u56F4 ({1},{2}) \u4E0D\u5728\u57FA\u7C7B\u578B\u4E2D\u5BF9\u5E94\u7C92\u5B50\u7684\u8303\u56F4 ({3},{4}) \u7684\u6709\u6548\u9650\u5236\u4E4B\u5185\u3002
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: \u7C92\u5B50\u4E4B\u95F4\u6CA1\u6709\u5B8C\u6574\u7684\u529F\u80FD\u6620\u5C04\u3002
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: \u7EC4\u7684\u53D1\u751F\u8303\u56F4 ({0},{1}) \u4E0D\u5728\u57FA\u672C\u901A\u914D\u7B26\u8303\u56F4 ({2},{3}) \u7684\u6709\u6548\u9650\u5236\u4E4B\u5185\u3002
         rcase-NSSubset.1 = rcase-NSSubset.1: \u901A\u914D\u7B26\u4E0D\u662F\u57FA\u672C\u901A\u914D\u7B26\u4E2D\u5BF9\u5E94\u901A\u914D\u7B26\u7684\u5B50\u96C6\u3002
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: \u65B9\u6848\u4E0D\u80FD\u5305\u542B\u5177\u6709\u76F8\u540C\u540D\u79F0\u7684\u4E24\u4E2A\u5168\u5C40\u7EC4\u4EF6; \u800C\u6B64\u65B9\u6848\u4E2D\u5305\u542B\u4E24\u4E2A ''{0}''\u3002
         st-props-correct.2 = st-props-correct.2: \u5728\u7B80\u5355\u7C7B\u578B ''{0}'' \u4E2D\u68C0\u6D4B\u5230\u5FAA\u73AF\u5B9A\u4E49\u3002\u8FD9\u8868\u793A ''{0}'' \u5305\u542B\u5728\u5176\u81EA\u8EAB\u7684\u7C7B\u578B\u5206\u5C42\u7ED3\u6784\u4E2D, \u8FD9\u662F\u9519\u8BEF\u7684\u3002
-        st-props-correct.3 = st-props-correct.3: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002''{''base type definition''}'' \u7684 ''{''final''}'' \u7684\u503C ''{1}'' \u7981\u6B62\u7531\u9650\u5236\u6D3E\u751F\u3002
+        st-props-correct.3 = st-props-correct.3: \u7C7B\u578B ''{0}'' \u9519\u8BEF\u3002'{'base type definition'}' \u7684 '{'final'}' \u7684\u503C ''{1}'' \u7981\u6B62\u7531\u9650\u5236\u6D3E\u751F\u3002
         totalDigits-valid-restriction = totalDigits-valid-restriction: \u5728 {2} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''totalDigits'' \u7684\u503C ''{0}'' \u65E0\u6548, \u56E0\u4E3A\u8BE5\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E ''totalDigits'' \u7684\u503C, \u800C\u5728\u539F\u7EA7\u7C7B\u578B\u4E4B\u4E00\u4E2D\u5DF2\u5C06\u5176\u8BBE\u7F6E\u4E3A ''{1}''\u3002
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: \u5728 {0} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''whitespace'' \u7684\u503C ''{1}'' \u65E0\u6548, \u56E0\u4E3A ''whitespace'' \u7684\u503C\u5DF2\u5728\u539F\u7EA7\u7C7B\u578B\u4E4B\u4E00\u4E2D\u8BBE\u7F6E\u4E3A ''collapse''\u3002
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: \u5728 {0} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''whitespace'' \u7684\u503C ''preserve'' \u65E0\u6548, \u56E0\u4E3A ''whitespace'' \u7684\u503C\u5DF2\u5728\u539F\u7EA7\u7C7B\u578B\u4E4B\u4E00\u4E2D\u8BBE\u7F6E\u4E3A ''replace''\u3002
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: \u9009\u62E9\u5668\u503C ''{0}'' \u65E0\u6548; \u9009\u62E9\u5668 xpath \u4E0D\u80FD\u5305\u542B\u5C5E\u6027\u3002
         EmptyTargetNamespace = EmptyTargetNamespace: \u5728\u65B9\u6848\u6587\u6863 ''{0}'' \u4E2D, ''targetNamespace'' \u5C5E\u6027\u7684\u503C\u4E0D\u80FD\u4E3A\u7A7A\u5B57\u7B26\u4E32\u3002
         FacetValueFromBase = FacetValueFromBase: \u5728\u7C7B\u578B ''{0}'' \u7684\u58F0\u660E\u4E2D, \u9762 ''{2}'' \u7684\u503C ''{1}'' \u5FC5\u987B\u6765\u81EA\u57FA\u7C7B\u578B\u7684\u503C\u7A7A\u95F4 ''{3}''\u3002
-        FixedFacetValue = FixedFacetValue: \u5728 {3} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''{0}'' \u7684\u503C ''{1}'' \u65E0\u6548, \u56E0\u4E3A ''{0}'' \u7684\u503C\u5DF2\u5728\u539F\u7EA7\u7C7B\u578B\u4E4B\u4E00\u4E2D\u8BBE\u7F6E\u4E3A ''{2}'', \u5E76\u4E14 ''{''fixed''}'' = true\u3002
+        FixedFacetValue = FixedFacetValue: \u5728 {3} \u7684\u5B9A\u4E49\u4E2D, \u9762 ''{0}'' \u7684\u503C ''{1}'' \u65E0\u6548, \u56E0\u4E3A ''{0}'' \u7684\u503C\u5DF2\u5728\u539F\u7EA7\u7C7B\u578B\u4E4B\u4E00\u4E2D\u8BBE\u7F6E\u4E3A ''{2}'', \u5E76\u4E14 '{'fixed'}' = true\u3002
         InvalidRegex = InvalidRegex: \u6A21\u5F0F\u503C ''{0}'' \u4E0D\u662F\u6709\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F\u3002\u5217 ''{2}'' \u4E0A\u62A5\u544A\u7684\u9519\u8BEF\u4E3A: ''{1}''\u3002
-        maxOccurLimit = \u89E3\u6790\u5668\u7684\u5F53\u524D\u914D\u7F6E\u4E0D\u5141\u8BB8\u5C06 maxOccurs \u5C5E\u6027\u503C\u8BBE\u7F6E\u4E3A\u5927\u4E8E\u503C {0}\u3002
+        MaxOccurLimit = \u89E3\u6790\u5668\u7684\u5F53\u524D\u914D\u7F6E\u4E0D\u5141\u8BB8\u5C06 maxOccurs \u5C5E\u6027\u503C\u8BBE\u7F6E\u4E3A\u5927\u4E8E\u503C {0}\u3002
         PublicSystemOnNotation = PublicSystemOnNotation: \u5143\u7D20 ''notation'' \u4E2D\u5FC5\u987B\u81F3\u5C11\u51FA\u73B0 ''public'' \u548C ''system'' \u4E2D\u7684\u4E00\u4E2A\u3002
         SchemaLocation = SchemaLocation: schemaLocation \u503C ''{0}'' \u5FC5\u987B\u5177\u6709\u5076\u6570\u4E2A URI\u3002
         TargetNamespace.1 = TargetNamespace.1: \u5E94\u4E3A\u540D\u79F0\u7A7A\u95F4 ''{0}'', \u4F46\u65B9\u6848\u6587\u6863\u7684\u76EE\u6807\u540D\u79F0\u7A7A\u95F4\u4E3A ''{1}''\u3002
         TargetNamespace.2 = TargetNamespace.2: \u4E0D\u9700\u8981\u540D\u79F0\u7A7A\u95F4, \u4F46\u6B64\u65B9\u6848\u6587\u6863\u7684\u76EE\u6807\u540D\u79F0\u7A7A\u95F4\u4E3A ''{1}''\u3002
         UndeclaredEntity = UndeclaredEntity: \u672A\u58F0\u660E\u5B9E\u4F53 ''{0}''\u3002
         UndeclaredPrefix = UndeclaredPrefix: \u65E0\u6CD5\u5C06 ''{0}'' \u89E3\u6790\u4E3A\u9650\u5B9A\u540D: \u672A\u58F0\u660E\u524D\u7F00 ''{1}''\u3002
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = ''http://java.sun.com/xml/jaxp/properties/schemaSource'' \u5C5E\u6027\u4E0D\u80FD\u5177\u6709 ''{0}'' \u7C7B\u578B\u7684\u503C\u3002\u53EF\u652F\u6301\u7684\u503C\u7C7B\u578B\u5305\u62EC String, File, InputStream, InputSource \u6216\u8FD9\u4E9B\u7C7B\u578B\u7684\u6570\u7EC4\u3002
+        jaxp12-schema-source-type.2 = ''http://java.sun.com/xml/jaxp/properties/schemaSource'' \u5C5E\u6027\u4E0D\u80FD\u5177\u6709 ''{0}'' \u7C7B\u578B\u7684\u6570\u7EC4\u503C\u3002\u53EF\u652F\u6301\u7684\u6570\u7EC4\u7C7B\u578B\u5305\u62EC Object, String, File, InputStream \u548C InputSource\u3002
+        jaxp12-schema-source-ns = \u4F7F\u7528\u5BF9\u8C61\u6570\u7EC4\u4F5C\u4E3A 'http://java.sun.com/xml/jaxp/properties/schemaSource' \u5C5E\u6027\u7684\u503C\u65F6, \u6709\u4E24\u4E2A\u65B9\u6848\u5171\u4EAB\u76F8\u540C\u7684\u76EE\u6807\u540D\u79F0\u7A7A\u95F4\u662F\u975E\u6CD5\u7684\u3002
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties
index 0efb3c4..747036b 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSchemaMessages_zh_TW.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 # This file contains error and warning messages related to XML Schema
 # The messages are arranged in key and value tuples in a ListResourceBundle.
 #
-# @version $Id: XMLSchemaMessages_zh_TW.properties /st_wptg_1.8.0.0.0jdk/3 2013/09/14 02:16:34 gmolloy Exp $
+# @version $Id: XMLSchemaMessages_zh_TW.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/11 20:46:43 gmolloy Exp $
 
         BadMessageKey = \u627E\u4E0D\u5230\u5C0D\u61C9\u8A0A\u606F\u7D22\u5F15\u9375\u7684\u932F\u8AA4\u8A0A\u606F\u3002
         FormatFailed = \u683C\u5F0F\u5316\u4E0B\u5217\u8A0A\u606F\u6642\u767C\u751F\u5167\u90E8\u932F\u8AA4:\n
@@ -39,20 +39,18 @@
 
 # Identity constraints
 
-        AbsentKeyValue = \u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4 (cvc-identity-constraint.4.2.1):  \u5143\u7D20 "{0}" \u5177\u6709\u7684\u91D1\u9470\u6C92\u6709\u503C\u3002
+        AbsentKeyValue = cvc-identity-constraint.4.2.1.a: \u5143\u7D20 "{0}" \u6C92\u6709\u91D1\u9470 "{1}" \u7684\u503C\u3002
         DuplicateField = \u7BC4\u570D\u4E2D\u7684\u6B04\u4F4D "{0}" \u91CD\u8907\u914D\u5C0D\u3002
-        DuplicateKey = \u70BA\u5143\u7D20 "{1}" \u7684\u8B58\u5225\u9650\u5236\u689D\u4EF6\u5BA3\u544A\u4E86\u91CD\u8907\u7684\u91D1\u9470\u503C [{0}]\u3002
-        DuplicateUnique = \u70BA\u5143\u7D20 "{1}" \u7684\u8B58\u5225\u9650\u5236\u689D\u4EF6\u5BA3\u544A\u4E86\u91CD\u8907\u7684\u552F\u4E00\u503C [{0}]\u3002
-        FieldMultipleMatch = \u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4: \u6B04\u4F4D "{0}" \u7B26\u5408\u5176\u9078\u53D6\u5668\u7BC4\u570D\u5167\u8D85\u904E\u4E00\u500B\u4EE5\u4E0A\u7684\u503C; \u6B04\u4F4D\u5FC5\u9808\u7B26\u5408\u552F\u4E00\u503C\u3002
+        DuplicateKey = cvc-identity-constraint.4.2.2: \u66FF\u5143\u7D20 "{1}" \u7684\u8B58\u5225\u9650\u5236\u689D\u4EF6 "{2}" \u5BA3\u544A\u4E86\u91CD\u8907\u7684\u91D1\u9470\u503C [{0}]\u3002
+        DuplicateUnique = cvc-identity-constraint.4.1: \u66FF\u5143\u7D20 "{1}" \u7684\u8B58\u5225\u9650\u5236\u689D\u4EF6 "{2}" \u5BA3\u544A\u4E86\u91CD\u8907\u7684\u552F\u4E00\u503C [{0}]\u3002
+        FieldMultipleMatch = cvc-identity-constraint.3: \u8B58\u5225\u9650\u5236\u689D\u4EF6 "{1}" \u7684\u6B04\u4F4D "{0}" \u7B26\u5408\u5176\u9078\u53D6\u5668\u7BC4\u570D\u5167\u7684\u591A\u500B\u503C; \u6B04\u4F4D\u5FC5\u9808\u7B26\u5408\u552F\u4E00\u503C\u3002
         FixedDiffersFromActual = \u6B64\u5143\u7D20\u7684\u5167\u5BB9\u4E0D\u7B49\u65BC\u7DB1\u8981\u5143\u7D20\u5BA3\u544A\u4E2D "fixed" \u5C6C\u6027\u7684\u503C\u3002
-        KeyMatchesNillable = \u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4 (cvc-identity-constraint.4.2.3):  \u5143\u7D20 "{0}" \u5177\u6709\u7684\u91D1\u9470\uFF0C\u7B26\u5408 nillable \u8A2D\u70BA\u771F\u7684\u5143\u7D20\u3002
-        KeyNotEnoughValues = \u6C92\u6709\u8DB3\u5920\u7684\u503C\u6307\u5B9A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <key name="{1}"> \u8B58\u5225\u9650\u5236\u689D\u4EF6\u3002
-        KeyNotFound = \u5143\u7D20 ''{2}'' \u7684\u8B58\u5225\u9650\u5236\u689D\u4EF6\u627E\u4E0D\u5230\u503C ''{1}'' \u7684\u91D1\u9470 ''{0}''\u3002
-        KeyRefNotEnoughValues = \u6C92\u6709\u8DB3\u5920\u7684\u503C\u6307\u5B9A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <keyref name="{1}"> \u8B58\u5225\u9650\u5236\u689D\u4EF6\u3002
-        KeyRefOutOfScope = \u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4: \u8B58\u5225\u9650\u5236\u689D\u4EF6 "{0}" \u5177\u6709\u4E00\u500B keyref\uFF0C\u5B83\u53C3\u7167\u4E86\u7BC4\u570D\u4E4B\u5916\u7684\u91D1\u9470\u6216\u552F\u4E00\u503C\u3002
-        KeyRefReferNotFound = \u91D1\u9470\u53C3\u7167\u5BA3\u544A "{0}" \u53C3\u7167\u4E86\u540D\u7A31\u70BA "{1}" \u7684\u4E0D\u660E\u91D1\u9470\u3002
-        UniqueNotEnoughValues = \u6C92\u6709\u8DB3\u5920\u7684\u503C\u6307\u5B9A\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <unique> \u8B58\u5225\u9650\u5236\u689D\u4EF6\u3002
-        UnknownField = \u5167\u90E8\u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4; \u4E0D\u660E\u7684\u6B04\u4F4D "{0}"\u3002
+        KeyMatchesNillable = cvc-identity-constraint.4.2.3: \u5143\u7D20 "{0}" \u7684\u91D1\u9470 "{1}" \u7B26\u5408 nillable \u8A2D\u70BA true \u7684\u5143\u7D20\u3002
+        KeyNotEnoughValues = cvc-identity-constraint.4.2.1.b: \u672A\u66FF\u91DD\u5C0D\u5143\u7D20 "{0}" \u6307\u5B9A\u7684 <key name="{1}"> \u8B58\u5225\u9650\u5236\u689D\u4EF6\u6307\u5B9A\u8DB3\u5920\u7684\u503C\u3002
+        KeyNotFound = cvc-identity-constraint.4.3: \u627E\u4E0D\u5230\u5143\u7D20 ''{2}'' \u8B58\u5225\u9650\u5236\u689D\u4EF6\u4E4B\u503C\u70BA ''{1}'' \u7684\u91D1\u9470 ''{0}''\u3002
+        KeyRefOutOfScope = \u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4: \u8B58\u5225\u9650\u5236\u689D\u4EF6 "{0}" \u5177\u6709\u4E00\u500B keyref\uFF0C\u5B83\u53C3\u7167\u4E86\u7BC4\u570D\u4E4B\u5916\u7684\u7D22\u5F15\u9375\u6216\u552F\u4E00\u503C\u3002
+        KeyRefReferNotFound = \u7D22\u5F15\u9375\u53C3\u7167\u5BA3\u544A "{0}" \u53C3\u7167\u4E86\u540D\u7A31\u70BA "{1}" \u7684\u4E0D\u660E\u7D22\u5F15\u9375\u3002
+        UnknownField = \u5167\u90E8\u8B58\u5225\u9650\u5236\u689D\u4EF6\u932F\u8AA4; \u66FF\u5143\u7D20 "{1}" \u6307\u5B9A\u4E86\u8B58\u5225\u9650\u5236\u689D\u4EF6 "{2}" \u7684\u4E0D\u660E\u6B04\u4F4D "{0}"\u3002
 
 # Ideally, we should only use the following error keys, not the ones under
 # "Identity constraints". And we should cover all of the following errors.
@@ -60,7 +58,7 @@
 #validation (3.X.4)
 
         cvc-attribute.3 = cvc-attribute.3: \u5143\u7D20 ''{0}'' \u4E0A\u5C6C\u6027 ''{1}'' \u7684\u503C ''{2}'' \u5C0D\u65BC\u5176\u985E\u578B ''{3}'' \u7121\u6548\u3002
-        cvc-attribute.4 = cvc-attribute.4: \u5143\u7D20 ''{0}'' \u4E0A\u5C6C\u6027 ''{1}'' \u7684\u503C ''{2}'' \u5C0D\u65BC\u5176\u56FA\u5B9A ''{''value constraint''}'' \u7121\u6548\u3002\u5C6C\u6027\u5FC5\u9808\u5177\u6709 ''{3}'' \u7684\u503C\u3002
+        cvc-attribute.4 = cvc-attribute.4: \u5143\u7D20 ''{0}'' \u4E0A\u5C6C\u6027 ''{1}'' \u7684\u503C ''{2}'' \u5C0D\u65BC\u5176\u56FA\u5B9A '{'value constraint'}' \u7121\u6548\u3002\u5C6C\u6027\u5FC5\u9808\u5177\u6709 ''{3}'' \u7684\u503C\u3002
         cvc-complex-type.2.1 = cvc-complex-type.2.1: \u5143\u7D20 ''{0}'' \u4E0D\u80FD\u6709\u5B57\u5143\u6216\u5143\u7D20\u8CC7\u8A0A\u9805\u76EE [children]\uFF0C\u56E0\u70BA\u985E\u578B\u7684\u5167\u5BB9\u985E\u578B\u70BA\u7A7A\u767D\u3002
         cvc-complex-type.2.2 = cvc-complex-type.2.2: \u5143\u7D20 ''{0}'' \u4E0D\u80FD\u6709\u5143\u7D20 [children]\uFF0C\u4E14\u503C\u5FC5\u9808\u6709\u6548\u3002
         cvc-complex-type.2.3 = cvc-complex-type.2.3: \u5143\u7D20 ''{0}'' \u4E0D\u80FD\u6709\u5B57\u5143 [children]\uFF0C\u56E0\u70BA\u985E\u578B\u7684\u5167\u5BB9\u985E\u578B\u70BA element-only\u3002
@@ -68,28 +66,35 @@
         cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: \u5143\u7D20 ''{0}'' \u7684\u5167\u5BB9\u4E0D\u5B8C\u6574\u3002\u9810\u671F\u4E00\u500B ''{1}''\u3002
         cvc-complex-type.2.4.c = cvc-complex-type.2.4.c: \u56B4\u683C\u6BD4\u5C0D\u842C\u7528\u5B57\u5143\uFF0C\u4F46\u662F\u627E\u4E0D\u5230\u5143\u7D20 ''{0}'' \u7684\u5BA3\u544A\u3002
         cvc-complex-type.2.4.d = cvc-complex-type.2.4.d: \u5F9E\u5143\u7D20 ''{0}'' \u958B\u59CB\u627E\u5230\u7121\u6548\u7684\u5167\u5BB9\u3002\u6B64\u8655\u672A\u9810\u671F\u5B50\u9805\u5143\u7D20\u3002
-        cvc-complex-type.2.4.e = cvc-complex-type.2.4.d: \u5F9E\u5143\u7D20 ''{0}'' \u958B\u59CB\u627E\u5230\u7121\u6548\u7684\u5167\u5BB9\u3002\u6B64\u8655\u672A\u9810\u671F\u5B50\u9805\u5143\u7D20 ''{1}''\u3002
+        cvc-complex-type.2.4.d.1 = cvc-complex-type.2.4.d: \u5F9E\u5143\u7D20 ''{0}'' \u958B\u59CB\u627E\u5230\u7121\u6548\u7684\u5167\u5BB9\u3002\u6B64\u8655\u672A\u9810\u671F\u5B50\u9805\u5143\u7D20 ''{1}''\u3002
+        cvc-complex-type.2.4.e = cvc-complex-type.2.4.e: ''{0}'' \u5728\u76EE\u524D\u7684\u5E8F\u5217\u4E2D\u6700\u591A\u53EF\u4EE5\u51FA\u73FE ''{2}'' \u6B21\u3002\u5DF2\u8D85\u904E\u6B64\u9650\u5236\u3002\u6B64\u8655\u9810\u671F\u8981\u6709 ''{1}'' \u5176\u4E2D\u4E4B\u4E00\u3002
+        cvc-complex-type.2.4.f = cvc-complex-type.2.4.f: ''{0}'' \u5728\u76EE\u524D\u7684\u5E8F\u5217\u4E2D\u6700\u591A\u53EF\u4EE5\u51FA\u73FE ''{1}'' \u6B21\u3002\u5DF2\u8D85\u904E\u6B64\u9650\u5236\u3002\u6B64\u8655\u4E0D\u61C9\u6709\u5B50\u9805\u5143\u7D20\u3002
+        cvc-complex-type.2.4.g = cvc-complex-type.2.4.g: \u767C\u73FE\u4EE5\u5143\u7D20 ''{0}'' \u70BA\u958B\u982D\u7684\u7121\u6548\u5167\u5BB9\u3002''{1}'' \u5728\u76EE\u524D\u7684\u5E8F\u5217\u4E2D\u61C9\u8A72\u6700\u5C11\u8981\u51FA\u73FE ''{2}'' \u6B21\u3002\u9084\u9700\u8981\u518D\u51FA\u73FE\u4E00\u6B21\u624D\u80FD\u6EFF\u8DB3\u6B64\u9650\u5236\u689D\u4EF6\u3002
+        cvc-complex-type.2.4.h = cvc-complex-type.2.4.h: \u767C\u73FE\u4EE5\u5143\u7D20 ''{0}'' \u70BA\u958B\u982D\u7684\u7121\u6548\u5167\u5BB9\u3002''{1}'' \u5728\u76EE\u524D\u7684\u5E8F\u5217\u4E2D\u61C9\u8A72\u6700\u5C11\u8981\u51FA\u73FE ''{2}'' \u6B21\u3002\u9084\u9700\u8981\u518D\u51FA\u73FE ''{3}'' \u6B21\u624D\u80FD\u6EFF\u8DB3\u6B64\u9650\u5236\u689D\u4EF6\u3002
+        cvc-complex-type.2.4.i = cvc-complex-type.2.4.i: \u5143\u7D20 ''{0}'' \u7684\u5167\u5BB9\u4E0D\u5B8C\u6574\u3002''{1}'' \u61C9\u8A72\u6700\u5C11\u8981\u51FA\u73FE ''{2}'' \u6B21\u3002\u9084\u9700\u8981\u518D\u51FA\u73FE\u4E00\u6B21\u624D\u80FD\u6EFF\u8DB3\u6B64\u9650\u5236\u689D\u4EF6\u3002
+        cvc-complex-type.2.4.j = cvc-complex-type.2.4.j: \u5143\u7D20 ''{0}'' \u7684\u5167\u5BB9\u4E0D\u5B8C\u6574\u3002''{1}'' \u61C9\u8A72\u6700\u5C11\u8981\u51FA\u73FE ''{2}'' \u6B21\u3002\u9084\u9700\u8981\u518D\u51FA\u73FE ''{3}'' \u6B21\u624D\u80FD\u6EFF\u8DB3\u6B64\u9650\u5236\u689D\u4EF6\u3002
         cvc-complex-type.3.1 = cvc-complex-type.3.1: \u5143\u7D20 ''{0}'' \u5C6C\u6027 ''{1}'' \u7684\u503C ''{2}'' \u5C0D\u65BC\u5C6C\u6027\u4F7F\u7528\u7121\u6548\u3002\u5C6C\u6027 ''{1}'' \u5177\u6709 ''{3}'' \u7684\u56FA\u5B9A\u503C\u3002
         cvc-complex-type.3.2.1 = cvc-complex-type.3.2.1: \u5143\u7D20 ''{0}'' \u6C92\u6709\u5C6C\u6027 ''{1}'' \u7684\u5C6C\u6027\u842C\u7528\u5B57\u5143\u3002
         cvc-complex-type.3.2.2 = cvc-complex-type.3.2.2: \u4E0D\u5141\u8A31\u5C6C\u6027 ''{1}'' \u51FA\u73FE\u5728\u5143\u7D20 ''{0}'' \u4E2D\u3002
         cvc-complex-type.4 = cvc-complex-type.4: \u5C6C\u6027 ''{1}'' \u5FC5\u9808\u51FA\u73FE\u5728\u5143\u7D20 ''{0}'' \u4E2D\u3002
         cvc-complex-type.5.1 = cvc-complex-type.5.1: \u5728\u5143\u7D20 ''{0}'' \u4E2D\uFF0C\u5C6C\u6027 ''{1}'' \u70BA Wild ID\u3002\u4F46\u662F\u5DF2\u7D93\u6709\u4E00\u500B Wild ID ''{2}''\u3002\u53EA\u80FD\u6709\u4E00\u500B Wild ID\u3002
-        cvc-complex-type.5.2 = cvc-complex-type.5.2: \u5728\u5143\u7D20 ''{0}'' \u4E2D\uFF0C\u5C6C\u6027 ''{1}'' \u70BA Wild ID\u3002\u4F46\u662F\u5DF2\u7D93\u6709\u4E00\u500B\u5F9E ''{''attribute uses''}'' \u4E2D\u7684 ID \u884D\u751F\u800C\u4F86\u7684\u5C6C\u6027 ''{2}''\u3002
+        cvc-complex-type.5.2 = cvc-complex-type.5.2: \u5728\u5143\u7D20 ''{0}'' \u4E2D\uFF0C\u5C6C\u6027 ''{1}'' \u70BA Wild ID\u3002\u4F46\u662F\u5DF2\u7D93\u6709\u4E00\u500B\u5F9E '{'attribute uses'}' \u4E2D\u7684 ID \u884D\u751F\u800C\u4F86\u7684\u5C6C\u6027 ''{2}''\u3002
         cvc-datatype-valid.1.2.1 = cvc-datatype-valid.1.2.1: ''{0}'' \u4E0D\u662F ''{1}'' \u7684\u6709\u6548\u503C\u3002
         cvc-datatype-valid.1.2.2 = cvc-datatype-valid.1.2.2: ''{0}'' \u4E0D\u662F\u6E05\u55AE\u985E\u578B ''{1}'' \u7684\u6709\u6548\u503C\u3002
         cvc-datatype-valid.1.2.3 = cvc-datatype-valid.1.2.3: ''{0}'' \u4E0D\u662F\u806F\u96C6\u985E\u578B ''{1}'' \u7684\u6709\u6548\u503C\u3002
-        cvc-elt.1 = cvc-elt.1: \u627E\u4E0D\u5230\u5143\u7D20 ''{0}'' \u7684\u5BA3\u544A\u3002
-        cvc-elt.2 = cvc-elt.2: ''{0}'' \u5143\u7D20\u5BA3\u544A\u4E2D ''{''abstract''}'' \u7684\u503C\u5FC5\u9808\u70BA\u507D\u3002
-        cvc-elt.3.1 = cvc-elt.3.1: \u5C6C\u6027 ''{1}'' \u4E0D\u53EF\u51FA\u73FE\u5728\u5143\u7D20 ''{0}'' \u4E2D\uFF0C\u56E0\u70BA ''{0}'' \u7684 ''{''nillable''}'' \u5C6C\u6027\u70BA\u507D\u3002
+        cvc-elt.1.a = cvc-elt.1.a: \u627E\u4E0D\u5230\u5143\u7D20 ''{0}'' \u7684\u5BA3\u544A\u3002
+        cvc-elt.1.b = cvc-elt.1.b: \u5143\u7D20\u7684\u540D\u7A31\u4E0D\u7B26\u5408\u5143\u7D20\u5BA3\u544A\u7684\u540D\u7A31\u3002\u767C\u73FE\u7684\u662F ''{0}''\u3002\u9810\u671F\u61C9\u70BA ''{1}''\u3002
+        cvc-elt.2 = cvc-elt.2: ''{0}'' \u5143\u7D20\u5BA3\u544A\u4E2D '{'abstract'}' \u7684\u503C\u5FC5\u9808\u70BA\u507D\u3002
+        cvc-elt.3.1 = cvc-elt.3.1: \u5C6C\u6027 ''{1}'' \u4E0D\u53EF\u51FA\u73FE\u5728\u5143\u7D20 ''{0}'' \u4E2D\uFF0C\u56E0\u70BA ''{0}'' \u7684 '{'nillable'}' \u5C6C\u6027\u70BA\u507D\u3002
         cvc-elt.3.2.1 = cvc-elt.3.2.1: \u5143\u7D20 ''{0}'' \u4E0D\u53EF\u6709\u5B57\u5143\u6216\u5143\u7D20\u8CC7\u8A0A [children]\uFF0C\u56E0\u70BA\u6307\u5B9A\u4E86 ''{1}''\u3002
-        cvc-elt.3.2.2 = cvc-elt.3.2.2: \u5143\u7D20 ''{0}'' \u4E0D\u53EF\u6709\u56FA\u5B9A\u7684 ''{''value constraint''}''\uFF0C\u56E0\u70BA\u6307\u5B9A\u4E86 ''{1}''\u3002
+        cvc-elt.3.2.2 = cvc-elt.3.2.2: \u5143\u7D20 ''{0}'' \u4E0D\u53EF\u6709\u56FA\u5B9A\u7684 '{'value constraint'}'\uFF0C\u56E0\u70BA\u6307\u5B9A\u4E86 ''{1}''\u3002
         cvc-elt.4.1 = cvc-elt.4.1: \u5143\u7D20 ''{0}'' \u5C6C\u6027 ''{1}'' \u7684\u503C ''{2}'' \u4E0D\u662F\u6709\u6548\u7684 QName\u3002
         cvc-elt.4.2 = cvc-elt.4.2: \u7121\u6CD5\u5C07 ''{1}'' \u89E3\u6790\u70BA\u5143\u7D20 ''{0}'' \u7684\u985E\u578B\u5B9A\u7FA9\u3002
         cvc-elt.4.3 = cvc-elt.4.3: \u985E\u578B ''{1}'' \u4E0D\u662F\u6709\u6548\u884D\u751F\u81EA\u5143\u7D20 ''{0}'' \u7684\u985E\u578B\u5B9A\u7FA9 ''{2}''\u3002
-        cvc-elt.5.1.1 = cvc-elt.5.1.1: \u5143\u7D20 ''{0}'' \u7684 ''{''value constraint''}'' ''{2}'' \u4E0D\u662F\u985E\u578B ''{1}'' \u7684\u6709\u6548\u9810\u8A2D\u503C\u3002
+        cvc-elt.5.1.1 = cvc-elt.5.1.1: \u5143\u7D20 ''{0}'' \u7684 '{'value constraint'}' ''{2}'' \u4E0D\u662F\u985E\u578B ''{1}'' \u7684\u6709\u6548\u9810\u8A2D\u503C\u3002
         cvc-elt.5.2.2.1 = cvc-elt.5.2.2.1: \u5143\u7D20 ''{0}'' \u4E0D\u53EF\u6709\u5143\u7D20\u8CC7\u8A0A\u9805\u76EE [children]\u3002
-        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0D\u7B26\u5408\u56FA\u5B9A ''{''value constraint''}'' \u503C ''{2}''\u3002
-        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0D\u7B26\u5408 ''{''value constraint''}'' \u503C ''{2}''\u3002
+        cvc-elt.5.2.2.2.1 = cvc-elt.5.2.2.2.1: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0D\u7B26\u5408\u56FA\u5B9A '{'value constraint'}' \u503C ''{2}''\u3002
+        cvc-elt.5.2.2.2.2 = cvc-elt.5.2.2.2.2: \u5143\u7D20 ''{0}'' \u7684\u503C ''{1}'' \u4E0D\u7B26\u5408 '{'value constraint'}' \u503C ''{2}''\u3002
         cvc-enumeration-valid = cvc-enumeration-valid: \u503C ''{0}'' \u5C0D\u65BC\u5217\u8209 ''{1}'' \u800C\u8A00\u4E26\u975E facet-valid\u3002\u5B83\u5FC5\u9808\u662F\u4F86\u81EA\u5217\u8209\u7684\u503C\u3002
         cvc-fractionDigits-valid = cvc-fractionDigits-valid: \u503C ''{0}'' \u5177\u6709 {1} \u5206\u6578\u4F4D\u6578\uFF0C\u4F46\u662F\u5206\u6578\u4F4D\u6578\u7684\u6578\u76EE\u9650\u5236\u70BA {2}\u3002
         cvc-id.1 = cvc-id.1: IDREF ''{0}'' \u6C92\u6709 ID/IDREF \u9023\u7D50\u3002
@@ -104,6 +109,7 @@
         cvc-minLength-valid = cvc-minLength-valid: \u9577\u5EA6 = ''{1}'' \u7684\u503C ''{0}'' \u5C0D\u65BC\u985E\u578B ''{3}'' minLength ''{2}'' \u800C\u8A00\u4E26\u975E facet-valid\u3002
         cvc-pattern-valid = cvc-pattern-valid: \u503C ''{0}'' \u5C0D\u65BC\u985E\u578B ''{2}'' \u6A23\u5F0F ''{1}'' \u800C\u8A00\u4E26\u975E facet-valid\u3002
         cvc-totalDigits-valid = cvc-totalDigits-valid: \u503C ''{0}'' \u5177\u6709 {1} \u7E3D\u4F4D\u6578\uFF0C\u4F46\u662F\u7E3D\u4F4D\u6578\u7684\u6578\u76EE\u9650\u5236\u70BA {2}\u3002
+        cvc-type.1 = cvc-type.1: \u627E\u4E0D\u5230\u985E\u578B\u5B9A\u7FA9 ''{0}''\u3002
         cvc-type.2 = cvc-type.2: \u5143\u7D20 {0} \u7684\u985E\u578B\u5B9A\u7FA9\u4E0D\u53EF\u70BA\u62BD\u8C61\u3002
         cvc-type.3.1.1 = cvc-type.3.1.1: \u5143\u7D20 ''{0}'' \u70BA\u7C21\u55AE\u985E\u578B\uFF0C\u56E0\u6B64\u4E0D\u80FD\u6709\u5C6C\u6027\uFF0C\u4F46\u4E0D\u5305\u62EC\u547D\u540D\u7A7A\u9593\u540D\u7A31\u7B49\u65BC ''http://www.w3.org/2001/XMLSchema-instance'' \u8207 [local name] \u70BA ''type''\u3001''nil''\u3001''schemaLocation'' \u6216 ''noNamespaceSchemaLocation'' \u5176\u4E2D\u4E4B\u4E00\u8005\u3002\u4E0D\u904E\uFF0C\u627E\u5230\u5C6C\u6027 ''{1}''\u3002
         cvc-type.3.1.2 = cvc-type.3.1.2: \u5143\u7D20 ''{0}'' \u70BA\u7C21\u55AE\u985E\u578B\uFF0C\u56E0\u6B64\u4E0D\u53EF\u6709\u5143\u7D20\u8CC7\u8A0A\u9805\u76EE [children]\u3002
@@ -168,10 +174,10 @@
         ag-props-correct.2 = ag-props-correct.2: \u5C6C\u6027\u7FA4\u7D44 ''{0}'' \u7684\u932F\u8AA4\u3002\u91CD\u8907\u5C6C\u6027\u4F7F\u7528\u76F8\u540C\u540D\u7A31\u4E14\u6307\u5B9A\u4E86\u76EE\u6A19\u547D\u540D\u7A7A\u9593\u3002\u91CD\u8907\u5C6C\u6027\u4F7F\u7528\u7684\u540D\u7A31\u70BA ''{1}''\u3002
         ag-props-correct.3 = ag-props-correct.3: \u5C6C\u6027\u7FA4\u7D44 ''{0}'' \u7684\u932F\u8AA4\u3002\u5169\u500B\u5C6C\u6027\u5BA3\u544A ''{1}'' \u8207 ''{2}'' \u5177\u6709\u884D\u751F\u81EA ID \u7684\u985E\u578B\u3002
         a-props-correct.2 = a-props-correct.2: \u5C6C\u6027 ''{0}'' \u4E2D\u7684\u503C\u9650\u5236\u689D\u4EF6\u503C ''{1}'' \u7121\u6548\u3002
-        a-props-correct.3 = a-props-correct.3: \u5C6C\u6027 ''{0}'' \u7121\u6CD5\u4F7F\u7528 ''fixed'' \u6216 ''default''\uFF0C\u56E0\u70BA\u5C6C\u6027\u7684 ''{''type definition''}'' \u70BA ID\uFF0C\u6216\u884D\u751F\u81EA ID\u3002
-        au-props-correct.2 = au-props-correct.2: \u5728 ''{0}'' \u7684\u5C6C\u6027\u5BA3\u544A\u4E2D\uFF0C\u6307\u5B9A\u4E86 ''{1}'' \u7684\u56FA\u5B9A\u503C\u3002\u56E0\u6B64\uFF0C\u82E5\u53C3\u7167 ''{0}'' \u7684\u5C6C\u6027\u4F7F\u7528\u4E5F\u5177\u6709 ''{''value constraint''}''\uFF0C\u5B83\u5FC5\u9808\u662F\u56FA\u5B9A\u503C\u4E14\u503C\u5FC5\u9808\u70BA ''{1}''\u3002
+        a-props-correct.3 = a-props-correct.3: \u5C6C\u6027 ''{0}'' \u7121\u6CD5\u4F7F\u7528 ''fixed'' \u6216 ''default''\uFF0C\u56E0\u70BA\u5C6C\u6027\u7684 '{'type definition'}' \u70BA ID\uFF0C\u6216\u884D\u751F\u81EA ID\u3002
+        au-props-correct.2 = au-props-correct.2: \u5728 ''{0}'' \u7684\u5C6C\u6027\u5BA3\u544A\u4E2D\uFF0C\u6307\u5B9A\u4E86 ''{1}'' \u7684\u56FA\u5B9A\u503C\u3002\u56E0\u6B64\uFF0C\u82E5\u53C3\u7167 ''{0}'' \u7684\u5C6C\u6027\u4F7F\u7528\u4E5F\u5177\u6709 '{'value constraint'}'\uFF0C\u5B83\u5FC5\u9808\u662F\u56FA\u5B9A\u503C\u4E14\u503C\u5FC5\u9808\u70BA ''{1}''\u3002
         cos-all-limited.1.2 = cos-all-limited.1.2: 'all' \u6A21\u578B\u7FA4\u7D44\u5FC5\u9808\u51FA\u73FE\u5728 '{'min occurs'}' = '{'max occurs'}' = 1 \u7684\u7269\u4EF6\u4E2D\uFF0C\u4E14\u8A72\u7269\u4EF6\u5FC5\u9808\u662F\u4E00\u5C0D\u7D44\u6210\u8907\u96DC\u985E\u578B\u5B9A\u7FA9\u4E4B '{'content type'}' \u7269\u4EF6\u4E2D\u7684\u4E00\u90E8\u5206\u3002
-        cos-all-limited.2 = cos-all-limited.2: ''all'' \u6A21\u578B\u7FA4\u7D44\u4E2D\u5143\u7D20\u7684 ''{''max occurs''}'' \u5FC5\u9808\u662F 0 \u6216 1\u3002\u5143\u7D20 ''{1}'' \u7684\u503C ''{0}'' \u7121\u6548\u3002
+        cos-all-limited.2 = cos-all-limited.2: ''all'' \u6A21\u578B\u7FA4\u7D44\u4E2D\u5143\u7D20\u7684 '{'max occurs'}' \u5FC5\u9808\u662F 0 \u6216 1\u3002\u5143\u7D20 ''{1}'' \u7684\u503C ''{0}'' \u7121\u6548\u3002
         cos-applicable-facets = cos-applicable-facets: \u985E\u578B {1} \u4E0D\u5141\u8A31 Facet ''{0}''\u3002
         cos-ct-extends.1.1 = cos-ct-extends.1.1: \u985E\u578B ''{0}'' \u662F\u7531\u64F4\u5145\u5957\u4EF6\u5F9E\u985E\u578B ''{1}'' \u884D\u751F\u3002\u4E0D\u904E\uFF0C''{1}'' \u7684 ''final'' \u5C6C\u6027\u7981\u6B62\u7531\u64F4\u5145\u5957\u4EF6\u884D\u751F\u3002
         cos-ct-extends.1.4.3.2.2.1.a = cos-ct-extends.1.4.3.2.2.1.a: \u884D\u751F\u985E\u578B\u8207\u5176\u57FA\u790E\u7684\u5167\u5BB9\u985E\u578B\u7686\u5FC5\u9808\u662F\u6DF7\u5408\u985E\u578B\u6216\u5169\u8005\u7686\u662F element-only\u3002\u985E\u578B ''{0}'' \u662F element-only\uFF0C\u4F46\u5176\u57FA\u790E\u985E\u578B\u5247\u5426\u3002
@@ -182,17 +188,17 @@
         cos-particle-restrict.a = cos-particle-restrict.a: \u884D\u751F\u7269\u4EF6\u70BA\u7A7A\u767D\uFF0C\u5247\u57FA\u790E\u7269\u4EF6\u4E0D\u53EF\u70BA\u7A7A\u767D\u3002
         cos-particle-restrict.b = cos-particle-restrict.b: \u57FA\u790E\u7269\u4EF6\u70BA\u7A7A\u767D\uFF0C\u4F46\u662F\u884D\u751F\u7269\u4EF6\u5247\u5426\u3002
         cos-particle-restrict.2 = cos-particle-restrict.2: \u7981\u6B62\u7684\u7269\u4EF6\u9650\u5236: ''{0}''\u3002
-        cos-st-restricts.1.1 = cos-st-restricts.1.1: \u985E\u578B ''{1}'' \u70BA\u55AE\u5143\u985E\u578B\uFF0C\u56E0\u6B64\u5176 ''{''base type definition''}'' (''{0}'') \u5FC5\u9808\u662F\u55AE\u5143\u7C21\u55AE\u985E\u578B\u5B9A\u7FA9\u6216\u5167\u5EFA\u7684\u539F\u59CB\u8CC7\u6599\u985E\u578B\u3002
+        cos-st-restricts.1.1 = cos-st-restricts.1.1: \u985E\u578B ''{1}'' \u70BA\u55AE\u5143\u985E\u578B\uFF0C\u56E0\u6B64\u5176 '{'base type definition'}' (''{0}'') \u5FC5\u9808\u662F\u55AE\u5143\u7C21\u55AE\u985E\u578B\u5B9A\u7FA9\u6216\u5167\u5EFA\u7684\u539F\u59CB\u8CC7\u6599\u985E\u578B\u3002
         cos-st-restricts.2.1 = cos-st-restricts.2.1: \u6E05\u55AE\u985E\u578B ''{0}'' \u7684\u5B9A\u7FA9\u4E2D\uFF0C\u985E\u578B ''{1}'' \u662F\u7121\u6548\u7684\u9805\u76EE\u985E\u578B\uFF0C\u56E0\u70BA\u5B83\u662F\u6E05\u55AE\u985E\u578B\uFF0C\u6216\u5305\u542B\u6E05\u55AE\u7684\u806F\u96C6\u985E\u578B\u3002
-        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: ''{''item type definition''}'' \u7684 ''{''final''}'' \u5143\u4EF6 ''{0}'' \u5305\u542B ''list''\u3002\u9019\u4EE3\u8868 ''{0}'' \u7121\u6CD5\u4F5C\u70BA\u6E05\u55AE\u985E\u578B ''{1}'' \u7684\u9805\u76EE\u985E\u578B\u3002
-        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: ''{''member type definitions''}'' \u7684 ''{''final''}'' \u5143\u4EF6 ''{0}'' \u5305\u542B ''union''\u3002\u9019\u4EE3\u8868 ''{0}'' \u7121\u6CD5\u4F5C\u70BA\u806F\u96C6\u985E\u578B ''{1}'' \u7684\u6210\u54E1\u985E\u578B\u3002
+        cos-st-restricts.2.3.1.1 = cos-st-restricts.2.3.1.1: '{'item type definition'}' \u7684 '{'final'}' \u5143\u4EF6 ''{0}'' \u5305\u542B ''list''\u3002\u9019\u4EE3\u8868 ''{0}'' \u7121\u6CD5\u4F5C\u70BA\u6E05\u55AE\u985E\u578B ''{1}'' \u7684\u9805\u76EE\u985E\u578B\u3002
+        cos-st-restricts.3.3.1.1 = cos-st-restricts.3.3.1.1: '{'member type definitions'}' \u7684 '{'final'}' \u5143\u4EF6 ''{0}'' \u5305\u542B ''union''\u3002\u9019\u4EE3\u8868 ''{0}'' \u7121\u6CD5\u4F5C\u70BA\u806F\u96C6\u985E\u578B ''{1}'' \u7684\u6210\u54E1\u985E\u578B\u3002
         cos-valid-default.2.1 = cos-valid-default.2.1: \u5143\u7D20 ''{0}'' \u5177\u6709\u503C\u9650\u5236\u689D\u4EF6\uFF0C\u4E14\u5FC5\u9808\u5177\u6709\u6DF7\u5408\u6216\u7C21\u55AE\u5167\u5BB9\u6A21\u578B\u3002
-        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: \u7531\u65BC\u5143\u7D20 ''{0}'' \u5177\u6709 ''{''value constraint''}'' \u4E14\u5176\u985E\u578B\u5B9A\u7FA9\u5177\u6709\u6DF7\u5408\u7684 ''{''content type''}''\uFF0C\u56E0\u6B64 ''{''content type''}'' \u7684\u7269\u4EF6\u5FC5\u9808\u662F\u53EF\u7A7A\u767D\u3002
+        cos-valid-default.2.2.2 = cos-valid-default.2.2.2: \u7531\u65BC\u5143\u7D20 ''{0}'' \u5177\u6709 '{'value constraint'}' \u4E14\u5176\u985E\u578B\u5B9A\u7FA9\u5177\u6709\u6DF7\u5408\u7684 '{'content type'}'\uFF0C\u56E0\u6B64 '{'content type'}' \u7684\u7269\u4EF6\u5FC5\u9808\u662F\u53EF\u7A7A\u767D\u3002
         c-props-correct.2 = c-props-correct.2: keyref ''{0}'' \u8207 key ''{1}'' \u7684 Fields \u57FA\u6578\u5F7C\u6B64\u5FC5\u9808\u76F8\u7B26\u3002
         ct-props-correct.3 = ct-props-correct.3: \u5075\u6E2C\u5230\u8907\u96DC\u985E\u578B ''{0}'' \u7684\u5FAA\u74B0\u5B9A\u7FA9\u3002\u9019\u4EE3\u8868 ''{0}'' \u5305\u542B\u5728\u81EA\u8EAB\u985E\u578B\u968E\u5C64\u4E2D\uFF0C\u9019\u662F\u4E00\u9805\u932F\u8AA4\u3002
         ct-props-correct.4 = ct-props-correct.4: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002\u91CD\u8907\u5C6C\u6027\u4F7F\u7528\u76F8\u540C\u540D\u7A31\u4E14\u6307\u5B9A\u4E86\u76EE\u6A19\u547D\u540D\u7A7A\u9593\u3002\u91CD\u8907\u5C6C\u6027\u4F7F\u7528\u7684\u540D\u7A31\u70BA ''{1}''\u3002
         ct-props-correct.5 = ct-props-correct.5: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002\u5169\u500B\u5C6C\u6027\u5BA3\u544A ''{1}'' \u8207 ''{2}'' \u5177\u6709\u884D\u751F\u81EA ID \u7684\u985E\u578B\u3002
-        derivation-ok-restriction.1 = derivation-ok-restriction.1: \u985E\u578B ''{0}'' \u7531\u9650\u5236\u5F9E\u985E\u578B ''{1}'' \u884D\u751F\u3002\u4E0D\u904E\uFF0C''{1}'' \u5177\u6709 ''{''final''}'' \u5C6C\u6027\uFF0C\u7981\u6B62\u7531\u9650\u5236\u884D\u751F\u3002
+        derivation-ok-restriction.1 = derivation-ok-restriction.1: \u985E\u578B ''{0}'' \u7531\u9650\u5236\u5F9E\u985E\u578B ''{1}'' \u884D\u751F\u3002\u4E0D\u904E\uFF0C''{1}'' \u5177\u6709 '{'final'}' \u5C6C\u6027\uFF0C\u7981\u6B62\u7531\u9650\u5236\u884D\u751F\u3002
         derivation-ok-restriction.2.1.1 = derivation-ok-restriction.2.1.1: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002\u6B64\u985E\u578B\u4E2D\u4F7F\u7528 ''{1}'' \u7684\u5C6C\u6027\u5177\u6709 ''use'' \u503C\u7684 ''{2}''\uFF0C\u9019\u8207\u57FA\u790E\u985E\u578B\u4E2D\u4F7F\u7528\u7B26\u5408\u5C6C\u6027\u7684 ''required'' \u503C\u4E0D\u4E00\u81F4\u3002
         derivation-ok-restriction.2.1.2 = derivation-ok-restriction.2.1.2: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002\u6B64\u985E\u578B\u4E2D\u4F7F\u7528 ''{1}'' \u7684\u5C6C\u6027\u5177\u6709\u985E\u578B ''{2}''\uFF0C\u9019\u4E0D\u662F\u6709\u6548\u884D\u751F\u81EA ''{3}''\uFF0C\u4EA6\u5373\u57FA\u790E\u985E\u578B\u4E2D\u4F7F\u7528\u7B26\u5408\u5C6C\u6027\u7684\u985E\u578B\u3002
         derivation-ok-restriction.2.1.3.a = derivation-ok-restriction.2.1.3.a: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002\u6B64\u985E\u578B\u4E2D\u4F7F\u7528 ''{1}'' \u7684\u5C6C\u6027\u5177\u6709\u672A\u56FA\u5B9A\u7684\u6709\u6548\u503C\u9650\u5236\u689D\u4EF6\uFF0C\u800C\u57FA\u790E\u985E\u578B\u4E2D\u4F7F\u7528\u7684\u7B26\u5408\u5C6C\u6027\u6709\u6548\u503C\u9650\u5236\u689D\u4EF6\u70BA\u56FA\u5B9A\u5F0F\u3002
@@ -210,11 +216,11 @@
         enumeration-required-notation = enumeration-required-notation: \u7531 {2} ''{1}'' \u4F7F\u7528\u7684 NOTATION \u985E\u578B ''{0}''\uFF0C\u5FC5\u9808\u5177\u6709\u5217\u8209 facet \u503C\uFF0C\u4EE5\u6307\u5B9A\u6B64\u985E\u578B\u4F7F\u7528\u7684\u8868\u793A\u6CD5\u5143\u7D20\u3002
         enumeration-valid-restriction = enumeration-valid-restriction: \u5217\u8209\u503C ''{0}'' \u4E0D\u5728\u57FA\u790E\u985E\u578B {1} \u7684\u503C\u7A7A\u9593\u4E2D\u3002
         e-props-correct.2 = e-props-correct.2: \u5143\u7D20 ''{0}'' \u4E2D\u7684\u503C\u9650\u5236\u689D\u4EF6\u503C ''{1}'' \u7121\u6548\u3002
-        e-props-correct.4 = e-props-correct.4: \u5143\u7D20 ''{0}'' \u7684 ''{''type definition''}'' \u4E0D\u662F\u6709\u6548\u884D\u751F\u81EA substitutionHead ''{1}'' \u7684 ''{''type definition''}''\uFF0C\u6216\u662F ''{1}'' \u7684 ''{''substitution group exclusions''}'' \u5C6C\u6027\u4E0D\u5141\u8A31\u6B64\u884D\u751F\u3002
-        e-props-correct.5 = e-props-correct.5: ''{''value constraint''}'' \u4E0D\u53EF\u51FA\u73FE\u5728\u5143\u7D20 ''{0}'' \u4E0A\uFF0C\u56E0\u70BA\u5143\u7D20\u7684 ''{''type definition''}'' \u6216 ''{''type definition''}'' \u7684 ''{''content type''}'' \u70BA ID\uFF0C\u6216\u884D\u751F\u81EA ID\u3002
+        e-props-correct.4 = e-props-correct.4: \u5143\u7D20 ''{0}'' \u7684 '{'type definition'}' \u4E0D\u662F\u6709\u6548\u884D\u751F\u81EA substitutionHead ''{1}'' \u7684 '{'type definition'}'\uFF0C\u6216\u662F ''{1}'' \u7684 '{'substitution group exclusions'}' \u5C6C\u6027\u4E0D\u5141\u8A31\u6B64\u884D\u751F\u3002
+        e-props-correct.5 = e-props-correct.5: '{'value constraint'}' \u4E0D\u53EF\u51FA\u73FE\u5728\u5143\u7D20 ''{0}'' \u4E0A\uFF0C\u56E0\u70BA\u5143\u7D20\u7684 '{'type definition'}' \u6216 '{'type definition'}' \u7684 '{'content type'}' \u70BA ID\uFF0C\u6216\u884D\u751F\u81EA ID\u3002
         e-props-correct.6 = e-props-correct.6: \u5075\u6E2C\u5230 ''{0}'' \u7684\u5FAA\u74B0\u66FF\u4EE3\u7FA4\u7D44\u3002
         fractionDigits-valid-restriction = fractionDigits-valid-restriction: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''fractionDigits'' \u7684\u503C ''{0}'' \u7121\u6548\uFF0C\u56E0\u70BA\u5B83\u5FC5\u9808\u5C0F\u65BC\u6216\u7B49\u65BC ''fractionDigits'' \u7684\u503C\uFF0C\u6B64\u503C\u4EE5\u5176\u4E2D\u4E00\u500B\u7956\u7CFB\u985E\u578B\u8A2D\u70BA ''{1}''\u3002
-        fractionDigits-totalDigits = fractionDigits-totalDigits: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0C facet ''fractionDigits'' \u7684\u503C ''{0}'' \u7121\u6548\uFF0C\u56E0\u70BA\u503C\u5FC5\u9808\u5C0F\u65BC\u6216\u7B49\u65BC ''totalDigits'' \u7684\u503C\uFF0C\u4EA6\u5373 ''{1}''\u3002
+        fractionDigits-totalDigits = fractionDigits-totalDigits: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''fractionDigits'' \u7684\u503C ''{0}'' \u7121\u6548\uFF0C\u56E0\u70BA\u503C\u5FC5\u9808\u5C0F\u65BC\u6216\u7B49\u65BC ''totalDigits'' \u7684\u503C\uFF0C\u4EA6\u5373 ''{1}''\u3002
         length-minLength-maxLength.1.1 = length-minLength-maxLength.1.1: \u91DD\u5C0D\u985E\u578B {0}\uFF0Clength ''{1}'' \u7684\u503C\u5C0F\u65BC minLength ''{2}'' \u7684\u503C\u662F\u4E00\u9805\u932F\u8AA4\u3002
         length-minLength-maxLength.1.2.a = length-minLength-maxLength.1.2.a: \u91DD\u5C0D\u985E\u578B {0}\uFF0C\u82E5\u76EE\u524D\u9650\u5236\u5177\u6709 minLength facet \u4E14\u76EE\u524D\u7684\u9650\u5236\u6216\u57FA\u790E\u5177\u6709 length facet\uFF0C\u5247\u57FA\u790E\u6C92\u6709 minLength facet \u662F\u4E00\u9805\u932F\u8AA4\u3002
         length-minLength-maxLength.1.2.b = length-minLength-maxLength.1.2.b: \u91DD\u5C0D\u985E\u578B {0}\uFF0C\u76EE\u524D\u7684 minLength ''{1}'' \u4E0D\u7B49\u65BC\u57FA\u790E minLength ''{2}'' \u662F\u4E00\u9805\u932F\u8AA4\u3002
@@ -232,7 +238,7 @@
         maxInclusive-valid-restriction.3 = maxInclusive-valid-restriction.3: \u985E\u578B ''{2}'' \u7684\u932F\u8AA4\u3002\u7B49\u65BC ''{0}'' \u7684 maxInclusive \u503C\u5FC5\u9808\u5927\u65BC\u6216\u7B49\u65BC\u57FA\u790E\u985E\u578B ''{1}'' \u7684 minInclusive\u3002
         maxInclusive-valid-restriction.4 = maxInclusive-valid-restriction.4: \u985E\u578B ''{2}'' \u7684\u932F\u8AA4\u3002\u7B49\u65BC ''{0}'' \u7684 maxInclusive \u503C\u5FC5\u9808\u5927\u65BC\u57FA\u790E\u985E\u578B ''{1}'' \u7684 minExclusive\u3002
         maxLength-valid-restriction = maxLength-valid-restriction: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0C\u7B49\u65BC ''{0}'' \u7684 maxLength \u503C\u5FC5\u9808\u5C0F\u65BC\u6216\u7B49\u65BC\u57FA\u790E\u985E\u578B ''{1}'' \u7684 maxLength \u503C\u3002
-        mg-props-correct.2 = mg-props-correct.2: \u5075\u6E2C\u5230\u7FA4\u7D44 ''{0}'' \u7684\u5FAA\u74B0\u5B9A\u7FA9\u3002\u905E\u8FF4\u4F7F\u7528\u7269\u4EF6\u7684 ''{''term''}'' \u503C\u5C07\u5C0E\u81F3\u5176 ''{''term''}'' \u70BA\u7FA4\u7D44\u672C\u8EAB\u7684\u7269\u4EF6\u3002
+        mg-props-correct.2 = mg-props-correct.2: \u5075\u6E2C\u5230\u7FA4\u7D44 ''{0}'' \u7684\u5FAA\u74B0\u5B9A\u7FA9\u3002\u905E\u8FF4\u4F7F\u7528\u7269\u4EF6\u7684 '{'term'}' \u503C\u5C07\u5C0E\u81F3\u5176 '{'term'}' \u70BA\u7FA4\u7D44\u672C\u8EAB\u7684\u7269\u4EF6\u3002
         minExclusive-less-than-equal-to-maxExclusive = minExclusive-less-than-equal-to-maxExclusive: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0C\u7B49\u65BC ''{0}'' \u7684 minExclusive \u503C\u5FC5\u9808\u5C0F\u65BC\u6216\u7B49\u65BC maxExclusive \u503C (\u7B49\u65BC ''{1}'')\u3002
         minExclusive-less-than-maxInclusive = minExclusive-less-than-maxInclusive: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0C\u7B49\u65BC ''{0}'' \u7684 minExclusive \u503C\u5FC5\u9808\u5C0F\u65BC maxInclusive \u503C (\u7B49\u65BC ''{1}'')\u3002
         minExclusive-valid-restriction.1 = minExclusive-valid-restriction.1: \u985E\u578B ''{2}'' \u7684\u932F\u8AA4\u3002\u7B49\u65BC ''{0}'' \u7684 minExclusive \u503C\u5FC5\u9808\u5927\u65BC\u6216\u7B49\u65BC\u57FA\u790E\u985E\u578B ''{1}'' \u7684 minExclusive\u3002
@@ -249,20 +255,20 @@
         minLength-less-than-equal-to-maxLength = minLength-less-than-equal-to-maxLength: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0C\u7B49\u65BC ''{0}'' \u7684 minLength \u503C\u5FC5\u9808\u5C0F\u65BC maxLength \u503C (\u7B49\u65BC ''{1}'')\u3002
         minLength-valid-restriction = minLength-valid-restriction: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0C\u7B49\u65BC ''{0}'' \u7684 minLength \u5FC5\u9808\u5927\u65BC\u6216\u7B49\u65BC\u57FA\u790E\u985E\u578B ''{1}'' \u7684 minLength\u3002
         no-xmlns = no-xmlns: \u5C6C\u6027\u5BA3\u544A\u7684 {name} \u4E0D\u80FD\u8207 'xmlns' \u76F8\u540C\u3002
-        no-xsi = no-xsi: \u5C6C\u6027\u5BA3\u544A\u7684 ''{''target namespace''}'' \u4E0D\u80FD\u8207 ''{0}'' \u76F8\u540C\u3002
+        no-xsi = no-xsi: \u5C6C\u6027\u5BA3\u544A\u7684 '{'target namespace'}' \u4E0D\u80FD\u8207 ''{0}'' \u76F8\u540C\u3002
         p-props-correct.2.1 = p-props-correct.2.1: \u5728 ''{0}'' \u7684\u5BA3\u544A\u4E2D\uFF0C''minOccurs'' \u7684\u503C\u70BA ''{1}''\uFF0C\u4F46\u662F\u5B83\u4E0D\u53EF\u5927\u65BC ''maxOccurs'' \u7684\u503C ''{2}''\u3002
         rcase-MapAndSum.1 = rcase-MapAndSum.1: \u7269\u4EF6\u4E4B\u9593\u6C92\u6709\u5B8C\u6574\u7684\u529F\u80FD\u5C0D\u61C9\u3002
         rcase-MapAndSum.2 = rcase-MapAndSum.2: \u7FA4\u7D44\u7684\u767C\u751F\u7BC4\u570D ({0}\uFF0C{1}) \u4E0D\u662F\u57FA\u790E\u7FA4\u7D44\u767C\u751F\u7BC4\u570D ({2}\uFF0C{3}) \u7684\u6709\u6548\u9650\u5236\u3002
         rcase-NameAndTypeOK.1 = rcase-NameAndTypeOK.1: \u5143\u7D20\u5177\u6709\u4E0D\u76F8\u540C\u7684\u540D\u7A31\u8207\u76EE\u6A19\u547D\u540D\u7A7A\u9593: \u547D\u540D\u7A7A\u9593 ''{1}'' \u4E2D\u7684\u5143\u7D20 ''{0}'' \u8207\u547D\u540D\u7A7A\u9593 ''{3}'' \u4E2D\u7684\u5143\u7D20 ''{2}''\u3002
-        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: \u7269\u4EF6\u7684 ''{''term''}'' \u70BA\u5143\u7D20\u5BA3\u544A ''{0}'' \u7684\u932F\u8AA4\u3002\u5143\u7D20\u5BA3\u544A\u7684 ''{''nillable''}'' \u70BA\u771F\uFF0C\u4F46\u662F\u57FA\u790E\u985E\u578B\u4E2D\u7684\u5C0D\u61C9\u7269\u4EF6\u5177\u6709 ''{''nillable''}'' \u70BA\u507D\u7684\u5143\u7D20\u5BA3\u544A\u3002
-        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: \u7269\u4EF6\u7684 ''{''term''}'' \u70BA\u5143\u7D20\u5BA3\u544A ''{0}'' \u7684\u932F\u8AA4\u3002\u5B83\u7684\u767C\u751F\u7BC4\u570D ({1}\uFF0C{2}) \u4E0D\u662F\u57FA\u790E\u985E\u578B\u4E2D\u5C0D\u61C9\u7269\u4EF6\u7BC4\u570D ({3}\uFF0C{4}) \u7684\u6709\u6548\u9650\u5236\u3002
+        rcase-NameAndTypeOK.2 = rcase-NameAndTypeOK.2: \u7269\u4EF6\u7684 '{'term'}' \u70BA\u5143\u7D20\u5BA3\u544A ''{0}'' \u7684\u932F\u8AA4\u3002\u5143\u7D20\u5BA3\u544A\u7684 '{'nillable'}' \u70BA\u771F\uFF0C\u4F46\u662F\u57FA\u790E\u985E\u578B\u4E2D\u7684\u5C0D\u61C9\u7269\u4EF6\u5177\u6709 '{'nillable'}' \u70BA\u507D\u7684\u5143\u7D20\u5BA3\u544A\u3002
+        rcase-NameAndTypeOK.3 = rcase-NameAndTypeOK.3: \u7269\u4EF6\u7684 '{'term'}' \u70BA\u5143\u7D20\u5BA3\u544A ''{0}'' \u7684\u932F\u8AA4\u3002\u5B83\u7684\u767C\u751F\u7BC4\u570D ({1}\uFF0C{2}) \u4E0D\u662F\u57FA\u790E\u985E\u578B\u4E2D\u5C0D\u61C9\u7269\u4EF6\u7BC4\u570D ({3}\uFF0C{4}) \u7684\u6709\u6548\u9650\u5236\u3002
         rcase-NameAndTypeOK.4.a = rcase-NameAndTypeOK.4.a: \u5143\u7D20 ''{0}'' \u975E\u56FA\u5B9A\u5F0F\uFF0C\u4F46\u662F\u57FA\u790E\u985E\u578B\u4E2D\u5C0D\u61C9\u7684\u5143\u7D20\u5177\u6709\u56FA\u5B9A\u503C ''{1}''\u3002
         rcase-NameAndTypeOK.4.b = rcase-NameAndTypeOK.4.b: \u5143\u7D20 ''{0}'' \u5177\u6709\u56FA\u5B9A\u503C ''{1}''\uFF0C\u4F46\u662F\u57FA\u790E\u985E\u578B\u4E2D\u5C0D\u61C9\u7684\u5143\u7D20\u5177\u6709\u56FA\u5B9A\u503C ''{2}''\u3002
         rcase-NameAndTypeOK.5 = rcase-NameAndTypeOK.5: \u5143\u7D20 ''{0}'' \u7684\u8B58\u5225\u9650\u5236\u689D\u4EF6\u4E0D\u662F\u57FA\u790E\u4E2D\u7684\u5B50\u96C6\u3002
         rcase-NameAndTypeOK.6 = rcase-NameAndTypeOK.6: \u5143\u7D20 ''{0}'' \u4E0D\u5141\u8A31\u7684\u66FF\u4EE3\u4E0D\u662F\u57FA\u790E\u4E2D\u7684\u8D85\u96C6\u3002
         rcase-NameAndTypeOK.7 = rcase-NameAndTypeOK.7: \u5143\u7D20 ''{0}'' \u7684\u985E\u578B ''{1}'' \u4E0D\u662F\u884D\u751F\u81EA\u57FA\u790E\u5143\u7D20 ''{2}'' \u7684\u985E\u578B\u3002
         rcase-NSCompat.1 = rcase-NSCompat.1: \u5143\u7D20 ''{0}'' \u5177\u6709\u57FA\u790E\u4E2D\u842C\u7528\u5B57\u5143\u4E0D\u5141\u8A31\u7684\u547D\u540D\u7A7A\u9593 ''{1}''\u3002
-        rcase-NSCompat.2 = rcase-NSCompat.2: \u7269\u4EF6\u7684 ''{''term''}'' \u70BA\u5143\u7D20\u5BA3\u544A ''{0}'' \u7684\u932F\u8AA4\u3002\u5B83\u7684\u767C\u751F\u7BC4\u570D ({1}\uFF0C{2}) \u4E0D\u662F\u57FA\u790E\u985E\u578B\u4E2D\u5C0D\u61C9\u7269\u4EF6\u7BC4\u570D ({3}\uFF0C{4}) \u7684\u6709\u6548\u9650\u5236\u3002
+        rcase-NSCompat.2 = rcase-NSCompat.2: \u7269\u4EF6\u7684 '{'term'}' \u70BA\u5143\u7D20\u5BA3\u544A ''{0}'' \u7684\u932F\u8AA4\u3002\u5B83\u7684\u767C\u751F\u7BC4\u570D ({1}\uFF0C{2}) \u4E0D\u662F\u57FA\u790E\u985E\u578B\u4E2D\u5C0D\u61C9\u7269\u4EF6\u7BC4\u570D ({3}\uFF0C{4}) \u7684\u6709\u6548\u9650\u5236\u3002
         rcase-NSRecurseCheckCardinality.1 = rcase-NSRecurseCheckCardinality.1: \u7269\u4EF6\u4E4B\u9593\u6C92\u6709\u5B8C\u6574\u7684\u529F\u80FD\u5C0D\u61C9\u3002
         rcase-NSRecurseCheckCardinality.2 = rcase-NSRecurseCheckCardinality.2: \u7FA4\u7D44\u7684\u767C\u751F\u7BC4\u570D ({0}\uFF0C{1}) \u4E0D\u662F\u57FA\u790E\u842C\u7528\u5B57\u5143\u7BC4\u570D ({2}\uFF0C{3}) \u7684\u6709\u6548\u9650\u5236\u3002
         rcase-NSSubset.1 = rcase-NSSubset.1: \u842C\u7528\u5B57\u5143\u4E0D\u662F\u57FA\u790E\u4E2D\u5C0D\u61C9\u842C\u7528\u5B57\u5143\u7684\u5B50\u96C6\u3002
@@ -278,7 +284,7 @@
 #        src-redefine.1 = src-redefine.1: The component ''{0}'' is begin redefined, but its corresponding component isn't in the schema document being redefined (with namespace ''{2}''), but in a different document, with namespace ''{1}''.
         sch-props-correct.2 = sch-props-correct.2: \u7DB1\u8981\u7121\u6CD5\u5305\u542B\u76F8\u540C\u540D\u7A31\u7684\u5169\u500B\u5168\u57DF\u5143\u4EF6; \u6B64\u7DB1\u8981\u5305\u542B\u5169\u500B ''{0}''\u3002
         st-props-correct.2 = st-props-correct.2: \u5075\u6E2C\u5230\u7C21\u55AE\u985E\u578B ''{0}'' \u7684\u5FAA\u74B0\u5B9A\u7FA9\u3002\u9019\u4EE3\u8868 ''{0}'' \u5305\u542B\u5728\u81EA\u8EAB\u985E\u578B\u968E\u5C64\u4E2D\uFF0C\u9019\u662F\u4E00\u9805\u932F\u8AA4\u3002
-        st-props-correct.3 = st-props-correct.3: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002''{''base type definition''}'' \u7684 ''{''final''}'' \u503C ''{1}'' \u9650\u5236\u7981\u6B62\u884D\u751F\u3002
+        st-props-correct.3 = st-props-correct.3: \u985E\u578B ''{0}'' \u7684\u932F\u8AA4\u3002'{'base type definition'}' \u7684 '{'final'}' \u503C ''{1}'' \u9650\u5236\u7981\u6B62\u884D\u751F\u3002
         totalDigits-valid-restriction = totalDigits-valid-restriction: \u5728 {2} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''totalDigits'' \u7684\u503C ''{0}'' \u7121\u6548\uFF0C\u56E0\u70BA\u5B83\u5FC5\u9808\u5C0F\u65BC\u6216\u7B49\u65BC ''totalDigits'' \u7684\u503C\uFF0C\u6B64\u503C\u4EE5\u5176\u4E2D\u4E00\u500B\u7956\u7CFB\u985E\u578B\u8A2D\u70BA ''{1}''\u3002
         whiteSpace-valid-restriction.1 = whiteSpace-valid-restriction.1: \u5728 {0} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''whitespace'' \u7684\u503C ''{1}'' \u7121\u6548\uFF0C\u56E0\u70BA ''whitespace'' \u7684\u503C\u4EE5\u5176\u4E2D\u4E00\u500B\u7956\u7CFB\u985E\u578B\u8A2D\u70BA ''collapse''\u3002
         whiteSpace-valid-restriction.2 = whiteSpace-valid-restriction.2: \u5728 {0} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''whitespace'' \u7684\u503C ''preserve'' \u7121\u6548\uFF0C\u56E0\u70BA ''whitespace'' \u7684\u503C\u5728\u5176\u4E2D\u4E00\u500B\u7956\u7CFB\u985E\u578B\u4E2D\u8A2D\u70BA ''replace''\u3002
@@ -306,12 +312,19 @@
         c-selector-xpath = c-selector-xpath: \u7B49\u65BC ''{0}'' \u7684\u9078\u53D6\u5668\u503C\u7121\u6548; \u9078\u53D6\u5668 xpaths \u4E0D\u80FD\u5305\u542B\u5C6C\u6027\u3002
         EmptyTargetNamespace = EmptyTargetNamespace: \u5728\u7DB1\u8981\u6587\u4EF6 ''{0}'' \u4E2D\uFF0C''targetNamespace'' \u5C6C\u6027\u7684\u503C\u4E0D\u53EF\u70BA\u7A7A\u767D\u5B57\u4E32\u3002
         FacetValueFromBase = FacetValueFromBase: \u5728\u985E\u578B ''{0}'' \u7684\u5BA3\u544A\u4E2D\uFF0Cfacet ''{2}'' \u7684\u503C ''{1}'' \u5FC5\u9808\u4F86\u81EA\u57FA\u790E\u985E\u578B\u7684\u503C\u7A7A\u9593 ''{3}''\u3002
-        FixedFacetValue = FixedFacetValue: \u5728 {3} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''{0}'' \u7684\u503C ''{1}'' \u7121\u6548\uFF0C\u56E0\u70BA ''{0}'' \u7684\u503C\u4EE5\u5176\u4E2D\u4E00\u500B\u7956\u7CFB\u985E\u578B\u8A2D\u70BA ''{2}''\uFF0C\u4E14 ''{''fixed''}'' = true\u3002
+        FixedFacetValue = FixedFacetValue: \u5728 {3} \u7684\u5B9A\u7FA9\u4E2D\uFF0Cfacet ''{0}'' \u7684\u503C ''{1}'' \u7121\u6548\uFF0C\u56E0\u70BA ''{0}'' \u7684\u503C\u4EE5\u5176\u4E2D\u4E00\u500B\u7956\u7CFB\u985E\u578B\u8A2D\u70BA ''{2}''\uFF0C\u4E14 '{'fixed'}' = true\u3002
         InvalidRegex = InvalidRegex: \u6A23\u5F0F\u503C ''{0}'' \u4E0D\u662F\u6709\u6548\u7684\u6B63\u898F\u8868\u793A\u5F0F\u3002\u5831\u544A\u7684\u932F\u8AA4: \u4F4D\u65BC\u8CC7\u6599\u6B04 ''{2}'' \u7684 ''{1}''\u3002
-        maxOccurLimit = \u5256\u6790\u5668\u76EE\u524D\u7684\u7D44\u614B\u4E0D\u5141\u8A31 maxOccurs \u5C6C\u6027\u503C\u8A2D\u70BA\u5927\u65BC\u503C {0}\u3002
+        MaxOccurLimit = \u5256\u6790\u5668\u76EE\u524D\u7684\u7D44\u614B\u4E0D\u5141\u8A31 maxOccurs \u5C6C\u6027\u503C\u8A2D\u70BA\u5927\u65BC\u503C {0}\u3002
         PublicSystemOnNotation = PublicSystemOnNotation: ''public'' \u8207 ''system'' \u81F3\u5C11\u5176\u4E2D\u4E4B\u4E00\u5FC5\u9808\u51FA\u73FE\u5728\u5143\u7D20 ''notation'' \u4E2D\u3002
         SchemaLocation = \u7B49\u65BC ''{0}'' \u7684 SchemaLocation: schemaLocation \u503C\u5FC5\u9808\u5177\u6709\u5076\u6578\u500B URI\u3002
         TargetNamespace.1 = TargetNamespace.1: \u9810\u671F\u547D\u540D\u7A7A\u9593 ''{0}''\uFF0C\u4F46\u662F\u7DB1\u8981\u6587\u4EF6\u7684\u76EE\u6A19\u547D\u540D\u7A7A\u9593\u70BA ''{1}''\u3002
         TargetNamespace.2 = TargetNamespace.2: \u672A\u9810\u671F\u547D\u540D\u7A7A\u9593\uFF0C\u4F46\u662F\u7DB1\u8981\u6587\u4EF6\u5177\u6709\u76EE\u6A19\u547D\u540D\u7A7A\u9593 ''{1}''\u3002
         UndeclaredEntity = UndeclaredEntity: \u672A\u5BA3\u544A\u5BE6\u9AD4 ''{0}''\u3002
         UndeclaredPrefix = UndeclaredPrefix: \u7121\u6CD5\u89E3\u6790 ''{0}'' \u70BA QName: \u672A\u5BA3\u544A\u524D\u7F6E\u78BC ''{1}''\u3002
+
+
+# JAXP 1.2 schema source property errors
+
+        jaxp12-schema-source-type.1 = ''http://java.sun.com/xml/jaxp/properties/schemaSource'' \u5C6C\u6027\u7684\u503C\u4E0D\u80FD\u662F ''{0}'' \u985E\u578B\u3002\u652F\u63F4\u7684\u503C\u985E\u578B\u70BA String\u3001File\u3001InputStream\u3001InputSource \u6216\u9019\u4E9B\u985E\u578B\u7684\u9663\u5217\u3002
+        jaxp12-schema-source-type.2 = ''http://java.sun.com/xml/jaxp/properties/schemaSource'' \u5C6C\u6027\u7684\u9663\u5217\u503C\u4E0D\u80FD\u662F ''{0}'' \u985E\u578B\u3002\u652F\u63F4\u7684\u9663\u5217\u985E\u578B\u70BA Object\u3001String\u3001File\u3001InputStream \u4EE5\u53CA InputSource\u3002
+        jaxp12-schema-source-ns = \u5982\u679C\u4F7F\u7528 Object \u9663\u5217\u4F5C\u70BA 'http://java.sun.com/xml/jaxp/properties/schemaSource' \u5C6C\u6027\u7684\u503C\uFF0C\u5C31\u4E0D\u80FD\u6709\u5169\u500B\u5171\u7528\u76F8\u540C\u76EE\u6A19\u547D\u540D\u7A7A\u9593\u7684\u7DB1\u8981\u3002
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties
index 404f048..68ad3bf 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLSerializerMessages_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -30,7 +30,7 @@
 # As usual with properties files, the messages are arranged in
 # key/value tuples.
 # 
-# @version $Id: XMLSerializerMessages_sv.properties /st_wptg_1.8.0.0.0jdk/2 2013/05/29 00:46:23 gmolloy Exp $
+# @version $Id: XMLSerializerMessages_sv.properties /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
 
     BadMessageKey = Hittar inte felmeddelandet som motsvarar meddelandenyckeln.
     FormatFailed = Ett internt fel intr\u00E4ffade vid formatering av f\u00F6ljande meddelande:\n
@@ -39,7 +39,7 @@
     NoWriterSupplied = Det finns ingen skrivare f\u00F6r serializer.
     MethodNotSupported = Metoden ''{0}'' st\u00F6ds inte i denna fabriksinst\u00E4llning.
     ResetInMiddle = Serializer kan inte \u00E5terst\u00E4llas under p\u00E5g\u00E5ende serialisering.
-    Internal = Internt fel: elementstatus \u00E4r noll.
+    Internal = Internt fel: elementtillst\u00E5nd \u00E4r noll.
     NoName = Det finns inget rawName och localName \u00E4r null.
     ElementQName = Elementnamnet ''{0}'' \u00E4r inte n\u00E5got QName.
     ElementPrefix = Elementet ''{0}'' tillh\u00F6r inte n\u00E5gon namnrymd: prefixet kanske inte har deklarerats eller \u00E4r bundet till annan namnrymd.
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties
index c1665bf..c7e2026 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_fr.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -52,7 +52,7 @@
 parser.ope.2=')' ou '-[' ou '+[' ou '&[' est attendu.
 parser.ope.3=Le point code de fin de la plage est inf\u00E9rieur au point code de d\u00E9but.
 parser.descape.1=Notation hexad\u00E9cimale Unicode non valide.
-parser.descape.2=D\u00E9passement de capacit\u00E9 d'une notation hexad\u00E9cimale.
+parser.descape.2=D\u00E9bordement de capacit\u00E9 d'une notation hexad\u00E9cimale.
 parser.descape.3='\\x{' doit \u00EAtre ferm\u00E9 par '}'.
 parser.descape.4=Point code Unicode non valide.
 parser.descape.5=Aucun point d'ancrage ne doit se trouver ici.
@@ -61,6 +61,6 @@
 parser.quantifier.2=Quantificateur non valide. Quantit\u00E9 non valide ou accolade ('}') manquante.
 parser.quantifier.3=Quantificateur non valide. Un chiffre ou une accolade ('}') est attendu.
 parser.quantifier.4=Quantificateur non valide. Une quantit\u00E9 minimale doit \u00EAtre <= une quantit\u00E9 maximale.
-parser.quantifier.5=Quantificateur non valide. D\u00E9passement de la valeur de quantit\u00E9.
+parser.quantifier.5=Quantificateur non valide. D\u00E9bordement de la valeur de quantit\u00E9.
 null
 null
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties
index d4f0c9c..6e491ff 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xpath/regex/message_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
 parser.next.1=\\\u306E\u5F8C\u306B\u6587\u5B57\u304C\u5FC5\u8981\u3067\u3059\u3002
 parser.next.2='?'\u306F\u60F3\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002'(?:'\u3001'(?='\u3001'(?!'\u3001'(?<'\u3001'(?#'\u307E\u305F\u306F'(?>'\u3067\u3059\u304B\u3002
 parser.next.3='(?<='\u307E\u305F\u306F'(?<!'\u304C\u5FC5\u8981\u3067\u3059\u3002
-parser.next.4=\u30B3\u30E1\u30F3\u30C8\u304C\u7D42\u308F\u3063\u3066\u3044\u307E\u305B\u3093\u3002
+parser.next.4=\u30B3\u30E1\u30F3\u30C8\u304C\u7D42\u4E86\u3057\u3066\u3044\u307E\u305B\u3093\u3002
 parser.factor.1=')'\u304C\u5FC5\u8981\u3067\u3059\u3002
 parser.factor.2=\u4FEE\u98FE\u5B50\u30B0\u30EB\u30FC\u30D7\u306E\u30D1\u30BF\u30FC\u30F3\u304C\u4E88\u671F\u305B\u305A\u7D42\u4E86\u3057\u307E\u3057\u305F\u3002
 parser.factor.3=':'\u304C\u5FC5\u8981\u3067\u3059\u3002
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java
index cbd0fe1..d3ed2ff 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaLoader.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  */
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -601,7 +601,7 @@
             processJAXPSchemaSource(locationPairs);
         }
 
-        if (desc.isExternal()) {
+        if (desc.isExternal() && !source.isCreatedByResolver()) {
             String accessError = SecuritySupport.checkAccess(desc.getExpandedSystemId(), faccessExternalSchema, Constants.ACCESS_EXTERNAL_ALL);
             if (accessError != null) {
                 throw new XNIException(fErrorReporter.reportError(XSMessageFormatter.SCHEMA_DOMAIN,
@@ -882,7 +882,7 @@
             if (xis == null) {
                 // REVISIT: can this happen?
                 // Treat value as a URI and pass in as systemId
-                return new XMLInputSource(null, loc, null);
+                return new XMLInputSource(null, loc, null, false);
             }
             return xis;
         }
@@ -931,7 +931,7 @@
                     sis.getEncoding());
         }
 
-        return new XMLInputSource(publicId, systemId, null);
+        return new XMLInputSource(publicId, systemId, null, false);
     }
 
     public static class LocationArray{
@@ -1170,7 +1170,7 @@
      */
     public XSModel loadURI(String uri) {
         try {
-            Grammar g = loadGrammar(new XMLInputSource(null, uri, null));
+            Grammar g = loadGrammar(new XMLInputSource(null, uri, null, false));
             return ((XSGrammar)g).toXSModel();
         }
         catch (Exception e){
@@ -1188,7 +1188,7 @@
         for (int i = 0; i < length; i++) {
             try {
                 gs[i] =
-                    (SchemaGrammar) loadGrammar(new XMLInputSource(null, uriList.item(i), null));
+                    (SchemaGrammar) loadGrammar(new XMLInputSource(null, uriList.item(i), null, false));
             } catch (Exception e) {
                 reportDOMFatalError(e);
                 return null;
@@ -1415,7 +1415,7 @@
         // otherwise, just use the public/system/base Ids
         else {
             xis = new XMLInputSource(is.getPublicId(), is.getSystemId(),
-                    is.getBaseURI());
+                    is.getBaseURI(), false);
         }
 
         return xis;
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java
index 5453880..2e25ec8 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java
@@ -181,7 +181,7 @@
     }
 
     /**
-     * @return true is the schema is external
+     * @return true if the schema is external
      */
     public boolean isExternal() {
         return fContextType == CONTEXT_INCLUDE ||
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java
index 48fa9c3..1740d75 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java
@@ -104,7 +104,7 @@
         try {
             fGrammarPool.clear();
             for (int i = 0; i < length; ++i) {
-                fSchemaLoader.loadGrammar(new XMLInputSource(null, uriList.item(i), null));
+                fSchemaLoader.loadGrammar(new XMLInputSource(null, uriList.item(i), null, false));
             }
             return fGrammarPool.toXSModel();
         }
@@ -146,7 +146,7 @@
     public XSModel loadURI(String uri) {
         try {
             fGrammarPool.clear();
-            return ((XSGrammar) fSchemaLoader.loadGrammar(new XMLInputSource(null, uri, null))).toXSModel();
+            return ((XSGrammar) fSchemaLoader.loadGrammar(new XMLInputSource(null, uri, null, false))).toXSModel();
         }
         catch (Exception e){
             fSchemaLoader.reportDOMFatalError(e);
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java
index d167117..133005b 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDHandler.java
@@ -681,7 +681,7 @@
             createAnnotationValidator();
         }
         final int size = annotationInfo.size();
-        final XMLInputSource src = new XMLInputSource(null, null, null);
+        final XMLInputSource src = new XMLInputSource(null, null, null, false);
         fGrammarBucketAdapter.refreshGrammars(fGrammarBucket);
         for (int i = 0; i < size; i += 2) {
             src.setSystemId((String) annotationInfo.get(i));
@@ -2041,7 +2041,7 @@
 
     /**
      * resolveSchema method is responsible for resolving location of the schema (using XMLEntityResolver),
-     * and if it was succefully resolved getting the schema Document.
+     * and if it was successfully resolved getting the schema Document.
      * @param desc
      * @param mustResolve
      * @param referElement
@@ -2164,8 +2164,9 @@
                         fLastSchemaWasDuplicate = true;
                         return schemaElement;
                     }
-                    if (referType == XSDDescription.CONTEXT_IMPORT || referType == XSDDescription.CONTEXT_INCLUDE
-                            || referType == XSDDescription.CONTEXT_REDEFINE) {
+                    if ((!schemaSource.isCreatedByResolver()) &&
+                            (referType == XSDDescription.CONTEXT_IMPORT || referType == XSDDescription.CONTEXT_INCLUDE
+                            || referType == XSDDescription.CONTEXT_REDEFINE)) {
                         String accessError = SecuritySupport.checkAccess(schemaId, fAccessExternalSchema, Constants.ACCESS_EXTERNAL_ALL);
                         if (accessError != null) {
                             reportSchemaFatalError("schema_reference.access",
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java
index 393393c..12340cf 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSInputSource.java
@@ -36,13 +36,13 @@
     private XSObject[] fComponents;
 
     public XSInputSource(SchemaGrammar[] grammars) {
-        super(null, null, null);
+        super(null, null, null, false);
         fGrammars = grammars;
         fComponents = null;
     }
 
     public XSInputSource(XSObject[] component) {
-        super(null, null, null);
+        super(null, null, null, false);
         fGrammars = null;
         fComponents = component;
     }
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java
index 9e9f5ae..c8fce49 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/StreamValidatorHelper.java
@@ -130,7 +130,7 @@
                 identityTransformerHandler.setResult(result);
             }
 
-            XMLInputSource input = new XMLInputSource(streamSource.getPublicId(), streamSource.getSystemId(), null);
+            XMLInputSource input = new XMLInputSource(streamSource.getPublicId(), streamSource.getSystemId(), null, false);
             input.setByteStream(streamSource.getInputStream());
             input.setCharacterStream(streamSource.getReader());
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java
index 5076e60..40782ab 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java
@@ -51,7 +51,7 @@
             in.getInputStream(), null );
 
         return new XMLInputSource(
-        in.getPublicId(), in.getSystemId(), in.getSystemId() );
+        in.getPublicId(), in.getSystemId(), in.getSystemId(), false );
     }
 
     /**
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java
index b1bded9..bd0c96e 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XMLSchemaFactory.java
@@ -221,7 +221,7 @@
                 String systemId = streamSource.getSystemId();
                 inputStream = streamSource.getInputStream();
                 reader = streamSource.getReader();
-                XMLInputSource xmlInputSource = new XMLInputSource(publicId, systemId, null);
+                XMLInputSource xmlInputSource = new XMLInputSource(publicId, systemId, null, false);
                 xmlInputSource.setByteStream(inputStream);
                 xmlInputSource.setCharacterStream(reader);
                 xmlInputSources[i] = xmlInputSource;
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java
index 881020f..3f6b43d 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java
@@ -1134,7 +1134,7 @@
     public void parse(String systemId) throws SAXException, IOException {
 
         // parse document
-        XMLInputSource source = new XMLInputSource(null, systemId, null);
+        XMLInputSource source = new XMLInputSource(null, systemId, null, false);
         try {
             parse(source);
         }
@@ -1205,7 +1205,7 @@
             XMLInputSource xmlInputSource =
                 new XMLInputSource(inputSource.getPublicId(),
                                    inputSource.getSystemId(),
-                                   null);
+                                   null, false);
             xmlInputSource.setByteStream(inputSource.getByteStream());
             xmlInputSource.setCharacterStream(inputSource.getCharacterStream());
             xmlInputSource.setEncoding(inputSource.getEncoding());
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java
index 05814b2..d0f8418 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java
@@ -175,7 +175,7 @@
     public void parse(String systemId) throws SAXException, IOException {
 
         // parse document
-        XMLInputSource source = new XMLInputSource(null, systemId, null);
+        XMLInputSource source = new XMLInputSource(null, systemId, null, false);
         try {
             parse(source);
         }
@@ -235,7 +235,7 @@
             XMLInputSource xmlInputSource =
                 new XMLInputSource(inputSource.getPublicId(),
                                    inputSource.getSystemId(),
-                                   null);
+                                   null, false);
             xmlInputSource.setByteStream(inputSource.getByteStream());
             xmlInputSource.setCharacterStream(inputSource.getCharacterStream());
             xmlInputSource.setEncoding(inputSource.getEncoding());
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java
index 84ffa4f..49e682a 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParserImpl.java
@@ -917,7 +917,7 @@
             throw new DOMException ( DOMException.INVALID_STATE_ERR,msg);
         }
 
-        XMLInputSource source = new XMLInputSource (null, uri, null);
+        XMLInputSource source = new XMLInputSource (null, uri, null, false);
         try {
             currentThread = Thread.currentThread();
                         fBusy = true;
@@ -1082,7 +1082,7 @@
         else if ((is.getSystemId() != null && is.getSystemId().length() > 0) ||
             (is.getPublicId() != null && is.getPublicId().length() > 0)) {
             xis = new XMLInputSource (is.getPublicId (), is.getSystemId (),
-            is.getBaseURI ());
+            is.getBaseURI(), false);
         }
         else {
             // all inputs are null
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java
index 4e1181a..72c055d 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java
@@ -205,7 +205,7 @@
      */
     public Grammar parseGrammar(String type, String uri)
                               throws XNIException, IOException {
-        XMLInputSource source = new XMLInputSource(null, uri, null);
+        XMLInputSource source = new XMLInputSource(null, uri, null, false);
         return parseGrammar(type, source);
 
     }
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java
index fdfd9f4..8a4bbb5 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java
@@ -135,7 +135,7 @@
                  * stringData, systemId, publicId.
                  */
                 XMLInputSource xmlInputSource =
-                    new XMLInputSource(publicId, systemId, baseSystemId);
+                    new XMLInputSource(publicId, systemId, baseSystemId, true);
 
                 if (charStream != null) {
                     xmlInputSource.setCharacterStream(charStream);
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java
index 621dd7d..bfa9572 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java
@@ -36,12 +36,12 @@
     }
 
     public DOMInputSource(Node node) {
-        super(null, getSystemIdFromNode(node), null);
+        super(null, getSystemIdFromNode(node), null, false);
         fNode = node;
     }
 
     public DOMInputSource(Node node, String systemId) {
-        super(null, systemId, null);
+        super(null, systemId, null, false);
         fNode = node;
     }
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java
index 0572de1..53fdfde 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java
@@ -204,7 +204,7 @@
         Reader charStream = source.getCharacterStream();
         String encoding = source.getEncoding();
         XMLInputSource xmlInputSource =
-            new XMLInputSource(publicId, systemId, baseSystemId);
+            new XMLInputSource(publicId, systemId, baseSystemId, false);
         xmlInputSource.setByteStream(byteStream);
         xmlInputSource.setCharacterStream(charStream);
         xmlInputSource.setEncoding(encoding);
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java
index 460047b..9cca074 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolverWrapper.java
@@ -116,7 +116,7 @@
                     Reader charStream = inputSource.getCharacterStream();
                     String encoding = inputSource.getEncoding();
                     XMLInputSource xmlInputSource =
-                        new XMLInputSource(publicId, systemId, baseSystemId);
+                        new XMLInputSource(publicId, systemId, baseSystemId, true);
                     xmlInputSource.setByteStream(byteStream);
                     xmlInputSource.setCharacterStream(charStream);
                     xmlInputSource.setEncoding(encoding);
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java
index c9bbed9..9dc08f8 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/HTTPInputSource.java
@@ -73,7 +73,7 @@
      *                     base system identifier, if possible.
      */
     public HTTPInputSource(String publicId, String systemId, String baseSystemId) {
-        super(publicId, systemId, baseSystemId);
+        super(publicId, systemId, baseSystemId, false);
     } // <init>(String,String,String)
 
     /**
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java
index 540440a..cabd2d5 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java
@@ -46,7 +46,8 @@
 
     public SAXInputSource(XMLReader reader, InputSource inputSource) {
         super(inputSource != null ? inputSource.getPublicId() : null,
-                inputSource != null ? inputSource.getSystemId() : null, null);
+                inputSource != null ? inputSource.getSystemId() : null, null,
+                false);
         if (inputSource != null) {
             setByteStream(inputSource.getByteStream());
             setCharacterStream(inputSource.getCharacterStream());
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java
index 6cc9aa6..ab3eb7c 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/StAXInputSource.java
@@ -42,7 +42,7 @@
     }
 
     public StAXInputSource(XMLStreamReader source, boolean consumeRemainingContent) {
-        super(null, source.getLocation().getSystemId(), null);
+        super(null, source.getLocation().getSystemId(), null, false);
         if (source == null) {
             throw new IllegalArgumentException("XMLStreamReader parameter cannot be null.");
         }
@@ -56,7 +56,7 @@
     }
 
     public StAXInputSource(XMLEventReader source, boolean consumeRemainingContent) {
-        super(null, getEventReaderSystemId(source), null);
+        super(null, getEventReaderSystemId(source), null, false);
         if (source == null) {
             throw new IllegalArgumentException("XMLEventReader parameter cannot be null.");
         }
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java
index 60e040d..627cbf4 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java
@@ -395,8 +395,7 @@
         String resolvedId = resolveIdentifier(resourceIdentifier);
         if (resolvedId != null) {
             return new XMLInputSource(resourceIdentifier.getPublicId(),
-                                      resolvedId,
-                                      resourceIdentifier.getBaseSystemId());
+                    resolvedId, resourceIdentifier.getBaseSystemId(), false);
         }
         return null;
     }
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java
index 016a616..0f9434f 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeHandler.java
@@ -1623,7 +1623,7 @@
                 includedSource = createInputSource(null, href, fCurrentBaseURI.getExpandedSystemId(), accept, acceptLanguage);
             }
             else {
-                includedSource = new XMLInputSource(null, href, fCurrentBaseURI.getExpandedSystemId());
+                includedSource = new XMLInputSource(null, href, fCurrentBaseURI.getExpandedSystemId(), false);
             }
         }
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java
index 2ae99a6..9d248f0 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java
@@ -62,6 +62,8 @@
     /** Encoding. */
     protected String fEncoding;
 
+    //indicates whether the source is created by a resolver
+    boolean fIsCreatedByResolver = false;
     //
     // Constructors
     //
@@ -80,12 +82,15 @@
      * @param baseSystemId The base system identifier. This value should
      *                     always be set to the fully expanded URI of the
      *                     base system identifier, if possible.
+     * @param isCreatedByResolver a flag to indicate whether the source is
+     * created by a resolver
      */
     public XMLInputSource(String publicId, String systemId,
-                          String baseSystemId) {
+                          String baseSystemId, boolean isCreatedByResolver) {
         fPublicId = publicId;
         fSystemId = systemId;
         fBaseSystemId = baseSystemId;
+        fIsCreatedByResolver = isCreatedByResolver;
     } // <init>(String,String,String)
 
     /**
@@ -251,4 +256,19 @@
         return fEncoding;
     } // getEncoding():String
 
+    /**
+     * Sets the flag to indicate whether this source is created by a resolver
+     * @param createdByResolver the flag
+     */
+    public void setCreatedByResolver(boolean createdByResolver) {
+        fIsCreatedByResolver = createdByResolver;
+    }
+    /**
+     * Returns a boolean to indicate whether this source is created by a resolver.
+     * @return true if the source is created by a resolver, false otherwise
+     */
+    public boolean isCreatedByResolver() {
+        return fIsCreatedByResolver;
+    }
+
 } // class XMLInputSource
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java
index 2cb9734..f2d650c 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XMLErrorResources_ja.java /st_wptg_1.8.0.0.0jdk/2 2013/09/12 17:39:58 gmolloy Exp $
+ * $Id: XMLErrorResources_ja.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 00:37:07 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.res;
 
@@ -230,7 +230,7 @@
       "\u4E0D\u660E\u306A\u8EF8\u30C8\u30E9\u30D0\u30FC\u30B9\u30FB\u30BF\u30A4\u30D7\u3067\u3059: {0}"},
 
     { ER_AXIS_NOT_SUPPORTED,
-      "\u8EF8traverser\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"},
+      "\u8EF8\u30C8\u30E9\u30D0\u30FC\u30B5\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"},
 
     { ER_NO_DTMIDS_AVAIL,
       "DTM ID\u306F\u3053\u308C\u4EE5\u4E0A\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093"},
@@ -329,7 +329,7 @@
       "XMLReader\u306FstartParse\u30EA\u30AF\u30A8\u30B9\u30C8\u3088\u308A\u524D\u306B\u3067\u304D\u307E\u305B\u3093"},
 
     { ER_AXIS_TRAVERSER_NOT_SUPPORTED,
-      "\u8EF8traverser\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"},
+      "\u8EF8\u30C8\u30E9\u30D0\u30FC\u30B5\u6A5F\u80FD\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}"},
 
     { ER_ERRORHANDLER_CREATED_WITH_NULL_PRINTWRITER,
       "null PrintWriter\u306B\u3088\u3063\u3066ListingErrorHandler\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java
index 75956dd..e90f1c9 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XMLErrorResources_ko.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 02:31:34 gmolloy Exp $
+ * $Id: XMLErrorResources_ko.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 02:39:51 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.res;
 
@@ -254,7 +254,7 @@
        "\uAD6C\uBB38 \uBD84\uC11D\uAE30\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
 
     { ER_EXCEPTION_CREATING_POOL,
-       "\uD480\uC5D0 \uB300\uD55C \uC0C8 \uC778\uC2A4\uD134\uC2A4\uB97C \uC0DD\uC131\uD558\uB294 \uC911 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
+       "\uD480\uC5D0 \uB300\uD55C \uC0C8 \uC778\uC2A4\uD134\uC2A4\uB97C \uC0DD\uC131\uD558\uB294 \uC911 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
 
     { ER_PATH_CONTAINS_INVALID_ESCAPE_SEQUENCE,
        "\uACBD\uB85C\uC5D0 \uBD80\uC801\uD569\uD55C \uC774\uC2A4\uCF00\uC774\uD504 \uC2DC\uD000\uC2A4\uAC00 \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."},
@@ -377,7 +377,7 @@
       "\uC774\uB984\uC740 \uCF5C\uB860\uC73C\uB85C \uC2DC\uC791\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
 
     { "BAD_CODE", "createMessage\uC5D0 \uB300\uD55C \uB9E4\uAC1C\uBCC0\uC218\uAC00 \uBC94\uC704\uB97C \uBC97\uC5B4\uB0AC\uC2B5\uB2C8\uB2E4."},
-    { "FORMAT_FAILED", "messageFormat \uD638\uCD9C \uC911 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
+    { "FORMAT_FAILED", "messageFormat \uD638\uCD9C \uC911 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
     { "line", "\uD589 \uBC88\uD638"},
     { "column","\uC5F4 \uBC88\uD638"},
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java
index 089dc43..1b66792 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XMLErrorResources_pt_BR.java /st_wptg_1.8.0.0.0jdk/2 2013/09/11 12:46:54 gmolloy Exp $
+ * $Id: XMLErrorResources_pt_BR.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 18:01:34 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.res;
 
@@ -191,7 +191,7 @@
       "N\u00E3o \u00E9 poss\u00EDvel substituir a causa"},
 
     { ER_NO_DEFAULT_IMPL,
-      "Nenhuma implementa\u00E7\u00E3o default encontrada "},
+      "Nenhuma implementa\u00E7\u00E3o padr\u00E3o encontrada "},
 
     { ER_CHUNKEDINTARRAY_NOT_SUPPORTED,
       "ChunkedIntArray({0}) n\u00E3o suportado atualmente"},
@@ -429,7 +429,7 @@
       "Declara\u00E7\u00E3o de namespace ''{0}''=''{1}'' fora do elemento." },
 
     {ER_COULD_NOT_LOAD_RESOURCE,
-      "N\u00E3o foi poss\u00EDvel carregar ''{0}'' (verificar CLASSPATH); usando agora apenas os defaults"},
+      "N\u00E3o foi poss\u00EDvel carregar ''{0}'' (verificar CLASSPATH); usando agora apenas os padr\u00F5es"},
 
     { ER_ILLEGAL_CHARACTER,
        "Tentativa de exibir um caractere de valor integral {0} que n\u00E3o est\u00E1 representado na codifica\u00E7\u00E3o de sa\u00EDda especificada de {1}."},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java
index f464bed..afc1fdf 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XMLErrorResources_sv.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 06:50:58 gmolloy Exp $
+ * $Id: XMLErrorResources_sv.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.res;
 
@@ -378,8 +378,8 @@
 
     { "BAD_CODE", "Parameter f\u00F6r createMessage ligger utanf\u00F6r gr\u00E4nsv\u00E4rdet"},
     { "FORMAT_FAILED", "Undantag utl\u00F6st vid messageFormat-anrop"},
-    { "line", "Rad #"},
-    { "column","Kolumn #"},
+    { "line", "Rad nr"},
+    { "column","Kolumn nr"},
 
     {ER_SERIALIZER_NOT_CONTENTHANDLER,
       "Serializerklassen ''{0}'' implementerar inte org.xml.sax.ContentHandler."},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java
index e8a6c9a..fc68b6e 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XMLErrorResources_zh_CN.java /st_wptg_1.8.0.0.0jdk/3 2013/11/11 11:39:28 gmolloy Exp $
+ * $Id: XMLErrorResources_zh_CN.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 05:10:27 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.res;
 
@@ -269,7 +269,7 @@
        "\u5728 URI \u4E2D\u627E\u4E0D\u5230\u65B9\u6848"},
 
     { ER_PATH_INVALID_CHAR,
-       "\u8DEF\u5F84\u5305\u542B\u65E0\u6548\u5B57\u7B26: {0}"},
+       "\u8DEF\u5F84\u5305\u542B\u65E0\u6548\u7684\u5B57\u7B26: {0}"},
 
     { ER_SCHEME_FROM_NULL_STRING,
        "\u65E0\u6CD5\u4ECE\u7A7A\u5B57\u7B26\u4E32\u8BBE\u7F6E\u65B9\u6848"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java
index 6d3fea6..d2ec1f0 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_de.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_de.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 04:56:10 gmolloy Exp $
+ * $Id: SerializerMessages_de.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 06:43:54 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -203,79 +203,79 @@
                 "Warnung: Die Codierung \"{0}\" wird nicht von der Java-Laufzeit unterst\u00FCtzt." },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "Der Parameter ''{0}'' wird nicht erkannt."},
+             "Parameter \"{0}\" nicht erkannt."},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "Der Parameter ''{0}'' wird erkannt, der angeforderte Wert kann jedoch nicht festgelegt werden."},
+             "Parameter \"{0}\" wird erkannt, aber der angeforderte Wert kann nicht festgelegt werden."},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "Die Ergebniszeichenfolge ist zu lang f\u00fcr eine DOM-Zeichenfolge: ''{0}''."},
+             "Die resultierende Zeichenfolge ist zu lang, um in eine DOMString zupassen: \"{0}\"."},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "Der Werttyp f\u00fcr diesen Parameternamen ist nicht kompatibel mit dem erwarteten Werttyp."},
+             "Der Werttyp f\u00FCr diesen Parameternamen ist nicht mit dem erwarteten Werttyp kompatibel. "},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "Das Ausgabeziel f\u00fcr die zu schreibenden Daten war leer."},
+             "Ausgabeziel, in das Daten geschrieben werden sollen, war nicht angegeben."},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "Eine nicht unterst\u00fctzte Codierung wurde festgestellt."},
+             "Nicht unterst\u00FCtzte Codierung gefunden."},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "Der Knoten konnte nicht serialisiert werden."},
+             "Knoten konnte nicht serialisiert werden."},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "Der Abschnitt CDATA enth\u00e4lt mindestens eine Beendigungsmarkierung ']]>'."},
+             "Der CDATA-Abschnitt enth\u00E4lt mindestens eine Endmarkierung \"]]>\"."},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "Eine Instanz des Pr\u00fcfprogramms f\u00fcr korrekte Formatierung konnte nicht erstellt werden.  F\u00fcr den korrekt formatierten Parameter wurde der Wert 'True' festgelegt, die Pr\u00fcfung auf korrekte Formatierung kann jedoch nicht durchgef\u00fchrt werden."
+                 "Eine Instanz der Pr\u00FCfung f\u00FCr ordnungsgem\u00E4\u00DFe Formatierung konnte nicht erstellt werden. Der ordnungsgem\u00E4\u00DF formatierte Parameter wurde auf \"True\" gesetzt, aber die Pr\u00FCfung auf ordnungsgem\u00E4\u00DFe Formatierung kann nicht ausgef\u00FChrt werden."
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "Der Knoten ''{0}'' enth\u00e4lt ung\u00fcltige XML-Zeichen."
+                 "Der Knoten \"{0}\" enth\u00E4lt ung\u00FCltige XML-Zeichen."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "Im Kommentar wurde ein ung\u00fcltiges XML-Zeichen (Unicode: 0x{0}) gefunden."
+                 "Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde im Kommentar gefunden."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "In der Verarbeitungsanweisung wurde ein ung\u00fcltiges XML-Zeichen (Unicode: 0x{0}) gefunden."
+                 "Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde in den Verarbeitungsanweisungsdaten gefunden."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "Im Inhalt von CDATASection wurde ein ung\u00fcltiges XML-Zeichen (Unicode: 0x{0}) gefunden."
+                 "Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde im Inhalt des CDATA-Abschnitts gefunden."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "Ein ung\u00fcltiges XML-Zeichen  (Unicode: 0x{0}) wurde im Inhalt der Zeichendaten des Knotens gefunden."
+                 "Ung\u00FCltiges XML-Zeichen (Unicode: 0x{0}) wurde in den Zeichendaten des Knotens gefunden."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "Ung\u00fcltige XML-Zeichen wurden gefunden in {0} im Knoten ''{1}''."
+                 "Ung\u00FCltige(s) XML-Zeichen wurde(n) im {0}-Knoten mit Namen \"{1}\" gefunden."
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "Die Zeichenfolge \"--\" ist innerhalb von Kommentaren nicht zul\u00e4ssig."
+                 "Zeichenfolge \"--\" ist in Kommentaren nicht zul\u00E4ssig."
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "Der Wert des Attributs \"{1}\" mit einem Elementtyp \"{0}\" darf nicht das Zeichen ''<'' enthalten."
+                 "Wert des Attributs \"{1}\", das mit Elementtyp \"{0}\" verkn\u00FCpft ist, darf nicht das Zeichen \"<\" enthalten."
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "Der syntaktisch nicht analysierte Entit\u00e4tenverweis \"&{0};\" ist nicht zul\u00e4ssig."
+                 "Nicht geparste Entityreferenz \"&{0};\" ist nicht zul\u00E4ssig."
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "Der externe Entit\u00e4tenverweis \"&{0};\" ist in einem Attributwert nicht zul\u00e4ssig."
+                 "Externe Entityreferenz \"&{0};\" ist in einem Attributwert nicht zul\u00E4ssig."
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "Das Pr\u00e4fix \"{0}\" kann nicht an den Namensbereich \"{1}\" gebunden werden."
+                 "Pr\u00E4fix \"{0}\" kann nicht an den Namespace \"{1}\" gebunden werden."
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "Der lokale Name von Element \"{0}\" ist nicht angegeben."
+                 "Der lokale Name des Elements \"{0}\" ist nicht angegeben."
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
@@ -283,11 +283,15 @@
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "Der Ersatztext des Entit\u00e4tenknotens \"{0}\" enth\u00e4lt einen Elementknoten \"{1}\" mit einem nicht gebundenen Pr\u00e4fix \"{2}\"."
+                 "Der Ersatztext des Entityknotens \"{0}\" enth\u00E4lt einen Elementknoten \"{1}\" mit nicht gebundenem Pr\u00E4fix \"{2}\"."
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "Der Ersatztext des Entit\u00e4tenknotens \"{0}\" enth\u00e4lt einen Attributknoten \"{1}\" mit einem nicht gebundenen Pr\u00e4fix \"{2}\"."
+                 "Der Ersatztext des Entityknotens \"{0}\" enth\u00E4lt einen Attributknoten \"{1}\" mit nicht gebundenem Pr\u00E4fix \"{2}\"."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "Beim Schreiben der internen Teilmenge ist ein Fehler aufgetreten."
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java
index c942361..13ce6f1 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_es.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_es.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 09:06:34 gmolloy Exp $
+ * $Id: SerializerMessages_es.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 05:09:25 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -200,94 +200,98 @@
                 "El objeto de propiedades transferido a SerializerFactory no tiene una propiedad ''{0}''." },
 
             {   MsgKey.ER_ENCODING_NOT_SUPPORTED,
-                "Aviso: La codificaci\u00f3n ''{0}'' no est\u00e1 soportada por Java Runtime." },
+                "Advertencia: el tiempo de ejecuci\u00F3n de Java no soporta la codificaci\u00F3n ''{0}''." },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "El par\u00e1metro ''{0}'' no se reconoce."},
+             "No se reconoce el par\u00E1metro ''{0}''."},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "Se reconoce el par\u00e1metro ''{0}'' pero no puede establecerse el valor solicitado."},
+             "Se reconoce el par\u00E1metro ''{0}'' pero no se puede definir el valor solicitado."},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "La serie producida es demasiado larga para ajustarse a DOMString: ''{0}''."},
+             "La cadena resultante es demasiado larga para que quepa en una cadena DOM: ''{0}''."},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "El tipo de valor para este nombre de par\u00e1metro es incompatible con el tipo de valor esperado."},
+             "El tipo de valor para este nombre de par\u00E1metro no es compatible con el tipo de valor esperado. "},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "El destino de salida de escritura de los datos es nulo."},
+             "El destino de salida en el que se deb\u00EDan escribir los datos era nulo."},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "Se ha encontrado una codificaci\u00f3n no soportada."},
+             "Se ha encontrado una codificaci\u00F3n no soportada."},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "No se ha podido serializar el nodo."},
+             "El nodo no se ha podido serializar."},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "La secci\u00f3n CDATA contiene uno o m\u00e1s marcadores ']]>' de terminaci\u00f3n."},
+             "La secci\u00F3n CDATA contiene uno o m\u00E1s marcadores de terminaci\u00F3n ']]>'."},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "No se ha podido crear una instancia del comprobador de gram\u00e1tica correcta.  El par\u00e1metro well-formed se ha establecido en true pero no se puede realizar la comprobaci\u00f3n de gram\u00e1tica correcta."
+                 "No se ha podido crear una instancia del comprobador de formato correcto. El par\u00E1metro de formato correcto se ha definido en true pero no se puede realizar la comprobaci\u00F3n de formato correcto."
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "El nodo ''{0}'' contiene caracteres XML no v\u00e1lidos."
+                 "El nodo ''{0}'' contiene caracteres XML no v\u00E1lidos."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "Se ha encontrado un car\u00e1cter XML no v\u00e1lido (Unicode: 0x{0}) en el comentario."
+                 "Se ha encontrado un car\u00E1cter XML (Unicode: 0x{0}) no v\u00E1lido en el comentario."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "Se ha encontrado un car\u00e1cter XML no v\u00e1lido (Unicode: 0x{0}) en los datos de la instrucci\u00f3n de proceso."
+                 "Se ha encontrado un car\u00E1cter XML (Unicode: 0x{0}) no v\u00E1lido en los datos de la instrucci\u00F3n de procesamiento."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "Se ha encontrado un car\u00e1cter XML no v\u00e1lido (Unicode: 0x{0}) en el contenido de CDATASection."
+                 "Se ha encontrado un car\u00E1cter XML (Unicode: 0x{0}) no v\u00E1lido en el contenido de la secci\u00F3n CDATA."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "Se ha encontrado un car\u00e1cter XML no v\u00e1lido (Unicode: 0x{0}) en el contenido de datos de caracteres del nodo."
+                 "Se ha encontrado un car\u00E1cter XML (Unicode: 0x{0}) no v\u00E1lido en los datos de caracteres del nodo."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "Se ha encontrado un car\u00e1cter o caracteres XML no v\u00e1lidos en el nodo {0} denominado ''{1}''."
+                 "Se ha encontrado un car\u00E1cter XML no v\u00E1lido en el nodo {0} denominado ''{1}''."
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "No se permite la serie \"--\" dentro de los comentarios."
+                 "La cadena \"--\" no est\u00E1 permitida en los comentarios."
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "El valor del atributo \"{1}\" asociado a un tipo de elemento \"{0}\" no debe contener el car\u00e1cter ''''<''''."
+                 "El valor del atributo \"{1}\" asociado a un tipo de elemento \"{0}\" no debe contener el car\u00E1cter ''<''."
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "No se permite la referencia de entidad no analizada \"&{0};\"."
+                 "La referencia de entidad no analizada \"&{0};\" no est\u00E1 permitida."
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "La referencia de entidad externa \"&{0};\" no est\u00e1 permitida en un valor de atributo."
+                 "La referencia de entidad externa \"&{0};\" no est\u00E1 permitida en un valor de atributo."
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "No se puede encontrar el prefijo \"{0}\" en el espacio de nombres \"{1}\"."
+                 "El prefijo \"{0}\" no se puede enlazar al espacio de nombres \"{1}\"."
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "El nombre local del elemento \"{0}\" es null."
+                 "El nombre local del elemento \"{0}\" es nulo."
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "El nombre local del atributo \"{0}\" es null."
+                 "El nombre local del atributo \"{0}\" es nulo."
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "El texto de sustituci\u00f3n del nodo de entidad \"{0}\" contiene un nodo de elemento \"{1}\" con un prefijo no enlazado \"{2}\"."
+                 "El texto de sustituci\u00F3n del nodo de entidad \"{0}\" contiene un nodo de elemento \"{1}\"con un prefijo no enlazado \"{2}\"."
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "El texto de sustituci\u00f3n del nodo de entidad \"{0}\" contiene un nodo de atributo \"{1}\" con un prefijo no enlazado \"{2}\"."
+                 "El texto de sustituci\u00F3n del nodo de entidad \"{0}\" contiene un nodo de atributo \"{1}\"con un prefijo no enlazado \"{2}\"."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "Se ha producido un error al escribir el subjuego interno."
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java
index 0998038..3534115 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_fr.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_fr.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 07:05:15 gmolloy Exp $
+ * $Id: SerializerMessages_fr.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 05:13:35 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -203,91 +203,95 @@
                 "Avertissement : l''encodage ''{0}'' n''est pas pris en charge par l''ex\u00E9cution Java." },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "Le param\u00e8tre ''{0}'' n''est pas reconnu."},
+             "Le param\u00E8tre ''{0}'' n''est pas reconnu."},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "Le param\u00e8tre ''{0}'' est reconnu mas la valeur demand\u00e9e ne peut pas \u00eatre d\u00e9finie."},
+             "Le param\u00E8tre ''{0}'' est reconnu mais la valeur demand\u00E9e ne peut pas \u00EAtre d\u00E9finie."},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "La cha\u00eene obtenue est trop longue pour un DOMString : ''{0}''."},
+             "La cha\u00EEne obtenue est trop longue pour tenir dans un \u00E9l\u00E9ment DOMString : ''{0}''."},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "Le type de valeur de ce param\u00e8tre est incompatible avec le type de valeur attendu."},
+             "Le type de valeur pour ce nom de param\u00E8tre n'est pas compatible avec le type de valeur attendu. "},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "La sortie de destination des donn\u00e9es \u00e0 \u00e9crire \u00e9tait vide."},
+             "La destination de sortie dans laquelle \u00E9crire les donn\u00E9es est NULL."},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "Codage non pris en charge."},
+             "Un encodage non pris en charge a \u00E9t\u00E9 d\u00E9tect\u00E9."},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "Le noeud ne peut pas \u00eatre s\u00e9rialis\u00e9."},
+             "Le noeud n'a pas pu \u00EAtre s\u00E9rialis\u00E9."},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "La section CDATA contient un ou plusieurs marqueurs de fin ']]>'."},
+             "La section CDATA contient des marqueurs de fin ']]>'."},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "Aucune instance du programme de v\u00e9rification de la formation n'a pu \u00eatre cr\u00e9\u00e9e.  La valeur true a \u00e9t\u00e9 attribu\u00e9e au param\u00e8tre well-formed mais la v\u00e9rification de la formation n'a pas pu \u00eatre effectu\u00e9e."
+                 "Une instance du v\u00E9rificateur de format correct n'a pas pu \u00EAtre cr\u00E9\u00E9e. Le param\u00E8tre de format correct a \u00E9t\u00E9 d\u00E9fini sur True mais la v\u00E9rification de format correct n'a pas pu \u00EAtre r\u00E9alis\u00E9e."
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "Le noeud ''{0}'' contient des caract\u00e8res XML non valides."
+                 "Le noeud ''{0}'' contient des caract\u00E8res XML non valides."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "Un caract\u00e8re XML non valide (Unicode : 0x{0}) a \u00e9t\u00e9 trouv\u00e9 dans le commentaire."
+                 "Un caract\u00E8re XML non valide (Unicode : 0x{0}) a \u00E9t\u00E9 d\u00E9tect\u00E9 dans le commentaire."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "Un caract\u00e8re XML non valide (Unicode : 0x{0}) a \u00e9t\u00e9 trouv\u00e9 dans les donn\u00e9es de l''instruction de traitement."
+                 "Un caract\u00E8re XML non valide (Unicode : 0x{0}) a \u00E9t\u00E9 d\u00E9tect\u00E9 dans les donn\u00E9es d''instruction de traitement."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "Un caract\u00e8re XML non valide (Unicode: 0x{0}) a \u00e9t\u00e9 trouv\u00e9 dans le contenu de la CDATASection"
+                 "Un caract\u00E8re XML non valide (Unicode : 0x{0}) a \u00E9t\u00E9 d\u00E9tect\u00E9 dans le contenu de la section CDATA."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "Un caract\u00e8re XML non valide (Unicode : 0x{0}) a \u00e9t\u00e9 trouv\u00e9 dans le contenu des donn\u00e9es de type caract\u00e8res du noeud."
+                 "Un caract\u00E8re XML non valide (Unicode : 0x{0}) a \u00E9t\u00E9 d\u00E9tect\u00E9 dans le contenu des donn\u00E9es alphanum\u00E9riques du noeud."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "Un ou plusieurs caract\u00e8res non valides ont \u00e9t\u00e9 trouv\u00e9s dans le noeud {0} nomm\u00e9 ''{1}''."
+                 "Un caract\u00E8re XML non valide a \u00E9t\u00E9 d\u00E9tect\u00E9 dans le noeud {0} nomm\u00E9 ''{1}''."
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "La cha\u00eene \"--\" est interdite dans des commentaires."
+                 "La cha\u00EEne \"--\" n'est pas autoris\u00E9e dans les commentaires."
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "La valeur de l''attribut \"{1}\" associ\u00e9 \u00e0 un type d''\u00e9l\u00e9ment \"{0}\" ne doit pas contenir le caract\u00e8re ''<''."
+                 "La valeur de l''attribut \"{1}\" associ\u00E9 \u00E0 un type d''\u00E9l\u00E9ment \"{0}\" ne doit pas contenir le caract\u00E8re ''<''."
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "La r\u00e9f\u00e9rence d''entit\u00e9 non analys\u00e9e \"&{0};\" n''est pas admise."
+                 "La r\u00E9f\u00E9rence d''entit\u00E9 non analys\u00E9e \"&{0};\" n''est pas autoris\u00E9e."
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "La r\u00e9f\u00e9rence d''entit\u00e9 externe \"&{0};\" n''est pas admise dans une valeur d''attribut."
+                 "La r\u00E9f\u00E9rence d''entit\u00E9 externe \"&{0};\" n''est pas autoris\u00E9e dans une valeur d''attribut."
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "Le pr\u00e9fixe \"{0}\" ne peut pas \u00eatre li\u00e9 \u00e0 l''espace de noms \"{1}\"."
+                 "Le pr\u00E9fixe \"{0}\" ne peut pas \u00EAtre li\u00E9 \u00E0 l''espace de noms \"{1}\"."
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "Le nom local de l''\u00e9l\u00e9ment \"{0}\" a une valeur null."
+                 "Le nom local de l''\u00E9l\u00E9ment \"{0}\" est NULL."
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "Le nom local de l''attribut \"{0}\" a une valeur null."
+                 "Le nom local de l''attribut \"{0}\" est NULL."
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "le texte de remplacement du noeud de l''entit\u00e9 \"{0}\" contaient un noeud d''\u00e9l\u00e9ment \"{1}\" avec un pr\u00e9fixe non li\u00e9 \"{2}\"."
+                 "Le texte de remplacement du noeud d''entit\u00E9 \"{0}\" contient un noeud d''\u00E9l\u00E9ment \"{1}\" avec un pr\u00E9fixe non li\u00E9 \"{2}\"."
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "Le texte de remplacement du noeud de l''entit\u00e9 \"{0}\" contient un noeud d''attribut \"{1}\" avec un pr\u00e9fixe non li\u00e9 \"{2}\"."
+                 "Le texte de remplacement du noeud d''entit\u00E9 \"{0}\" contient un noeud d''attribut \"{1}\" avec un pr\u00E9fixe non li\u00E9 \"{2}\"."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "Une erreur s'est produite lors de l'\u00E9criture du sous-ensemble interne."
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java
index 37556df..de6c152 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_it.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_it.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 07:02:00 gmolloy Exp $
+ * $Id: SerializerMessages_it.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 03:53:19 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -203,31 +203,31 @@
                 "Avvertenza: la codifica ''{0}'' non \u00E8 supportata da Java Runtime." },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "Il parametro ''{0}'' non \u00e8 riconosciuto."},
+             "Il parametro {0} non \u00E8 riconosciuto."},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "Il parametro ''{0}'' \u00e8 riconosciuto ma non \u00e8 possibile impostare il valore richiesto."},
+             "Il parametro ''{0}'' \u00E8 stato riconosciuto, ma non \u00E8 possibile impostare il valore richiesto."},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "La stringa risultante \u00e8 troppo lunga per essere inserita in DOMString: ''{0}''."},
+             "La stringa risultante \u00E8 troppo lunga per adattarsi in DOMString: ''{0}''."},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "Il tipo di valore per questo nome di parametro non \u00e8 compatibile con il tipo di valore previsto."},
+             "Il tipo di valore per questo nome parametro non \u00E8 compatibile con il tipo di valore previsto. "},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "La destinazione di output in cui scrivere i dati era nulla."},
+             "La destinazione di output per i dati da scrivere \u00E8 nulla."},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "\u00c8 stata rilevata una codifica non supportata."},
+             "\u00C8 stata rilevata una codifica non supportata."},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
              "Impossibile serializzare il nodo."},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "La Sezione CDATA contiene uno o pi\u00f9 markers di termine ']]>'."},
+             "La sezione CDATA contiene uno o pi\u00F9 indicatori di fine ']]>'."},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "Impossibile creare un'istanza del controllore Well-Formedness.  Il parametro well-formed \u00e8 stato impostato su true ma non \u00e8 possibile eseguire i controlli well-formedness."
+                 "Impossibile creare un'istanza dello strumento di controllo della correttezza del formato. Il parametro con formato valido \u00E8 impostato su true, ma non \u00E8 possibile eseguire il controllo della correttezza del formato."
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
@@ -235,59 +235,63 @@
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "Trovato un carattere XML non valido (Unicode: 0x{0}) nel commento."
+                 "\u00C8 stato trovato un carattere XML non valido (Unicode: 0x{0}) nel commento."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "Carattere XML non valido (Unicode: 0x{0}) rilevato nell''elaborazione di instructiondata."
+                 "\u00C8 stato trovato un carattere XML non valido (Unicode: 0x{0}) nei dati dell''istruzione di elaborazione."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "Carattere XML non valido (Unicode: 0x{0}) rilevato nel contenuto di CDATASection."
+                 "\u00C8 stato trovato un carattere XML non valido (Unicode: 0x{0}) nei contenuti della sezione CDATA."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "Carattere XML non valido (Unicode: 0x{0}) rilevato nel contenuto dati di caratteri del nodo. "
+                 "\u00C8 stato trovato un carattere XML non valido (Unicode: 0x{0}) nel contenuto dei dati carattere del nodo."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "Carattere XML non valido rilevato nel nodo {0} denominato ''{1}''."
+                 "\u00C8 stato trovato un carattere o caratteri XML non validi nel nodo {0} denominato ''{1}''."
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "La stringa \"--\" non \u00e8 consentita nei commenti."
+                 "La stringa \"--\" non \u00E8 consentita nei commenti."
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "Il valore dell''''attributo \"{1}\" associato con un tipo di elemento \"{0}\" non deve contenere il carattere ''<''."
+                 "Il valore dell''attributo \"{1}\" associato a un tipo di elemento \"{0}\" non deve essere contenere il carattere ''<''."
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "Il riferimento entit\u00e0 non analizzata \"&{0};\" non \u00e8 permesso."
+                 "Il riferimento di entit\u00E0 non analizzata \"&{0};\" non \u00E8 consentito."
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "Il riferimento all''''entit\u00e0 esterna \"&{0};\" non \u00e8 permesso in un valore attributo."
+                 "Il riferimento di entit\u00E0 esterna \"&{0};\" non \u00E8 consentito in un valore di attributo."
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "Il prefisso \"{0}\" non pu\u00f2 essere associato allo spazio nome \"{1}\"."
+                 "Impossibile associare il prefisso \"{0}\" allo spazio di nomi \"{1}\"."
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "Il nome locale dell''''elemento \"{0}\" \u00e8 null."
+                 "Il nome locale dell''elemento \"{0}\" \u00E8 nullo."
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "Il nome locale dell''''attributo \"{0}\" \u00e8  null."
+                 "Il nome locale dell''attributo \"{0}\" \u00E8 nullo."
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "Il testo di sostituzione del nodo di entit\u00e0 \"{0}\" contiene un nodo di elemento \"{1}\" con un prefisso non associato \"{2}\"."
+                 "Il testo di sostituzione del nodo entit\u00E0 \"{0}\" contiene un nodo elemento \"{1}\" con un prefisso non associato \"{2}\"."
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "Il testo di sostituzione del nodo di entit\u00e0 \"{0}\" contiene un nodo di attributo \"{1}\" con un prefisso non associato \"{2}\"."
+                 "Il testo di sostituzione del nodo entit\u00E0 \"{0}\" contiene un nodo attributo \"{1}\" con un prefisso non associato \"{2}\"."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "Si \u00E8 verificato un errore durante la scrittura del subset interno."
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java
index 0c3612f..f496d2c 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ja.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_ja.java /st_wptg_1.8.0.0.0jdk/2 2013/09/12 17:39:58 gmolloy Exp $
+ * $Id: SerializerMessages_ja.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 00:37:07 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -78,7 +78,7 @@
                 "\u30E1\u30C3\u30BB\u30FC\u30B8\u30FB\u30AD\u30FC''{0}''\u306F\u3001\u30E1\u30C3\u30BB\u30FC\u30B8\u30FB\u30AF\u30E9\u30B9''{1}''\u3067\u306F\u3042\u308A\u307E\u305B\u3093" },
 
             {   MsgKey.BAD_MSGFORMAT,
-                "\u30E1\u30C3\u30BB\u30FC\u30B8\u30FB\u30AF\u30E9\u30B9''{1}''\u306E\u30E1\u30C3\u30BB\u30FC\u30B8''{0}''\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002" },
+                "\u30E1\u30C3\u30BB\u30FC\u30B8\u30FB\u30AF\u30E9\u30B9''{1}''\u306E\u30E1\u30C3\u30BB\u30FC\u30B8''{0}''\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u304C\u5931\u6557\u3057\u307E\u3057\u305F\u3002" },
 
             {   MsgKey.ER_SERIALIZER_NOT_CONTENTHANDLER,
                 "\u30B7\u30EA\u30A2\u30E9\u30A4\u30B6\u30FB\u30AF\u30E9\u30B9''{0}''\u306Forg.xml.sax.ContentHandler\u3092\u5B9F\u88C5\u3057\u307E\u305B\u3093\u3002" },
@@ -203,91 +203,95 @@
                 "\u8B66\u544A:  \u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0''{0}''\u306F\u3001Java\u30E9\u30F3\u30BF\u30A4\u30E0\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002" },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc ''{0}'' \u306f\u8a8d\u8b58\u3055\u308c\u307e\u305b\u3093\u3002"},
+             "\u30D1\u30E9\u30E1\u30FC\u30BF''{0}''\u306F\u8A8D\u8B58\u3055\u308C\u307E\u305B\u3093\u3002"},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc ''{0}'' \u306f\u8a8d\u8b58\u3055\u308c\u307e\u3059\u304c\u3001\u8981\u6c42\u3055\u308c\u305f\u5024\u306f\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002"},
+             "\u30D1\u30E9\u30E1\u30FC\u30BF''{0}''\u306F\u8A8D\u8B58\u3055\u308C\u307E\u3059\u304C\u3001\u30EA\u30AF\u30A8\u30B9\u30C8\u3057\u305F\u5024\u306F\u8A2D\u5B9A\u3067\u304D\u307E\u305B\u3093\u3002"},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "\u7d50\u679c\u306e\u30b9\u30c8\u30ea\u30f3\u30b0\u304c\u9577\u3059\u304e\u308b\u305f\u3081\u3001DOMString \u5185\u306b\u53ce\u307e\u308a\u307e\u305b\u3093: ''{0}''\u3002"},
+             "\u7D50\u679C\u306E\u6587\u5B57\u5217\u306F\u9577\u3059\u304E\u308B\u305F\u3081\u3001DOMString\u306B\u53CE\u307E\u308A\u307E\u305B\u3093: ''{0}''\u3002"},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "\u3053\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u540d\u306e\u5024\u306e\u578b\u306f\u3001\u671f\u5f85\u3055\u308c\u308b\u5024\u306e\u578b\u3068\u4e0d\u9069\u5408\u3067\u3059\u3002"},
+             "\u3053\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u540D\u306E\u5024\u30BF\u30A4\u30D7\u306F\u3001\u4E88\u60F3\u3057\u305F\u5024\u30BF\u30A4\u30D7\u3068\u4E92\u63DB\u6027\u304C\u3042\u308A\u307E\u305B\u3093\u3002 "},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "\u66f8\u304d\u8fbc\u307e\u308c\u308b\u30c7\u30fc\u30bf\u306e\u51fa\u529b\u5b9b\u5148\u304c\u30cc\u30eb\u3067\u3059\u3002"},
+             "\u66F8\u304D\u8FBC\u307E\u308C\u308B\u30C7\u30FC\u30BF\u306E\u51FA\u529B\u5148\u304Cnull\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002"},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u306a\u3044\u30a8\u30f3\u30b3\u30fc\u30c9\u304c\u691c\u51fa\u3055\u308c\u307e\u3057\u305f\u3002"},
+             "\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002"},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "\u30ce\u30fc\u30c9\u3092\u76f4\u5217\u5316\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002"},
+             "\u30CE\u30FC\u30C9\u3092\u30B7\u30EA\u30A2\u30E9\u30A4\u30BA\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002"},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "CDATA \u30bb\u30af\u30b7\u30e7\u30f3\u306b 1 \u3064\u4ee5\u4e0a\u306e\u7d42\u4e86\u30de\u30fc\u30ab\u30fc ']]>' \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002"},
+             "CDATA\u30BB\u30AF\u30B7\u30E7\u30F3\u306B1\u3064\u4EE5\u4E0A\u306E\u7D42\u4E86\u30DE\u30FC\u30AB\u30FC']]>'\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002"},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "\u6574\u5f62\u5f0f\u6027\u30c1\u30a7\u30c3\u30ab\u30fc\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002  well-formed \u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306e\u8a2d\u5b9a\u306f true \u3067\u3057\u305f\u304c\u3001\u6574\u5f62\u5f0f\u6027\u306e\u691c\u67fb\u306f\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3002"
+                 "\u6574\u5F62\u5F0F\u30C1\u30A7\u30C3\u30AB\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u6574\u5F62\u5F0F\u30D1\u30E9\u30E1\u30FC\u30BF\u306Ftrue\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001\u6574\u5F62\u5F0F\u30C1\u30A7\u30C3\u30AF\u3092\u5B9F\u884C\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002"
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "\u30ce\u30fc\u30c9 ''{0}'' \u306b\u7121\u52b9\u306a XML \u6587\u5b57\u304c\u3042\u308a\u307e\u3059\u3002"
+                 "\u30CE\u30FC\u30C9''{0}''\u306B\u7121\u52B9\u306AXML\u6587\u5B57\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "\u30b3\u30e1\u30f3\u30c8\u306e\u4e2d\u306b\u7121\u52b9\u306a XML \u6587\u5b57 (Unicode: 0x{0}) \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002"
+                 "\u30B3\u30E1\u30F3\u30C8\u306B\u7121\u52B9\u306AXML\u6587\u5B57(Unicode: 0x{0})\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "\u51e6\u7406\u547d\u4ee4\u30c7\u30fc\u30bf\u306e\u4e2d\u306b\u7121\u52b9\u306a XML \u6587\u5b57 (Unicode: 0x{0}) \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002"
+                 "\u51E6\u7406\u547D\u4EE4\u30C7\u30FC\u30BF\u306B\u7121\u52B9\u306AXML\u6587\u5B57(Unicode: 0x{0})\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "CDATA \u30bb\u30af\u30b7\u30e7\u30f3\u306e\u4e2d\u306b\u7121\u52b9\u306a XML \u6587\u5b57 (Unicode: 0x{0}) \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002"
+                 "CDATASection\u306E\u30B3\u30F3\u30C6\u30F3\u30C4\u306B\u7121\u52B9\u306AXML\u6587\u5B57(Unicode: 0x{0})\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "\u30ce\u30fc\u30c9\u306e\u6587\u5b57\u30c7\u30fc\u30bf\u306e\u5185\u5bb9\u306b\u7121\u52b9\u306a XML \u6587\u5b57 (Unicode: 0x{0}) \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002"
+                 "\u30CE\u30FC\u30C9\u306E\u6587\u5B57\u30C7\u30FC\u30BF\u30FB\u30B3\u30F3\u30C6\u30F3\u30C4\u306B\u7121\u52B9\u306AXML\u6587\u5B57(Unicode: 0x{0})\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "''{1}'' \u3068\u3044\u3046\u540d\u524d\u306e {0} \u30ce\u30fc\u30c9\u306e\u4e2d\u306b\u7121\u52b9\u306a XML \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\u3002"
+                 "''{1}''\u3068\u3044\u3046\u540D\u524D\u306E{0}\u30CE\u30FC\u30C9\u306B\u7121\u52B9\u306AXML\u6587\u5B57\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F\u3002"
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "\u30b9\u30c8\u30ea\u30f3\u30b0 \"--\" \u306f\u30b3\u30e1\u30f3\u30c8\u5185\u3067\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002"
+                 "\u30B3\u30E1\u30F3\u30C8\u5185\u3067\u306F\u6587\u5B57\u5217\"--\"\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002"
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "\u8981\u7d20\u578b \"{0}\" \u306b\u95a2\u9023\u3057\u305f\u5c5e\u6027 \"{1}\" \u306e\u5024\u306b\u306f ''<'' \u6587\u5b57\u3092\u542b\u3081\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002"
+                 "\u8981\u7D20\u30BF\u30A4\u30D7\"{0}\"\u306B\u95A2\u9023\u4ED8\u3051\u3089\u308C\u3066\u3044\u308B\u5C5E\u6027\"{1}\"\u306E\u5024\u306B\u306F\u3001''<''\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002"
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "\u89e3\u6790\u5bfe\u8c61\u5916\u5b9f\u4f53\u53c2\u7167 \"&{0};\" \u306f\u8a31\u53ef\u3055\u308c\u307e\u305b\u3093\u3002"
+                 "\u672A\u89E3\u6790\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u53C2\u7167\"&{0};\"\u306F\u8A31\u53EF\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "\u5c5e\u6027\u5024\u3067\u306e\u5916\u90e8\u5b9f\u4f53\u53c2\u7167 \"&{0};\" \u306f\u8a31\u53ef\u3055\u308c\u307e\u305b\u3093\u3002"
+                 "\u5916\u90E8\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u53C2\u7167\"&{0};\"\u306F\u3001\u5C5E\u6027\u5024\u3067\u306F\u8A31\u53EF\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "\u63a5\u982d\u90e8 \"{0}\" \u306f\u540d\u524d\u7a7a\u9593 \"{1}\" \u306b\u7d50\u5408\u3067\u304d\u307e\u305b\u3093\u3002"
+                 "\u63A5\u982D\u8F9E\"{0}\"\u306F\u30CD\u30FC\u30E0\u30B9\u30DA\u30FC\u30B9\"{1}\"\u306B\u30D0\u30A4\u30F3\u30C9\u3067\u304D\u307E\u305B\u3093\u3002"
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "\u8981\u7d20 \"{0}\" \u306e\u30ed\u30fc\u30ab\u30eb\u540d\u304c\u30cc\u30eb\u3067\u3059\u3002"
+                 "\u8981\u7D20\"{0}\"\u306E\u30ED\u30FC\u30AB\u30EB\u540D\u304Cnull\u3067\u3059\u3002"
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "\u5c5e\u6027 \"{0}\" \u306e\u30ed\u30fc\u30ab\u30eb\u540d\u304c\u30cc\u30eb\u3067\u3059\u3002"
+                 "\u5C5E\u6027\"{0}\"\u306E\u30ED\u30FC\u30AB\u30EB\u540D\u304Cnull\u3067\u3059\u3002"
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "\u5b9f\u4f53\u30ce\u30fc\u30c9 \"{0}\" \u306e\u7f6e\u63db\u30c6\u30ad\u30b9\u30c8\u306b\u3001\u672a\u7d50\u5408\u306e\u63a5\u982d\u90e8 \"{2}\" \u3092\u6301\u3064\u8981\u7d20\u30ce\u30fc\u30c9 \"{1}\" \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002"
+                 "\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u30FB\u30CE\u30FC\u30C9\"{0}\"\u306E\u7F6E\u63DB\u30C6\u30AD\u30B9\u30C8\u306B\u306F\u3001\u30D0\u30A4\u30F3\u30C9\u3055\u308C\u3066\u3044\u306A\u3044\u63A5\u982D\u8F9E\"{2}\"\u3092\u6301\u3064\u8981\u7D20\u30CE\u30FC\u30C9\"{1}\"\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002"
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "\u5b9f\u4f53\u30ce\u30fc\u30c9 \"{0}\" \u306e\u7f6e\u63db\u30c6\u30ad\u30b9\u30c8\u306b\u3001\u672a\u7d50\u5408\u306e\u63a5\u982d\u90e8 \"{2}\" \u3092\u6301\u3064\u5c5e\u6027\u30ce\u30fc\u30c9 \"{1}\" \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002"
+                 "\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u30FB\u30CE\u30FC\u30C9\"{0}\"\u306E\u7F6E\u63DB\u30C6\u30AD\u30B9\u30C8\u306B\u306F\u3001\u30D0\u30A4\u30F3\u30C9\u3055\u308C\u3066\u3044\u306A\u3044\u63A5\u982D\u8F9E\"{2}\"\u3092\u6301\u3064\u5C5E\u6027\u30CE\u30FC\u30C9\"{1}\"\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002"
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "\u5185\u90E8\u30B5\u30D6\u30BB\u30C3\u30C8\u306E\u66F8\u8FBC\u307F\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002"
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java
index 410dcad..b6dad3a 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_ko.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_ko.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 02:31:34 gmolloy Exp $
+ * $Id: SerializerMessages_ko.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 02:39:51 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -203,91 +203,95 @@
                 "\uACBD\uACE0: \uC778\uCF54\uB529 ''{0}''\uC740(\uB294) Java \uB7F0\uD0C0\uC784\uC5D0 \uC9C0\uC6D0\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4." },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "''{0}'' \ub9e4\uac1c\ubcc0\uc218\ub97c \uc778\uc2dd\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."},
+             "''{0}'' \uB9E4\uAC1C\uBCC0\uC218\uB97C \uC778\uC2DD\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "''{0}'' \ub9e4\uac1c\ubcc0\uc218\ub294 \uc778\uc2dd\ud560 \uc218 \uc788\uc73c\ub098 \uc694\uccad\ub41c \uac12\uc744 \uc124\uc815\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."},
+             "''{0}'' \uB9E4\uAC1C\uBCC0\uC218\uAC00 \uC778\uC2DD\uB418\uC5C8\uC9C0\uB9CC \uC694\uCCAD\uB41C \uAC12\uC744 \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "\uacb0\uacfc \ubb38\uc790\uc5f4\uc774 \ub108\ubb34 \uae38\uc5b4 DOMString\uc5d0 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4: ''{0}'' "},
+             "\uACB0\uACFC \uBB38\uC790\uC5F4\uC774 \uB108\uBB34 \uCEE4\uC11C DOMString\uC5D0 \uB9DE\uC9C0 \uC54A\uC74C: ''{0}''."},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "\uc774 \ub9e4\uac1c\ubcc0\uc218 \uc774\ub984\uc5d0 \ub300\ud55c \uac12 \uc720\ud615\uc774 \uc608\uc0c1 \uac12 \uc720\ud615\uacfc \ud638\ud658\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4."},
+             "\uC774 \uB9E4\uAC1C\uBCC0\uC218 \uC774\uB984\uC5D0 \uB300\uD55C \uAC12 \uC720\uD615\uC774 \uD544\uC694\uD55C \uAC12 \uC720\uD615\uACFC \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "\ub370\uc774\ud130\ub97c \uae30\ub85d\ud560 \ucd9c\ub825 \ub300\uc0c1\uc774 \ub110(null)\uc785\ub2c8\ub2e4."},
+             "\uB370\uC774\uD130\uB97C \uC4F8 \uCD9C\uB825 \uB300\uC0C1\uC774 \uB110\uC785\uB2C8\uB2E4."},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "\uc9c0\uc6d0\ub418\uc9c0 \uc54a\ub294 \uc778\ucf54\ub529\uc774 \ubc1c\uacac\ub418\uc5c8\uc2b5\ub2c8\ub2e4."},
+             "\uC9C0\uC6D0\uB418\uC9C0 \uC54A\uB294 \uC778\uCF54\uB529\uC774 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "\ub178\ub4dc\ub97c \uc9c1\ub82c\ud654\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."},
+             "\uB178\uB4DC\uB97C \uC9C1\uB82C\uD654\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "CDATA \uc139\uc158\uc5d0 \uc885\ub8cc \ud45c\uc2dc \ubb38\uc790\uc778 ']]>'\uac00 \ud558\ub098 \uc774\uc0c1 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4."},
+             "CDATA \uC139\uC158\uC5D0 \uD558\uB098 \uC774\uC0C1\uC758 \uC885\uB8CC \uD45C\uC2DC\uC790 ']]>'\uAC00 \uC788\uC2B5\uB2C8\uB2E4."},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "Well-Formedness \uac80\uc0ac\uae30\uc758 \uc778\uc2a4\ud134\uc2a4\ub97c \uc791\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. Well-Formed \ub9e4\uac1c\ubcc0\uc218\uac00 true\ub85c \uc124\uc815\ub418\uc5c8\uc9c0\ub9cc Well-Formedness \uac80\uc0ac\ub97c \uc218\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."
+                 "Well-Formedness \uAC80\uC0AC\uAE30\uC758 \uC778\uC2A4\uD134\uC2A4\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. well-formed \uB9E4\uAC1C\uBCC0\uC218\uAC00 true\uB85C \uC124\uC815\uB418\uC5C8\uC9C0\uB9CC well-formedness \uAC80\uC0AC\uB97C \uC218\uD589\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "''{0}'' \ub178\ub4dc\uc5d0 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 XML \ubb38\uc790\uac00 \uc788\uc2b5\ub2c8\ub2e4."
+                 "''{0}'' \uB178\uB4DC\uC5D0 \uBD80\uC801\uD569\uD55C XML \uBB38\uC790\uAC00 \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "\uc124\uba85\uc5d0 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 XML \ubb38\uc790(Unicode: 0x{0})\uac00 \uc788\uc2b5\ub2c8\ub2e4. "
+                 "\uC8FC\uC11D\uC5D0\uC11C \uBD80\uC801\uD569\uD55C XML \uBB38\uC790(\uC720\uB2C8\uCF54\uB4DC: 0x{0})\uAC00 \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "\ucc98\ub9ac \uba85\ub839\uc5b4 \ub370\uc774\ud130\uc5d0 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 XML \ubb38\uc790(Unicode: 0x{0})\uac00 \uc788\uc2b5\ub2c8\ub2e4 "
+                 "\uBD80\uC801\uD569\uD55C XML \uBB38\uC790(\uC720\uB2C8\uCF54\uB4DC: 0x{0})\uAC00 instructiondata \uCC98\uB9AC\uC5D0\uC11C \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "CDATASection\uc758 \ub0b4\uc6a9\uc5d0 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 XML \ubb38\uc790(Unicode: 0x{0})\uac00 \uc788\uc2b5\ub2c8\ub2e4. "
+                 "\uBD80\uC801\uD569\uD55C XML \uBB38\uC790(\uC720\uB2C8\uCF54\uB4DC: 0x{0})\uAC00 CDATASection\uC758 \uCF58\uD150\uCE20\uC5D0\uC11C \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "\ub178\ub4dc\uc758 \ubb38\uc790 \ub370\uc774\ud130 \ub0b4\uc6a9\uc5d0 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 XML \ubb38\uc790(Unicode: 0x{0})\uac00 \uc788\uc2b5\ub2c8\ub2e4. "
+                 "\uBD80\uC801\uD569\uD55C XML \uBB38\uC790(\uC720\uB2C8\uCF54\uB4DC: 0x{0})\uAC00 \uB178\uB4DC\uC758 \uBB38\uC790 \uB370\uC774\uD130 \uCF58\uD150\uCE20\uC5D0\uC11C \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "\uc774\ub984\uc774 ''{1}''\uc778 {0} \ub178\ub4dc\uc5d0 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 XML \ubb38\uc790\uac00 \uc788\uc2b5\ub2c8\ub2e4. "
+                 "\uBD80\uC801\uD569\uD55C XML \uBB38\uC790\uAC00 \uC774\uB984\uC774 ''{1}''\uC778 {0} \uB178\uB4DC\uC5D0\uC11C \uBC1C\uACAC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "\uc124\uba85 \ub0b4\uc5d0\uc11c\ub294 \"--\" \ubb38\uc790\uc5f4\uc774 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4."
+                 "\uC8FC\uC11D\uC5D0\uC11C\uB294 \"--\" \uBB38\uC790\uC5F4\uC774 \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "\"{0}\" \uc694\uc18c \uc720\ud615\uacfc \uc5f0\uad00\ub41c \"{1}\" \uc18d\uc131\uac12\uc5d0 ''<'' \ubb38\uc790\uac00 \ud3ec\ud568\ub418\uba74 \uc548\ub429\ub2c8\ub2e4."
+                 "\uC694\uC18C \uC720\uD615 \"{0}\"\uACFC(\uC640) \uC5F0\uAD00\uB41C \"{1}\" \uC18D\uC131\uC758 \uAC12\uC5D0\uB294 ''<'' \uBB38\uC790\uAC00 \uD3EC\uD568\uB418\uC9C0 \uC54A\uC544\uC57C \uD569\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "\"&{0};\"\uc758 \uad6c\ubd84 \ubd84\uc11d\ub418\uc9c0 \uc54a\uc740 \uc5d4\ud2f0\ud2f0 \ucc38\uc870\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. "
+                 "\uAD6C\uBB38\uC774 \uBD84\uC11D\uB418\uC9C0 \uC54A\uC740 \uC5D4\uD2F0\uD2F0 \uCC38\uC870 \"&{0};\"\uC740(\uB294) \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "\uc18d\uc131\uac12\uc5d0\ub294 \"&{0};\" \uc678\ubd80 \uc5d4\ud2f0\ud2f0 \ucc38\uc870\uac00 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. "
+                 "\uC18D\uC131\uAC12\uC5D0\uC11C\uB294 \uC678\uBD80 \uC5D4\uD2F0\uD2F0 \uCC38\uC870 \"&{0};\"\uC774 \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "\"{0}\" \uc811\ub450\ubd80\ub97c \"{1}\" \uc774\ub984 \uacf5\uac04\uc5d0 \ubc14\uc778\ub4dc\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."
+                 "\"{0}\" \uC811\uB450\uC5B4\uB97C \"{1}\" \uB124\uC784\uC2A4\uD398\uC774\uC2A4\uC5D0 \uBC14\uC778\uB4DC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "\"{0}\" \uc694\uc18c\uc758 \ub85c\uceec \uc774\ub984\uc774 \ub110(null)\uc785\ub2c8\ub2e4."
+                 "\"{0}\" \uC694\uC18C\uC758 \uB85C\uCEEC \uC774\uB984\uC774 \uB110\uC785\uB2C8\uB2E4."
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "\"{0}\" \uc18d\uc131\uc758 \ub85c\uceec \uc774\ub984\uc774 \ub110(null)\uc785\ub2c8\ub2e4."
+                 "\"{0}\" \uC18D\uC131\uC758 \uB85C\uCEEC \uC774\uB984\uC774 \uB110\uC785\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "\"{0}\" \uc5d4\ud2f0\ud2f0 \ub178\ub4dc\uc758 \ub300\uccb4 \ud14d\uc2a4\ud2b8\uc5d0 \ubc14\uc778\ub4dc\ub418\uc9c0 \uc54a\uc740 \uc811\ub450\ubd80 \"{2}\"\uc744(\ub97c) \uac16\ub294 \"{1}\" \uc694\uc18c \ub178\ub4dc\uac00 \uc788\uc2b5\ub2c8\ub2e4."
+                 "\uC5D4\uD2F0\uD2F0 \uB178\uB4DC \"{0}\"\uC758 \uB300\uCCB4 \uD14D\uC2A4\uD2B8\uC5D0 \uBC14\uC778\uB4DC\uB418\uC9C0 \uC54A\uC740 \uC811\uB450\uC5B4 \"{2}\"\uC744(\uB97C) \uC0AC\uC6A9\uD558\uB294 \uC694\uC18C \uB178\uB4DC \"{1}\"\uC774(\uAC00) \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "\"{0}\" \uc5d4\ud2f0\ud2f0 \ub178\ub4dc\uc758 \ub300\uccb4 \ud14d\uc2a4\ud2b8\uc5d0 \ubc14\uc778\ub4dc\ub418\uc9c0 \uc54a\uc740 \uc811\ub450\ubd80 \"{2}\"\uc744(\ub97c) \uac16\ub294 \"{1}\" \uc18d\uc131 \ub178\ub4dc\uac00 \uc788\uc2b5\ub2c8\ub2e4."
+                 "\uC5D4\uD2F0\uD2F0 \uB178\uB4DC \"{0}\"\uC758 \uB300\uCCB4 \uD14D\uC2A4\uD2B8\uC5D0 \uBC14\uC778\uB4DC\uB418\uC9C0 \uC54A\uC740 \uC811\uB450\uC5B4 \"{2}\"\uC744(\uB97C) \uC0AC\uC6A9\uD558\uB294 \uC18D\uC131 \uB178\uB4DC \"{1}\"\uC774(\uAC00) \uD3EC\uD568\uB418\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "\uB0B4\uBD80 \uBD80\uBD84 \uC9D1\uD569\uC744 \uC4F0\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_pt_BR.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_pt_BR.java
index a65026f..e8080e7 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_pt_BR.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_pt_BR.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_pt_BR.java /st_wptg_1.8.0.0.0jdk/2 2013/09/11 12:46:54 gmolloy Exp $
+ * $Id: SerializerMessages_pt_BR.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 18:01:34 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -129,7 +129,7 @@
                 "Declara\u00E7\u00E3o de namespace ''{0}''=''{1}'' fora do elemento." },
 
             {   MsgKey.ER_COULD_NOT_LOAD_RESOURCE,
-                "N\u00E3o foi poss\u00EDvel carregar ''{0}'' (verificar CLASSPATH); usando agora apenas os defaults" },
+                "N\u00E3o foi poss\u00EDvel carregar ''{0}'' (verificar CLASSPATH); usando agora apenas os padr\u00F5es" },
 
             {   MsgKey.ER_ILLEGAL_CHARACTER,
                 "Tentativa de exibir um caractere de valor integral {0} que n\u00E3o est\u00E1 representado na codifica\u00E7\u00E3o de sa\u00EDda especificada de {1}." },
@@ -203,91 +203,95 @@
                 "Advert\u00EAncia: a codifica\u00E7\u00E3o ''{0}'' n\u00E3o \u00E9 suportada pelo Java runtime." },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "O par\u00e2metro ''{0}'' n\u00e3o \u00e9 reconhecido."},
+             "O par\u00E2metro ''{0}'' n\u00E3o \u00E9 reconhecido."},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "O par\u00e2metro ''{0}'' \u00e9 reconhecido, mas o valor pedido n\u00e3o pode ser definido. "},
+             "O par\u00E2metro ''{0}'' \u00E9 reconhecido, mas o valor solicitado n\u00E3o pode ser definido."},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "A cadeia resultante \u00e9 muito longa para caber em uma DOMString: ''{0}''. "},
+             "A string resultante \u00E9 muito longa para se ajustar a uma DOMString: ''{0}''."},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "O tipo de valor para este nome de par\u00e2metro \u00e9 incompat\u00edvel com o tipo de valor esperado. "},
+             "O tipo de valor do nome deste par\u00E2metro \u00E9 incompat\u00EDvel com o tipo de valor esperado."},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "O destino de sa\u00edda para os dados a serem gravados era nulo. "},
+             "O destino da sa\u00EDda dos dados a serem gravados era nulo."},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "Uma codifica\u00e7\u00e3o n\u00e3o suportada foi encontrada. "},
+             "Uma codifica\u00E7\u00E3o n\u00E3o suportada foi encontrada."},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "O n\u00f3 n\u00e3o p\u00f4de ser serializado."},
+             "N\u00E3o foi poss\u00EDvel serializar o n\u00F3."},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "A Se\u00e7\u00e3o CDATA cont\u00e9m um ou mais marcadores de t\u00e9rmino ']]>'."},
+             "A Se\u00E7\u00E3o CDATA cont\u00E9m um ou mais marcadores de t\u00E9rmino ']]>'."},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "Uma inst\u00e2ncia do verificador Well-Formedness n\u00e3o p\u00f4de ser criada. O par\u00e2metro well-formed foi definido como true, mas a verifica\u00e7\u00e3o well-formedness n\u00e3o pode ser executada."
+                 "N\u00E3o foi poss\u00EDvel criar uma inst\u00E2ncia do verificador de Formato Correto. O par\u00E2metro formatado corretamente foi definido como verdadeiro, mas a verifica\u00E7\u00E3o de formato correto n\u00E3o pode ser executada."
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "O n\u00f3 ''{0}'' cont\u00e9m caracteres XML inv\u00e1lidos. "
+                 "O n\u00F3 ''{0}'' cont\u00E9m caracteres XML inv\u00E1lidos."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "Um caractere XML inv\u00e1lido (Unicode: 0x{0}) foi encontrado no coment\u00e1rio. "
+                 "Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no coment\u00E1rio."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "Um caractere XML inv\u00e1lido (Unicode: 0x{0}) foi encontrado no processo instructiondata."
+                 "Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado nos dados da instru\u00E7\u00E3o de processamento."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "Um caractere XML inv\u00e1lido (Unicode: 0x{0}) foi encontrado nos conte\u00fados do CDATASection. "
+                 "Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no conte\u00FAdo da Se\u00E7\u00E3o CDATA."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "Um caractere XML inv\u00e1lido (Unicode: 0x{0}) foi encontrado no conte\u00fado dos dados de caractere dos n\u00f3s. "
+                 "Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no conte\u00FAdo dos dados de caracteres do n\u00F3."
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "Um caractere inv\u00e1lido foi encontrado no {0} do n\u00f3 denominado ''{1}''."
+                 "Um ou mais caracteres XML inv\u00E1lidos foram encontrados no n\u00F3 {0} chamado ''{1}''."
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "A cadeia \"--\" n\u00e3o \u00e9 permitida dentro dos coment\u00e1rios. "
+                 "A string \"--\" n\u00E3o \u00E9 permitida nos coment\u00E1rios."
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "O valor do atributo \"{1}\" associado a um tipo de elemento \"{0}\" n\u00e3o deve conter o caractere ''<''. "
+                 "O valor do atributo \"{1}\" associado a um tipo de elemento \"{0}\" n\u00E3o deve conter o caractere ''<''."
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "A refer\u00eancia de entidade n\u00e3o analisada \"&{0};\" n\u00e3o \u00e9 permitida. "
+                 "A refer\u00EAncia da entidade n\u00E3o submetida a parsing \"&{0};\" n\u00E3o \u00E9 permitida."
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "A refer\u00eancia de entidade externa \"&{0};\" n\u00e3o \u00e9 permitida em um valor de atributo. "
+                 "A refer\u00EAncia da entidade externa \"&{0};\" n\u00E3o \u00E9 permitida em um valor do atributo."
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "O prefixo \"{0}\" n\u00e3o pode ser vinculado ao espa\u00e7o de nomes \"{1}\"."
+                 "O prefixo \"{0}\" n\u00E3o pode ser vinculado ao namespace \"{1}\"."
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "O nome local do elemento \"{0}\" \u00e9 nulo."
+                 "O nome local do elemento \"{0}\" \u00E9 nulo."
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "O nome local do atributo \"{0}\" \u00e9 nulo."
+                 "O nome local do atributo \"{0}\" \u00E9 nulo."
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "O texto de substitui\u00e7\u00e3o do n\u00f3 de entidade \"{0}\" cont\u00e9m um n\u00f3 de elemento \"{1}\" com um prefixo n\u00e3o vinculado \"{2}\"."
+                 "O texto de substitui\u00E7\u00E3o do n\u00F3 \"{0}\" de entidade cont\u00E9m um n\u00F3 \"{1}\" de elemento com um prefixo desvinculado \"{2}\"."
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "O texto de substitui\u00e7\u00e3o do n\u00f3 de entidade \"{0}\" cont\u00e9m um n\u00f3 de atributo \"{1}\" com um prefixo n\u00e3o vinculado \"{2}\"."
+                 "O texto de substitui\u00E7\u00E3o do n\u00F3 \"{0}\" de entidade cont\u00E9m um n\u00F3 \"{1}\" de atributo com um prefixo desvinculado \"{2}\"."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "Ocorreu um erro ao gravar o subconjunto interno."
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java
index e9104b7..d38d469 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_sv.java
@@ -3,9 +3,11 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the  "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
@@ -18,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_sv.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 06:50:58 gmolloy Exp $
+ * $Id: SerializerMessages_sv.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -200,6 +202,97 @@
             {   MsgKey.ER_ENCODING_NOT_SUPPORTED,
                 "Varning: Kodningen ''{0}'' st\u00F6ds inte av Java runtime." },
 
+             {MsgKey.ER_FEATURE_NOT_FOUND,
+             "Parametern ''{0}'' k\u00E4nns inte igen."},
+
+             {MsgKey.ER_FEATURE_NOT_SUPPORTED,
+             "Parametern ''{0}'' k\u00E4nns igen men det beg\u00E4rda v\u00E4rdet kan inte anges."},
+
+             {MsgKey.ER_STRING_TOO_LONG,
+             "Resultatstr\u00E4ngen \u00E4r f\u00F6r l\u00E5ng och ryms inte i DOMString: ''{0}''."},
+
+             {MsgKey.ER_TYPE_MISMATCH_ERR,
+             "V\u00E4rdetypen f\u00F6r detta parameternamn \u00E4r inkompatibelt med f\u00F6rv\u00E4ntad v\u00E4rdetyp. "},
+
+             {MsgKey.ER_NO_OUTPUT_SPECIFIED,
+             "Den utdatadestination som data ska skrivas till var null."},
+
+             {MsgKey.ER_UNSUPPORTED_ENCODING,
+             "En kodning som inte st\u00F6ds har p\u00E5tr\u00E4ffats."},
+
+             {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
+             "Noden kunde inte serialiseras."},
+
+             {MsgKey.ER_CDATA_SECTIONS_SPLIT,
+             "CDATA-sektionen inneh\u00E5ller en eller flera avslutningsmark\u00F6rer (']]>')."},
+
+             {MsgKey.ER_WARNING_WF_NOT_CHECKED,
+                 "En instans av Well-Formedness-kontrollen kunde inte skapas. Parametern well-formed har angetts till sant men Well-Formedness-kontrollen kan inte utf\u00F6ras."
+             },
+
+             {MsgKey.ER_WF_INVALID_CHARACTER,
+                 "Noden ''{0}'' inneh\u00E5ller ogiltiga XML-tecken."
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
+                 "Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i kommentaren."
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
+                 "Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i bearbetningsinstruktionsdata."
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
+                 "Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i inneh\u00E5llet i CDATASection."
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
+                 "Ett ogiltigt XML-tecken (Unicode: 0x{0}) hittades i teckendatainneh\u00E5llet f\u00F6r noden."
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
+                 "Ett ogiltigt XML-tecken/ogiltiga XML-tecken hittades i {0}-noden med namnet ''{1}''."
+             },
+
+             { MsgKey.ER_WF_DASH_IN_COMMENT,
+                 "Str\u00E4ngen \"--\" \u00E4r inte till\u00E5ten inom kommentarer."
+             },
+
+             {MsgKey.ER_WF_LT_IN_ATTVAL,
+                 "Attributv\u00E4rdet \"{1}\" som associeras med elementtyp \"{0}\" f\u00E5r inte inneh\u00E5lla n\u00E5got ''<''-tecken."
+             },
+
+             {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
+                 "Den otolkade enhetsreferensen \"&{0};\" \u00E4r inte till\u00E5ten."
+             },
+
+             {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
+                 "Den externa enhetsreferensen \"&{0};\" till\u00E5ts inte i ett attributv\u00E4rde."
+             },
+
+             {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
+                 "Prefixet \"{0}\" kan inte bindas till namnrymden \"{1}\"."
+             },
+
+             {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
+                 "Det lokala namnet p\u00E5 elementet \"{0}\" \u00E4r null."
+             },
+
+             {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
+                 "Det lokala namnet p\u00E5 attributet \"{0}\" \u00E4r null."
+             },
+
+             { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
+                 "Ers\u00E4ttningstexten f\u00F6r enhetsnoden \"{0}\" inneh\u00E5ller elementnoden \"{1}\" med ett obundet prefix, \"{2}\"."
+             },
+
+             { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
+                 "Ers\u00E4ttningstexten f\u00F6r enhetsnoden \"{0}\" inneh\u00E5ller attributnoden \"{1}\" med ett obundet prefix, \"{2}\"."
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "Ett fel intr\u00E4ffade vid skrivning till den interna delm\u00E4ngden."
+             },
 
         };
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java
index 9bc7c1e..b8b74e5 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_CN.java
@@ -3,9 +3,11 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the  "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
@@ -18,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_zh_CN.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 04:44:25 gmolloy Exp $
+ * $Id: SerializerMessages_zh_CN.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 05:10:27 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -200,6 +202,97 @@
             {   MsgKey.ER_ENCODING_NOT_SUPPORTED,
                 "\u8B66\u544A: Java \u8FD0\u884C\u65F6\u4E0D\u652F\u6301\u7F16\u7801 ''{0}''\u3002" },
 
+             {MsgKey.ER_FEATURE_NOT_FOUND,
+             "\u672A\u8BC6\u522B\u53C2\u6570 ''{0}''\u3002"},
+
+             {MsgKey.ER_FEATURE_NOT_SUPPORTED,
+             "\u5DF2\u8BC6\u522B\u53C2\u6570 ''{0}'', \u4F46\u65E0\u6CD5\u8BBE\u7F6E\u8BF7\u6C42\u7684\u503C\u3002"},
+
+             {MsgKey.ER_STRING_TOO_LONG,
+             "\u751F\u6210\u7684\u5B57\u7B26\u4E32\u592A\u957F, \u4E0D\u9002\u5408 DOMString: ''{0}''\u3002"},
+
+             {MsgKey.ER_TYPE_MISMATCH_ERR,
+             "\u6B64\u53C2\u6570\u540D\u79F0\u7684\u503C\u7C7B\u578B\u4E0E\u9884\u671F\u7684\u503C\u7C7B\u578B\u4E0D\u517C\u5BB9\u3002"},
+
+             {MsgKey.ER_NO_OUTPUT_SPECIFIED,
+             "\u8981\u5C06\u6570\u636E\u5199\u5165\u7684\u8F93\u51FA\u76EE\u6807\u4E3A\u7A7A\u503C\u3002"},
+
+             {MsgKey.ER_UNSUPPORTED_ENCODING,
+             "\u9047\u5230\u4E0D\u652F\u6301\u7684\u7F16\u7801\u3002"},
+
+             {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
+             "\u65E0\u6CD5\u5E8F\u5217\u5316\u8282\u70B9\u3002"},
+
+             {MsgKey.ER_CDATA_SECTIONS_SPLIT,
+             "CDATA \u8282\u5305\u542B\u4E00\u4E2A\u6216\u591A\u4E2A\u7EC8\u6B62\u6807\u8BB0 ']]>'\u3002"},
+
+             {MsgKey.ER_WARNING_WF_NOT_CHECKED,
+                 "\u65E0\u6CD5\u521B\u5EFA\u683C\u5F0F\u5408\u89C4\u6027\u68C0\u67E5\u5668\u7684\u5B9E\u4F8B\u3002\u683C\u5F0F\u5408\u89C4\u6027\u53C2\u6570\u5DF2\u8BBE\u7F6E\u4E3A\u201C\u771F\u201D, \u4F46\u65E0\u6CD5\u6267\u884C\u683C\u5F0F\u5408\u89C4\u6027\u68C0\u67E5\u3002"
+             },
+
+             {MsgKey.ER_WF_INVALID_CHARACTER,
+                 "\u8282\u70B9 ''{0}'' \u5305\u542B\u65E0\u6548\u7684 XML \u5B57\u7B26\u3002"
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
+                 "\u5728\u6CE8\u91CA\u4E2D\u627E\u5230\u65E0\u6548\u7684 XML \u5B57\u7B26 (Unicode: 0x{0})\u3002"
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
+                 "\u5728\u5904\u7406\u6307\u4EE4\u6570\u636E\u4E2D\u627E\u5230\u65E0\u6548\u7684 XML \u5B57\u7B26 (Unicode: 0x{0})\u3002"
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
+                 "\u5728 CDATA \u8282\u7684\u5185\u5BB9\u4E2D\u627E\u5230\u65E0\u6548\u7684 XML \u5B57\u7B26 (Unicode: 0x{0})\u3002"
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
+                 "\u5728\u8282\u70B9\u7684\u5B57\u7B26\u6570\u636E\u5185\u5BB9\u4E2D\u627E\u5230\u65E0\u6548\u7684 XML \u5B57\u7B26 (Unicode: 0x{0})\u3002"
+             },
+
+             { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
+                 "\u5728\u540D\u4E3A ''{1}'' \u7684{0}\u8282\u70B9\u4E2D\u627E\u5230\u65E0\u6548\u7684 XML \u5B57\u7B26\u3002"
+             },
+
+             { MsgKey.ER_WF_DASH_IN_COMMENT,
+                 "\u6CE8\u91CA\u4E2D\u4E0D\u5141\u8BB8\u51FA\u73B0\u5B57\u7B26\u4E32 \"--\"\u3002"
+             },
+
+             {MsgKey.ER_WF_LT_IN_ATTVAL,
+                 "\u4E0E\u5143\u7D20\u7C7B\u578B \"{0}\" \u76F8\u5173\u8054\u7684 \"{1}\" \u5C5E\u6027\u503C\u4E0D\u80FD\u5305\u542B ''<'' \u5B57\u7B26\u3002"
+             },
+
+             {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
+                 "\u4E0D\u5141\u8BB8\u4F7F\u7528\u672A\u89E3\u6790\u7684\u5B9E\u4F53\u5F15\u7528 \"&{0};\"\u3002"
+             },
+
+             {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
+                 "\u5C5E\u6027\u503C\u4E2D\u4E0D\u5141\u8BB8\u91C7\u7528\u5916\u90E8\u5B9E\u4F53\u5F15\u7528 \"&{0};\"\u3002"
+             },
+
+             {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
+                 "\u524D\u7F00 \"{0}\" \u65E0\u6CD5\u7ED1\u5B9A\u5230\u540D\u79F0\u7A7A\u95F4 \"{1}\"\u3002"
+             },
+
+             {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
+                 "\u5143\u7D20 \"{0}\" \u7684\u672C\u5730\u540D\u79F0\u4E3A\u7A7A\u503C\u3002"
+             },
+
+             {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
+                 "\u5C5E\u6027 \"{0}\" \u7684\u672C\u5730\u540D\u79F0\u4E3A\u7A7A\u503C\u3002"
+             },
+
+             { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
+                 "\u5B9E\u4F53\u8282\u70B9 \"{0}\" \u7684\u66FF\u6362\u6587\u672C\u5305\u542B\u5E26\u6709\u672A\u7ED1\u5B9A\u524D\u7F00 \"{2}\" \u7684\u5143\u7D20\u8282\u70B9 \"{1}\"\u3002"
+             },
+
+             { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
+                 "\u5B9E\u4F53\u8282\u70B9 \"{0}\" \u7684\u66FF\u6362\u6587\u672C\u5305\u542B\u5E26\u6709\u672A\u7ED1\u5B9A\u524D\u7F00 \"{2}\" \u7684\u5C5E\u6027\u8282\u70B9 \"{1}\"\u3002"
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "\u5199\u5165\u5185\u90E8\u5B50\u96C6\u65F6\u51FA\u73B0\u9519\u8BEF\u3002"
+             },
 
         };
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java
index 9d3e499..21fd777 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_zh_TW.java
@@ -20,7 +20,7 @@
  * limitations under the License.
  */
 /*
- * $Id: SerializerMessages_zh_TW.java /st_wptg_1.8.0.0.0jdk/2 2013/09/14 02:16:34 gmolloy Exp $
+ * $Id: SerializerMessages_zh_TW.java /st_wptg_1.9.0.0.0jdk/2 2016/04/11 20:46:43 gmolloy Exp $
  */
 package com.sun.org.apache.xml.internal.serializer.utils;
 
@@ -203,91 +203,95 @@
                 "\u8B66\u544A:  Java Runtime \u4E0D\u652F\u63F4\u7DE8\u78BC ''{0}''\u3002" },
 
              {MsgKey.ER_FEATURE_NOT_FOUND,
-             "\u7121\u6cd5\u8fa8\u8b58\u53c3\u6578 ''{0}''\u3002"},
+             "\u7121\u6CD5\u8FA8\u8B58\u53C3\u6578 ''{0}''\u3002"},
 
              {MsgKey.ER_FEATURE_NOT_SUPPORTED,
-             "\u53ef\u8fa8\u8b58 ''{0}'' \u53c3\u6578\uff0c\u4f46\u6240\u8981\u6c42\u7684\u503c\u7121\u6cd5\u8a2d\u5b9a\u3002"},
+             "\u53EF\u8FA8\u8B58\u53C3\u6578 ''{0}''\uFF0C\u4F46\u7121\u6CD5\u8A2D\u5B9A\u8981\u6C42\u7684\u503C\u3002"},
 
              {MsgKey.ER_STRING_TOO_LONG,
-             "\u7d50\u679c\u5b57\u4e32\u904e\u9577\uff0c\u7121\u6cd5\u7f6e\u5165 DOMString: ''{0}'' \u4e2d\u3002"},
+             "\u7D50\u679C\u5B57\u4E32\u592A\u9577\uFF0C\u7121\u6CD5\u7D0D\u5165 DOMString: ''{0}''\u3002"},
 
              {MsgKey.ER_TYPE_MISMATCH_ERR,
-             "\u9019\u500b\u53c3\u6578\u540d\u7a31\u7684\u503c\u985e\u578b\u8207\u671f\u671b\u503c\u985e\u578b\u4e0d\u76f8\u5bb9\u3002"},
+             "\u6B64\u53C3\u6578\u540D\u7A31\u7684\u503C\u985E\u578B\u8207\u9810\u671F\u7684\u503C\u985E\u578B\u4E0D\u76F8\u5BB9\u3002"},
 
              {MsgKey.ER_NO_OUTPUT_SPECIFIED,
-             "\u8cc7\u6599\u8981\u5beb\u5165\u7684\u8f38\u51fa\u76ee\u7684\u5730\u70ba\u7a7a\u503c\u3002"},
+             "\u4F9B\u5BEB\u5165\u8CC7\u6599\u7684\u8F38\u51FA\u76EE\u7684\u5730\u70BA\u7A7A\u503C\u3002"},
 
              {MsgKey.ER_UNSUPPORTED_ENCODING,
-             "\u767c\u73fe\u4e0d\u652f\u63f4\u7684\u7de8\u78bc\u3002"},
+             "\u767C\u73FE\u4E0D\u652F\u63F4\u7684\u7DE8\u78BC\u3002"},
 
              {MsgKey.ER_UNABLE_TO_SERIALIZE_NODE,
-             "\u7bc0\u9ede\u7121\u6cd5\u5e8f\u5217\u5316\u3002"},
+             "\u7121\u6CD5\u5E8F\u5217\u5316\u6B64\u7BC0\u9EDE\u3002"},
 
              {MsgKey.ER_CDATA_SECTIONS_SPLIT,
-             "CDATA \u5340\u6bb5\u5305\u542b\u4e00\u6216\u591a\u500b\u7d42\u6b62\u6a19\u8a18 ']]>'\u3002"},
+             "CDATA \u6BB5\u843D\u5305\u542B\u4E00\u6216\u591A\u500B\u7D42\u6B62\u6A19\u8A18 ']]>'\u3002"},
 
              {MsgKey.ER_WARNING_WF_NOT_CHECKED,
-                 "\u7121\u6cd5\u5efa\u7acb\u300c\u5f62\u5f0f\u5b8c\u6574\u300d\u6aa2\u67e5\u7a0b\u5f0f\u7684\u5be6\u4f8b\u3002Well-formed \u53c3\u6578\u96d6\u8a2d\u70ba true\uff0c\u4f46\u7121\u6cd5\u57f7\u884c\u5f62\u5f0f\u5b8c\u6574\u6aa2\u67e5\u3002"
+                 "\u7121\u6CD5\u5EFA\u7ACB Well-Formedness \u6AA2\u67E5\u7A0B\u5F0F\u57F7\u884C\u8655\u7406\u3002well-formed \u53C3\u6578\u8A2D\u70BA true\uFF0C\u4F46\u7121\u6CD5\u57F7\u884C well-formedness \u6AA2\u67E5\u3002"
              },
 
              {MsgKey.ER_WF_INVALID_CHARACTER,
-                 "\u7bc0\u9ede ''{0}'' \u5305\u542b\u7121\u6548\u7684 XML \u5b57\u5143\u3002"
+                 "\u7BC0\u9EDE ''{0}'' \u5305\u542B\u7121\u6548\u7684 XML \u5B57\u5143\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_COMMENT,
-                 "\u5728\u8a3b\u89e3\u4e2d\u767c\u73fe\u7121\u6548\u7684 XML \u5b57\u5143 (Unicode: 0x{0})\u3002"
+                 "\u5728\u8A3B\u89E3\u4E2D\u627E\u5230\u7121\u6548\u7684 XML \u5B57\u5143 (Unicode: 0x{0})\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_PI,
-                 "\u5728\u8655\u7406\u7a0b\u5e8f instructiondata \u4e2d\u767c\u73fe\u7121\u6548\u7684 XML \u5b57\u5143 (Unicode: 0x{0})\u3002"
+                 "\u5728\u8655\u7406\u7684\u6307\u793A\u8CC7\u6599\u4E2D\u767C\u73FE\u7121\u6548\u7684 XML \u5B57\u5143 (Unicode: 0x{0})\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_CDATA,
-                 "\u5728 CDATASection \u7684\u5167\u5bb9\u4e2d\u767c\u73fe\u7121\u6548\u7684 XML \u5b57\u5143 (Unicode: 0x{0})\u3002"
+                 "\u5728 CDATASection \u7684\u5167\u5BB9\u4E2D\u767C\u73FE\u7121\u6548\u7684 XML \u5B57\u5143 (Unicode: 0x{0})\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_TEXT,
-                 "\u5728\u7bc0\u9ede\u7684\u5b57\u5143\u8cc7\u6599\u5167\u5bb9\u4e2d\u767c\u73fe\u7121\u6548\u7684 XML \u5b57\u5143 (Unicode: 0x{0})\u3002"
+                 "\u5728\u7BC0\u9EDE\u7684\u5B57\u5143\u8CC7\u6599\u5167\u5BB9\u4E2D\u767C\u73FE\u7121\u6548\u7684 XML \u5B57\u5143 (Unicode: 0x{0})\u3002"
              },
 
              { MsgKey.ER_WF_INVALID_CHARACTER_IN_NODE_NAME,
-                 "\u5728\u540d\u70ba ''{1}'' \u7684 ''{0}'' \u4e2d\u767c\u73fe\u7121\u6548\u7684 XML \u5b57\u5143\u3002"
+                 "\u5728\u540D\u7A31\u70BA ''{1}'' \u7684 {0} \u7BC0\u9EDE\u4E2D\u767C\u73FE\u7121\u6548\u7684 XML \u5B57\u5143\u3002"
              },
 
              { MsgKey.ER_WF_DASH_IN_COMMENT,
-                 "\u8a3b\u89e3\u4e2d\u4e0d\u5141\u8a31\u4f7f\u7528\u5b57\u4e32 \"--\"\u3002"
+                 "\u8A3B\u89E3\u4E0D\u5141\u8A31\u5B57\u4E32 \"--\"\u3002"
              },
 
              {MsgKey.ER_WF_LT_IN_ATTVAL,
-                 "\u8207\u5143\u7d20\u985e\u578b \"{0}\" \u76f8\u95dc\u806f\u7684\u5c6c\u6027 \"{1}\" \u503c\u4e0d\u53ef\u5305\u542b ''<'' \u5b57\u5143\u3002"
+                 "\u95DC\u806F\u5143\u7D20\u985E\u578B \"{0}\" \u4E4B\u5C6C\u6027 \"{1}\" \u7684\u503C\u4E0D\u53EF\u5305\u542B ''<'' \u5B57\u5143\u3002"
              },
 
              {MsgKey.ER_WF_REF_TO_UNPARSED_ENT,
-                 "\u4e0d\u5141\u8a31\u4f7f\u7528\u672a\u5256\u6790\u7684\u5be6\u9ad4\u53c3\u7167 \"&{0};\"\u3002"
+                 "\u4E0D\u5141\u8A31\u672A\u5256\u6790\u7684\u5BE6\u9AD4\u53C3\u7167 \"&{0};\"\u3002"
              },
 
              {MsgKey.ER_WF_REF_TO_EXTERNAL_ENT,
-                 "\u5c6c\u6027\u503c\u4e2d\u4e0d\u5141\u8a31\u4f7f\u7528\u5916\u90e8\u5be6\u9ad4\u53c3\u7167 \"&{0};\"\u3002"
+                 "\u5C6C\u6027\u503C\u4E0D\u5141\u8A31\u53C3\u7167\u5916\u90E8\u5BE6\u9AD4 \"&{0};\"\u3002"
              },
 
              {MsgKey.ER_NS_PREFIX_CANNOT_BE_BOUND,
-                 "\u5b57\u9996 \"{0}\" \u7121\u6cd5\u9023\u7d50\u5230\u540d\u7a31\u7a7a\u9593 \"{1}\"\u3002"
+                 "\u7121\u6CD5\u5C07\u524D\u7F6E\u78BC \"{0}\" \u9023\u7D50\u81F3\u547D\u540D\u7A7A\u9593 \"{1}\"\u3002"
              },
 
              {MsgKey.ER_NULL_LOCAL_ELEMENT_NAME,
-                 "\u5143\u7d20 \"{0}\" \u7684\u672c\u7aef\u540d\u7a31\u662f\u7a7a\u503c\u3002"
+                 "\u5143\u7D20 \"{0}\" \u7684\u5340\u57DF\u540D\u7A31\u70BA\u7A7A\u503C\u3002"
              },
 
              {MsgKey.ER_NULL_LOCAL_ATTR_NAME,
-                 "\u5c6c\u6027 \"{0}\" \u7684\u672c\u7aef\u540d\u7a31\u662f\u7a7a\u503c\u3002"
+                 "\u5C6C\u6027 \"{0}\" \u7684\u5340\u57DF\u540D\u7A31\u70BA\u7A7A\u503C\u3002"
              },
 
              { MsgKey.ER_ELEM_UNBOUND_PREFIX_IN_ENTREF,
-                 "\u5be6\u9ad4\u7bc0\u9ede \"{0}\" \u7684\u53d6\u4ee3\u6587\u5b57\u5305\u542b\u9644\u6709\u5df2\u5207\u65b7\u9023\u7d50\u5b57\u9996 \"{2}\" \u7684\u5143\u7d20\u7bc0\u9ede \"{1}\"\u3002"
+                 "\u5BE6\u9AD4\u7BC0\u9EDE \"{0}\" \u7684\u53D6\u4EE3\u6587\u5B57\u5305\u542B\u5177\u6709\u672A\u9023\u7D50\u524D\u7F6E\u78BC \"{2}\" \u7684\u5143\u7D20\u7BC0\u9EDE \"{1}\"\u3002"
              },
 
              { MsgKey.ER_ATTR_UNBOUND_PREFIX_IN_ENTREF,
-                 "\u5be6\u9ad4\u7bc0\u9ede \"{0}\" \u7684\u53d6\u4ee3\u6587\u5b57\u5305\u542b\u9644\u6709\u5df2\u5207\u65b7\u9023\u7d50\u5b57\u9996 \"{2}\" \u7684\u5c6c\u6027\u7bc0\u9ede \"{1}\"\u3002"
+                 "\u5BE6\u9AD4\u7BC0\u9EDE \"{0}\" \u7684\u53D6\u4EE3\u6587\u5B57\u5305\u542B\u5177\u6709\u672A\u9023\u7D50\u524D\u7F6E\u78BC \"{2}\" \u7684\u5C6C\u6027\u7BC0\u9EDE \"{1}\"\u3002"
+             },
+
+             { MsgKey.ER_WRITING_INTERNAL_SUBSET,
+                 "\u5BEB\u5165\u5167\u90E8\u5B50\u96C6\u6642\u767C\u751F\u932F\u8AA4\u3002"
              },
 
         };
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java
index 2b1389a..9092f94 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java
@@ -3,7 +3,7 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
+ * Copyright 1999-2005 The Apache Software Foundation.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XPATHErrorResources_de.java,v 1.2.4.1 2005/09/15 00:39:22 jeffsuttor Exp $
+ * $Id: XPATHErrorResources_de.java /st_wptg_1.9.0.0.0jdk/2 2016/04/13 06:43:54 gmolloy Exp $
  */
 package com.sun.org.apache.xpath.internal.res;
 
@@ -486,7 +486,7 @@
      "Fehler aufgetreten."},
 
   { ER_ILLEGAL_VARIABLE_REFERENCE,
-      "VariableReference au\u00DFerhalb des Kontextes oder ohne Definition f\u00FCr Variable angegeben. Name = {0}"},
+      "VariableReference au\u00DFerhalb des Kontexts oder ohne Definition f\u00FCr Variable angegeben. Name = {0}"},
 
   { ER_AXES_NOT_ALLOWED,
       "Nur \"child::\"- und \"attribute::\"-Achsen sind in Vergleichsmustern zul\u00E4ssig. Betreffende Achsen = {0}"},
@@ -625,10 +625,10 @@
        "NodeSet kann nicht zu einem vorherigen Knoten iterieren."},
 
   { ER_NODESETDTM_CANNOT_INDEX,
-       "NodeSetDTM kann keine Indizierungs- oder Z\u00E4hlfunktionen ausf\u00FChren."},
+       "NodeSetDTM kann keine Indexierungs- oder Z\u00E4hlfunktionen ausf\u00FChren."},
 
   { ER_NODESET_CANNOT_INDEX,
-       "NodeSet kann keine Indizierungs- oder Z\u00E4hlfunktionen ausf\u00FChren."},
+       "NodeSet kann keine Indexierungs- oder Z\u00E4hlfunktionen ausf\u00FChren."},
 
   { ER_CANNOT_CALL_SETSHOULDCACHENODE,
        "setShouldCacheNodes kann nicht aufgerufen werden, nachdem nextNode aufgerufen wurde."},
@@ -858,7 +858,7 @@
       "Option \"-E\" nicht unterst\u00FCtzt f\u00FCr DTM-Parser"},
 
   { WG_ILLEGAL_VARIABLE_REFERENCE,
-      "VariableReference au\u00DFerhalb des Kontextes oder ohne Definition f\u00FCr Variable angegeben. Name = {0}"},
+      "VariableReference au\u00DFerhalb des Kontexts oder ohne Definition f\u00FCr Variable angegeben. Name = {0}"},
 
   { WG_UNSUPPORTED_ENCODING,
      "Nicht unterst\u00FCtzte Codierung: {0}"},
@@ -881,7 +881,7 @@
   { "optionIN", "   [-in inputXMLURL]"},
   { "optionSelect", "   [-select xpath expression]"},
   { "optionMatch", "   [-match match pattern (f\u00FCr Vergleichsdiagnose)]"},
-  { "optionAnyExpr", "Oder nur ein XPath-Ausdruck f\u00FChrt einen Diagnose-Dump aus"},
+  { "optionAnyExpr", "Oder nur ein XPath-Ausdruck f\u00FChrt einen Diagnosedump aus"},
   { "noParsermsg1", "XSL-Prozess war nicht erfolgreich."},
   { "noParsermsg2", "** Parser konnte nicht gefunden werden **"},
   { "noParsermsg3", "Pr\u00FCfen Sie den Classpath."},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java
index 3526941..fc6572d 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java
@@ -3,7 +3,7 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
+ * Copyright 1999-2005 The Apache Software Foundation.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XPATHErrorResources_fr.java,v 1.2.4.1 2005/09/15 00:39:21 jeffsuttor Exp $
+ * $Id: XPATHErrorResources_fr.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 05:13:35 gmolloy Exp $
  */
 package com.sun.org.apache.xpath.internal.res;
 
@@ -459,7 +459,7 @@
       "Caract\u00E8re ',' trouv\u00E9 sans argument le suivant."},
 
   { ER_PREDICATE_ILLEGAL_SYNTAX,
-      "Syntaxe '..[predicate]' ou '.[predicate]' non admise. Utilisez ''self::node()[predicate]'' \u00E0 la place."},
+      "Syntaxe '..[predicate]' ou '.[predicate]' non admise. Utilisez 'self::node()[predicate]' \u00E0 la place."},
 
   { ER_ILLEGAL_AXIS_NAME,
      "nom d''axe non admis : {0}"},
@@ -643,7 +643,7 @@
   // The message indicates that such an expression was expected following the
   // characters '/' or '//', but was not found.
   { ER_EXPECTED_REL_LOC_PATH,
-      "Un chemin d'acc\u00E8s relatif \u00E9tait attendu apr\u00E8s le jeton ''/'' ou ''//''."},
+      "Un chemin d'acc\u00E8s relatif \u00E9tait attendu apr\u00E8s le jeton '/' ou '//'."},
 
   // Note to translators:  A location path is a form of XPath expression.
   // The message indicates that syntactically such an expression was expected,but
@@ -661,7 +661,7 @@
   // The message indicates that syntactically such an expression was expected
   // following the specified characters.
   { ER_EXPECTED_LOC_STEP,
-       "Une \u00E9tape d'emplacement \u00E9tait attendue apr\u00E8s le jeton ''/'' ou ''//''."},
+       "Une \u00E9tape d'emplacement \u00E9tait attendue apr\u00E8s le jeton '/' ou '//'."},
 
   // Note to translators:  A node test is part of an XPath expression that is
   // used to test for particular kinds of nodes.  In this case, a node test that
@@ -674,7 +674,7 @@
   // The message indicates that syntactically such an expression was expected,
   // but the specified character was found in the expression instead.
   { ER_EXPECTED_STEP_PATTERN,
-       "Un mod\u00E8le d'\u00E9tape \u00E9tait attendu, mais ''/'' a \u00E9t\u00E9 d\u00E9tect\u00E9."},
+       "Un mod\u00E8le d'\u00E9tape \u00E9tait attendu, mais '/' a \u00E9t\u00E9 d\u00E9tect\u00E9."},
 
   // Note to translators: A relative path pattern is part of an XPath expression.
   // The message indicates that syntactically such an expression was expected,
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java
index 0000b18..62f6e9a 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java
@@ -3,7 +3,7 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
+ * Copyright 1999-2005 The Apache Software Foundation.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XPATHErrorResources_it.java,v 1.2.4.1 2005/09/15 00:39:21 jeffsuttor Exp $
+ * $Id: XPATHErrorResources_it.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 03:53:19 gmolloy Exp $
  */
 package com.sun.org.apache.xpath.internal.res;
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java
index 6e1f37e..b7fac89 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java
@@ -3,7 +3,7 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
+ * Copyright 1999-2005 The Apache Software Foundation.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XPATHErrorResources_ko.java,v 1.2.4.1 2005/09/15 00:39:20 jeffsuttor Exp $
+ * $Id: XPATHErrorResources_ko.java /st_wptg_1.9.0.0.0jdk/2 2016/04/12 02:39:51 gmolloy Exp $
  */
 package com.sun.org.apache.xpath.internal.res;
 
@@ -870,7 +870,7 @@
   { "help_language", "ko"},
   { "language", "ko"},
   { "BAD_CODE", "createMessage\uC5D0 \uB300\uD55C \uB9E4\uAC1C\uBCC0\uC218\uAC00 \uBC94\uC704\uB97C \uBC97\uC5B4\uB0AC\uC2B5\uB2C8\uB2E4."},
-  { "FORMAT_FAILED", "messageFormat \uD638\uCD9C \uC911 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
+  { "FORMAT_FAILED", "messageFormat \uD638\uCD9C \uC911 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
   { "version", ">>>>>>> Xalan \uBC84\uC804 "},
   { "version2", "<<<<<<<"},
   { "yes", "\uC608"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java
index a02ae33..7f2b78f 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XPATHErrorResources_sv.java /st_wptg_1.8.0.0.0jdk/2 2013/09/16 06:50:58 gmolloy Exp $
+ * $Id: XPATHErrorResources_sv.java /st_wptg_1.9.0.0.0jdk/2 2016/04/14 01:57:20 gmolloy Exp $
  */
 package com.sun.org.apache.xpath.internal.res;
 
@@ -483,7 +483,7 @@
       "FEL! Hittade inte ENDOP efter OP_LOCATIONPATH"},
 
   { ER_ERROR_OCCURED,
-     "Fel intr\u00E4ffade!"},
+     "Ett fel har intr\u00E4ffat!"},
 
   { ER_ILLEGAL_VARIABLE_REFERENCE,
       "VariableReference angiven f\u00F6r variabel som \u00E4r utanf\u00F6r kontext eller som saknar definition! Namn = {0}"},
@@ -828,7 +828,7 @@
   // Warnings...
 
   { WG_LOCALE_NAME_NOT_HANDLED,
-      "spr\u00E5knamnet i funktionen format-number har \u00E4nnu inte hanterats!"},
+      "spr\u00E5kkonventionsnamnet i funktionen format-number har \u00E4nnu inte hanterats!"},
 
   { WG_PROPERTY_NOT_SUPPORTED,
       "XSL-egenskapen st\u00F6ds inte: {0}"},
@@ -874,8 +874,8 @@
   { "version", ">>>>>>> Xalan version "},
   { "version2", "<<<<<<<"},
   { "yes", "ja"},
-  { "line", "Rad #"},
-  { "column", "Kolumn #"},
+  { "line", "Rad nr"},
+  { "column", "Kolumn nr"},
   { "xsldone", "XSLProcessor: utf\u00F6rd"},
   { "xpath_option", "xpath-alternativ: "},
   { "optionIN", "   [-in inputXMLURL]"},
diff --git a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java
index 8fdd1e5..e4fd3ed 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java
@@ -3,7 +3,7 @@
  * DO NOT REMOVE OR ALTER!
  */
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
+ * Copyright 1999-2005 The Apache Software Foundation.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@
  * limitations under the License.
  */
 /*
- * $Id: XPATHErrorResources_zh_TW.java,v 1.2.4.1 2005/09/15 00:39:22 jeffsuttor Exp $
+ * $Id: XPATHErrorResources_zh_TW.java /st_wptg_1.9.0.0.0jdk/2 2016/04/11 20:46:43 gmolloy Exp $
  */
 package com.sun.org.apache.xpath.internal.res;
 
diff --git a/jaxp/src/java.xml/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java b/jaxp/src/java.xml/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java
index 6f09e0f..dc99ab4 100644
--- a/jaxp/src/java.xml/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java
+++ b/jaxp/src/java.xml/share/classes/com/sun/xml/internal/stream/XMLInputFactoryImpl.java
@@ -293,7 +293,7 @@
              else if(reader != null){
                  return new XMLInputSource(publicId, systemId,null, reader, null);
              }else{
-                 return new XMLInputSource(publicId, systemId, null);
+                 return new XMLInputSource(publicId, systemId, null, false);
              }
          }
 
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_de.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_de.properties
new file mode 100644
index 0000000..dc5e23e
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_de.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = Die zum Meldungsschl\u00FCssel geh\u00F6rige Fehlermeldung kann nicht gefunden werden.
+FormatFailed = Beim Formatieren der folgenden Meldung ist ein interner Fehler aufgetreten:\n
+
+#invalid catalog file
+InvalidCatalog = Das Dokumentelement eines Katalogs muss ein Katalog sein.
+InvalidEntryType = Der Eintragstyp "{0}" ist ung\u00FCltig.
+CircularReference = Zirkelbezug ist nicht zul\u00E4ssig: "{0}".
+
+#errors
+InvalidArgument = Das angegebene Argument "{0}" (unter Beachtung der Gro\u00DF-/Kleinschreibung) f\u00FCr "{1}" ist nicht g\u00FCltig.
+NullArgument = Das Argument "{0}" darf nicht null sein.
+InvalidPath = Der Pfad "{0}" ist ung\u00FCltig.
+ParserConf = Unerwarteter Fehler bei der Konfiguration eines SAX-Parsers.
+ParsingFailed = Die Katalogdatei konnte nicht geparst werden.
+NoCatalogFound = Kein Katalog angegeben.
+NoMatchFound = Keine \u00DCbereinstimmung f\u00FCr publicId "{0}" und systemId "{1}" gefunden.
+NoMatchURIFound = Keine \u00DCbereinstimmung f\u00FCr href "{0}" und base "{1}" gefunden.
+FailedCreatingURI = URI kann nicht mit href "{0}" und base "{1}" erstellt werden.
+OtherError = Unerwarteter Fehler.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_es.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_es.properties
new file mode 100644
index 0000000..fa36480
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_es.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = No se ha encontrado el mensaje de error que corresponde a la clave de mensaje.
+FormatFailed = Se ha producido un error interno al formatear el siguiente mensaje:\n
+
+#invalid catalog file
+InvalidCatalog = El elemento de documento de un cat\u00E1logo debe ser un cat\u00E1logo.
+InvalidEntryType = El tipo de entrada ''{0}'' no es v\u00E1lido.
+CircularReference = No est\u00E1 permitida la referencia circular: ''{0}''.
+
+#errors
+InvalidArgument = El argumento especificado ''{0}'' (sensible a may\u00FAsculas y min\u00FAsculas) para ''{1}'' no es v\u00E1lido.
+NullArgument = El argumento ''{0}'' no puede ser nulo.
+InvalidPath = La ruta ''{0}'' no es v\u00E1lida.
+ParserConf = Error inesperado al configurar el analizador SAX.
+ParsingFailed = Fallo al analizar el archivo de cat\u00E1logo.
+NoCatalogFound = No se ha especificado ning\u00FAn cat\u00E1logo.
+NoMatchFound = No se ha encontrado ninguna coincidencia para publicId ''{0}'' y systemId ''{1}''.
+NoMatchURIFound = No se ha encontrado ninguna coincidencia para href ''{0}'' y base ''{1}''.
+FailedCreatingURI = No se puede crear el URI con href ''{0}'' y base ''{1}''.
+OtherError = Error inesperado.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_fr.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_fr.properties
new file mode 100644
index 0000000..3cddf0d
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_fr.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = Le message d'erreur correspondant \u00E0 la cl\u00E9 de message est introuvable.
+FormatFailed = Une erreur interne est survenue lors du formatage du message suivant :\n
+
+#invalid catalog file
+InvalidCatalog = L'\u00E9l\u00E9ment de document d'un catalogue doit \u00EAtre un catalogue.
+InvalidEntryType = Le type d''entr\u00E9e ''{0}'' n''est pas valide.
+CircularReference = La r\u00E9f\u00E9rence circulaire n''est pas autoris\u00E9e : ''{0}''.
+
+#errors
+InvalidArgument = L''argument indiqu\u00E9 ''{0}'' (respect maj./min.) pour ''{1}'' n''est pas valide.
+NullArgument = L''argument ''{0}'' ne peut pas \u00EAtre NULL.
+InvalidPath = Le chemin ''{0}'' n''est pas valide.
+ParserConf = Erreur inattendue lors de la configuration d'un analyseur SAX.
+ParsingFailed = Echec de l'analyse du fichier de catalogue.
+NoCatalogFound = Aucun catalogue n'est indiqu\u00E9.
+NoMatchFound = Aucune correspondance trouv\u00E9e pour publicId ''{0}'' et systemId ''{1}''.
+NoMatchURIFound = Aucune correspondance trouv\u00E9e pour l''\u00E9l\u00E9ment href ''{0}'' et la base ''{1}''.
+FailedCreatingURI = Impossible de construire l''URI \u00E0 l''aide de l''\u00E9l\u00E9ment href ''{0}'' et de la base ''{1}''.
+OtherError = Erreur inattendue.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_it.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_it.properties
new file mode 100644
index 0000000..05bb803
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_it.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = Impossibile trovare il messaggio di errore corrispondente alla chiave di messaggio.
+FormatFailed = Si \u00E8 verificato un errore interno durante la formattazione del seguente messaggio:\n
+
+#invalid catalog file
+InvalidCatalog = L'elemento documento di un catalogo deve essere un catalogo.
+InvalidEntryType = Il tipo di voce ''{0}'' non \u00E8 valido.
+CircularReference = La dipendenza circolare non \u00E8 consentita: ''{0}''.
+
+#errors
+InvalidArgument = L''argomento specificato ''{0}'' (con distinzione tra maiuscole e minuscole) per ''{1}'' non \u00E8 valido.
+NullArgument = L''argomento ''{0}'' non pu\u00F2 essere nullo.
+InvalidPath = Il percorso ''{0}'' non \u00E8 valido.
+ParserConf = Errore imprevisto durante la configurazione di un parser SAX.
+ParsingFailed = Analisi del file catalogo non riuscita.
+NoCatalogFound = Nessun catalogo specificato.
+NoMatchFound = Nessuna corrispondenza trovata per publicId ''{0}'' e systemId ''{1}''.
+NoMatchURIFound = Nessuna corrispondenza trovata per href ''{0}'' e base ''{1}''.
+FailedCreatingURI = Impossibile creare l''URI utilizzando href ''{0}'' e base ''{1}''.
+OtherError = Errore imprevisto.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ja.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ja.properties
new file mode 100644
index 0000000..d58bc22
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ja.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = \u30E1\u30C3\u30BB\u30FC\u30B8\u30FB\u30AD\u30FC\u306B\u5BFE\u5FDC\u3059\u308B\u30A8\u30E9\u30FC\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+FormatFailed = \u6B21\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u306E\u66F8\u5F0F\u8A2D\u5B9A\u4E2D\u306B\u5185\u90E8\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F:\n
+
+#invalid catalog file
+InvalidCatalog = \u30AB\u30BF\u30ED\u30B0\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u8981\u7D20\u306Fcatalog\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+InvalidEntryType = \u30A8\u30F3\u30C8\u30EA\u30FB\u30BF\u30A4\u30D7''{0}''\u306F\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+CircularReference = \u5FAA\u74B0\u53C2\u7167\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093: ''{0}''\u3002
+
+#errors
+InvalidArgument = ''{1}''\u306B\u6307\u5B9A\u3055\u308C\u305F\u5F15\u6570''{0}'' (\u5927/\u5C0F\u6587\u5B57\u3092\u533A\u5225)\u306F\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+NullArgument = \u5F15\u6570''{0}''\u306Fnull\u306B\u3067\u304D\u307E\u305B\u3093\u3002
+InvalidPath = \u30D1\u30B9''{0}''\u306F\u7121\u52B9\u3067\u3059\u3002
+ParserConf = SAX\u30D1\u30FC\u30B5\u30FC\u306E\u69CB\u6210\u4E2D\u306B\u4E88\u671F\u3057\u306A\u3044\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002
+ParsingFailed = \u30AB\u30BF\u30ED\u30B0\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u89E3\u6790\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002
+NoCatalogFound = \u30AB\u30BF\u30ED\u30B0\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+NoMatchFound = publicId ''{0}''\u304A\u3088\u3073systemId ''{1}''\u306B\u4E00\u81F4\u3059\u308B\u3082\u306E\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+NoMatchURIFound = href ''{0}''\u304A\u3088\u3073base ''{1}''\u306B\u4E00\u81F4\u3059\u308B\u3082\u306E\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+FailedCreatingURI = href ''{0}''\u304A\u3088\u3073base ''{1}''\u3092\u4F7F\u7528\u3057\u3066URI\u3092\u751F\u6210\u3067\u304D\u307E\u305B\u3093\u3002
+OtherError = \u4E88\u671F\u3057\u306A\u3044\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ko.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ko.properties
new file mode 100644
index 0000000..0333413
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_ko.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = \uBA54\uC2DC\uC9C0 \uD0A4\uC5D0 \uD574\uB2F9\uD558\uB294 \uC624\uB958 \uBA54\uC2DC\uC9C0\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+FormatFailed = \uB2E4\uC74C \uBA54\uC2DC\uC9C0\uC758 \uD615\uC2DD\uC744 \uC9C0\uC815\uD558\uB294 \uC911 \uB0B4\uBD80 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.\n
+
+#invalid catalog file
+InvalidCatalog = \uCE74\uD0C8\uB85C\uADF8\uC758 \uBB38\uC11C \uC694\uC18C\uB294 \uCE74\uD0C8\uB85C\uADF8\uC5EC\uC57C \uD569\uB2C8\uB2E4.
+InvalidEntryType = \uD56D\uBAA9 \uC720\uD615 ''{0}''\uC774(\uAC00) \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
+CircularReference = \uC21C\uD658 \uCC38\uC870\uAC00 \uD5C8\uC6A9\uB418\uC9C0 \uC54A\uC74C: ''{0}''.
+
+#errors
+InvalidArgument = ''{1}''\uC5D0 \uB300\uD574 \uC9C0\uC815\uB41C \uC778\uC218 ''{0}''(\uB300\uC18C\uBB38\uC790 \uAD6C\uBD84)\uC774(\uAC00) \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
+NullArgument = ''{0}'' \uC778\uC218\uB294 \uB110\uC77C \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+InvalidPath = ''{0}'' \uACBD\uB85C\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
+ParserConf = SAX \uAD6C\uBB38 \uBD84\uC11D\uAE30\uB97C \uAD6C\uC131\uD558\uB294 \uC911 \uC608\uC0C1\uCE58 \uC54A\uC740 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
+ParsingFailed = \uCE74\uD0C8\uB85C\uADF8 \uD30C\uC77C\uC758 \uAD6C\uBB38 \uBD84\uC11D\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
+NoCatalogFound = \uC9C0\uC815\uB41C \uCE74\uD0C8\uB85C\uADF8\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.
+NoMatchFound = publicId ''{0}'', systemId ''{1}''\uC5D0 \uB300\uD55C \uC77C\uCE58 \uD56D\uBAA9\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+NoMatchURIFound = href ''{0}'', base ''{1}''\uC5D0 \uB300\uD55C \uC77C\uCE58 \uD56D\uBAA9\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+FailedCreatingURI = href ''{0}'', base ''{1}''\uC744(\uB97C) \uC0AC\uC6A9\uD558\uC5EC URI\uB97C \uAD6C\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+OtherError = \uC608\uC0C1\uCE58 \uC54A\uC740 \uC624\uB958\uC785\uB2C8\uB2E4.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_pt_BR.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_pt_BR.properties
new file mode 100644
index 0000000..18434b91
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_pt_BR.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = N\u00E3o foi poss\u00EDvel encontrar a mensagem de erro correspondente \u00E0 chave da mensagem.
+FormatFailed = Ocorreu um erro interno ao formatar a mensagem a seguir:\n
+
+#invalid catalog file
+InvalidCatalog = O elemento de documento de um cat\u00E1logo deve ser o cat\u00E1logo.
+InvalidEntryType = O tipo de entrada "{0}" n\u00E3o \u00E9 v\u00E1lido.
+CircularReference = A refer\u00EAncia circular n\u00E3o \u00E9 permitida: ''{0}''.
+
+#errors
+InvalidArgument = O argumento especificado ''{0}'' (distingue mai\u00FAsculas de min\u00FAsculas) para ''{1}'' n\u00E3o \u00E9 v\u00E1lido.
+NullArgument = O argumento ''{0}'' n\u00E3o pode ser nulo.
+InvalidPath = O caminho ''{0}'' \u00E9 inv\u00E1lido.
+ParserConf = Erro inesperado ao configurar um parser SAX.
+ParsingFailed = Falha ao fazer parsing do arquivo de cat\u00E1logo.
+NoCatalogFound = Nenhum arquivo do Cat\u00E1logo foi especificado.
+NoMatchFound = Nenhuma correspond\u00EAncia foi encontrada para publicId ''{0}'' e systemId ''{1}''.
+NoMatchURIFound = Nenhuma correspond\u00EAncia foi encontrada para href ''{0}'' e base ''{1}''.
+FailedCreatingURI = N\u00E3o \u00E9 poss\u00EDvel construir o URI usando href ''{0}'' e base ''{1}''.
+OtherError = Erro inesperado.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_sv.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_sv.properties
new file mode 100644
index 0000000..6f52f5e
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_sv.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = Hittar inte felmeddelandet som motsvarar meddelandenyckeln.
+FormatFailed = Ett internt fel intr\u00E4ffade vid formatering av f\u00F6ljande meddelande:\n
+
+#invalid catalog file
+InvalidCatalog = Dokumentelementet f\u00F6r en katalog m\u00E5ste vara "catalog".
+InvalidEntryType = Posttypen ''{0}'' \u00E4r inte giltig.
+CircularReference = Cirkul\u00E4r referens \u00E4r inte till\u00E5ten: ''{0}''.
+
+#errors
+InvalidArgument = Det angivna argumentet, ''{0}'' (skiftl\u00E4gesk\u00E4nsligt), f\u00F6r ''{1}'' \u00E4r inte giltigt.
+NullArgument = Argumentet ''{0}'' kan inte vara null.
+InvalidPath = S\u00F6kv\u00E4gen ''{0}'' \u00E4r ogiltig.
+ParserConf = Ov\u00E4ntat fel vid konfiguration av en SAX-parser.
+ParsingFailed = Kunde inte tolka katalogfilen.
+NoCatalogFound = Ingen katalog har angetts.
+NoMatchFound = Ingen matchning hittades f\u00F6r publicId = ''{0}'' och systemId = ''{1}''.
+NoMatchURIFound = Ingen matchning hittades f\u00F6r href = ''{0}'' och bas = ''{1}''.
+FailedCreatingURI = Kan inte skapa URI med href = ''{0}'' och bas = ''{1}''.
+OtherError = Ov\u00E4ntat fel.
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_CN.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_CN.properties
new file mode 100644
index 0000000..c914922
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_CN.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = \u627E\u4E0D\u5230\u4E0E\u6D88\u606F\u5173\u952E\u5B57\u5BF9\u5E94\u7684\u9519\u8BEF\u6D88\u606F\u3002
+FormatFailed = \u8BBE\u7F6E\u4EE5\u4E0B\u6D88\u606F\u7684\u683C\u5F0F\u65F6\u51FA\u73B0\u5185\u90E8\u9519\u8BEF:\n
+
+#invalid catalog file
+InvalidCatalog = \u76EE\u5F55\u7684\u6587\u6863\u5143\u7D20\u5FC5\u987B\u662F\u76EE\u5F55\u3002
+InvalidEntryType = \u6761\u76EE\u7C7B\u578B ''{0}'' \u65E0\u6548\u3002
+CircularReference = \u4E0D\u5141\u8BB8\u5FAA\u73AF\u5F15\u7528: ''{0}''\u3002
+
+#errors
+InvalidArgument = \u4E3A ''{1}'' \u6307\u5B9A\u7684\u53C2\u6570 ''{0}'' (\u533A\u5206\u5927\u5C0F\u5199) \u65E0\u6548\u3002
+NullArgument = \u53C2\u6570 ''{0}'' \u4E0D\u80FD\u4E3A\u7A7A\u503C\u3002
+InvalidPath = \u8DEF\u5F84 ''{0}'' \u65E0\u6548\u3002
+ParserConf = \u914D\u7F6E SAX \u89E3\u6790\u5668\u65F6\u51FA\u73B0\u610F\u5916\u9519\u8BEF\u3002
+ParsingFailed = \u65E0\u6CD5\u5BF9\u76EE\u5F55\u6587\u4EF6\u8FDB\u884C\u89E3\u6790\u3002
+NoCatalogFound = \u672A\u6307\u5B9A\u76EE\u5F55\u3002
+NoMatchFound = \u5BF9\u4E8E publicId ''{0}'' \u548C systemId ''{1}'', \u672A\u627E\u5230\u5339\u914D\u9879\u3002
+NoMatchURIFound = \u5BF9\u4E8E href ''{0}'' \u548C base ''{1}'', \u672A\u627E\u5230\u5339\u914D\u9879\u3002
+FailedCreatingURI = \u65E0\u6CD5\u4F7F\u7528 href ''{0}'' \u548C base ''{1}'' \u6784\u9020 URI\u3002
+OtherError = \u610F\u5916\u9519\u8BEF\u3002
diff --git a/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_TW.properties b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_TW.properties
new file mode 100644
index 0000000..49ea45d
--- /dev/null
+++ b/jaxp/src/java.xml/share/classes/javax/xml/catalog/CatalogMessages_zh_TW.properties
@@ -0,0 +1,43 @@
+# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# 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.
+
+# Messages for message reporting
+BadMessageKey = \u627E\u4E0D\u5230\u5C0D\u61C9\u8A0A\u606F\u7D22\u5F15\u9375\u7684\u932F\u8AA4\u8A0A\u606F\u3002
+FormatFailed = \u683C\u5F0F\u5316\u4E0B\u5217\u8A0A\u606F\u6642\u767C\u751F\u5167\u90E8\u932F\u8AA4:\n
+
+#invalid catalog file
+InvalidCatalog = \u76EE\u9304\u7684\u6587\u4EF6\u5143\u7D20\u5FC5\u9808\u662F\u76EE\u9304\u3002
+InvalidEntryType = \u9805\u76EE\u985E\u578B ''{0}'' \u7121\u6548\u3002
+CircularReference = \u4E0D\u5141\u8A31\u5FAA\u74B0\u53C3\u7167: ''{0}''\u3002
+
+#errors
+InvalidArgument = ''{1}'' \u7684\u6307\u5B9A\u5F15\u6578 ''{0}'' (\u6709\u5927\u5C0F\u5BEB\u4E4B\u5206) \u7121\u6548\u3002
+NullArgument = \u5F15\u6578''{0}'' \u4E0D\u53EF\u70BA\u7A7A\u503C\u3002
+InvalidPath = \u8DEF\u5F91 ''{0}'' \u7121\u6548\u3002
+ParserConf = \u8A2D\u5B9A SAX \u5256\u6790\u5668\u6642\u767C\u751F\u672A\u9810\u671F\u7684\u932F\u8AA4\u3002
+ParsingFailed = \u7121\u6CD5\u5256\u6790\u76EE\u9304\u6A94\u6848\u3002
+NoCatalogFound = \u672A\u6307\u5B9A\u4EFB\u4F55\u76EE\u9304\u3002
+NoMatchFound = \u627E\u4E0D\u5230\u76F8\u7B26\u7684 publicId ''{0}'' \u548C systemId ''{1}''\u3002
+NoMatchURIFound = \u627E\u4E0D\u5230\u76F8\u7B26\u7684 href ''{0}'' \u548C\u57FA\u790E ''{1}''\u3002
+FailedCreatingURI = \u7121\u6CD5\u4F7F\u7528 href ''{0}'' \u548C\u57FA\u790E ''{1}'' \u5EFA\u69CB URI\u3002
+OtherError = \u672A\u9810\u671F\u7684\u932F\u8AA4\u3002
diff --git a/jaxws/.hgtags b/jaxws/.hgtags
index fab2f26..2979f08 100644
--- a/jaxws/.hgtags
+++ b/jaxws/.hgtags
@@ -368,3 +368,4 @@
 ecd0d6a71c7ccf93584ba4dacdd4fa8455efd741 jdk-9+120
 fb771fa3a986ccfcb00d743b1956b98c380d1dd8 jdk-9+121
 342705d785ffd9e999991a3d4baae2eca58ea7c3 jdk-9+122
+c42decd28bbfa817347112ed6053b5fbd30517a2 jdk-9+123
diff --git a/jdk/.hgtags b/jdk/.hgtags
index f08c20f..b477a29 100644
--- a/jdk/.hgtags
+++ b/jdk/.hgtags
@@ -365,3 +365,4 @@
 b9a518bf72516954e57ac2f6e3ef21e13008f1cd jdk-9+120
 ee29aaab5889555ea56e4c0ed690aabb7613529d jdk-9+121
 981ae344923f09c46d8d1d5a3ed9fa71deafe0c6 jdk-9+122
+c40c8739bcdc88892ff58ebee3fd8a3f287be94d jdk-9+123
diff --git a/jdk/make/lib/Awt2dLibraries.gmk b/jdk/make/lib/Awt2dLibraries.gmk
index b4c6f5e..c8fd145 100644
--- a/jdk/make/lib/Awt2dLibraries.gmk
+++ b/jdk/make/lib/Awt2dLibraries.gmk
@@ -578,9 +578,7 @@
             $(X_CFLAGS) \
             $(LIBAWT_HEADLESS_CFLAGS), \
         DISABLED_WARNINGS_xlc := 1506-356, \
-        DISABLED_WARNINGS_gcc := maybe-uninitialized int-to-pointer-cast, \
-        DISABLED_WARNINGS_solstudio := E_DECLARATION_IN_CODE \
-            E_EMPTY_TRANSLATION_UNIT, \
+        DISABLED_WARNINGS_solstudio := E_EMPTY_TRANSLATION_UNIT, \
         MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libawt_headless/mapfile-vers, \
         LDFLAGS := $(LDFLAGS_JDKLIB) \
             $(call SET_SHARED_LIBRARY_ORIGIN), \
diff --git a/jdk/src/demo/share/jfc/Font2DTest/FontPanel.java b/jdk/src/demo/share/jfc/Font2DTest/FontPanel.java
index 01a956e..9d2b586 100644
--- a/jdk/src/demo/share/jfc/Font2DTest/FontPanel.java
+++ b/jdk/src/demo/share/jfc/Font2DTest/FontPanel.java
@@ -128,7 +128,6 @@
     /// General Graphics Variable
     private final JScrollBar verticalBar;
     private final FontCanvas fc;
-    private boolean updateBackBuffer = true;
     private boolean updateFontMetrics = true;
     private boolean updateFont = true;
     private boolean force16Cols = false;
@@ -178,7 +177,6 @@
         verticalBar.addAdjustmentListener( this );
         this.addComponentListener( new ComponentAdapter() {
             public void componentResized( ComponentEvent e ) {
-                updateBackBuffer = true;
                 updateFontMetrics = true;
             }
         });
@@ -199,7 +197,6 @@
 
     public void setTransformG2( int transform ) {
         g2Transform = transform;
-        updateBackBuffer = true;
         updateFontMetrics = true;
         fc.repaint();
     }
@@ -252,7 +249,6 @@
             AffineTransform at = getAffineTransform( fontTransform );
             testFont = testFont.deriveFont( at );
         }
-        updateBackBuffer = true;
         updateFontMetrics = true;
         fc.repaint();
         if ( fontModified ) {
@@ -266,14 +262,12 @@
         antiAliasType = ((AAValues)aa).getHint();
         fractionalMetricsType = ((FMValues)fm).getHint();
         lcdContrast = contrast;
-        updateBackBuffer = true;
         updateFontMetrics = true;
         fc.repaint();
     }
 
     public void setDrawMethod( int i ) {
         drawMethod = i;
-        updateBackBuffer = true;
         fc.repaint();
     }
 
@@ -292,7 +286,6 @@
             drawMethod = TL_DRAW;
         }
 
-        updateBackBuffer = true;
         updateFontMetrics = true;
         fc.repaint();
         updateFontInfo();
@@ -300,13 +293,11 @@
 
     public void setGridDisplay( boolean b ) {
         showGrid = b;
-        updateBackBuffer = true;
         fc.repaint();
     }
 
     public void setForce16Columns( boolean b ) {
         force16Cols = b;
-        updateBackBuffer = true;
         updateFontMetrics = true;
         fc.repaint();
     }
@@ -411,7 +402,6 @@
 
     /// When scrolled using the scroll bar, update the backbuffer
     public void adjustmentValueChanged( AdjustmentEvent e ) {
-        updateBackBuffer = true;
         fc.repaint();
     }
 
@@ -443,9 +433,6 @@
         /// Offset from the top left edge of the canvas where the draw will start
         private int canvasInset_X = 5, canvasInset_Y = 5;
 
-        /// Offscreen buffer of this canvas
-        private BufferedImage backBuffer = null;
-
         /// LineBreak'ed TextLayout vector
         private Vector lineBreakTLs = null;
 
@@ -509,7 +496,6 @@
         public boolean firstTime() { return firstTime; }
         public void refresh() {
             firstTime = false;
-            updateBackBuffer = true;
             repaint();
         }
 
@@ -895,19 +881,10 @@
 
         /// Draws text according to the parameters set by Font2DTest GUI
         private void drawText( Graphics g, int w, int h ) {
-            Graphics2D g2;
-
-            /// Create back buffer when not printing, and its Graphics2D
-            /// Then set drawing parameters for that Graphics2D object
-            if ( isPrinting )
-              g2 = (Graphics2D) g;
-            else  {
-                backBuffer = (BufferedImage) this.createImage( w, h );
-                g2 = backBuffer.createGraphics();
-                g2.setColor(Color.white);
-                g2.fillRect(0, 0, w, h);
-                g2.setColor(Color.black);
-            }
+            Graphics2D g2 = (Graphics2D) g;
+            g2.setColor(Color.white);
+            g2.fillRect(0, 0, w, h);
+            g2.setColor(Color.black);
 
             /// sets font, RenderingHints.
             setParams( g2 );
@@ -927,8 +904,6 @@
                 int charToDraw = drawStart;
                 if ( showGrid )
                   drawGrid( g2 );
-                if ( !isPrinting )
-                  g.drawImage( backBuffer, 0, 0, this );
 
                 for ( int i = 0; i < numCharDown && charToDraw <= drawEnd; i++ ) {
                   for ( int j = 0; j < numCharAcross && charToDraw <= drawEnd; j++, charToDraw++ ) {
@@ -938,19 +913,12 @@
                       modeSpecificDrawChar( g2, charToDraw,
                                             gridLocX + gridWidth / 2,
                                             gridLocY + maxAscent );
-                      //if ( !isPrinting ) {
-                      //    g.setClip( gridLocX, gridLocY, gridWidth + 1, gridHeight + 1 );
-                      //    g.drawImage( backBuffer, 0, 0, this );
-                            //}
 
                   }
                 }
             }
             else if ( textToUse == USER_TEXT ) {
                 g2.drawRect( 0, 0, w - 1, h - 1 );
-                if ( !isPrinting )
-                  g.drawImage( backBuffer, 0, 0, this );
-
                 for ( int i = drawStart; i <= drawEnd; i++ ) {
                     int lineStartX = canvasInset_Y;
                     int lineStartY = ( i - drawStart ) * gridHeight + maxAscent;
@@ -960,9 +928,6 @@
             else {
                 float xPos, yPos = (float) canvasInset_Y;
                 g2.drawRect( 0, 0, w - 1, h - 1 );
-                if ( !isPrinting )
-                  g.drawImage( backBuffer, 0, 0, this );
-
                 for ( int i = drawStart; i <= drawEnd; i++ ) {
                     TextLayout oneLine = (TextLayout) lineBreakTLs.elementAt( i );
                     xPos =
@@ -982,33 +947,26 @@
                     yPos += fmData[3] + fmData[5]; // descent + leading
                 }
             }
-                if ( !isPrinting )
-                g.drawImage( backBuffer, 0, 0, this );
             g2.dispose();
         }
 
         /// Component paintComponent function...
         /// Draws/Refreshes canvas according to flag(s) set by other functions
         public void paintComponent( Graphics g ) {
-            if ( updateBackBuffer ) {
+              super.paintComponent(g);
+
                 Dimension d = this.getSize();
                 isPrinting = false;
                 try {
                     drawText( g, d.width, d.height );
                 }
                 catch ( CannotDrawException e ) {
-                    f2dt.fireChangeStatus( ERRORS[ e.id ], true );
                     super.paintComponent(g);
+                    f2dt.fireChangeStatus( ERRORS[ e.id ], true );
                     return;
                 }
-            }
-            else {
-              /// Screen refresh
-              g.drawImage( backBuffer, 0, 0, this );
-            }
 
             showingError = false;
-            updateBackBuffer = false;
         }
 
         /// Printable interface function
@@ -1087,7 +1045,17 @@
         /// Ouputs the current canvas into a given PNG file
         public void writePNG( String fileName ) {
             try {
-                ImageIO.write(backBuffer, "png", new java.io.File(fileName));
+                int w = this.getSize().width;
+                int h = this.getSize().height;
+                BufferedImage buffer = (BufferedImage) this.createImage( w, h );
+                Graphics2D g2 = buffer.createGraphics();
+                g2.setColor(Color.white);
+                g2.fillRect(0, 0, w, h);
+                g2.setColor(Color.black);
+                updateFontMetrics = true;
+                drawText(g2, w, h);
+                updateFontMetrics = true;
+                ImageIO.write(buffer, "png", new java.io.File(fileName));
             }
             catch ( Exception e ) {
                 f2dt.fireChangeStatus( "ERROR: Failed to Save PNG image; See stack trace", true );
diff --git a/jdk/src/demo/share/jfc/Notepad/resources/Notepad_ja.properties b/jdk/src/demo/share/jfc/Notepad/resources/Notepad_ja.properties
index e153973..a8121d6 100644
--- a/jdk/src/demo/share/jfc/Notepad/resources/Notepad_ja.properties
+++ b/jdk/src/demo/share/jfc/Notepad/resources/Notepad_ja.properties
@@ -38,7 +38,7 @@
 pasteLabel=\u8CBC\u4ED8\u3051
 pasteImage=resources/paste.gif
 undoLabel=\u5143\u306B\u623B\u3059
-redoLabel=\u3084\u308A\u76F4\u3057
+redoLabel=\u518D\u5B9F\u884C
 
 #
 # debug Menu definition
diff --git a/jdk/src/java.base/macosx/classes/module-info.java.extra b/jdk/src/java.base/macosx/classes/module-info.java.extra
index 6815c12..98a6b08 100644
--- a/jdk/src/java.base/macosx/classes/module-info.java.extra
+++ b/jdk/src/java.base/macosx/classes/module-info.java.extra
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,4 +24,3 @@
  */
 
 exports jdk.internal.loader to java.desktop;
-provides java.security.Provider with apple.security.AppleProvider;
diff --git a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource.java b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource.java
index 48a0122..108f4a1 100644
--- a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource.java
+++ b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -61,17 +61,25 @@
                 "Usage:  pack200 [-opt... | --option=value]... x.pack[.gz] y.jar",
                 "",
                 "Packing Options",
-                "  -g, --no-gzip                   output a plain *.pack file with no zipping",
-                "  --gzip                          (default) post-process the pack output with gzip",
-                "  -G, --strip-debug               remove debugging attributes while packing",
+                "  -r, --repack                    repack or normalize a jar, suitable for ",
+                "                                  signing with jarsigner",
+                "  -g, --no-gzip                   output a plain pack file, suitable to be",
+                "                                  compressed with a file compression utility",
+                "  --gzip                          (default) post compress the pack output",
+                "                                  with gzip",
+                "  -G, --strip-debug               remove debugging attributes (SourceFile,",
+                "                                  LineNumberTable, LocalVariableTable",
+                "                                  and LocalVariableTypeTable) while packing",
                 "  -O, --no-keep-file-order        do not transmit file ordering information",
                 "  --keep-file-order               (default) preserve input file ordering",
-                "  -S{N}, --segment-limit={N}      output segment limit (default N=1Mb)",
+                "  -S{N}, --segment-limit={N}      limit segment sizes (default unlimited)",
                 "  -E{N}, --effort={N}             packing effort (default N=5)",
-                "  -H{h}, --deflate-hint={h}       transmit deflate hint: true, false, or keep (default)",
+                "  -H{h}, --deflate-hint={h}       transmit deflate hint: true, false,",
+                "                                  or keep (default)",
                 "  -m{V}, --modification-time={V}  transmit modtimes: latest or keep (default)",
-                "  -P{F}, --pass-file={F}          transmit the given input element(s) uncompressed",
-                "  -U{a}, --unknown-attribute={a}  unknown attribute action: error, strip, or pass (default)",
+                "  -P{F}, --pass-file={F}          transmit the given input element(s) unchanged",
+                "  -U{a}, --unknown-attribute={a}  unknown attribute action: error, strip,",
+                "                                  or pass (default)",
                 "  -C{N}={L}, --class-attribute={N}={L}  (user-defined attribute)",
                 "  -F{N}={L}, --field-attribute={N}={L}  (user-defined attribute)",
                 "  -M{N}={L}, --method-attribute={N}={L} (user-defined attribute)",
@@ -79,7 +87,8 @@
                 "  -f{F}, --config-file={F}        read file F for Pack200.Packer properties",
                 "  -v, --verbose                   increase program verbosity",
                 "  -q, --quiet                     set verbosity to lowest level",
-                "  -l{F}, --log-file={F}           output to the given log file, or '-' for System.out",
+                "  -l{F}, --log-file={F}           output to the given log file, ",
+                "                                  or '-' for System.out",
                 "  -?, -h, --help                  print this message",
                 "  -V, --version                   print program version",
                 "  -J{X}                           pass option X to underlying Java VM",
@@ -92,18 +101,23 @@
                 "  Layout definitions (like RUH) are defined by JSR 200.",
                 "",
                 "Repacking mode updates the JAR file with a pack/unpack cycle:",
-                "    pack200 [-r|--repack] [-opt | --option=value]... [repackedy.jar] y.jar\n"
+                "    pack200 [-r|--repack] [-opt | --option=value]... [repackedy.jar] y.jar\n",
+                "",
+                "Exit Status:",
+                "  0 if successful, >0 if an error occurred"
             }
         },
         {UNPACK_HELP, new String[] {
                 "Usage:  unpack200 [-opt... | --option=value]... x.pack[.gz] y.jar\n",
                 "",
                 "Unpacking Options",
-                "  -H{h}, --deflate-hint={h}     override transmitted deflate hint: true, false, or keep (default)",
+                "  -H{h}, --deflate-hint={h}     override transmitted deflate hint:",
+                "                                true, false, or keep (default)",
                 "  -r, --remove-pack-file        remove input file after unpacking",
                 "  -v, --verbose                 increase program verbosity",
                 "  -q, --quiet                   set verbosity to lowest level",
-                "  -l{F}, --log-file={F}         output to the given log file, or '-' for System.out",
+                "  -l{F}, --log-file={F}         output to the given log file, or",
+                "                                '-' for System.out",
                 "  -?, -h, --help                print this message",
                 "  -V, --version                 print program version",
                 "  -J{X}                         pass option X to underlying Java VM"
diff --git a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java
index f22c34a..4208201 100644
--- a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java
+++ b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -84,7 +84,7 @@
                 "  -V\u3001--version                   \u30D7\u30ED\u30B0\u30E9\u30E0\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u307E\u3059",
                 "  -J{X}                           \u30AA\u30D7\u30B7\u30E7\u30F3X\u3092\u57FA\u790E\u3068\u306A\u308BJava VM\u306B\u6E21\u3057\u307E\u3059",
                 "",
-                "\u6CE8\u610F:",
+                "\u6CE8:",
                 "  -P\u3001-C\u3001-F\u3001-M\u304A\u3088\u3073-D\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u7D2F\u7A4D\u3055\u308C\u307E\u3059\u3002",
                 "  \u5C5E\u6027\u5B9A\u7FA9\u306E\u4F8B:  -C SourceFile=RUH .",
                 "  Config.\u30D5\u30A1\u30A4\u30EB\u30FB\u30D7\u30ED\u30D1\u30C6\u30A3\u306F\u3001Pack200 API\u306B\u3088\u3063\u3066\u5B9A\u7FA9\u3055\u308C\u307E\u3059\u3002",
diff --git a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_zh_CN.java b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_zh_CN.java
index 9e28101..1ed210b 100644
--- a/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_zh_CN.java
+++ b/jdk/src/java.base/share/classes/com/sun/java/util/jar/pack/DriverResource_zh_CN.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -48,7 +48,7 @@
      * Do not translate command arguments and words with a prefix of '-' or '--'.
      */
     private static final Object[][] resource = {
-        {VERSION, "{0}\u7248\u672C{1}"}, // parameter 0:class name;parameter 1: version value
+        {VERSION, "{0}\u7248\u672C {1}"}, // parameter 0:class name;parameter 1: version value
         {BAD_ARGUMENT, "\u9519\u8BEF\u53C2\u6570: {0}"},
         {BAD_OPTION, "\u9519\u8BEF\u9009\u9879: {0}={1}"}, // parameter 0:option name;parameter 1:option value
         {BAD_REPACK_OUTPUT, "--repack \u8F93\u51FA\u9519\u8BEF: {0}"}, // parameter 0:filename
diff --git a/jdk/src/java.base/share/classes/java/lang/Class.java b/jdk/src/java.base/share/classes/java/lang/Class.java
index 2327b76..4649b04 100644
--- a/jdk/src/java.base/share/classes/java/lang/Class.java
+++ b/jdk/src/java.base/share/classes/java/lang/Class.java
@@ -480,6 +480,24 @@
      * any exception thrown by the constructor in a (checked) {@link
      * java.lang.reflect.InvocationTargetException}.
      *
+     * <p>The call
+     *
+     * <pre>{@code
+     * clazz.newInstance()
+     * }</pre>
+     *
+     * can be replaced by
+     *
+     * <pre>{@code
+     * clazz.getConstructor().newInstance()
+     * }</pre>
+     *
+     * The latter sequence of calls is inferred to be able to throw
+     * the additional exception types {@link
+     * InvocationTargetException} and {@link
+     * NoSuchMethodException}. Both of these exception types are
+     * subclasses of {@link ReflectiveOperationException}.
+     *
      * @return  a newly allocated instance of the class represented by this
      *          object.
      * @throws  IllegalAccessException  if the class or its nullary
diff --git a/jdk/src/java.base/share/classes/java/lang/Process.java b/jdk/src/java.base/share/classes/java/lang/Process.java
index 3f0ec64..c4c5612 100644
--- a/jdk/src/java.base/share/classes/java/lang/Process.java
+++ b/jdk/src/java.base/share/classes/java/lang/Process.java
@@ -548,5 +548,36 @@
         return toHandle().descendants();
     }
 
+    /**
+     * An input stream for a subprocess pipe that skips by reading bytes
+     * instead of seeking, the underlying pipe does not support seek.
+     */
+    static class PipeInputStream extends FileInputStream {
 
+        PipeInputStream(FileDescriptor fd) {
+            super(fd);
+        }
+
+        @Override
+        public long skip(long n) throws IOException {
+            long remaining = n;
+            int nr;
+
+            if (n <= 0) {
+                return 0;
+            }
+
+            int size = (int)Math.min(2048, remaining);
+            byte[] skipBuffer = new byte[size];
+            while (remaining > 0) {
+                nr = read(skipBuffer, 0, (int)Math.min(size, remaining));
+                if (nr < 0) {
+                    break;
+                }
+                remaining -= nr;
+            }
+
+            return n - remaining;
+        }
+    }
 }
diff --git a/jdk/src/java.base/share/classes/java/lang/module/ModuleDescriptor.java b/jdk/src/java.base/share/classes/java/lang/module/ModuleDescriptor.java
index 778b977..e76c2f5 100644
--- a/jdk/src/java.base/share/classes/java/lang/module/ModuleDescriptor.java
+++ b/jdk/src/java.base/share/classes/java/lang/module/ModuleDescriptor.java
@@ -1095,7 +1095,7 @@
     public static final class Builder {
 
         final String name;
-        final boolean automatic;
+        boolean automatic;
         boolean synthetic;
         final Map<String, Requires> requires = new HashMap<>();
         final Set<String> uses = new HashSet<>();
@@ -1120,12 +1120,19 @@
          *         identifier
          */
         public Builder(String name) {
-            this(name, false);
+            this.name = requireModuleName(name);
         }
 
-        /* package */ Builder(String name, boolean automatic) {
-            this.name = requireModuleName(name);
-            this.automatic = automatic;
+        /**
+         * Updates the builder so that it builds an automatic module.
+         *
+         * @return This builder
+         *
+         * @see ModuleDescriptor#isAutomatic()
+         */
+        /* package */ Builder automatic() {
+            this.automatic = true;
+            return this;
         }
 
         /**
diff --git a/jdk/src/java.base/share/classes/java/lang/module/ModuleFinder.java b/jdk/src/java.base/share/classes/java/lang/module/ModuleFinder.java
index a692448..a108e46 100644
--- a/jdk/src/java.base/share/classes/java/lang/module/ModuleFinder.java
+++ b/jdk/src/java.base/share/classes/java/lang/module/ModuleFinder.java
@@ -42,6 +42,7 @@
 import java.util.Objects;
 import java.util.Optional;
 import java.util.Set;
+
 import sun.security.action.GetPropertyAction;
 
 /**
@@ -267,6 +268,13 @@
      *
      * </ul>
      *
+     * <p> If a {@code ModuleDescriptor} cannot be created (by means of the
+     * {@link ModuleDescriptor.Builder ModuleDescriptor.Builder} API) for an
+     * automatic module then {@code FindException} is thrown. This can arise,
+     * for example, when a legal Java identifier name cannot be derived from
+     * the file name of the JAR file or where a package name derived from an
+     * entry ending with {@code .class} is not a legal Java identifier. </p>
+     *
      * <p> In addition to JAR files, an implementation may also support modules
      * that are packaged in other implementation specific module formats. When
      * a file is encountered that is not recognized as a packaged module then
diff --git a/jdk/src/java.base/share/classes/java/lang/module/ModuleInfo.java b/jdk/src/java.base/share/classes/java/lang/module/ModuleInfo.java
index 7bf9342..db9a3e0 100644
--- a/jdk/src/java.base/share/classes/java/lang/module/ModuleInfo.java
+++ b/jdk/src/java.base/share/classes/java/lang/module/ModuleInfo.java
@@ -276,10 +276,7 @@
         throws IOException
     {
         int requires_count = in.readUnsignedShort();
-        if (requires_count == 0 && !mn.equals("java.base")) {
-            throw invalidModuleDescriptor("The requires table must have"
-                                          + " at least one entry");
-        }
+        boolean requiresJavaBase = false;
         for (int i=0; i<requires_count; i++) {
             int index = in.readUnsignedShort();
             int flags = in.readUnsignedShort();
@@ -297,6 +294,17 @@
                     mods.add(Modifier.MANDATED);
             }
             builder.requires(mods, dn);
+            if (dn.equals("java.base"))
+                requiresJavaBase = true;
+        }
+        if (mn.equals("java.base")) {
+            if (requires_count > 0) {
+                throw invalidModuleDescriptor("The requires table for java.base"
+                                              + " must be 0 length");
+            }
+        } else if (!requiresJavaBase) {
+            throw invalidModuleDescriptor("The requires table must have"
+                                          + " an entry for java.base");
         }
 
         int exports_count = in.readUnsignedShort();
diff --git a/jdk/src/java.base/share/classes/java/lang/module/ModulePath.java b/jdk/src/java.base/share/classes/java/lang/module/ModulePath.java
index 250de15..43d8e56 100644
--- a/jdk/src/java.base/share/classes/java/lang/module/ModulePath.java
+++ b/jdk/src/java.base/share/classes/java/lang/module/ModulePath.java
@@ -55,7 +55,6 @@
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
 
-import jdk.internal.module.Checks;
 import jdk.internal.module.ConfigurableModuleFinder;
 import jdk.internal.perf.PerfCounter;
 
@@ -343,8 +342,7 @@
             String prefix = cf.substring(0, index);
             if (prefix.equals(SERVICES_PREFIX)) {
                 String sn = cf.substring(index);
-                if (Checks.isJavaIdentifier(sn))
-                    return Optional.of(sn);
+                return Optional.of(sn);
             }
         }
         return Optional.empty();
@@ -378,9 +376,6 @@
      *    to "provides" declarations
      * 5. The Main-Class attribute in the main attributes of the JAR manifest
      *    is mapped to the module descriptor mainClass
-     *
-     * @apiNote This needs to move to somewhere where it can be used by tools,
-     * maybe even a standard API if automatic modules are a Java SE feature.
      */
     private ModuleDescriptor deriveModuleDescriptor(JarFile jf)
         throws IOException
@@ -397,7 +392,7 @@
         String vs = null;
 
         // find first occurrence of -${NUMBER}. or -${NUMBER}$
-        Matcher matcher = Pattern.compile("-(\\d+(\\.|$))").matcher(mn);
+        Matcher matcher = Patterns.DASH_VERSION.matcher(mn);
         if (matcher.find()) {
             int start = matcher.start();
 
@@ -412,16 +407,13 @@
         }
 
         // finally clean up the module name
-        mn =  mn.replaceAll("[^A-Za-z0-9]", ".")  // replace non-alphanumeric
-                .replaceAll("(\\.)(\\1)+", ".")   // collapse repeating dots
-                .replaceAll("^\\.", "")           // drop leading dots
-                .replaceAll("\\.$", "");          // drop trailing dots
-
+        mn = cleanModuleName(mn);
 
         // Builder throws IAE if module name is empty or invalid
         ModuleDescriptor.Builder builder
-            = new ModuleDescriptor.Builder(mn, true)
-                .requires(Requires.Modifier.MANDATED, "java.base");
+            = new ModuleDescriptor.Builder(mn)
+                .automatic()
+                .requires(Set.of(Requires.Modifier.MANDATED), "java.base");
         if (vs != null)
             builder.version(vs);
 
@@ -457,7 +449,7 @@
                     = new BufferedReader(new InputStreamReader(in, "UTF-8"));
                 String cn;
                 while ((cn = nextLine(reader)) != null) {
-                    if (Checks.isJavaIdentifier(cn)) {
+                    if (cn.length() > 0) {
                         providerClasses.add(cn);
                     }
                 }
@@ -478,6 +470,39 @@
         return builder.build();
     }
 
+    /**
+     * Patterns used to derive the module name from a JAR file name.
+     */
+    private static class Patterns {
+        static final Pattern DASH_VERSION = Pattern.compile("-(\\d+(\\.|$))");
+        static final Pattern NON_ALPHANUM = Pattern.compile("[^A-Za-z0-9]");
+        static final Pattern REPEATING_DOTS = Pattern.compile("(\\.)(\\1)+");
+        static final Pattern LEADING_DOTS = Pattern.compile("^\\.");
+        static final Pattern TRAILING_DOTS = Pattern.compile("\\.$");
+    }
+
+    /**
+     * Clean up candidate module name derived from a JAR file name.
+     */
+    private static String cleanModuleName(String mn) {
+        // replace non-alphanumeric
+        mn = Patterns.NON_ALPHANUM.matcher(mn).replaceAll(".");
+
+        // collapse repeating dots
+        mn = Patterns.REPEATING_DOTS.matcher(mn).replaceAll(".");
+
+        // drop leading dots
+        if (mn.length() > 0 && mn.charAt(0) == '.')
+            mn = Patterns.LEADING_DOTS.matcher(mn).replaceAll("");
+
+        // drop trailing dots
+        int len = mn.length();
+        if (len > 0 && mn.charAt(len-1) == '.')
+            mn = Patterns.TRAILING_DOTS.matcher(mn).replaceAll("");
+
+        return mn;
+    }
+
     private Set<String> jarPackages(JarFile jf) {
         return jf.stream()
             .filter(e -> e.getName().endsWith(".class"))
diff --git a/jdk/src/java.base/share/classes/java/lang/module/Resolver.java b/jdk/src/java.base/share/classes/java/lang/module/Resolver.java
index cefcf19..adc60da 100644
--- a/jdk/src/java.base/share/classes/java/lang/module/Resolver.java
+++ b/jdk/src/java.base/share/classes/java/lang/module/Resolver.java
@@ -36,7 +36,6 @@
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Map.Entry;
 import java.util.Objects;
 import java.util.Optional;
 import java.util.Set;
@@ -454,17 +453,13 @@
 
 
     /**
-     * Computes and sets the readability graph for the modules in the given
-     * Resolution object.
+     * Computes the readability graph for the modules in the given Configuration.
      *
      * The readability graph is created by propagating "requires" through the
      * "public requires" edges of the module dependence graph. So if the module
      * dependence graph has m1 requires m2 && m2 requires public m3 then the
-     * resulting readability graph will contain m1 reads m2, m1
-     * reads m3, and m2 reads m3.
-     *
-     * TODO: Use a more efficient algorithm, maybe cache the requires public
-     *       in parent configurations.
+     * resulting readability graph will contain m1 reads m2, m1 reads m3, and
+     * m2 reads m3.
      */
     private Map<ResolvedModule, Set<ResolvedModule>> makeGraph(Configuration cf) {
 
@@ -483,16 +478,15 @@
         Configuration p = parent;
         while (p != null) {
             for (ModuleDescriptor descriptor : p.descriptors()) {
-                ResolvedModule x = p.findModule(descriptor.name()).orElse(null);
-                if (x == null)
-                    throw new InternalError();
+                String name = descriptor.name();
+                ResolvedModule m1 = p.findModule(name)
+                    .orElseThrow(() -> new InternalError(name + " not found"));
                 for (ModuleDescriptor.Requires requires : descriptor.requires()) {
                     if (requires.modifiers().contains(Modifier.PUBLIC)) {
                         String dn = requires.name();
-                        ResolvedModule y = p.findModule(dn).orElse(null);
-                        if (y == null)
-                            throw new InternalError(dn + " not found");
-                        g2.computeIfAbsent(x, k -> new HashSet<>()).add(y);
+                        ResolvedModule m2 = p.findModule(dn)
+                            .orElseThrow(() -> new InternalError(dn + " not found"));
+                        g2.computeIfAbsent(m1, k -> new HashSet<>()).add(m2);
                     }
                 }
             }
@@ -501,53 +495,60 @@
         }
 
         // populate g1 and g2 with the dependences from the selected modules
+
+        Map<String, ResolvedModule> nameToResolved = new HashMap<>();
+
         for (ModuleReference mref : nameToReference.values()) {
             ModuleDescriptor descriptor = mref.descriptor();
-            ResolvedModule x = new ResolvedModule(cf, mref);
+            String name = descriptor.name();
+
+            ResolvedModule m1 = computeIfAbsent(nameToResolved, name, cf, mref);
 
             Set<ResolvedModule> reads = new HashSet<>();
-            g1.put(x, reads);
-
             Set<ResolvedModule> requiresPublic = new HashSet<>();
-            g2.put(x, requiresPublic);
 
             for (ModuleDescriptor.Requires requires : descriptor.requires()) {
                 String dn = requires.name();
 
-                ResolvedModule y;
-                ModuleReference other = nameToReference.get(dn);
-                if (other != null) {
-                    y = new ResolvedModule(cf, other);  // cache?
+                ResolvedModule m2;
+                ModuleReference mref2 = nameToReference.get(dn);
+                if (mref2 != null) {
+                    // same configuration
+                    m2 = computeIfAbsent(nameToResolved, dn, cf, mref2);
                 } else {
-                    y = parent.findModule(dn).orElse(null);
-                    if (y == null)
-                        throw new InternalError("unable to find " + dn);
+                    // parent configuration
+                    m2 = parent.findModule(dn).orElse(null);
+                    if (m2 == null) {
+                        continue;
+                    }
                 }
 
-                // m requires other => m reads other
-                reads.add(y);
+                // m1 requires m2 => m1 reads m2
+                reads.add(m2);
 
-                // m requires public other
+                // m1 requires public m2
                 if (requires.modifiers().contains(Modifier.PUBLIC)) {
-                    requiresPublic.add(y);
+                    requiresPublic.add(m2);
                 }
 
             }
 
-            // automatic modules reads all selected modules and all modules
+            // automatic modules read all selected modules and all modules
             // in parent configurations
             if (descriptor.isAutomatic()) {
-                String name = descriptor.name();
 
                 // reads all selected modules
-                // requires public` all selected automatic modules
+                // `requires public` all selected automatic modules
                 for (ModuleReference mref2 : nameToReference.values()) {
                     ModuleDescriptor descriptor2 = mref2.descriptor();
-                    if (!name.equals(descriptor2.name())) {
-                        ResolvedModule m = new ResolvedModule(cf, mref2);
-                        reads.add(m);
+                    String name2 = descriptor2.name();
+
+                    if (!name.equals(name2)) {
+                        ResolvedModule m2
+                            = computeIfAbsent(nameToResolved, name2, cf, mref2);
+                        reads.add(m2);
                         if (descriptor2.isAutomatic())
-                            requiresPublic.add(m);
+                            requiresPublic.add(m2);
                     }
                 }
 
@@ -565,54 +566,58 @@
 
             }
 
+            g1.put(m1, reads);
+            g2.put(m1, requiresPublic);
         }
 
         // Iteratively update g1 until there are no more requires public to propagate
         boolean changed;
-        Map<ResolvedModule, Set<ResolvedModule>> changes = new HashMap<>();
+        Set<ResolvedModule> toAdd = new HashSet<>();
         do {
             changed = false;
-            for (Entry<ResolvedModule, Set<ResolvedModule>> entry : g1.entrySet()) {
-
-                ResolvedModule m1 = entry.getKey();
-                Set<ResolvedModule> m1Reads = entry.getValue();
-
+            for (Set<ResolvedModule> m1Reads : g1.values()) {
                 for (ResolvedModule m2 : m1Reads) {
                     Set<ResolvedModule> m2RequiresPublic = g2.get(m2);
                     if (m2RequiresPublic != null) {
                         for (ResolvedModule m3 : m2RequiresPublic) {
                             if (!m1Reads.contains(m3)) {
-
-                                // computeIfAbsent
-                                Set<ResolvedModule> s = changes.get(m1);
-                                if (s == null) {
-                                    s = new HashSet<>();
-                                    changes.put(m1, s);
-                                }
-                                s.add(m3);
-                                changed = true;
-
+                                // m1 reads m2, m2 requires public m3
+                                // => need to add m1 reads m3
+                                toAdd.add(m3);
                             }
                         }
                     }
                 }
-            }
-
-            if (changed) {
-                for (Map.Entry<ResolvedModule, Set<ResolvedModule>> e :
-                        changes.entrySet()) {
-                    ResolvedModule m = e.getKey();
-                    g1.get(m).addAll(e.getValue());
+                if (!toAdd.isEmpty()) {
+                    m1Reads.addAll(toAdd);
+                    toAdd.clear();
+                    changed = true;
                 }
-                changes.clear();
             }
-
         } while (changed);
 
-
         return g1;
     }
 
+    /**
+     * Equivalent to
+     * <pre>{@code
+     *     map.computeIfAbsent(name, k -> new ResolvedModule(cf, mref))
+     * </pre>}
+     */
+    private ResolvedModule computeIfAbsent(Map<String, ResolvedModule> map,
+                                           String name,
+                                           Configuration cf,
+                                           ModuleReference mref)
+    {
+        ResolvedModule m = map.get(name);
+        if (m == null) {
+            m = new ResolvedModule(cf, mref);
+            map.put(name, m);
+        }
+        return m;
+    }
+
 
     /**
      * Checks the readability graph to ensure that no two modules export the
diff --git a/jdk/src/java.base/share/classes/java/net/URL.java b/jdk/src/java.base/share/classes/java/net/URL.java
index f071d3a..145cf29 100644
--- a/jdk/src/java.base/share/classes/java/net/URL.java
+++ b/jdk/src/java.base/share/classes/java/net/URL.java
@@ -428,16 +428,18 @@
             authority = (port == -1) ? host : host + ":" + port;
         }
 
-        Parts parts = new Parts(file);
-        path = parts.getPath();
-        query = parts.getQuery();
-
-        if (query != null) {
+        int index = file.indexOf('#');
+        this.ref = index < 0 ? null : file.substring(index + 1);
+        file = index < 0 ? file : file.substring(0, index);
+        int q = file.lastIndexOf('?');
+        if (q != -1) {
+            this.query = file.substring(q + 1);
+            this.path = file.substring(0, q);
             this.file = path + "?" + query;
         } else {
+            this.path = file;
             this.file = path;
         }
-        ref = parts.getRef();
 
         // Note: we don't do validation of the URL here. Too risky to change
         // right now, but worth considering for future reference. -br
@@ -1617,35 +1619,6 @@
     }
 }
 
-class Parts {
-    String path, query, ref;
-
-    Parts(String file) {
-        int ind = file.indexOf('#');
-        ref = ind < 0 ? null: file.substring(ind + 1);
-        file = ind < 0 ? file: file.substring(0, ind);
-        int q = file.lastIndexOf('?');
-        if (q != -1) {
-            query = file.substring(q+1);
-            path = file.substring(0, q);
-        } else {
-            path = file;
-        }
-    }
-
-    String getPath() {
-        return path;
-    }
-
-    String getQuery() {
-        return query;
-    }
-
-    String getRef() {
-        return ref;
-    }
-}
-
 final class UrlDeserializedState {
     private final String protocol;
     private final String host;
diff --git a/jdk/src/java.base/share/classes/java/time/chrono/JapaneseDate.java b/jdk/src/java.base/share/classes/java/time/chrono/JapaneseDate.java
index 0c1a876..ccf3dcc 100644
--- a/jdk/src/java.base/share/classes/java/time/chrono/JapaneseDate.java
+++ b/jdk/src/java.base/share/classes/java/time/chrono/JapaneseDate.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -437,7 +437,7 @@
                 field == ALIGNED_WEEK_OF_MONTH || field == ALIGNED_WEEK_OF_YEAR) {
             return false;
         }
-        return ChronoLocalDate.super.isSupported(field);
+        return super.isSupported(field);
     }
 
     @Override
diff --git a/jdk/src/java.base/share/classes/java/util/Collections.java b/jdk/src/java.base/share/classes/java/util/Collections.java
index 0eb9da0..9f6ab76 100644
--- a/jdk/src/java.base/share/classes/java/util/Collections.java
+++ b/jdk/src/java.base/share/classes/java/util/Collections.java
@@ -4324,6 +4324,7 @@
 
         public int size() {return 0;}
         public boolean isEmpty() {return true;}
+        public void clear() {}
 
         public boolean contains(Object obj) {return false;}
         public boolean containsAll(Collection<?> c) { return c.isEmpty(); }
@@ -4447,6 +4448,7 @@
 
         public int size() {return 0;}
         public boolean isEmpty() {return true;}
+        public void clear() {}
 
         public boolean contains(Object obj) {return false;}
         public boolean containsAll(Collection<?> c) { return c.isEmpty(); }
@@ -4582,6 +4584,7 @@
 
         public int size()                          {return 0;}
         public boolean isEmpty()                   {return true;}
+        public void clear()                        {}
         public boolean containsKey(Object key)     {return false;}
         public boolean containsValue(Object value) {return false;}
         public V get(Object key)                   {return null;}
diff --git a/jdk/src/java.base/share/classes/java/util/Locale.java b/jdk/src/java.base/share/classes/java/util/Locale.java
index 6567ab0..75e2af7 100644
--- a/jdk/src/java.base/share/classes/java/util/Locale.java
+++ b/jdk/src/java.base/share/classes/java/util/Locale.java
@@ -2888,7 +2888,7 @@
                 throw new IllegalArgumentException("weight=" + weight);
             }
 
-            range = range.toLowerCase();
+            range = range.toLowerCase(Locale.ROOT);
 
             // Do syntax check.
             boolean isIllFormed = false;
diff --git a/jdk/src/java.base/share/classes/java/util/PriorityQueue.java b/jdk/src/java.base/share/classes/java/util/PriorityQueue.java
index 7c929bd..440cbbe 100644
--- a/jdk/src/java.base/share/classes/java/util/PriorityQueue.java
+++ b/jdk/src/java.base/share/classes/java/util/PriorityQueue.java
@@ -337,11 +337,8 @@
         int i = size;
         if (i >= queue.length)
             grow(i + 1);
+        siftUp(i, e);
         size = i + 1;
-        if (i == 0)
-            queue[0] = e;
-        else
-            siftUp(i, e);
         return true;
     }
 
diff --git a/jdk/src/java.base/share/classes/java/util/Scanner.java b/jdk/src/java.base/share/classes/java/util/Scanner.java
index a0e6dd8..32427e1 100644
--- a/jdk/src/java.base/share/classes/java/util/Scanner.java
+++ b/jdk/src/java.base/share/classes/java/util/Scanner.java
@@ -793,7 +793,6 @@
     private void readInput() {
         if (buf.limit() == buf.capacity())
             makeSpace();
-
         // Prepare to receive data
         int p = buf.position();
         buf.position(buf.limit());
@@ -806,15 +805,12 @@
             lastException = ioe;
             n = -1;
         }
-
         if (n == -1) {
             sourceClosed = true;
             needInput = false;
         }
-
         if (n > 0)
             needInput = false;
-
         // Restore current position and limit for reading
         buf.limit(buf.position());
         buf.position(p);
@@ -871,15 +867,20 @@
         matchValid = false;
         matcher.usePattern(delimPattern);
         matcher.region(position, buf.limit());
-
         // Skip delims first
-        if (matcher.lookingAt())
+        if (matcher.lookingAt()) {
+            if (matcher.hitEnd() && !sourceClosed) {
+                // more input might change the match of delims, in which
+                // might change whether or not if there is token left in
+                // buffer (don't update the "position" in this case)
+                needInput = true;
+                return false;
+            }
             position = matcher.end();
-
+        }
         // If we are sitting at the end, no more tokens in buffer
         if (position == buf.limit())
             return false;
-
         return true;
     }
 
@@ -900,7 +901,6 @@
      */
     private String getCompleteTokenInBuffer(Pattern pattern) {
         matchValid = false;
-
         // Skip delims first
         matcher.usePattern(delimPattern);
         if (!skipped) { // Enforcing only one skip of leading delims
@@ -941,13 +941,16 @@
             foundNextDelim = matcher.find();
         }
         if (foundNextDelim) {
-            // In the rare case that more input could cause the match
-            // to be lost and there is more input coming we must wait
-            // for more input. Note that hitting the end is okay as long
-            // as the match cannot go away. It is the beginning of the
-            // next delims we want to be sure about, we don't care if
-            // they potentially extend further.
-            if (matcher.requireEnd() && !sourceClosed) {
+            // In two rare cases that more input might cause the match to be
+            // lost or change.
+            // (1) if requireEnd() is true, more input might cause the match
+            // to be lost, we must wait for more input.
+            // (2) while hitting the end is okay IF the match does not
+            // go away AND the beginning of the next delims does not change
+            // (we don't care if they potentially extend further). But it's
+            // possible that more input could cause the beginning of the
+            // delims change, so have to wait for more input as well.
+            if ((matcher.requireEnd() || matcher.hitEnd()) && !sourceClosed) {
                 needInput = true;
                 return null;
             }
@@ -1341,8 +1344,9 @@
         saveState();
         modCount++;
         while (!sourceClosed) {
-            if (hasTokenInBuffer())
+            if (hasTokenInBuffer()) {
                 return revertState(true);
+            }
             readInput();
         }
         boolean result = hasTokenInBuffer();
@@ -1365,7 +1369,6 @@
         ensureOpen();
         clearCaches();
         modCount++;
-
         while (true) {
             String token = getCompleteTokenInBuffer(null);
             if (token != null) {
diff --git a/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java b/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java
index 9b23efa..6980790 100644
--- a/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java
@@ -66,7 +66,7 @@
  * inaccurate results if this collection is modified during traversal.
  * Additionally, the bulk operations {@code addAll},
  * {@code removeAll}, {@code retainAll}, {@code containsAll},
- * {@code equals}, and {@code toArray} are <em>not</em> guaranteed
+ * and {@code toArray} are <em>not</em> guaranteed
  * to be performed atomically. For example, an iterator operating
  * concurrently with an {@code addAll} operation might view only some
  * of the added elements.
diff --git a/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java b/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java
index ba4ee87..ae246a4 100644
--- a/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java
@@ -80,7 +80,7 @@
  * inaccurate results if this collection is modified during traversal.
  * Additionally, the bulk operations {@code addAll},
  * {@code removeAll}, {@code retainAll}, {@code containsAll},
- * {@code equals}, and {@code toArray} are <em>not</em> guaranteed
+ * and {@code toArray} are <em>not</em> guaranteed
  * to be performed atomically. For example, an iterator operating
  * concurrently with an {@code addAll} operation might view only some
  * of the added elements.
diff --git a/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java b/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java
index e830f5b..fa53ded 100644
--- a/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java
@@ -840,6 +840,9 @@
                         break; // restart if lost race to replace value
                     }
                     // else c < 0; fall through
+                } else if (b == head.node) {
+                    // map is empty, so type check key now
+                    cpr(cmp, key, key);
                 }
 
                 z = new Node<K,V>(key, value, n);
diff --git a/jdk/src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java b/jdk/src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java
index 02ffd87..69b9a69 100644
--- a/jdk/src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java
@@ -61,7 +61,7 @@
  * inaccurate results if this collection is modified during traversal.
  * Additionally, the bulk operations {@code addAll},
  * {@code removeAll}, {@code retainAll}, {@code containsAll},
- * {@code equals}, and {@code toArray} are <em>not</em> guaranteed
+ * and {@code toArray} are <em>not</em> guaranteed
  * to be performed atomically. For example, an iterator operating
  * concurrently with an {@code addAll} operation might view only some
  * of the added elements.
diff --git a/jdk/src/java.base/share/classes/java/util/stream/DoubleStream.java b/jdk/src/java.base/share/classes/java/util/stream/DoubleStream.java
index ad25075..59f669ba 100644
--- a/jdk/src/java.base/share/classes/java/util/stream/DoubleStream.java
+++ b/jdk/src/java.base/share/classes/java/util/stream/DoubleStream.java
@@ -986,7 +986,7 @@
      * {@code DoubleStream.iterate} should produce the same sequence of
      * elements as produced by the corresponding for-loop:
      * <pre>{@code
-     *     for (double index=seed; predicate.test(index); index = f.apply(index)) {
+     *     for (double index=seed; predicate.test(index); index = f.applyAsDouble(index)) {
      *         ...
      *     }
      * }</pre>
diff --git a/jdk/src/java.base/share/classes/java/util/stream/IntStream.java b/jdk/src/java.base/share/classes/java/util/stream/IntStream.java
index 9c72977..daeac3a 100644
--- a/jdk/src/java.base/share/classes/java/util/stream/IntStream.java
+++ b/jdk/src/java.base/share/classes/java/util/stream/IntStream.java
@@ -926,7 +926,7 @@
      * {@code IntStream.iterate} should produce the same sequence of elements
      * as produced by the corresponding for-loop:
      * <pre>{@code
-     *     for (int index=seed; predicate.test(index); index = f.apply(index)) {
+     *     for (int index=seed; predicate.test(index); index = f.applyAsInt(index)) {
      *         ...
      *     }
      * }</pre>
diff --git a/jdk/src/java.base/share/classes/java/util/stream/LongStream.java b/jdk/src/java.base/share/classes/java/util/stream/LongStream.java
index 7965bfd..d6428d5 100644
--- a/jdk/src/java.base/share/classes/java/util/stream/LongStream.java
+++ b/jdk/src/java.base/share/classes/java/util/stream/LongStream.java
@@ -916,7 +916,7 @@
      * {@code LongStream.iterate} should produce the same sequence of elements
      * as produced by the corresponding for-loop:
      * <pre>{@code
-     *     for (long index=seed; predicate.test(index); index = f.apply(index)) {
+     *     for (long index=seed; predicate.test(index); index = f.applyAsLong(index)) {
      *         ...
      *     }
      * }</pre>
diff --git a/jdk/src/java.base/share/classes/javax/net/ssl/SSLEngineResult.java b/jdk/src/java.base/share/classes/javax/net/ssl/SSLEngineResult.java
index 94c6f80..172283f 100644
--- a/jdk/src/java.base/share/classes/javax/net/ssl/SSLEngineResult.java
+++ b/jdk/src/java.base/share/classes/javax/net/ssl/SSLEngineResult.java
@@ -151,7 +151,7 @@
 
         /**
          * The {@code SSLEngine} needs to unwrap before handshaking can
-         * can continue.
+         * continue.
          * <P>
          * This value is used to indicate that not-yet-interpreted data
          * has been previously received from the remote side, and does
diff --git a/jdk/src/java.base/share/classes/javax/security/auth/Policy.java b/jdk/src/java.base/share/classes/javax/security/auth/Policy.java
index 30db698..7180025 100644
--- a/jdk/src/java.base/share/classes/javax/security/auth/Policy.java
+++ b/jdk/src/java.base/share/classes/javax/security/auth/Policy.java
@@ -152,10 +152,11 @@
  *
  * These two APIs provide callers the means to query the
  * Policy for Principal-based Permission entries.
+ * This class is subject to removal in a future version of Java SE.
  *
  * @see java.security.Security security properties
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public abstract class Policy {
 
     private static Policy policy;
diff --git a/jdk/src/java.base/share/classes/jdk/internal/jrtfs/JrtUtils.java b/jdk/src/java.base/share/classes/jdk/internal/jrtfs/JrtUtils.java
index f1cd810..29f681f 100644
--- a/jdk/src/java.base/share/classes/jdk/internal/jrtfs/JrtUtils.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/jrtfs/JrtUtils.java
@@ -45,7 +45,7 @@
     private static boolean isGlobMeta(char c) {
         return globMetaChars.indexOf(c) != -1;
     }
-    private static final char EOL = 0;  //TBD
+    private static final char EOL = 0;
     private static char next(String glob, int i) {
         if (i < glob.length()) {
             return glob.charAt(i);
diff --git a/jdk/src/java.base/share/classes/jdk/internal/misc/VM.java b/jdk/src/java.base/share/classes/jdk/internal/misc/VM.java
index 2a839fd..82df6e9 100644
--- a/jdk/src/java.base/share/classes/jdk/internal/misc/VM.java
+++ b/jdk/src/java.base/share/classes/jdk/internal/misc/VM.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -487,8 +487,6 @@
      *
      * If VM options file is specified via -XX:VMOptionsFile, the vm options
      * file is read and expanded in place of -XX:VMOptionFile option.
-     *
-     * Open issue with -XX:Flags (see JDK-8157979)
      */
     public static native String[] getRuntimeArguments();
 
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_de.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_de.properties
index a4cc1a0..13436be 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_de.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Verwendung: {0} [-options] class [args...]\n           (zur Ausf\u00FChrung einer Klasse)\n   oder  {0} [-options] -jar jarfile [args...]\n           (zur Ausf\u00FChrung einer JAR-Datei)\nwobei options Folgendes umfasst:\n
+java.launcher.opt.header  =   Verwendung: {0} [options] class [args...]\n           (zur Ausf\u00FChrung einer Klasse)\n   oder  {0} [options] -jar jarfile [args...]\n           (zur Ausf\u00FChrung einer JAR-Datei)\n   oder  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (zur Ausf\u00FChrung der Hauptklasse in einem Modul)\nwobei "options" Folgendes umfasst:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  Verwendet ein {0}-Bit-Datenmodell, sofern verf\u00FCgbar\n
 java.launcher.opt.vmselect   =\    {0}\t  zur Auswahl der "{1}" VM\n
@@ -34,10 +34,11 @@
 java.launcher.ergo.message2  =\                  weil die Ausf\u00FChrung auf einem Server-Class-Rechner erfolgt.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n    -classpath <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n                  Eine durch {0} getrennte Liste mit Verzeichnissen, JAR-Archiven\n                  und ZIP-Archiven zur Suche nach Klassendateien.\n    -D<name>=<value>\n                  Legt eine Systemeigenschaft fest\n    -verbose:[class|gc|jni]\n                  Aktiviert die Verbose-Ausgabe\n    -version      Druckt Produktversion und beendet das Programm\n    -version:<value>\n                  Erfordert die angegebene Version zur Ausf\u00FChrung\n    -showversion  Druckt Produktversion und f\u00E4hrt fort\n    -jre-restrict-search | -no-jre-restrict-search\n                  Bezieht private JREs des Benutzers in Versionssuche ein bzw. schlie\u00DFt sie aus\n    -? -help      Druckt diese Hilfemeldung\n    -X            Druckt Hilfe zu Nicht-Standardoptionen\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  Aktiviert Assertionen mit angegebener Granularit\u00E4t\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  Deaktiviert Assertionen mit angegebener Granularit\u00E4t\n    -esa | -enablesystemassertions\n                  Aktiviert Systemassertionen\n    -dsa | -disablesystemassertions\n                  Deaktiviert Systemassertionen\n    -agentlib:<libname>[=<options>]\n                  L\u00E4dt native Agent Library <libname>, z.B. -agentlib:hprof\n                  siehe auch -agentlib:jdwp=help und -agentlib:hprof=help\n    -agentpath:<pathname>[=<options>]\n                  L\u00E4dt native Agent Library nach vollem Pfadnamen\n    -javaagent:<jarpath>[=<options>]\n                  L\u00E4dt Java-Programmiersprachen-Agent, siehe java.lang.instrument\n    -splash:<imagepath>\n                  Zeigt Startbildschirm mit angegebenem Bild\nWeitere Einzelheiten finden Sie unter http://www.oracle.com/technetwork/java/javase/documentation/index.html
+java.launcher.opt.footer     =\    -cp <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n    -classpath <Klassensuchpfad von Verzeichnissen und ZIP-/JAR-Dateien>\n                  Eine durch {0} getrennte Liste mit Verzeichnissen, JAR-Archiven\n                  und ZIP-Archiven zur Suche nach Klassendateien.\n    -mp <Modulpfad>\n    -modulepath <Modulpfad>...\n                  Eine durch {0} getrennte Liste mit Verzeichnissen, in der jedes Verzeichnis\n                  ein Modulverzeichnis darstellt.\n    -upgrademodulepath <Modulpfad>...\n                  Eine durch {0} getrennte Liste mit Verzeichnissen, in der jedes Verzeichnis\n                  ein Verzeichnis von Modulen darstellt, die upgradef\u00E4hige\n                  Module im Laufzeitimage ersetzen\n    -m <modulename> | <modulename>/<mainclass>\n                  das anf\u00E4ngliche oder Hauptmodul, das aufgel\u00F6st werden soll\n    -addmods <modulename>[,<modulename>...]\n                  Root-Module, die zus\u00E4tzlich zum anf\u00E4nglichen Modul aufgel\u00F6st werden sollen\n    -limitmods <modulename>[,<modulename>...]\n                  Schr\u00E4nkt die Gesamtzahl der beachtbaren Module ein\n    -listmods[:<modulename>[,<modulename>...]]\n                  Listet die beachtbaren Module auf und beendet den Vorgang\n    -D<name>=<value>\n                  Legt eine Systemeigenschaft fest\n    -verbose:[class|gc|jni]\n                  Aktiviert die Verbose-Ausgabe\n    -version      Druckt Produktversion und beendet das Programm\n    -showversion  Druckt Produktversion und f\u00E4hrt fort\n    -? -help      Druckt diese Hilfemeldung\n    -X            Druckt Hilfe zu Nicht-Standardoptionen\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  Aktiviert Assertions mit angegebener Granularit\u00E4t\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  Deaktiviert Assertions mit angegebener Granularit\u00E4t\n    -esa | -enablesystemassertions\n                  Aktiviert System-Assertions\n    -dsa | -disablesystemassertions\n                  Deaktiviert System-Assertions\n    -agentlib:<libname>[=<options>]\n                  L\u00E4dt native Agent Library <libname>, z.B. -agentlib:jdwp\n                  siehe auch -agentlib:jdwp=help\n    -agentpath:<pathname>[=<options>]\n                  L\u00E4dt native Agent Library nach vollem Pfadnamen\n    -javaagent:<jarpath>[=<options>]\n                  L\u00E4dt Java-Programmiersprachen-Agent, siehe java.lang.instrument\n    -splash:<imagepath>\n                  Zeigt Startbildschirm mit angegebenem Bild an\n    @<filepath>   Liest Optionen aus der angegebenen Datei\n
+See Weitere Einzelheiten finden Sie unter http://www.oracle.com/technetwork/java/javase/documentation/index.html.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           Ausf\u00FChrung im gemischten Modus (Standard)\n    -Xint             Nur Ausf\u00FChrung im interpretierten Modus\n    -Xbootclasspath:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n                      Legt Suchpfad f\u00FCr Bootstrap-Klassen und Ressourcen fest\n    -Xbootclasspath/a:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n                      H\u00E4ngt an das Ende des Bootstrap Classpath an\n    -Xbootclasspath/p:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n                      Stellt Bootstrap Classpath voran\n    -Xdiag            Zeigt zus\u00E4tzliche Diagnosemeldungen an\n    -Xnoclassgc       Deaktiviert Klassen-Garbage Collection\n    -Xincgc           Aktiviert inkrementelle Garbage Collection\n    -Xloggc:<file>    Loggt GC-Status in einer Datei mit Zeitstempeln\n    -Xbatch           Deaktiviert Hintergrundkompilierung\n    -Xms<size>        Legt anf\u00E4ngliche Java Heap-Gr\u00F6\u00DFe fest\n    -Xmx<size>        Legt maximale Java Heap-Gr\u00F6\u00DFe fest\n    -Xss<size>        Legt Java-Thread-Stackgr\u00F6\u00DFe fest\n    -Xprof            Gibt CPU-Profiling-Daten aus\n    -Xfuture          Aktiviert strengste Pr\u00FCfungen, antizipiert zuk\u00FCnftigen Standardwert\n    -Xrs              Reduziert Verwendung von BS-Signalen durch Java/VM (siehe Dokumentation)\n    -Xcheck:jni       F\u00FChrt zus\u00E4tzliche Pr\u00FCfungen f\u00FCr JNI-Funktionen durch\n    -Xshare:off       Kein Versuch, gemeinsame Klassendaten zu verwenden\n    -Xshare:auto      Verwendet gemeinsame Klassendaten, wenn m\u00F6glich (Standard)\n    -Xshare:on        Erfordert die Verwendung gemeinsamer Klassendaten, sonst verl\u00E4uft der Vorgang nicht erfolgreich.\n    -XshowSettings    Zeigt alle Einstellungen und f\u00E4hrt fort\n    -XshowSettings:all\n                      Zeigt alle Einstellungen und f\u00E4hrt fort\n    -XshowSettings:vm Zeigt alle VM-bezogenen Einstellungen und f\u00E4hrt fort\n    -XshowSettings:properties\n                      Zeigt alle Eigenschaftseinstellungen und f\u00E4hrt fort\n    -XshowSettings:locale\n                      Zeigt alle gebietsschemabezogenen Einstellungen und f\u00E4hrt fort\n\nDie -X-Optionen sind keine Standardoptionen und k\u00F6nnen ohne Vorank\u00FCndigung ge\u00E4ndert werden.\n
+java.launcher.X.usage=\    -Xmixed           Ausf\u00FChrung im gemischten Modus (Standard)\n    -Xint             Nur Ausf\u00FChrung im interpretierten Modus\n    -Xbootclasspath/a:<Verzeichnisse und ZIP-/JAR-Dateien durch {0} getrennt>\n                      H\u00E4ngt an das Ende des Bootstrap Classpath an\n    -Xdiag            Zeigt zus\u00E4tzliche Diagnosemeldungen an\n    -Xdiag:resolver   Zeigt Resolver-Diagnosemeldungen an\n    -Xnoclassgc       Deaktiviert Klassen-Garbage Collection\n    -Xincgc           Aktiviert inkrementelle Garbage Collection\n    -Xloggc:<file>    Protokolliert GC-Status in einer Datei mit Zeitstempeln\n    -Xbatch           Deaktiviert Hintergrundkompilierung\n    -Xms<size>        Legt anf\u00E4ngliche Java-Heap-Gr\u00F6\u00DFe fest\n    -Xmx<size>        Legt maximale Java-Heap-Gr\u00F6\u00DFe fest\n    -Xss<size>        Legt Java-Threadstackgr\u00F6\u00DFe fest\n    -Xprof            Gibt CPU-Profilingdaten aus\n    -Xfuture          Aktiviert strengste Pr\u00FCfungen, antizipiert zuk\u00FCnftigen Standardwert\n    -Xrs              Reduziert Verwendung von BS-Signalen durch Java/VM (siehe Dokumentation)\n    -Xcheck:jni       F\u00FChrt zus\u00E4tzliche Pr\u00FCfungen f\u00FCr JNI-Funktionen durch\n    -Xshare:off       Kein Versuch, gemeinsame Klassendaten zu verwenden\n    -Xshare:auto      Verwendet gemeinsame Klassendaten, wenn m\u00F6glich (Standard)\n    -Xshare:on        Erfordert die Verwendung gemeinsamer Klassendaten, sonst verl\u00E4uft der Vorgang nicht erfolgreich.\n    -XshowSettings    Zeigt alle Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:all\n                      Zeigt alle Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:vm Zeigt alle VM-bezogenen Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:properties\n                      Zeigt alle Eigenschaftseinstellungen an und f\u00E4hrt fort\n    -XshowSettings:locale\n                      Zeigt alle gebietsschemabezogenen Einstellungen an und f\u00E4hrt fort\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module> liest andere Module\n                      unabh\u00E4ngig von der Moduldeklaration\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module> exportiert <package> in andere Module\n                      unabh\u00E4ngig von der Moduldeklaration\n    -Xpatch:<module>=<file>({0}<file>)*\n                      Modul mit Klassen und Ressourcen in JAR-Dateien oder Verzeichnissen\n                      au\u00DFer Kraft setzen oder erg\u00E4nzen\n    -Xdisable-@files  Deaktiviert weitere Argumentdateierweiterung\n\nDie -X-Optionen sind keine Standardoptionen und k\u00F6nnen ohne Vorank\u00FCndigung ge\u00E4ndert werden.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\nDie folgenden Optionen sind f\u00FCr Mac OS X spezifisch:\n    -XstartOnFirstThread\n                      f\u00FChrt die main()-Methode f\u00FCr den ersten (AppKit) Thread aus\n    -Xdock:name=<Anwendungsname>"\n                      \u00DCberschreibt den in der Uhr angezeigten Standardanwendungsnamen\n    -Xdock:icon=<Pfad zu Symboldatei>\n                      \u00DCberschreibt das in der Uhr angezeigte Standardsymbol\n\n
@@ -52,3 +53,5 @@
 java.launcher.jar.error3=kein Hauptmanifestattribut, in {0}
 java.launcher.init.error=Initialisierungsfehler
 java.launcher.javafx.error1=Fehler: Die JavaFX-Methode launchApplication hat die falsche Signatur, sie\nmuss als statisch deklariert werden und einen Wert vom Typ VOID zur\u00FCckgeben
+java.launcher.module.error1=Modul {0} weist kein MainClass-Attribut auf. Verwenden Sie -m <module>/<main-class>
+java.launcher.module.error2=Fehler: Hauptklasse {0} konnte in Modul {1} nicht gefunden oder geladen werden
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_es.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_es.properties
index 6027c4e..1b91747 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_es.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_es.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Sintaxis: {0} [-options] class [args...]\n           (para ejecutar una clase)\n   o  {0} [-options] -jar jarfile [args...]\n           (para ejecutar un archivo jar)\ndonde las opciones incluyen:\n
+java.launcher.opt.header  =   Sintaxis: {0} [opciones] class [args...]\n           (para ejecutar una clase)\n   or  {0} [opciones] -jar jarfile [args...]\n           (para ejecutar un archivo jar)\n   or  {0} [-options] -mp <ruta_m\u00F3dulo> -m <nombre_m\u00F3dulo> | <nombre_m\u00F3dulo>/<clase_principal>\n           (para ejecutar una clase principal en un m\u00F3dulo)\ndonde opciones incluye:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  usar un modelo de datos de {0} bits, si est\u00E1 disponible\n
 java.launcher.opt.vmselect   =\    {0}\t  para seleccionar la VM "{1}"\n
@@ -34,10 +34,11 @@
 java.launcher.ergo.message2  =\                  porque la ejecuci\u00F3n se est\u00E1 llevando a cabo en una m\u00E1quina de clase de servidor.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <ruta de acceso de b\u00FAsqueda de clases de los directorios y los archivos zip/jar>\n    -classpath <ruta de acceso de b\u00FAsqueda de clases de los directorios y los archivos zip/jar>\n                  Lista separada por {0} de directorios, archivos JAR\n                  y archivos ZIP para buscar archivos de clase.\n    -D<nombre>=<valor>\n                  definir una propiedad del sistema\n    -verbose:[class|gc|jni]\n                  activar la salida verbose\n    -version      imprimir la versi\u00F3n del producto y salir\n    -version:<valor>\n                  es necesario que se ejecute la versi\u00F3n especificada\n    -showversion  imprimir la versi\u00F3n del producto y continuar\n    -jre-restrict-search | -no-jre-restrict-search\n                  incluir/excluir JRE privados de usuario en la b\u00FAsqueda de versi\u00F3n\n    -? -help      imprimir este mensaje de ayuda\n    -X            imprimir la ayuda sobre las opciones que no sean est\u00E1ndar\n    -ea[:<nombre_paquete>...|:<nombre_clase>]\n    -enableassertions[:<nombre_paquete>...|:<nombre_clase>]\n                  activar afirmaciones con la granularidad especificada\n    -da[:<nombre_paquete>...|:<nombre_clase>]\n    -disableassertions[:<nombre_paquete>...|:<nombre_clase>]\n                  desactivar afirmaciones con la granularidad especificada\n    -esa | -enablesystemassertions\n                  activar afirmaciones del sistema\n    -dsa | -disablesystemassertions\n                  desactivar afirmaciones del sistema\n    -agentlib:<nombre_bib>[=<opciones>]\n                  cargar la biblioteca de agente nativa <nombre_bib>, como -agentlib:hprof\n                  v\u00E9ase tambi\u00E9n -agentlib:jdwp=help y -agentlib:hprof=help\n    -agentpath:<nombre_ruta_acceso>[=<opciones>]\n                  cargar biblioteca de agente nativa con el nombre de la ruta de acceso completa\n    -javaagent:<ruta_acceso_jar>[=<opciones>]\n                  cargar agente de lenguaje de programaci\u00F3n Java, v\u00E9ase java.lang.instrument\n    -splash:<ruta_acceso_imagen>\n                  mostrar una pantalla de presentaci\u00F3n con la imagen especificada\nConsulte http://www.oracle.com/technetwork/java/javase/documentation/index.html para obtener m\u00E1s informaci\u00F3n.
+java.launcher.opt.footer     =\    -cp <ruta de b\u00FAsqueda de clases de los directorios y los archivos zip/jar>\n    -classpath <ruta de b\u00FAsqueda de clases de los directorios y los archivos zip/jar>\n                  Lista separada por {0} de directorios, archivos JAR\n                  y archivos ZIP para buscar archivos de clase.\n    -mp <ruta de m\u00F3dulo>\n    -modulepath <ruta de m\u00F3dulo>...\n                  Lista de directorios separados por {0}, cada directorio\n                  es un directorio de m\u00F3dulos.\n    -upgrademodulepath <ruta de m\u00F3dulo>...\n                  Lista de directorios separados por {0}, cada directorio\n                  es un directorio de m\u00F3dulos que sustituye a los m\u00F3dulos\n                  actualizables en la imagen de tiempo de ejecuci\u00F3n\n    -m <nombre_m\u00F3dulo> | <nombre_m\u00F3dulo>/<clase_principal>\n                  m\u00F3dulo principal o inicial que resolver\n    -addmods <nombre_m\u00F3dulo>[,<nombre_m\u00F3dulo>...]\n                  m\u00F3dulos ra\u00EDz que resolver, adem\u00E1s del m\u00F3dulo inicial\n    -limitmods <nombre_m\u00F3dulo>[,<nombre_m\u00F3dulo>...]\n                  limita el universo de los m\u00F3dulos observables\n    -listmods[:<nombre_m\u00F3dulo>[,<nombre_m\u00F3dulo>...]]\n                  muestra los m\u00F3dulos observables y sale\n    -D<nombre>=<valor>\n                  define una propiedad del sistema\n    -verbose:[class|gc|jni]\n                  activa la salida verbose\n    -version      imprime la versi\u00F3n del producto y sale\n    -showversion  imprime la versi\u00F3n del producto y sale\n    -? -help      imprime este mensaje de ayuda\n    -X            imprime la ayuda de opciones no est\u00E1ndar\n    -ea[:<nombre_paquete>...|:<nombre_clase>]\n    -enableassertions[:<nombre_paquete>...|:<nombre_clase>]\n                  activar afirmaciones con la granularidad especificada\n    -da[:<nombre_paquete>...|:<nombre_clase>]\n    -disableassertions[:<nombre_paquete>...|:<nombre_clase>]\n                  desactivar afirmaciones con la granularidad especificada\n    -esa | -enablesystemassertions\n                  activar afirmaciones del sistema\n    -dsa | -disablesystemassertions\n                  desactivar afirmaciones del sistema\n    -agentlib:<nombre_bib>[=<opciones>]\n                  cargar biblioteca de agentes nativos <nombre_bib>, p. ej,. -agentlib:jdwp\n                  ver tambi\u00E9n -agentlib:jdwp=help\n    -agentpath:<nombre_ruta>[=<opciones>]\n                  cargar biblioteca de agentes nativos por ruta completa\n    -javaagent:<ruta_jar>[=<opciones>]\n                  cargar agente de lenguaje de programaci\u00F3n Java, ver java.lang.instrument\n    -splash:<ruta_imagen>\n                  mostrar pantalla de bienvenida con la imagen especificada\n    @<ruta_archivo>   leer opciones del archivo especificado\n
+See http://www.oracle.com/technetwork/java/javase/documentation/index.html para obtener m\u00E1s informaci\u00F3n.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           ejecuci\u00F3n de modo mixto (por defecto)\n    -Xint             s\u00F3lo ejecuci\u00F3n de modo interpretado\n    -Xbootclasspath:<directorios y archivos zip/jar separados por {0}>\n                      definir la ruta de acceso de b\u00FAsqueda para los recursos y clases de inicializaci\u00F3n de datos\n    -Xbootclasspath/a:<directorios y archivos zip/jar separados por {0}>\n                      agregar al final de la ruta de acceso de la clase de inicializaci\u00F3n de datos\n    -Xbootclasspath/p:<directorios y archivos zip/jar separados por {0}>\n                      anteponer a la ruta de acceso de la clase de inicializaci\u00F3n de datos\n    -Xdiag            mostrar mensajes de diagn\u00F3stico adicionales\n    -Xnoclassgc       desactivar la recolecci\u00F3n de basura de clases\n    -Xincgc           activar la recolecci\u00F3n de basura de clases\n    -Xloggc:<archivo> registrar el estado de GC en un archivo con registros de hora\n    -Xbatch           desactivar compilaci\u00F3n en segundo plano\n    -Xms<tama\u00F1o>      definir tama\u00F1o de pila Java inicial\n    -Xmx<tama\u00F1o>      definir tama\u00F1o de pila Java m\u00E1ximo\n    -Xss<tama\u00F1o>      definir tama\u00F1o de la pila del thread de Java\n    -Xprof            datos de salida de creaci\u00F3n de perfil de CPU\n    -Xfuture          activar las comprobaciones m\u00E1s estrictas, anticip\u00E1ndose al futuro valor por defecto\n    -Xrs              reducir el uso de se\u00F1ales de sistema operativo por parte de Java/VM (consulte la documentaci\u00F3n)\n    -Xcheck:jni       realizar comprobaciones adicionales para las funciones de JNI\n    -Xshare:off       no intentar usar datos de clase compartidos\n    -Xshare:auto      usar datos de clase compartidos si es posible (valor por defecto)\n    -Xshare:on        es obligatorio el uso de datos de clase compartidos, de lo contrario se emitir\u00E1 un fallo.\n    -XshowSettings    mostrar todos los valores y continuar\n    -XshowSettings:all\n                      mostrar todos los valores y continuar\n    -XshowSettings:vm mostrar todos los valores de la VM y continuar\n    -XshowSettings:properties\n                      mostrar todos los valores de las propiedades y continuar\n    -XshowSettings:locale\n                      mostrar todos los valores relacionados con la configuraci\u00F3n regional y continuar\n\nLas opciones -X no son est\u00E1ndar, por lo que podr\u00EDan cambiarse sin previo aviso.\n
+java.launcher.X.usage=\    -Xmixed           ejecuci\u00F3n de modo mixto (por defecto)\n    -Xint             solo ejecuci\u00F3n de modo interpretado\n    -Xbootclasspath/a:<directorios y archivos zip/jar separados por {0}>\n                      agregar al final de la ruta de la clase de inicializaci\u00F3n de datos\n    -Xdiag            mostrar mensajes de diagn\u00F3stico adicionales\n    -Xdiag:resolver   mostrar mensajes de diagn\u00F3stico de resoluci\u00F3n\n    -Xnoclassgc       desactivar la recopilaci\u00F3n de basura de clases\n    -Xincgc           activar la recopilaci\u00F3n de basura de clases\n    -Xloggc:<archivo>    registrar el estado de GC en un archivo con registros de hora\n    -Xbatch           desactivar compilaci\u00F3n en segundo plano\n    -Xms<tama\u00F1o>      definir tama\u00F1o de pila Java inicial\n    -Xmx<tama\u00F1o>      definir tama\u00F1o de pila Java m\u00E1ximo\n    -Xss<tama\u00F1o>      definir tama\u00F1o de la pila del thread de Java\n    -Xfuture          activar las comprobaciones m\u00E1s estrictas, anticip\u00E1ndose al futuro valor por defecto\n    -Xrs              reducir el uso de se\u00F1ales de sistema operativo por parte de Java/VM (consulte la documentaci\u00F3n)\n    -Xcheck:jni       realizar comprobaciones adicionales para las funciones de JNI\n    -Xshare:off       no intentar usar datos de clase compartidos\n    -Xshare:auto      usar datos de clase compartidos si es posible (valor por defecto)\n    -Xshare:on        es obligatorio el uso de datos de clase compartidos, de lo contrario se emitir\u00E1 un fallo.\n    -XshowSettings    mostrar todos los valores y continuar\n    -XshowSettings:all\n                      mostrar todos los valores y continuar\n    -XshowSettings:vm mostrar todos los valores de la VM y continuar\n    -XshowSettings:properties\n                      mostrar todos los valores de las propiedades y continuar\n    -XshowSettings:locale\n                      mostrar todos los valores relacionados con la configuraci\u00F3n regional y continuar\n    -XaddReads:<m\u00F3dulo>=<otros-m\u00F3dulos>(,<otros-m\u00F3dulos>)*\n                      <m\u00F3dulo> lee otros m\u00F3dulos,\n                      independientemente de su declaraci\u00F3n\n    -XaddExports:<m\u00F3dulo>/<paquete>=<otros-m\u00F3dulos>(,<otros-m\u00F3dulos>)*\n                      <m\u00F3dulo> exporta <paquete> a otros m\u00F3dulos,\n                      independientemente de su declaraci\u00F3n\n    -Xpatch:<m\u00F3dulo>=<archivo>({0}<archivo>)*\n                      Sustituye o aumenta un m\u00F3dulo con clases y recursos\n                      en directorios o archivos JAR\n    -Xdisable-@files  desactiva la ampliaci\u00F3n de archivos de argumentos\n\nLas opciones -X no son est\u00E1ndar, por lo que podr\u00EDan cambiarse sin previo aviso.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\nLas siguientes opciones son espec\u00EDficas para Mac OS X:\n    -XstartOnFirstThread\n                      ejecuta el m\u00E9todo main() del primer thread (AppKit)\n    -Xdock:name=<nombre de aplicaci\u00F3n>"\n                      sustituye al nombre por defecto de la aplicaci\u00F3n que se muestra en el Dock\n    -Xdock:icon=<ruta de acceso a archivo de icono>\n                      sustituye al icono por defecto que se muestra en el Dock\n\n
@@ -52,3 +53,5 @@
 java.launcher.jar.error3=no hay ning\u00FAn atributo de manifiesto principal en {0}
 java.launcher.init.error=error de inicializaci\u00F3n
 java.launcher.javafx.error1=Error: el m\u00E9todo launchApplication de JavaFX tiene una firma que no es correcta.\\nSe debe declarar est\u00E1tico y devolver un valor de tipo nulo
+java.launcher.module.error1=el m\u00F3dulo {0} no tiene ning\u00FAn atributo MainClass, utilice -m <m\u00F3dulo>/<clase-principal>
+java.launcher.module.error2=Error: no se ha encontrado o cargado la clase principal {0} en el m\u00F3dulo {1}
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties
index e813ba1..b050b87 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Syntaxe : {0} [-options] class [args...]\n           (pour l''ex\u00E9cution d''une classe)\n   ou  {0} [-options] -jar jarfile [args...]\n           (pour l''ex\u00E9cution d''un fichier JAR)\no\u00F9 les options comprennent :\n
+java.launcher.opt.header  =   Syntaxe : {0} [options] class [args...]\n           (pour l''ex\u00E9cution d''une classe)\n   ou  {0} [options] -jar jarfile [args...]\n           (pour l''ex\u00E9cution d''un fichier JAR)\n   ou  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (pour l''ex\u00E9cution de la classe principale dans un module)\no\u00F9 les options incluent :\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  utilisez le mod\u00E8le de donn\u00E9es {0} bits s''il est disponible\n
 java.launcher.opt.vmselect   =\    {0}\t  pour s\u00E9lectionner la machine virtuelle "{1}"\n
@@ -34,10 +34,11 @@
 java.launcher.ergo.message2  =\                  car vous ex\u00E9cutez une machine de classe de serveur.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <class search path of directories and zip/jar files>\n    -classpath <class search path of directories and zip/jar files>\n                  Liste de r\u00E9pertoires, d''archives JAR et\n                   d''archives ZIP s\u00E9par\u00E9s par des {0}, dans laquelle rechercher les fichiers de classe.\n    -D<name>=<value>\n                  d\u00E9finition d''une propri\u00E9t\u00E9 syst\u00E8me\n    -verbose:[class|gc|jni]\n                  activation de la sortie en mode verbose\n    -version      impression de la version du produit et fin de l''op\u00E9ration\n    -version:<value>\n                  ex\u00E9cution de la version sp\u00E9cifi\u00E9e obligatoire\n    -showversion  impression de la version du produit et poursuite de l''op\u00E9ration\n    -jre-restrict-search | -no-jre-restrict-search\n                  inclusion/exclusion des environnements JRE priv\u00E9s de l''utilisateur dans la recherche de version\n    -? -help      impression du message d''aide\n    -X            impression de l''aide sur les options non standard\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  activation des assertions avec la granularit\u00E9 sp\u00E9cifi\u00E9e\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  d\u00E9sactivation des assertions avec la granularit\u00E9 sp\u00E9cifi\u00E9e\n    -esa | -enablesystemassertions\n                  activation des assertions syst\u00E8me\n    -dsa | -disablesystemassertions\n                  d\u00E9sactivation des assertions syst\u00E8me\n    -agentlib:<libname>[=<options>]\n                  chargement de la biblioth\u00E8que d''agent natif <libname>, par exemple -agentlib:hprof\n                  voir \u00E9galement, -agentlib:jdwp=help et -agentlib:hprof=help\n    -agentpath:<pathname>[=<options>]\n                  chargement de la biblioth\u00E8que d''agent natif via le chemin d''acc\u00E8s complet\n    -javaagent:<jarpath>[=<options>]\n                  chargement de l''agent du langage de programmation Java, voir java.lang.instrument\n    -splash:<imagepath>\n                  affichage de l''\u00E9cran d''accueil avec l''image sp\u00E9cifi\u00E9e\nVoir http://www.oracle.com/technetwork/java/javase/documentation/index.html pour plus de d\u00E9tails.
+java.launcher.opt.footer     =\    -cp <chemin de recherche de classe de r\u00E9pertoire et de fichiers ZIP/JAR>\n    -classpath <chemin de recherche de classe de r\u00E9pertoire et de fichiers ZIP/JAR>\n                  Liste de r\u00E9pertoires, d''archives JAR et\n                  d''archives ZIP s\u00E9par\u00E9s par des {0}, dans laquelle rechercher des fichiers de classe.\n    -mp <chemin de module>\n    -modulepath <chemin de module>...\n                  Liste de r\u00E9pertoires s\u00E9par\u00E9s par des {0}, chaque r\u00E9pertoire\n                  est un r\u00E9pertoire de modules.\n    -upgrademodulepath <chemin de module>...\n                  Liste de r\u00E9pertoires s\u00E9par\u00E9s par des {0}, chaque r\u00E9pertoire\n                  est un r\u00E9pertoire de modules qui remplace des modules\n                  pouvant \u00EAtre mis \u00E0 niveau dans l''image d''ex\u00E9cution\n    -m <modulename> | <modulename>/<mainclass>\n                  modules racines \u00E0 r\u00E9soudre en plus du module initial\n    -addmods <modulename>[,<modulename>...]\n                  modules racines \u00E0 r\u00E9soudre en plus du module initial\n    -limitmods <modulename>[,<modulename>...]\n                  limitation de l''univers de modules observables\n    -listmods[:<modulename>[,<modulename>...]]\n                  \u00E9num\u00E9ration des modules observables et fin de l''op\u00E9ration\n    -D<name>=<value>\n                  d\u00E9finition d''une propri\u00E9t\u00E9 syst\u00E8me\n    -verbose:[class|gc|jni]\n                  activation de la sortie en mode verbose\n    -version      impression de la version du produit et fin de l''op\u00E9ration\n    -showversion  impression de la version du produit et poursuite de l''op\u00E9ration\n    -? -help      impression du message d''aide\n    -X            impression de l''aide sur les options non standard\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  activation des assertions avec la granularit\u00E9* sp\u00E9cifi\u00E9e\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  d\u00E9sactivation des assertions avec la granularit\u00E9 sp\u00E9cifi\u00E9e\n    -esa | -enablesystemassertions\n                  activation des assertions syst\u00E8me\n    -dsa | -disablesystemassertions\n                  d\u00E9sactivation des assertions syst\u00E8me\n    -agentlib:<libname>[=<options>]\n                  chargement de la biblioth\u00E8que d''agent natif <libname>, par exemple -agentlib:jdwp\n                  voir aussi, -agentlib:jdwp=help\n    -agentpath:<pathname>[=<options>]\n                  chargement de la biblioth\u00E8que d''agent natif via le chemin d''acc\u00E8s complet\n    -javaagent:<jarpath>[=<options>]\n                  chargement de l''agent du langage de programmation Java, voir java.lang.instrument\n    -splash:<imagepath>\n                  affichage de l''\u00E9cran d''accueil avec l''image indiqu\u00E9e\n    @<filepath>   lire les options \u00E0 partir du fichier indiqu\u00E9\n
+See http://www.oracle.com/technetwork/java/javase/documentation/index.html pour plus de d\u00E9tails.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           ex\u00E9cution en mode mixte (valeur par d\u00E9faut)\n    -Xint             ex\u00E9cution en mode interpr\u00E9t\u00E9 uniquement\n    -Xbootclasspath:<directories and zip/jar files separated by {0}>\n                      d\u00E9finition du chemin de recherche pour les ressources et classes bootstrap\n    -Xbootclasspath/a:<directories and zip/jar files separated by {0}>\n                      ajout \u00E0 la fin du chemin de classe bootstrap\n    -Xbootclasspath/p:<directories and zip/jar files separated by {0}>\n                      ajout au d\u00E9but du chemin de classe bootstrap\n    -Xdiag            affichage de messages de diagnostic suppl\u00E9mentaires\n    -Xnoclassgc       d\u00E9sactivation de l''op\u00E9ration de ramasse-miette (garbage collection) de la classe\n    -Xincgc           activation de l''op\u00E9ration de ramasse-miette (garbage collection) incr\u00E9mentielle\n    -Xloggc:<file>    journalisation du statut de l''op\u00E9ration de ramasse-miette (garbage collection) dans un fichier avec horodatages\n    -Xbatch           d\u00E9sactivation de la compilation en arri\u00E8re-plan\n    -Xms<size>        d\u00E9finition de la taille initiale des portions de m\u00E9moire Java\n    -Xmx<size>        d\u00E9finition de la taille maximale des portions de m\u00E9moire Java\n    -Xss<size>        d\u00E9finition de la taille de pile de thread Java\n    -Xprof            sortie des donn\u00E9es de profilage de l''unit\u00E9 centrale\n    -Xfuture          activation des contr\u00F4les les plus stricts en vue d''anticiper la future valeur par d\u00E9faut\n    -Xrs              r\u00E9duction de l''utilisation des signaux OS par Java/la machine virtuelle (voir documentation)\n    -Xcheck:jni       ex\u00E9cution de contr\u00F4les suppl\u00E9mentaires pour les fonctions JNI\n    -Xshare:off       aucune tentative d''utilisation des donn\u00E9es de classe partag\u00E9es\n    -Xshare:auto      utilisation des donn\u00E9es de classe partag\u00E9es si possible (valeur par d\u00E9faut)\n    -Xshare:on        utilisation des donn\u00E9es de classe partag\u00E9es obligatoire ou \u00E9chec de l''op\u00E9ration\n    -XshowSettings    affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:all\n                      affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:vm affichage de tous les param\u00E8tres de machine virtuelle et poursuite de l''op\u00E9ration\n    -XshowSettings:properties\n                      affichage de tous les param\u00E8tres de propri\u00E9t\u00E9 et poursuite de l''op\u00E9ration\n    -XshowSettings:locale\n                      affichage de tous les param\u00E8tres d''environnement local et poursuite de l''op\u00E9ration\n\nLes options -X ne sont pas des options standard et peuvent faire l''objet de modifications sans pr\u00E9avis.\n
+java.launcher.X.usage=\    -Xmixed           ex\u00E9cution en mode mixte (valeur par d\u00E9faut)\n    -Xint             ex\u00E9cution en mode interpr\u00E9t\u00E9 uniquement\n    -Xbootclasspath/a:<r\u00E9pertoires et fichiers ZIP/JAR s\u00E9par\u00E9s par des {0}>\n                      ajout \u00E0 la fin du chemin de classe bootstrap\n    -Xdiag            affichage de messages de diagnostic suppl\u00E9mentaires\n    -Xdiag:resolver   affichage de messages de diagnostic du r\u00E9solveur\n    -Xnoclassgc       d\u00E9sactivation du nettoyage de la m\u00E9moire de la classe\n    -Xincgc           activation du nettoyage de la m\u00E9moire incr\u00E9mentiel\n    -Xloggc:<file>    journalisation du statut de nettoyage de la m\u00E9moire dans un fichier avec horodatage\n    -Xbatch           d\u00E9sactivation de la compilation en arri\u00E8re-plan\n    -Xms<size>        d\u00E9finition de la taille initiale des portions de m\u00E9moire Java\n    -Xmx<size>        d\u00E9finition de la taille maximale des portions de m\u00E9moire Java\n    -Xss<size>        d\u00E9finition de la taille de pile de threads Java\n    -Xprof            sortie des donn\u00E9es de profilage d''UC\n    -Xfuture          activation des contr\u00F4les les plus stricts en vue d''anticiper la future valeur par d\u00E9faut\n    -Xrs              r\u00E9duction de l''utilisation des signaux d''OS par Java/la machine virtuelle (voir documentation)\n    -Xcheck:jni       ex\u00E9cution de contr\u00F4les suppl\u00E9mentaires pour les fonctions JNI\n    -Xshare:off       aucune tentative d''utilisation des donn\u00E9es de classe partag\u00E9e\n    -Xshare:auto      utilisation des donn\u00E9es de classe partag\u00E9e si possible (valeur par d\u00E9faut)\n    -Xshare:on        utilisation des donn\u00E9es de classe partag\u00E9e obligatoire ou \u00E9chec de l''op\u00E9ration\n    -XshowSettings    affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:all\n                      affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:vm affichage de tous les param\u00E8tres de machine virtuelle et poursuite de l''op\u00E9ration\n    -XshowSettings:properties\n                      affichage de tous les param\u00E8tres de propri\u00E9t\u00E9 et poursuite de l''op\u00E9ration\n    -XshowSettings:locale\n                      affichage de tous les param\u00E8tres d''environnement local et poursuite de l''op\u00E9ration\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module> lecture de tous les modules,\n                      quelle que soit la d\u00E9claration de module\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module> exporte <package> vers d''autres modules,\n                      quelle que soit la d\u00E9claration de module\n    -Xpatch:<module>=<file>({0}<file>)*\n                      Remplacement ou augmentation d''un module avec des classes et des ressources\n                      dans des fichiers ou r\u00E9pertoires JAR\n    -Xdisable-@files  d\u00E9sactivation d''autres d\u00E9veloppements de fichier d''argument\n\nLes options -X ne sont pas standard et sont susceptibles de modification sans pr\u00E9avis.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\nLes options suivantes sont propres \u00E0 Mac OS X :\n    -XstartOnFirstThread\n                      ex\u00E9cute la m\u00E9thode main() sur le premier thread (AppKit)\n    -Xdock:name=<application name>"\n                      remplace le nom d'application par d\u00E9faut affich\u00E9 dans l'ancrage\n    -Xdock:icon=<path to icon file>\n                      remplace l'ic\u00F4ne par d\u00E9faut affich\u00E9e dans l'ancrage\n\n
@@ -52,3 +53,5 @@
 java.launcher.jar.error3=aucun attribut manifest principal dans {0}
 java.launcher.init.error=erreur d'initialisation
 java.launcher.javafx.error1=Erreur : la signature de la m\u00E9thode launchApplication JavaFX est incorrecte, la\nm\u00E9thode doit \u00EAtre d\u00E9clar\u00E9e statique et renvoyer une valeur de type void
+java.launcher.module.error1=le module {0} n''a pas d''attribut MainClass, utilisez -m <module>/<main-class>
+java.launcher.module.error2=Erreur : impossible de trouver ou charger la classe principale {0} dans le module {1}
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_it.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_it.properties
index 83b62f0..af3b15c 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_it.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_it.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Uso: {0} [-opzioni] class [argomenti...]\n           (per eseguire una classe)\n   oppure  {0} [-opzioni] -jar filejar [argomenti...]\n           (per eseguire un file jar)\ndove le opzioni sono:\n
+java.launcher.opt.header  =   Uso: {0} [options] class [args...]\n           (per eseguire una classe)\n   oppure  {0} [options] -jar jarfile [args...]\n           (per eseguire un file jar)\n   oppure  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (per eseguire la classe principale in un modulo)\nin cui options include:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  usare un modello di dati {0}-bit se disponibile\n
 java.launcher.opt.vmselect   =\    {0}\t  per selezionare la VM "{1}"\n
@@ -34,10 +34,11 @@
 java.launcher.ergo.message2  =\                  perch\u00E9 si utilizza un computer di classe server.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <classpath di ricerca di directory e file zip/jar>\n    -classpath <classpath di ricerca di directory e file zip/jar>\n                  Una lista separata da {0} di directory, archivi JAR,\n                  e archivi ZIP utilizzata per la ricerca di file di classe.\n    -D<nome>=<valore>\n                  imposta una propriet\u00E0 di sistema\n    -verbose:[class|gc|jni]\n                  abilita l''output descrittivo\n    -version      stampa la versione del prodotto ed esce\n    -version:<valore>\n                  richiede l''esecuzione della versione specificata\n    -showversion  stampa la versione del prodotto e continua\n    -jre-restrict-search | -no-jre-restrict-search\n                  include/esclude gli ambienti JRE privati dell''utente nella ricerca della versione\n    -? -help      stampa questo messaggio della Guida\n    -X            stampa la Guida sulle opzioni non standard\n    -ea[:<nomepackage>...|:<nomeclasse>]\n    -enableassertions[:<nomepackage>...|:<nomeclasse>]\n                  abilita le asserzioni con la granularit\u00E0 specificata\n    -da[:<nomepackage>...|:<nomeclasse>]\n    -disableassertions[:<nomepackage>...|:<nomeclasse>]\n                  disabilita le asserzioni con la granularit\u00E0 specificata\n    -esa | -enablesystemassertions\n                  abilita le asserzioni di sistema\n    -dsa | -disablesystemassertions\n                  disabilita le asserzioni di sistema\n    -agentlib:<nomelib>[=<opzioni>]\n                  carica la libreria agenti nativa <nomelib>, ad esempio -agentlib:hprof\n                  vedere anche, -agentlib:jdwp=help and -agentlib:hprof=help\n    -agentpath:<nomepercorso>[=<opzioni>]\n                  carica la libreria agenti nativa con il percorso completo\n    -javaagent:<percorsojar>[=<opzioni>]\n                  carica l''agente del linguaggio di programmazione Java. Vedere java.lang.instrument\n    -splash:<percorsoimmagine>\n                  mostra la schermata iniziale con l''immagine specificata\nPer ulteriori dettagli, vedere http://www.oracle.com/technetwork/java/javase/documentation/index.html.
+java.launcher.opt.footer     =\    -cp <classpath di ricerca di directory e file zip/jar>\n    -classpath <classpath di ricerca di directory e file zip/jar>\n                  Una lista separata da {0} di directory, archivi JAR\n                  e ZIP utilizzata per la ricerca di file di classe.\n    -mp <percorsomodulo>\n    -modulepath <percorsomodulo>...\n                  Una lista separata da {0} di directory; ciascuna directory\n                  \u00E8 una directory di moduli.\n    -upgrademodulepath <percorso modulo>...\n                  Una lista separata da {0} di directory; ciascuna directory\n                  \u00E8 una directory dei moduli che sostituiscono i moduli\n                  aggiornabili nell''immagine in fase di esecuzione\n    -m <nomemodulo>| <nomemodulo>/<classeprincipale>\n                  il modulo iniziale o principale da risolvere\n    -addmods <nomemodulo>[,<nomemodulo>...]\n                  moduli root da risolvere in aggiunta al modulo iniziale\n    -limitmods <nomemodulo>[,<nomemodulo>...]\n                  limita l''universe dei moduli osservabili\n    -listmods[:<nomemodulo>[,<nomemodulo>...]]\n                  elenca i moduli osservabili ed esce\n    -D<nome>=<valore>\n                  imposta una propriet\u00E0 di sistema\n    -verbose:[class|gc|jni]\n                  abilita l''output descrittivo\n    -version      stampa la versione del prodotto ed esce\n    -showversion  stampa la versione del prodotto e continua\n    -? -help      stampa questo messaggio della Guida\n    -X            stampa la Guida sulle opzioni non standard\n    -ea[:<nomepackage>...|:<nomeclasse>]\n    -enableassertions[:<nomepackage>...|:<nomeclasse>]\n                  abilita le asserzioni con la granularit\u00E0 specificata\n    -da[:<nomepackage>...|:<nomeclasse>]\n    -disableassertions[:<nomepackage>...|:<nomeclasse>]\n                  disabilita le asserzioni con la granularit\u00E0 specificata\n    -esa | -enablesystemassertions\n                  abilita le asserzioni di sistema\n    -dsa | -disablesystemassertions\n                  disabilita le asserzioni di sistema\n    -agentlib:<nomelibreria>[=<opzioni>]\n                  load native agent library <nomelibreria>, ad esempio -agentlib:jdwp\n                  vedere anche -agentlib:jdwp=help\n    -agentpath:<nomepercorso>[=<opzioni>]\n                  carica la libreria agenti nativa con il percorso completo\n    -javaagent:<percorsojar>[=<opzioni>]\n                  carica l''agente del linguaggio di programmazione Java. Vedere java.lang.instrument\n    -splash:<percorsoimmagine>\n                  mostra la schermata iniziale con l''immagine specificata\n    @<percorsofile>   legge le opzioni dal file specificato\n
+See Per ulteriori dettagli, vedere http://www.oracle.com/technetwork/java/javase/documentation/index.html.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           esecuzione in modalit\u00E0 mista (impostazione predefinita)\n    -Xint             esecuzione solo in modalit\u00E0 convertita\n    -Xbootclasspath:<directory e file zip/jar separati da {0}>\n                      imposta il percorso di ricerca per le classi e le risorse di bootstrap\n    -Xbootclasspath/a:<directory e file zip/jar separati da {0}>\n                      aggiunge alla fine del classpath di bootstrap\n    -Xbootclasspath/p:<directory e file zip/jar separati da {0}>\n                      antepone al classpath di bootstrap\n    -Xdiag            mostra messaggi di diagnostica aggiuntivi\n    -Xnoclassgc       disabilita la garbage collection della classe\n    -Xincgc           abilita la garbage collection incrementale\n    -Xloggc:<file>    registra lo stato GC in un file di log con indicatori orari\n    -Xbatch           disabilita la compilazione in background\n    -Xms<dimensione>        imposta la dimensione heap Java iniziale\n    -Xmx<dimensione>        imposta la dimensione heap Java massima\n    -Xss<dimensione>        imposta la dimensione dello stack di thread Java\n    -Xprof            visualizza i dati di profilo della CPU\n    -Xfuture          abilita i controlli pi\u00F9 limitativi anticipando le impostazioni predefinite future\n    -Xrs              riduce l''uso di segnali del sistema operativo da Java/VM (vedere la documentazione)\n    -Xcheck:jni       esegue controlli aggiuntivi per le funzioni JNI\n    -Xshare:off       non tenta di utilizzare i dati della classe condivisi\n    -Xshare:auto      utilizza i dati di classe condivisi se possibile (impostazione predefinita)\n    -Xshare:on        richiede l''uso dei dati di classe condivisi, altrimenti l''esecuzione non riesce.\n    -XshowSettings    mostra tutte le impostazioni e continua\n    -XshowSettings:all\n                      mostra tutte le impostazioni e continua\n    -XshowSettings:vm mostra tutte le impostazioni correlate alla VM e continua\n    -XshowSettings:properties\n                      mostra tutte le impostazioni delle propriet\u00E0 e continua\n    -XshowSettings:locale\n                      mostra tutte le impostazioni correlate alle impostazioni nazionali e continua\n\nLe opzioni -X non sono opzioni standard e sono soggette a modifiche senza preavviso.\n
+java.launcher.X.usage=\    -Xmixed           esecuzione in modalit\u00E0 mista (impostazione predefinita)\n    -Xint             esecuzione solo in modalit\u00E0 convertita\n    -Xbootclasspath/a:<directory e file zip/jar separati da {0}>\n                      aggiunge alla fine del classpath di bootstrap\n     -Xdiag            mostra messaggi di diagnostica aggiuntivi\n    -Xdiag:resolver   mostra i messaggi di diagnostica del resolver\n    -Xnoclassgc       disabilita la garbage collection della classe\n    -Xincgc           abilita la garbage collection incrementale\n    -Xloggc:<file>    registra lo stato GC in un file con indicatori orari\n    -Xbatch           disabilita la compilazione in background\n    -Xms<size>        imposta la dimensione heap Java iniziale\n    -Xmx<size>        imposta la dimensione heap Java massima\n    -Xss<size>        imposta la dimensione dello stack di thread Java\n    -Xprof            visualizza i dati di profilo della CPU\n    -Xfuture          abilita i controlli pi\u00F9 limitativi anticipando le impostazioni predefinite future\n    -Xrs              riduce l''uso di segnali del sistema operativo da Java/VM (vedere la documentazione)\n    -Xcheck:jni       esegue controlli aggiuntivi per le funzioni JNI\n    -Xshare:off       non tenta di utilizzare i dati della classe condivisi\n    -Xshare:auto      utilizza i dati di classe condivisi se possibile (impostazione predefinita)\n    -Xshare:on        richiede l''uso dei dati di classe condivisi, altrimenti l''esecuzione non riesce.\n    -XshowSettings    mostra tutte le impostazioni e continua\n    -XshowSettings:all\n                      mostra tutte le impostazioni e continua\n    -XshowSettings:vm mostra tutte le impostazioni correlate alla VM e continua\n    -XshowSettings:properties\n                      mostra tutte le impostazioni delle propriet\u00E0 e continua\n    -XshowSettings:locale\n                      mostra tutte le impostazioni correlate alle impostazioni nazionali e continua\n   -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module> legge altri moduli,\n                      indipendentemente dalla dichiarazione del modulo\n   -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module> esporta il <package> in altri moduli,\n                      indipendentemente dalla dichiarazione del modulo\n    -Xpatch:<module>=<file>({0}<file>)*\n                      sostituisce o migliora un modulo con classi e risorse\n                      in file JAR o directory\n    -Xdisable-@files  disabilita l''ulteriore espansione del file di argomenti\n\nLe opzioni -X non sono opzioni standard e sono soggette a modifiche senza preavviso.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\nLe opzioni riportate di seguito sono specifiche del sistema operativo Mac OS X:\n    -XstartOnFirstThread\n                      Esegue il metodo main() sul primo thread (AppKit).\n    -Xdock:name=<nome applicazione>"\n                      Sostituisce il nome applicazione predefinito visualizzato nel dock\n    -Xdock:icon=<percorso file icona>\n                      Sostituisce l'icona predefinita visualizzata nel dock\n\n
@@ -52,3 +53,5 @@
 java.launcher.jar.error3=nessun attributo manifest principale in {0}
 java.launcher.init.error=errore di inizializzazione
 java.launcher.javafx.error1=Errore: il metodo JavaFX launchApplication dispone di una firma errata, \nla firma deve essere dichiarata static e restituire un valore di tipo void
+java.launcher.module.error1=il modulo {0} non dispone di un attributo MainClass. Utilizzare -m <module>/<mail-class>
+java.launcher.module.error2=Errore: impossibile trovare o caricare la classe principale {0} nel modulo {1}
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties
index 8256ce8..6f428ce 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   \u4F7F\u7528\u65B9\u6CD5: {0} [-options] class [args...]\n           (\u30AF\u30E9\u30B9\u3092\u5B9F\u884C\u3059\u308B\u5834\u5408)\n   \u307E\u305F\u306F  {0} [-options] -jar jarfile [args...]\n           (jar\u30D5\u30A1\u30A4\u30EB\u3092\u5B9F\u884C\u3059\u308B\u5834\u5408)\noptions\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\n
+java.launcher.opt.header  =   \u4F7F\u7528\u65B9\u6CD5: {0} [options] class [args...]\n           (\u30AF\u30E9\u30B9\u3092\u5B9F\u884C\u3059\u308B\u5834\u5408)\n   \u307E\u305F\u306F  {0} [options] -jar jarfile [args...]\n           (jar\u30D5\u30A1\u30A4\u30EB\u3092\u5B9F\u884C\u3059\u308B\u5834\u5408)\n   \u307E\u305F\u306F  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30E1\u30A4\u30F3\u30FB\u30AF\u30E9\u30B9\u3092\u5B9F\u884C\u3059\u308B\u5834\u5408)\noptions\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  \u4F7F\u7528\u53EF\u80FD\u306A\u5834\u5408\u306F{0}\u30D3\u30C3\u30C8\u306E\u30C7\u30FC\u30BF\u30FB\u30E2\u30C7\u30EB\u3092\u4F7F\u7528\u3059\u308B\n
 java.launcher.opt.vmselect   =\    {0}\t  "{1}" VM\u3092\u9078\u629E\u3059\u308B\u5834\u5408\n
@@ -34,11 +34,13 @@
 java.launcher.ergo.message2  =\                  \u3053\u308C\u306F\u30B5\u30FC\u30D0\u30FC\u30AF\u30E9\u30B9\u306E\u30DE\u30B7\u30F3\u3067\u5B9F\u884C\u3057\u3066\u3044\u308B\u305F\u3081\u3067\u3059\u3002\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB\u306E\u30AF\u30E9\u30B9\u691C\u7D22\u30D1\u30B9>\n    -classpath <\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB\u306E\u30AF\u30E9\u30B9\u691C\u7D22\u30D1\u30B9>\n                  \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3001\n                  JAR\u30A2\u30FC\u30AB\u30A4\u30D6\u304A\u3088\u3073ZIP\u30A2\u30FC\u30AB\u30A4\u30D6\u306E{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30EA\u30B9\u30C8\u3067\u3059\u3002\n    -D<name>=<value>\n                  \u30B7\u30B9\u30C6\u30E0\u30FB\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u8A2D\u5B9A\u3059\u308B\n    -verbose:[class|gc|jni]\n                  \u8A73\u7D30\u306A\u51FA\u529B\u3092\u884C\u3046\n    -version      \u88FD\u54C1\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u3066\u7D42\u4E86\u3059\u308B\n    -version:<value>\n                  \u6307\u5B9A\u3057\u305F\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u5B9F\u884C\u306B\u5FC5\u9808\u306B\u3059\u308B\n    -showversion  \u88FD\u54C1\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -jre-restrict-search | -no-jre-restrict-search\n                  \u30E6\u30FC\u30B6\u30FC\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8JRE\u3092\u30D0\u30FC\u30B8\u30E7\u30F3\u691C\u7D22\u306B\u542B\u3081\u308B/\u9664\u5916\u3059\u308B\n    -? -help      \u3053\u306E\u30D8\u30EB\u30D7\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n    -X            \u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u95A2\u3059\u308B\u30D8\u30EB\u30D7\u3092\u51FA\u529B\u3059\u308B\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \u6307\u5B9A\u3057\u305F\u7C92\u5EA6\u3067\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \u6307\u5B9A\u3057\u305F\u7C92\u5EA6\u3067\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -esa | -enablesystemassertions\n                  \u30B7\u30B9\u30C6\u30E0\u30FB\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\n    -dsa | -disablesystemassertions\n                  \u30B7\u30B9\u30C6\u30E0\u30FB\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -agentlib:<libname>[=<options>]\n                  \u30CD\u30A4\u30C6\u30A3\u30D6\u30FB\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30E9\u30A4\u30D6\u30E9\u30EA<libname>\u3092\u30ED\u30FC\u30C9\u3059\u308B\u3002\u4F8B: -agentlib:hprof\n                  -agentlib:jdwp=help\u3068-agentlib:hprof=help\u3082\u53C2\u7167\n    -agentpath:<pathname>[=<options>]\n                  \u30D5\u30EB\u30D1\u30B9\u540D\u3067\u30CD\u30A4\u30C6\u30A3\u30D6\u30FB\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30E9\u30A4\u30D6\u30E9\u30EA\u3092\u30ED\u30FC\u30C9\u3059\u308B\n    -javaagent:<jarpath>[=<options>]\n                  Java\u30D7\u30ED\u30B0\u30E9\u30DF\u30F3\u30B0\u8A00\u8A9E\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u3092\u30ED\u30FC\u30C9\u3059\u308B\u3002java.lang.instrument\u3092\u53C2\u7167\n    -splash:<imagepath>\n                  \u6307\u5B9A\u3057\u305F\u30A4\u30E1\u30FC\u30B8\u3067\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5\u753B\u9762\u3092\u8868\u793A\u3059\u308B\n\u8A73\u7D30\u306Fhttp://www.oracle.com/technetwork/java/javase/documentation/index.html\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+java.launcher.opt.footer     =\    -cp <class search path of directories and zip/jar files>\n    -classpath <class search path of directories and zip/jar files>\n                  \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3001\n                  JAR\u30A2\u30FC\u30AB\u30A4\u30D6\u304A\u3088\u3073ZIP\u30A2\u30FC\u30AB\u30A4\u30D6\u306E{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30EA\u30B9\u30C8\u3002\n    -mp <module path>\n    -modulepath <module path>...\n                  \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30EA\u30B9\u30C8\u3002\u5404\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\n                  \u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u3059\u3002\n    -upgrademodulepath <module path>...\n                  \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30EA\u30B9\u30C8\u3002\u5404\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\n                  \u30E9\u30F3\u30BF\u30A4\u30E0\u30FB\u30A4\u30E1\u30FC\u30B8\u3067\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u7F6E\u63DB\u3059\u308B\n                  \u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u3059\n    -m <modulename> | <modulename>/<mainclass>\n                  \u89E3\u6C7A\u3059\u308B\u521D\u671F\u307E\u305F\u306F\u30E1\u30A4\u30F3\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\n    -addmods <modulename>[,<modulename>...]\n                  \u521D\u671F\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u52A0\u3048\u3066\u89E3\u6C7A\u3059\u308B\u30EB\u30FC\u30C8\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\n    -limitmods <modulename>[,<modulename>...]\n                  \u76E3\u8996\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30E6\u30CB\u30D0\u30FC\u30B9\u3092\u5236\u9650\u3059\u308B\n    -listmods[:<modulename>[,<modulename>...]]\n                  \u76E3\u8996\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u30EA\u30B9\u30C8\u3057\u3066\u7D42\u4E86\u3059\u308B\n    -D<name>=<value>\n                  \u30B7\u30B9\u30C6\u30E0\u30FB\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u8A2D\u5B9A\u3059\u308B\n    -verbose:[class|gc|jni]\n                  \u8A73\u7D30\u306A\u51FA\u529B\u3092\u884C\u3046\n    -version      \u88FD\u54C1\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u3066\u7D42\u4E86\u3059\u308B\n    -showversion  \u88FD\u54C1\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -? -help      \u3053\u306E\u30D8\u30EB\u30D7\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n    -X            \u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u95A2\u3059\u308B\u30D8\u30EB\u30D7\u3092\u51FA\u529B\u3059\u308B\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \u6307\u5B9A\u3057\u305F\u7C92\u5EA6\u3067\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \u6307\u5B9A\u3057\u305F\u7C92\u5EA6\u3067\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -esa | -enablesystemassertions\n                  \u30B7\u30B9\u30C6\u30E0\u30FB\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\n    -dsa | -disablesystemassertions\n                  \u30B7\u30B9\u30C6\u30E0\u30FB\u30A2\u30B5\u30FC\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -agentlib:<libname>[=<options>]\n                  \u30CD\u30A4\u30C6\u30A3\u30D6\u30FB\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30E9\u30A4\u30D6\u30E9\u30EA<libname>\u3092\u30ED\u30FC\u30C9\u3059\u308B\u3002\u4F8B: -agentlib:jdwp\n                  -agentlib:jdwp=help\u3082\u53C2\u7167\n    -agentpath:<pathname>[=<options>]\n                  \
+\u30D5\u30EB\u30D1\u30B9\u540D\u3067\u30CD\u30A4\u30C6\u30A3\u30D6\u30FB\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30E9\u30A4\u30D6\u30E9\u30EA\u3092\u30ED\u30FC\u30C9\u3059\u308B\n    -javaagent:<jarpath>[=<options>]\n                  Java\u30D7\u30ED\u30B0\u30E9\u30DF\u30F3\u30B0\u8A00\u8A9E\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u3092\u30ED\u30FC\u30C9\u3059\u308B\u3002java.lang.instrument\u3092\u53C2\u7167\n    -splash:<imagepath>\n                  \u6307\u5B9A\u3057\u305F\u30A4\u30E1\u30FC\u30B8\u3067\u30B9\u30D7\u30E9\u30C3\u30B7\u30E5\u753B\u9762\u3092\u8868\u793A\u3059\u308B\n    @<filepath>   \u6307\u5B9A\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8AAD\u307F\u53D6\u308B\n
+See \u8A73\u7D30\u306F\u3001http://www.oracle.com/technetwork/java/javase/documentation/index.html\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           \u6DF7\u5408\u30E2\u30FC\u30C9\u306E\u5B9F\u884C(\u30C7\u30D5\u30A9\u30EB\u30C8)\n    -Xint             \u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u30FB\u30E2\u30FC\u30C9\u306E\u5B9F\u884C\u306E\u307F\n    -Xbootclasspath:<{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB>\n                      \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u306E\u30AF\u30E9\u30B9\u3068\u30EA\u30BD\u30FC\u30B9\u306E\u691C\u7D22\u30D1\u30B9\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xbootclasspath/a:<{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB>\n                      \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\n    -Xbootclasspath/p:<{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB>\n                      \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306E\u524D\u306B\u4ED8\u52A0\u3059\u308B\n    -Xdiag            \u8FFD\u52A0\u306E\u8A3A\u65AD\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3059\u308B\n    -Xnoclassgc       \u30AF\u30E9\u30B9\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -Xincgc           \u5897\u5206\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\n    -Xloggc:<file>    \u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u4ED8\u3044\u305F\u30D5\u30A1\u30A4\u30EB\u306BGC\u30B9\u30C6\u30FC\u30BF\u30B9\u306E\u30ED\u30B0\u3092\u8A18\u9332\u3059\u308B\n    -Xbatch           \u30D0\u30C3\u30AF\u30B0\u30E9\u30A6\u30F3\u30C9\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u3092\u7121\u52B9\u306B\u3059\u308B\n    -Xms<size>        Java\u306E\u521D\u671F\u30D2\u30FC\u30D7\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xmx<size>        Java\u306E\u6700\u5927\u30D2\u30FC\u30D7\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xss<size>        Java\u306E\u30B9\u30EC\u30C3\u30C9\u30FB\u30B9\u30BF\u30C3\u30AF\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xprof            CPU\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u30FB\u30C7\u30FC\u30BF\u3092\u51FA\u529B\u3059\u308B\n    -Xfuture          \u5C06\u6765\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u898B\u8D8A\u3057\u3066\u3001\u6700\u3082\u53B3\u5BC6\u306A\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3059\u308B\n    -Xrs              Java/VM\u306B\u3088\u308BOS\u30B7\u30B0\u30CA\u30EB\u306E\u4F7F\u7528\u3092\u524A\u6E1B\u3059\u308B(\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u53C2\u7167)\n    -Xcheck:jni       JNI\u95A2\u6570\u306B\u5BFE\u3059\u308B\u8FFD\u52A0\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u5B9F\u884C\u3059\u308B\n    -Xshare:off       \u5171\u6709\u30AF\u30E9\u30B9\u306E\u30C7\u30FC\u30BF\u3092\u4F7F\u7528\u3057\u3088\u3046\u3068\u3057\u306A\u3044\n    -Xshare:auto      \u53EF\u80FD\u3067\u3042\u308C\u3070\u5171\u6709\u30AF\u30E9\u30B9\u306E\u30C7\u30FC\u30BF\u3092\u4F7F\u7528\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8)\n    -Xshare:on        \u5171\u6709\u30AF\u30E9\u30B9\u30FB\u30C7\u30FC\u30BF\u306E\u4F7F\u7528\u3092\u5FC5\u9808\u306B\u3057\u3001\u3067\u304D\u306A\u3051\u308C\u3070\u5931\u6557\u3059\u308B\u3002\n    -XshowSettings    \u3059\u3079\u3066\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:all\n                      \u3059\u3079\u3066\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:vm \u3059\u3079\u3066\u306EVM\u95A2\u9023\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:properties\n                      \
-\u3059\u3079\u3066\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:locale\n                      \u3059\u3079\u3066\u306E\u30ED\u30B1\u30FC\u30EB\u95A2\u9023\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n\n-X\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u975E\u6A19\u6E96\u306A\u306E\u3067\u3001\u4E88\u544A\u306A\u304F\u5909\u66F4\u3055\u308C\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002\n
+java.launcher.X.usage=\    -Xmixed           \u6DF7\u5408\u30E2\u30FC\u30C9\u306E\u5B9F\u884C(\u30C7\u30D5\u30A9\u30EB\u30C8)\n    -Xint             \u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u30FB\u30E2\u30FC\u30C9\u306E\u5B9F\u884C\u306E\u307F\n    -Xbootclasspath/a:<{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB>\n                      \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\n    -Xdiag            \u8FFD\u52A0\u306E\u8A3A\u65AD\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3059\u308B\n    -Xdiag:resolver   \u30EA\u30BE\u30EB\u30D0\u8A3A\u65AD\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3059\u308B\n    -Xnoclassgc       \u30AF\u30E9\u30B9\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -Xincgc           \u5897\u5206\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\n    -Xloggc:<file>    \u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u4ED8\u3044\u305F\u30D5\u30A1\u30A4\u30EB\u306BGC\u30B9\u30C6\u30FC\u30BF\u30B9\u306E\u30ED\u30B0\u3092\u8A18\u9332\u3059\u308B\n    -Xbatch           \u30D0\u30C3\u30AF\u30B0\u30E9\u30A6\u30F3\u30C9\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u3092\u7121\u52B9\u306B\u3059\u308B\n    -Xms<size>        Java\u306E\u521D\u671F\u30D2\u30FC\u30D7\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xmx<size>        Java\u306E\u6700\u5927\u30D2\u30FC\u30D7\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xss<size>        Java\u306E\u30B9\u30EC\u30C3\u30C9\u30FB\u30B9\u30BF\u30C3\u30AF\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xprof            CPU\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u30FB\u30C7\u30FC\u30BF\u3092\u51FA\u529B\u3059\u308B\n    -Xfuture          \u5C06\u6765\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u898B\u8D8A\u3057\u3066\u3001\u6700\u3082\u53B3\u5BC6\u306A\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3059\u308B\n    -Xrs              Java/VM\u306B\u3088\u308BOS\u30B7\u30B0\u30CA\u30EB\u306E\u4F7F\u7528\u3092\u524A\u6E1B\u3059\u308B(\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u53C2\u7167)\n    -Xcheck:jni       JNI\u95A2\u6570\u306B\u5BFE\u3059\u308B\u8FFD\u52A0\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u5B9F\u884C\u3059\u308B\n    -Xshare:off       \u5171\u6709\u30AF\u30E9\u30B9\u306E\u30C7\u30FC\u30BF\u3092\u4F7F\u7528\u3057\u3088\u3046\u3068\u3057\u306A\u3044\n    -Xshare:auto      \u53EF\u80FD\u3067\u3042\u308C\u3070\u5171\u6709\u30AF\u30E9\u30B9\u306E\u30C7\u30FC\u30BF\u3092\u4F7F\u7528\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8)\n    -Xshare:on        \u5171\u6709\u30AF\u30E9\u30B9\u30FB\u30C7\u30FC\u30BF\u306E\u4F7F\u7528\u3092\u5FC5\u9808\u306B\u3057\u3001\u3067\u304D\u306A\u3051\u308C\u3070\u5931\u6557\u3059\u308B\u3002\n    -XshowSettings    \u3059\u3079\u3066\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:all\n                      \u3059\u3079\u3066\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:vm \u3059\u3079\u3066\u306EVM\u95A2\u9023\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:properties\n                      \u3059\u3079\u3066\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:locale\n                      \u3059\u3079\u3066\u306E\u30ED\u30B1\u30FC\u30EB\u95A2\u9023\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001\n                      <module>\u306F\u4ED6\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u8AAD\u307F\u53D6\u308B\n    \
+-XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001\n                      <module>\u306F<package>\u3092\u4ED6\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3059\u308B\n    -Xpatch:<module>=<file>({0}<file>)*\n                      JAR\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30EA\u30BD\u30FC\u30B9\u3067\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\n                      \u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u307E\u305F\u306F\u62E1\u5F35\u3059\u308B\n    -Xdisable-@files  \u3055\u3089\u306A\u308B\u30D5\u30A1\u30A4\u30EB\u62E1\u5F35\u3092\u7121\u52B9\u306B\u3059\u308B\n\n-X\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u975E\u6A19\u6E96\u306A\u306E\u3067\u3001\u4E88\u544A\u306A\u304F\u5909\u66F4\u3055\u308C\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306FMac OS X\u56FA\u6709\u3067\u3059\u3002\n    -XstartOnFirstThread\n                      main()\u30E1\u30BD\u30C3\u30C9\u3092\u6700\u521D(AppKit)\u306E\u30B9\u30EC\u30C3\u30C9\u3067\u5B9F\u884C\u3059\u308B\n    -Xdock:name=<application name>"\n                      Dock\u306B\u8868\u793A\u3055\u308C\u308B\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u540D\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n    -Xdock:icon=<path to icon file>\n                      Dock\u306B\u8868\u793A\u3055\u308C\u308B\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30A2\u30A4\u30B3\u30F3\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n\n
@@ -53,3 +55,5 @@
 java.launcher.jar.error3={0}\u306B\u30E1\u30A4\u30F3\u30FB\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u5C5E\u6027\u304C\u3042\u308A\u307E\u305B\u3093
 java.launcher.init.error=\u521D\u671F\u5316\u30A8\u30E9\u30FC
 java.launcher.javafx.error1=\u30A8\u30E9\u30FC: JavaFX launchApplication\u30E1\u30BD\u30C3\u30C9\u306B\u8AA4\u3063\u305F\u30B7\u30B0\u30CD\u30C1\u30E3\u304C\u3042\u308A\u3001\nstatic\u3092\u5BA3\u8A00\u3057\u3066void\u578B\u306E\u5024\u3092\u8FD4\u3059\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+java.launcher.module.error1=\u30E2\u30B8\u30E5\u30FC\u30EB{0}\u306BMainClass\u5C5E\u6027\u304C\u3042\u308A\u307E\u305B\u3093\u3002-m <module>/<main-class>\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044
+java.launcher.module.error2=\u30A8\u30E9\u30FC: \u30E2\u30B8\u30E5\u30FC\u30EB{1}\u306B\u30E1\u30A4\u30F3\u30FB\u30AF\u30E9\u30B9{0}\u304C\u898B\u3064\u304B\u3089\u306A\u304B\u3063\u305F\u304B\u30ED\u30FC\u30C9\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties
index 6999371..ac055e3 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   \uC0AC\uC6A9\uBC95: {0} [-options] class [args...]\n           (\uD074\uB798\uC2A4 \uC2E4\uD589)\n   \uB610\uB294  {0} [-options] -jar jarfile [args...]\n           (jar \uD30C\uC77C \uC2E4\uD589)\n\uC5EC\uAE30\uC11C options\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n
+java.launcher.opt.header  =   \uC0AC\uC6A9\uBC95: {0} [options] class [args...]\n           (\uD074\uB798\uC2A4 \uC2E4\uD589)\n   \uB610\uB294  {0} [options] -jar jarfile [args...]\n           (jar \uD30C\uC77C \uC2E4\uD589)\n   \uB610\uB294  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (\uBAA8\uB4C8\uC758 \uAE30\uBCF8 \uD074\uB798\uC2A4 \uC2E4\uD589)\n\uC5EC\uAE30\uC11C options\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  \uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uACBD\uC6B0 {0}\uBE44\uD2B8 \uB370\uC774\uD130 \uBAA8\uB378\uC744 \uC0AC\uC6A9\uD569\uB2C8\uB2E4.\n
 java.launcher.opt.vmselect   =\    {0}\t  "{1}" VM\uC744 \uC120\uD0DD\uD569\uB2C8\uB2E4.\n
@@ -34,22 +34,26 @@
 java.launcher.ergo.message2  =\                  \uC11C\uBC84\uAE09 \uC2DC\uC2A4\uD15C\uC5D0\uC11C \uC2E4\uD589 \uC911\uC774\uAE30 \uB54C\uBB38\uC785\uB2C8\uB2E4.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <\uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C\uC758 \uD074\uB798\uC2A4 \uAC80\uC0C9 \uACBD\uB85C>\n    -classpath <\uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C\uC758 \uD074\uB798\uC2A4 \uAC80\uC0C9 \uACBD\uB85C>\n                  \uD074\uB798\uC2A4 \uD30C\uC77C\uC744 \uAC80\uC0C9\uD560 {0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC,\n                  JAR \uC544\uCE74\uC774\uBE0C \uBC0F ZIP \uC544\uCE74\uC774\uBE0C \uBAA9\uB85D\uC785\uB2C8\uB2E4.\n    -D<name>=<value>\n                  \uC2DC\uC2A4\uD15C \uC18D\uC131\uC744 \uC124\uC815\uD569\uB2C8\uB2E4.\n    -verbose:[class|gc|jni]\n                  \uC0C1\uC138 \uC815\uBCF4 \uCD9C\uB825\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -version      \uC81C\uD488 \uBC84\uC804\uC744 \uC778\uC1C4\uD55C \uD6C4 \uC885\uB8CC\uD569\uB2C8\uB2E4.\n    -version:<value>\n                  \uC2E4\uD589\uD560 \uBC84\uC804\uC744 \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4.\n    -showversion  \uC81C\uD488 \uBC84\uC804\uC744 \uC778\uC1C4\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -jre-restrict-search | -no-jre-restrict-search\n                  \uBC84\uC804 \uAC80\uC0C9\uC5D0\uC11C \uC0AC\uC6A9\uC790 \uC804\uC6A9 JRE\uB97C \uD3EC\uD568/\uC81C\uC678\uD569\uB2C8\uB2E4.\n    -? -help      \uC774 \uB3C4\uC6C0\uB9D0 \uBA54\uC2DC\uC9C0\uB97C \uC778\uC1C4\uD569\uB2C8\uB2E4.\n    -X            \uBE44\uD45C\uC900 \uC635\uC158\uC5D0 \uB300\uD55C \uB3C4\uC6C0\uB9D0\uC744 \uC778\uC1C4\uD569\uB2C8\uB2E4.\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \uC138\uBD84\uC131\uC774 \uC9C0\uC815\uB41C \uAC80\uC99D\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \uC138\uBD84\uC131\uC774 \uC9C0\uC815\uB41C \uAC80\uC99D\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -esa | -enablesystemassertions\n                  \uC2DC\uC2A4\uD15C \uAC80\uC99D\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -dsa | -disablesystemassertions\n                  \uC2DC\uC2A4\uD15C \uAC80\uC99D\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -agentlib:<libname>[=<options>]\n                  <libname> \uACE0\uC720 \uC5D0\uC774\uC804\uD2B8 \uB77C\uC774\uBE0C\uB7EC\uB9AC\uB97C \uB85C\uB4DC\uD569\uB2C8\uB2E4(\uC608: -agentlib:hprof).\n                  -agentlib:jdwp=help \uBC0F -agentlib:hprof=help\uB3C4 \uCC38\uC870\uD558\uC2ED\uC2DC\uC624.\n    -agentpath:<pathname>[=<options>]\n                  \uC804\uCCB4 \uACBD\uB85C\uBA85\uC744 \uC0AC\uC6A9\uD558\uC5EC \uACE0\uC720 \uC5D0\uC774\uC804\uD2B8 \uB77C\uC774\uBE0C\uB7EC\uB9AC\uB97C \uB85C\uB4DC\uD569\uB2C8\uB2E4.\n    -javaagent:<jarpath>[=<options>]\n                  Java \uD504\uB85C\uADF8\uB798\uBC0D \uC5B8\uC5B4 \uC5D0\uC774\uC804\uD2B8\uB97C \uB85C\uB4DC\uD569\uB2C8\uB2E4. java.lang.instrument\uB97C \uCC38\uC870\uD558\uC2ED\uC2DC\uC624.\n    -splash:<imagepath>\n                  \uC774\uBBF8\uC9C0\uAC00 \uC9C0\uC815\uB41C \uC2A4\uD50C\uB798\uC2DC \uD654\uBA74\uC744 \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n\uC790\uC138\uD55C \uB0B4\uC6A9\uC740 http://www.oracle.com/technetwork/java/javase/documentation/index.html\uC744 \uCC38\uC870\uD558\uC2ED\uC2DC\uC624.
+java.launcher.opt.footer     =\    -cp <\uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C\uC758 \uD074\uB798\uC2A4 \uAC80\uC0C9 \uACBD\uB85C>\n    -classpath <\uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C\uC758 \uD074\uB798\uC2A4 \uAC80\uC0C9 \uACBD\uB85C>\n                  \uD074\uB798\uC2A4 \uD30C\uC77C\uC744 \uAC80\uC0C9\uD560 {0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC,\n                  JAR \uC544\uCE74\uC774\uBE0C \uBC0F ZIP \uC544\uCE74\uC774\uBE0C \uBAA9\uB85D\uC785\uB2C8\uB2E4.\n    -mp <\uBAA8\uB4C8 \uACBD\uB85C>\n    -modulepath <\uBAA8\uB4C8 \uACBD\uB85C>...\n                  {0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBAA9\uB85D\uC785\uB2C8\uB2E4. \uAC01 \uB514\uB809\uD1A0\uB9AC\uB294\n                  \uBAA8\uB4C8\uC758 \uB514\uB809\uD1A0\uB9AC\uC785\uB2C8\uB2E4.\n    -upgrademodulepath <\uBAA8\uB4C8 \uACBD\uB85C>...\n                  {0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBAA9\uB85D\uC785\uB2C8\uB2E4. \uAC01 \uB514\uB809\uD1A0\uB9AC\uB294\n                  \uBAA8\uB4C8\uC758 \uB514\uB809\uD1A0\uB9AC\uB85C, \uB7F0\uD0C0\uC784 \uC774\uBBF8\uC9C0\uC5D0\uC11C \uC5C5\uADF8\uB808\uC774\uB4DC\n                  \uAC00\uB2A5\uD55C \uBAA8\uB4C8\uC744 \uB300\uCCB4\uD569\uB2C8\uB2E4.\n    -m <modulename> | <modulename>/<mainclass>\n                  \uBD84\uC11D\uD560 \uCD08\uAE30 \uB610\uB294 \uAE30\uBCF8 \uBAA8\uB4C8\uC785\uB2C8\uB2E4.\n    -addmods <modulename>[,<modulename>...]\n                  \uCD08\uAE30 \uBAA8\uB4C8 \uC678\uC5D0 \uBD84\uC11D\uD560 \uB8E8\uD2B8 \uBAA8\uB4C8\uC785\uB2C8\uB2E4.\n    -limitmods <modulename>[,<modulename>...]\n                  \uAD00\uCC30 \uAC00\uB2A5\uD55C \uBAA8\uB4C8\uC758 \uBC94\uC704\uB97C \uC81C\uD55C\uD569\uB2C8\uB2E4.\n    -listmods[:<modulename>[,<modulename>...]]\n                  \uAD00\uCC30 \uAC00\uB2A5\uD55C \uBAA8\uB4C8\uC744 \uB098\uC5F4\uD55C \uD6C4 \uC885\uB8CC\uD569\uB2C8\uB2E4.\n    -D<name>=<value>\n                  \uC2DC\uC2A4\uD15C \uC18D\uC131\uC744 \uC124\uC815\uD569\uB2C8\uB2E4.\n    -verbose:[class|gc|jni]\n                  \uC0C1\uC138 \uC815\uBCF4 \uCD9C\uB825\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -version      \uC81C\uD488 \uBC84\uC804\uC744 \uC778\uC1C4\uD55C \uD6C4 \uC885\uB8CC\uD569\uB2C8\uB2E4.\n    -showversion  \uC81C\uD488 \uBC84\uC804\uC744 \uC778\uC1C4\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -? -help      \uC774 \uB3C4\uC6C0\uB9D0 \uBA54\uC2DC\uC9C0\uB97C \uC778\uC1C4\uD569\uB2C8\uB2E4.\n    -X            \uBE44\uD45C\uC900 \uC635\uC158\uC5D0 \uB300\uD55C \uB3C4\uC6C0\uB9D0\uC744 \uC778\uC1C4\uD569\uB2C8\uB2E4.\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \uC138\uBD84\uC131\uC774 \uC9C0\uC815\uB41C \uAC80\uC99D\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \uC138\uBD84\uC131\uC774 \uC9C0\uC815\uB41C \uAC80\uC99D\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -esa | -enablesystemassertions\n                  \uC2DC\uC2A4\uD15C \uAC80\uC99D\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -dsa | -disablesystemassertions\n                  \uC2DC\uC2A4\uD15C \uAC80\uC99D\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -agentlib:<libname>[=<options>]\n                  \uACE0\uC720 \uC5D0\uC774\uC804\uD2B8 \uB77C\uC774\uBE0C\uB7EC\uB9AC <libname>\uC744 \uB85C\uB4DC\uD569\uB2C8\uB2E4(\uC608: -agentlib:jdwp).\n                  -agentlib:jdwp=help\uB3C4 \uCC38\uC870\uD558\uC2ED\uC2DC\uC624.\n    -agentpath:<pathname>[=<options>]\n                  \uC804\uCCB4 \uACBD\uB85C\uBA85\uC744 \uC0AC\uC6A9\uD558\uC5EC \uACE0\uC720 \uC5D0\uC774\uC804\uD2B8 \uB77C\uC774\uBE0C\uB7EC\uB9AC\uB97C \uB85C\uB4DC\uD569\uB2C8\uB2E4.\n    \
+-javaagent:<jarpath>[=<options>]\n                  Java \uD504\uB85C\uADF8\uB798\uBC0D \uC5B8\uC5B4 \uC5D0\uC774\uC804\uD2B8\uB97C \uB85C\uB4DC\uD569\uB2C8\uB2E4. java.lang.instrument\uB97C \uCC38\uC870\uD558\uC2ED\uC2DC\uC624.\n    -splash:<imagepath>\n                  \uC774\uBBF8\uC9C0\uAC00 \uC9C0\uC815\uB41C \uC2A4\uD50C\uB798\uC2DC \uD654\uBA74\uC744 \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n    @<filepath>   \uC9C0\uC815\uB41C \uD30C\uC77C\uC5D0\uC11C \uC635\uC158\uC744 \uC77D\uC2B5\uB2C8\uB2E4.\n
+See \uC790\uC138\uD55C \uB0B4\uC6A9\uC740 http://www.oracle.com/technetwork/java/javase/documentation/index.html\uC744 \uCC38\uC870\uD558\uC2ED\uC2DC\uC624.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           \uD63C\uD569 \uBAA8\uB4DC\uB97C \uC2E4\uD589\uD569\uB2C8\uB2E4(\uAE30\uBCF8\uAC12).\n    -Xint             \uD574\uC11D\uB41C \uBAA8\uB4DC\uB9CC \uC2E4\uD589\uD569\uB2C8\uB2E4.\n    -Xbootclasspath:<{0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C>\n                      \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uD074\uB798\uC2A4 \uBC0F \uB9AC\uC18C\uC2A4\uC5D0 \uB300\uD55C \uAC80\uC0C9 \uACBD\uB85C\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xbootclasspath/a:<{0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C>\n                      \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uD074\uB798\uC2A4 \uACBD\uB85C \uB05D\uC5D0 \uCD94\uAC00\uD569\uB2C8\uB2E4.\n    -Xbootclasspath/p:<{0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C>\n                      \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uD074\uB798\uC2A4 \uACBD\uB85C \uC55E\uC5D0 \uCD94\uAC00\uD569\uB2C8\uB2E4.\n    -Xdiag            \uCD94\uAC00 \uC9C4\uB2E8 \uBA54\uC2DC\uC9C0\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n    -Xnoclassgc       \uD074\uB798\uC2A4\uC758 \uBD88\uD544\uC694\uD55C \uC815\uBCF4 \uBAA8\uC74C\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xincgc           \uC99D\uBD84\uC801\uC778 \uBD88\uD544\uC694\uD55C \uC815\uBCF4 \uBAA8\uC74C\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xloggc:<file>    \uC2DC\uAC04 \uAE30\uB85D\uACFC \uD568\uAED8 \uD30C\uC77C\uC5D0 GC \uC0C1\uD0DC\uB97C \uAE30\uB85D\uD569\uB2C8\uB2E4.\n    -Xbatch           \uBC31\uADF8\uB77C\uC6B4\uB4DC \uCEF4\uD30C\uC77C\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xms<size>        \uCD08\uAE30 Java \uD799 \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xmx<size>        \uCD5C\uB300 Java \uD799 \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xss<size>        Java \uC2A4\uB808\uB4DC \uC2A4\uD0DD \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xprof            CPU \uD504\uB85C\uD30C\uC77C \uC791\uC131 \uB370\uC774\uD130\uB97C \uCD9C\uB825\uD569\uB2C8\uB2E4.\n    -Xfuture          \uBBF8\uB798 \uAE30\uBCF8\uAC12\uC744 \uC608\uCE21\uD558\uC5EC \uAC00\uC7A5 \uC5C4\uACA9\uD55C \uAC80\uC0AC\uB97C \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xrs              Java/VM\uC5D0 \uC758\uD55C OS \uC2E0\uD638 \uC0AC\uC6A9\uC744 \uC904\uC785\uB2C8\uB2E4(\uC124\uBA85\uC11C \uCC38\uC870).\n    -Xcheck:jni       JNI \uD568\uC218\uC5D0 \uB300\uD55C \uCD94\uAC00 \uAC80\uC0AC\uB97C \uC218\uD589\uD569\uB2C8\uB2E4.\n    -Xshare:off       \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130 \uC0AC\uC6A9\uC744 \uC2DC\uB3C4\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -Xshare:auto      \uAC00\uB2A5\uD55C \uACBD\uC6B0 \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uD569\uB2C8\uB2E4(\uAE30\uBCF8\uAC12).\n    -Xshare:on        \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4. \uADF8\uB807\uC9C0 \uC54A\uC744 \uACBD\uC6B0 \uC2E4\uD328\uD569\uB2C8\uB2E4.\n    -XshowSettings    \uBAA8\uB4E0 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:all\n                      \uBAA8\uB4E0 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:vm \uBAA8\uB4E0 VM \uAD00\uB828 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:properties\n                      \uBAA8\uB4E0 \uC18D\uC131 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:locale\n                      \uBAA8\uB4E0 \uB85C\uCF00\uC77C \uAD00\uB828 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n\n-X \uC635\uC158\uC740 \uBE44\uD45C\uC900 \uC635\uC158\uC774\uBBC0\uB85C \uD1B5\uC9C0 \uC5C6\uC774 \uBCC0\uACBD\uB420 \uC218 \
-\uC788\uC2B5\uB2C8\uB2E4.\n
+java.launcher.X.usage=\    -Xmixed           \uD63C\uD569 \uBAA8\uB4DC\uB97C \uC2E4\uD589\uD569\uB2C8\uB2E4(\uAE30\uBCF8\uAC12).\n    -Xint             \uD574\uC11D\uB41C \uBAA8\uB4DC\uB9CC \uC2E4\uD589\uD569\uB2C8\uB2E4.\n    -Xbootclasspath/a:<{0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C>\n                      \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uD074\uB798\uC2A4 \uACBD\uB85C \uB05D\uC5D0 \uCD94\uAC00\uD569\uB2C8\uB2E4.\n    -Xdiag            \uCD94\uAC00 \uC9C4\uB2E8 \uBA54\uC2DC\uC9C0\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n    -Xdiag:resolver   \uBD84\uC11D\uAE30 \uC9C4\uB2E8 \uBA54\uC2DC\uC9C0\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n    -Xnoclassgc       \uD074\uB798\uC2A4\uC758 \uBD88\uD544\uC694\uD55C \uC815\uBCF4 \uBAA8\uC74C\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xincgc           \uC99D\uBD84\uC801\uC778 \uBD88\uD544\uC694\uD55C \uC815\uBCF4 \uBAA8\uC74C\uC744 \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xloggc:<file>    \uC2DC\uAC04 \uAE30\uB85D\uACFC \uD568\uAED8 \uD30C\uC77C\uC5D0 GC \uC0C1\uD0DC\uB97C \uAE30\uB85D\uD569\uB2C8\uB2E4.\n    -Xbatch           \uBC31\uADF8\uB77C\uC6B4\uB4DC \uCEF4\uD30C\uC77C\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xms<size>        \uCD08\uAE30 Java \uD799 \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xmx<size>        \uCD5C\uB300 Java \uD799 \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xss<size>        Java \uC2A4\uB808\uB4DC \uC2A4\uD0DD \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xprof            CPU \uD504\uB85C\uD30C\uC77C \uC791\uC131 \uB370\uC774\uD130\uB97C \uCD9C\uB825\uD569\uB2C8\uB2E4.\n    -Xfuture          \uBBF8\uB798 \uAE30\uBCF8\uAC12\uC744 \uC608\uCE21\uD558\uC5EC \uAC00\uC7A5 \uC5C4\uACA9\uD55C \uAC80\uC0AC\uB97C \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xrs              Java/VM\uC5D0 \uC758\uD55C OS \uC2E0\uD638 \uC0AC\uC6A9\uC744 \uC904\uC785\uB2C8\uB2E4(\uC124\uBA85\uC11C \uCC38\uC870).\n    -Xcheck:jni       JNI \uD568\uC218\uC5D0 \uB300\uD55C \uCD94\uAC00 \uAC80\uC0AC\uB97C \uC218\uD589\uD569\uB2C8\uB2E4.\n    -Xshare:off       \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130 \uC0AC\uC6A9\uC744 \uC2DC\uB3C4\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -Xshare:auto      \uAC00\uB2A5\uD55C \uACBD\uC6B0 \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uD569\uB2C8\uB2E4(\uAE30\uBCF8\uAC12).\n    -Xshare:on        \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4. \uADF8\uB807\uC9C0 \uC54A\uC744 \uACBD\uC6B0 \uC2E4\uD328\uD569\uB2C8\uB2E4.\n    -XshowSettings    \uBAA8\uB4E0 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:all\n                      \uBAA8\uB4E0 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:vm\n                      \uBAA8\uB4E0 VM \uAD00\uB828 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:properties\n                      \uBAA8\uB4E0 \uC18D\uC131 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:locale\n                      \uBAA8\uB4E0 \uB85C\uCF00\uC77C \uAD00\uB828 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module>\uC740 \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774\n                      \uB2E4\uB978 \uBAA8\uB4C8\uC744 \uC77D\uC2B5\uB2C8\uB2E4.\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module>\uC740 \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774\n                      <package>\uB97C \uB2E4\uB978 \uBAA8\uB4C8\uB85C \uC775\uC2A4\uD3EC\uD2B8\uD569\uB2C8\uB2E4.\n    \
+-Xpatch:<module>=<file>({0}<file>)*\n                      JAR \uD30C\uC77C/\uB514\uB809\uD1A0\uB9AC\uC758 \uD074\uB798\uC2A4\uC640 \uB9AC\uC18C\uC2A4\uB85C\n                      \uBAA8\uB4C8\uC744 \uBB34\uD6A8\uD654\uD558\uAC70\uB098 \uC778\uC218\uD654\uD569\uB2C8\uB2E4.\n    -Xdisable-@files  \uCD94\uAC00 \uC778\uC218 \uD30C\uC77C \uD655\uC7A5\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n\n-X \uC635\uC158\uC740 \uBE44\uD45C\uC900 \uC635\uC158\uC774\uBBC0\uB85C \uD1B5\uC9C0 \uC5C6\uC774 \uBCC0\uACBD\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.macosx.usage=\n\uB2E4\uC74C\uC740 Mac OS X\uC5D0 \uD2B9\uC815\uB41C \uC635\uC158\uC785\uB2C8\uB2E4.\n    -XstartOnFirstThread\n                      \uCCAB\uBC88\uC9F8 (AppKit) \uC2A4\uB808\uB4DC\uC5D0 main() \uBA54\uC18C\uB4DC\uB97C \uC2E4\uD589\uD569\uB2C8\uB2E4.\n    -Xdock:name=<application name>"\n                      \uACE0\uC815\uC73C\uB85C \uD45C\uC2DC\uB41C \uAE30\uBCF8 \uC751\uC6A9 \uD504\uB85C\uADF8\uB7A8 \uC774\uB984\uC744 \uBB34\uD6A8\uD654\uD569\uB2C8\uB2E4.\n    -Xdock:icon=<path to icon file>\n                      \uACE0\uC815\uC73C\uB85C \uD45C\uC2DC\uB41C \uAE30\uBCF8 \uC544\uC774\uCF58\uC744 \uBB34\uD6A8\uD654\uD569\uB2C8\uB2E4.\n\n
+java.launcher.X.macosx.usage=\n\uB2E4\uC74C\uC740 Mac OS X\uC5D0 \uD2B9\uC815\uB41C \uC635\uC158\uC785\uB2C8\uB2E4.\n    -XstartOnFirstThread\n                      \uCCAB\uBC88\uC9F8 (AppKit) \uC2A4\uB808\uB4DC\uC5D0 main() \uBA54\uC18C\uB4DC\uB97C \uC2E4\uD589\uD569\uB2C8\uB2E4.\n    -Xdock:name=<application name>"\n                      \uACE0\uC815\uC73C\uB85C \uD45C\uC2DC\uB41C \uAE30\uBCF8 \uC560\uD50C\uB9AC\uCF00\uC774\uC158 \uC774\uB984\uC744 \uBB34\uD6A8\uD654\uD569\uB2C8\uB2E4.\n    -Xdock:icon=<path to icon file>\n                      \uACE0\uC815\uC73C\uB85C \uD45C\uC2DC\uB41C \uAE30\uBCF8 \uC544\uC774\uCF58\uC744 \uBB34\uD6A8\uD654\uD569\uB2C8\uB2E4.\n\n
 
 java.launcher.cls.error1=\uC624\uB958: \uAE30\uBCF8 \uD074\uB798\uC2A4 {0}\uC744(\uB97C) \uCC3E\uAC70\uB098 \uB85C\uB4DC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
 java.launcher.cls.error2=\uC624\uB958: {1} \uD074\uB798\uC2A4\uC5D0\uC11C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uAC00 {0}\uC774(\uAC00) \uC544\uB2D9\uB2C8\uB2E4. \uB2E4\uC74C \uD615\uC2DD\uC73C\uB85C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uC815\uC758\uD558\uC2ED\uC2DC\uC624.\n   public static void main(String[] args)
 java.launcher.cls.error3=\uC624\uB958: \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB294 {0} \uD074\uB798\uC2A4\uC5D0\uC11C void \uC720\uD615\uC758 \uAC12\uC744 \uBC18\uD658\uD574\uC57C \uD569\uB2C8\uB2E4. \n\uB2E4\uC74C \uD615\uC2DD\uC73C\uB85C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uC815\uC758\uD558\uC2ED\uC2DC\uC624.\n   public static void main(String[] args)
-java.launcher.cls.error4=\uC624\uB958: {0} \uD074\uB798\uC2A4\uC5D0\uC11C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uB2E4\uC74C \uD615\uC2DD\uC73C\uB85C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uC815\uC758\uD558\uC2ED\uC2DC\uC624.\r\n   public static void main(String[] args)\r\n\uB610\uB294 JavaFX \uC751\uC6A9 \uD504\uB85C\uADF8\uB7A8 \uD074\uB798\uC2A4\uB294 {1}\uC744(\uB97C) \uD655\uC7A5\uD574\uC57C \uD569\uB2C8\uB2E4.
-java.launcher.cls.error5=\uC624\uB958: \uC774 \uC751\uC6A9 \uD504\uB85C\uADF8\uB7A8\uC744 \uC2E4\uD589\uD558\uB294 \uB370 \uD544\uC694\uD55C JavaFX \uB7F0\uD0C0\uC784 \uAD6C\uC131 \uC694\uC18C\uAC00 \uB204\uB77D\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
+java.launcher.cls.error4=\uC624\uB958: {0} \uD074\uB798\uC2A4\uC5D0\uC11C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uB2E4\uC74C \uD615\uC2DD\uC73C\uB85C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uC815\uC758\uD558\uC2ED\uC2DC\uC624.\r\n   public static void main(String[] args)\r\n\uB610\uB294 JavaFX \uC560\uD50C\uB9AC\uCF00\uC774\uC158 \uD074\uB798\uC2A4\uB294 {1}\uC744(\uB97C) \uD655\uC7A5\uD574\uC57C \uD569\uB2C8\uB2E4.
+java.launcher.cls.error5=\uC624\uB958: \uC774 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC744 \uC2E4\uD589\uD558\uB294 \uB370 \uD544\uC694\uD55C JavaFX \uB7F0\uD0C0\uC784 \uAD6C\uC131 \uC694\uC18C\uAC00 \uB204\uB77D\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
 java.launcher.jar.error1=\uC624\uB958: {0} \uD30C\uC77C\uC744 \uC5F4\uB824\uACE0 \uC2DC\uB3C4\uD558\uB294 \uC911 \uC608\uC0C1\uCE58 \uC54A\uC740 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
 java.launcher.jar.error2={0}\uC5D0\uC11C Manifest\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
 java.launcher.jar.error3={0}\uC5D0 \uAE30\uBCF8 Manifest \uC18D\uC131\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.
 java.launcher.init.error=\uCD08\uAE30\uD654 \uC624\uB958
 java.launcher.javafx.error1=\uC624\uB958: JavaFX launchApplication \uBA54\uC18C\uB4DC\uC5D0 \uC798\uBABB\uB41C \uC11C\uBA85\uC774 \uC788\uC2B5\uB2C8\uB2E4.\\n\uB530\uB77C\uC11C static\uC73C\uB85C \uC120\uC5B8\uD558\uACE0 void \uC720\uD615\uC758 \uAC12\uC744 \uBC18\uD658\uD574\uC57C \uD569\uB2C8\uB2E4.
+java.launcher.module.error1={0} \uBAA8\uB4C8\uC5D0 MainClass \uC18D\uC131\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. -m <module>/<main-class>\uB97C \uC0AC\uC6A9\uD558\uC2ED\uC2DC\uC624.
+java.launcher.module.error2=\uC624\uB958: {1} \uBAA8\uB4C8\uC758 \uAE30\uBCF8 \uD074\uB798\uC2A4 {0}\uC744(\uB97C) \uCC3E\uAC70\uB098 \uB85C\uB4DC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties
index e0c7ba3..77edb35 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,31 +24,34 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Uso: {0} [-options] class [args...]\n           (para executar uma classe)\n   ou  {0} [-options] -jar jarfile [args...]\n           (para executar um arquivo jar)\nem que as op\u00E7\u00F5es incluem:\n
+java.launcher.opt.header  =   Uso: {0} [options] class [args...]\n           (para executar uma classe)\n   ou  {0} [options] -jar jarfile [args...]\n           (para executar um arquivo jar)\n   ou  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (para executar a classe principal em um m\u00F3dulo class in a module)\nem que as op\u00E7\u00F5es incluem:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  usar um modelo de dados de {0} bits, se estiver dispon\u00EDvel\n
 java.launcher.opt.vmselect   =\    {0}\t  para selecionar a VM "{1}"\n
 java.launcher.opt.hotspot    =\    {0}\t  \u00E9 um sin\u00F4nimo da VM "{1}" [obsoleto]\n
 
-java.launcher.ergo.message1  =\                  A VM default \u00E9 {0}
+java.launcher.ergo.message1  =\                  A VM padr\u00E3o \u00E9 {0}
 java.launcher.ergo.message2  =\                  porque a execu\u00E7\u00E3o est\u00E1 sendo feita em uma m\u00E1quina de classe de servidor.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <caminho de pesquisa da classe dos diret\u00F3rios e arquivos zip/jar>\n    -classpath <caminho de pesquisa da classe dos diret\u00F3rios e arquivos zip/jar>\n                  Uma lista separada por {0} de diret\u00F3rios, archives JAR\n                  e archives ZIP nos quais ser\u00E3o procurados os arquivos de classe.\n    -D<nome>=<valor>\n                  define uma propriedade do sistema\n    -verbose:[class|gc|jni]\n                  ativa a sa\u00EDda detalhada\n    -version      imprime a vers\u00E3o do produto e sai do programa\n    -version:<valor>\n                  requer a execu\u00E7\u00E3o da vers\u00E3o especificada\n    -showversion  imprime a vers\u00E3o do produto e continua\n    -jre-restrict-search | -no-jre-restrict-search\n                  inclui/exclui JREs privados do usu\u00E1rio na pesquisa de vers\u00E3o\n    -? -help      imprime esta mensagem de ajuda\n    -X            imprime a ajuda sobre op\u00E7\u00F5es n\u00E3o padronizadas\n    -ea[:<nome do pacote>...|:<nome da classe>]\n    -enableassertions[:<nome do pacote>...|:<nome da classe>]\n                  ativa asser\u00E7\u00F5es com granularidade especificada\n    -da[:<nome do pacote>...|:<nome da classe>]\n    -disableassertions[:<nome do pacote>...|:<nome da classe>]\n                  desativa asser\u00E7\u00F5es com granularidade especificada\n    -esa | -enablesystemassertions\n                  ativa asser\u00E7\u00F5es do sistema\n    -dsa | -disablesystemassertions\n                  desativa asser\u00E7\u00F5es do sistema\n    -agentlib:<nome da biblioteca>[=<op\u00E7\u00F5es>]\n                  carrega a biblioteca de agentes nativa <nome da biblioteca>, por exemplo: -agentlib:hprof\n                  consulte tamb\u00E9m: -agentlib:jdwp=help e -agentlib:hprof=help\n    -agentpath:<nome do caminho>[=<op\u00E7\u00F5es>]\n                  carrega a biblioteca de agentes nativa com base no nome do caminho completo\n    -javaagent:<caminho do arquivo jar>[=<op\u00E7\u00F5es>]\n                  carrega o agente da linguagem de programa\u00E7\u00E3o Java; consulte java.lang.instrument\n    -splash:<caminho da imagem>\n                  mostra a tela de abertura com a imagem especificada\nConsulte http://www.oracle.com/technetwork/java/javase/documentation/index.html para obter mais detalhes.
+java.launcher.opt.footer     =\    -cp <caminho de pesquisa de classe de diret\u00F3rios e arquivos zip/jar>\n    -classpath <caminho de pesquisa de classe de diret\u00F3rios e arquivos zip/jar>\n                  Uma lista separada por {0} de diret\u00F3rios, arquivos compactados JAR,\n                  e arquivos compactados ZIP para procurar arquivos de classe.\n    -mp <caminho do m\u00F3dulo>\n    -modulepath <caminho do m\u00F3dulo>...\n                  Uma lista separada por {0} de diret\u00F3rios, cada um\n                  sendo um diret\u00F3rio de m\u00F3dulos.\n    -upgrademodulepath <caminho do m\u00F3dulo>...\n                  Uma lista separada por {0} de diret\u00F3rios, cada um\n                  sendo um diret\u00F3rio de m\u00F3dulos que substituem m\u00F3dulos\n                  pass\u00EDveis de upgrade na imagem de runtime\n    -m <modulename> | <modulename>/<mainclass>\n                  o m\u00F3dulo inicial ou principal a ser resolvido\n    -addmods <modulename>[,<modulename>...]\n                  m\u00F3dulos raiz a serem resolvidos al\u00E9m do m\u00F3dulo inicial\n    -limitmods <modulename>[,<modulename>...]\n                  limita o universo de m\u00F3dulos observ\u00E1veis\n    -listmods[:<modulename>[,<modulename>...]]\n                  lista os m\u00F3dulos observ\u00E1veis e sai\n    -D<name>=<value>\n                  define uma propriedade de sistema\n    -verbose:[class|gc|jni]\n                  ativa sa\u00EDda detalhada\n    -version      imprime a vers\u00E3o do produto e sai\n    -showversion  imprime a vers\u00E3o do produto e continua\n    -? -help      imprime esta mensagem de ajuda\n    -X            imprime a ajuda em op\u00E7\u00F5es n\u00E3o padronizadas\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  ativa asser\u00E7\u00F5es com granularidade especificada\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  desativa asser\u00E7\u00F5es com granularidade especificada\n    -esa | -enablesystemassertions\n                  ativa asser\u00E7\u00F5es do sistema\n    -dsa | -disablesystemassertions\n                  desativa asser\u00E7\u00F5es do sistema\n    -agentlib:<libname>[=<options>]\n                  carrega a biblioteca de agente nativo <libname>, por exemplo, -agentlib:jdwp\n                  consulte tamb\u00E9m -agentlib:jdwp=help\n    -agentpath:<pathname>[=<options>]\n                  carrega a biblioteca de agente nativo por nome do caminho completo\n    -javaagent:<jarpath>[=<options>]\n                  carrega o agente de linguagem de programa\u00E7\u00E3o Java; consulte java.lang.instrument\n    -splash:<imagepath>\n                  mostra a tela inicial com a imagem especificada\n    @<filepath>   op\u00E7\u00F5es de leitura do arquivo especificado\n
+See http://www.oracle.com/technetwork/java/javase/documentation/index.html para obter mais detalhes.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           execu\u00E7\u00E3o no modo misto (default)\n    -Xint             execu\u00E7\u00E3o somente no modo interpretado\n    -Xbootclasspath:<diret\u00F3rios e arquivos zip/jar separados por {0}>\n                      define o caminho de pesquisa para classes e recursos de inicializa\u00E7\u00E3o\n    -Xbootclasspath/a:<diret\u00F3rios e arquivos zip/jar separados por {0}>\n                      anexa no final do caminho da classe de inicializa\u00E7\u00E3o\n    -Xbootclasspath/p:<diret\u00F3rios e arquivos zip/jar separados por {0}>\n                      anexa no in\u00EDcio do caminho da classe de inicializa\u00E7\u00E3o\n    -Xdiag            mostra mensagens de diagn\u00F3stico adicionais\n    -Xnoclassgc       desativa a coleta de lixo da classe\n    -Xincgc           ativa a coleta de lixo incremental\n    -Xloggc:<arquivo>    registra o status do GC status em um arquivo com marca\u00E7\u00F5es de data e hor\u00E1rio\n    -Xbatch           desativa a compila\u00E7\u00E3o em segundo plano\n    -Xms<tamanho>        define o tamanho inicial do heap Java\n    -Xmx<tamanho>        define o tamanho m\u00E1ximo do heap Java\n    -Xss<tamanho>        define o tamanho da pilha de threads java\n    -Xprof            produz dados de perfil da cpu\n    -Xfuture          ativa verifica\u00E7\u00F5es de n\u00EDvel m\u00E1ximo de exig\u00EAncia, prevendo o valor default futuro\n    -Xrs              reduz o uso de sinais do SO pelo(a) Java/VM (consulte a documenta\u00E7\u00E3o)\n    -Xcheck:jni       executa verifica\u00E7\u00F5es adicionais de fun\u00E7\u00F5es da JNI\n    -Xshare:off       n\u00E3o tenta usar dados da classe compartilhada\n    -Xshare:auto      se poss\u00EDvel, usa dados da classe compartilhada (default)\n    -Xshare:on        requer o uso de dados da classe compartilhada, caso contr\u00E1rio haver\u00E1 falha.\n    -XshowSettings    mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:all\n                      mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:vm mostra todas as defini\u00E7\u00F5es relacionadas \u00E0 vm e continua\n    -XshowSettings:properties\n                      mostra todas as defini\u00E7\u00F5es da propriedade e continua\n    -XshowSettings:locale\n                      mostra todas as defini\u00E7\u00F5es relativas \u00E0s configura\u00E7\u00F5es regionais e continua\n\nAs -X options n\u00E3o s\u00E3o padronizadas e est\u00E3o sujeitas a altera\u00E7\u00F5es sem aviso.\n
+java.launcher.X.usage=\    -Xmixed           execu\u00E7\u00E3o no modo misto (padr\u00E3o)\n    -Xint             execu\u00E7\u00E3o somente no modo interpretado\n    -Xbootclasspath:<diret\u00F3rios e arquivos zip/jar separados por {0}>\n                      anexos ao final do caminho de classe de inicializa\u00E7\u00E3o\n    -Xdiag            mostra mensagens de diagn\u00F3stico adicionais\n    -Xdiag:resolver   mostra mensagens de diagn\u00F3stico do resolvedor\n    -Xnoclassgc       desativa a coleta de lixo da classe\n    -Xincgc           ativa a coleta de lixo incremental\n    -Xloggc:<arquivo>    registra o status do GC status em um arquivo com marca\u00E7\u00F5es de data e hor\u00E1rio\n    -Xbatch           desativa a compila\u00E7\u00E3o em segundo plano\n    -Xms<tamanho>        define o tamanho inicial do heap Java\n    -Xmx<tamanho>        define o tamanho m\u00E1ximo do heap Java\n    -Xss<tamanho>        define o tamanho da pilha de threads java\n    -Xprof            produz dados de perfil da cpu\n    -Xfuture          ativa verifica\u00E7\u00F5es de n\u00EDvel m\u00E1ximo de exig\u00EAncia, prevendo o valor padr\u00E3o futuro\n    -Xrs              reduz o uso de sinais do SO pelo(a) Java/VM (consulte a documenta\u00E7\u00E3o)\n    -Xcheck:jni       executa verifica\u00E7\u00F5es adicionais de fun\u00E7\u00F5es da JNI\n    -Xshare:off       n\u00E3o tenta usar dados da classe compartilhada\n    -Xshare:auto      se poss\u00EDvel, usa dados da classe compartilhada (padr\u00E3o)\n    -Xshare:on        requer o uso de dados da classe compartilhada, caso contr\u00E1rio haver\u00E1 falha.\n    -XshowSettings    mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:all\n                      mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:vm mostra todas as defini\u00E7\u00F5es relacionadas \u00E0 vm e continua\n    -XshowSettings:properties\n                      mostra todas as defini\u00E7\u00F5es da propriedade e continua\n    -XshowSettings:locale\n                      mostra todas as defini\u00E7\u00F5es relativas \u00E0s configura\u00E7\u00F5es regionais e continua\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module> l\u00EA outros m\u00F3dulos,\n                      n\u00E3o importando a declara\u00E7\u00E3o do m\u00F3dulo\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module> exports <package> para outros m\u00F3dulos,\n                      n\u00E3o importando a declara\u00E7\u00E3o do m\u00F3dulo\n    -Xpatch:<module>=<file>({0}<file>)*\n                      Substitui ou aumenta um m\u00F3dulo com classes e recursos\n                      em arquivos JAR ou diret\u00F3rios\n    -Xdisable-@files  desativa uma expans\u00E3o adicional de arquivo de argumentos\n\nAs op\u00E7\u00F5es -X n\u00E3o s\u00E3o padronizadas e est\u00E3o sujeitas a altera\u00E7\u00F5es sem aviso.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.macosx.usage=\nAs op\u00E7\u00F5es a seguir s\u00E3o espec\u00EDficas para o Mac OS X:\n    -XstartOnFirstThread\n                      executa o m\u00E9todo main() no primeiro thread (AppKit)\n    -Xdock:name=<nome da aplica\u00E7\u00E3o>"\n                      substitui o nome da aplica\u00E7\u00E3o default exibido no encaixe\n    -Xdock:icon=<caminho para o arquivo do \u00EDcone>\n                      substitui o \u00EDcone exibido no encaixe\n\n
+java.launcher.X.macosx.usage=\nAs op\u00E7\u00F5es a seguir s\u00E3o espec\u00EDficas para o Mac OS X:\n    -XstartOnFirstThread\n                      executa o m\u00E9todo main() no primeiro thread (AppKit)\n    -Xdock:name=<nome do aplicativo>"\n                      substitui o nome do aplicativo padr\u00E3o exibido no encaixe\n    -Xdock:icon=<caminho para o arquivo do \u00EDcone>\n                      substitui o \u00EDcone exibido no encaixe\n\n
 
 java.launcher.cls.error1=Erro: N\u00E3o foi poss\u00EDvel localizar nem carregar a classe principal {0}
 java.launcher.cls.error2=Erro: o m\u00E9todo main n\u00E3o \u00E9 {0} na classe {1}; defina o m\u00E9todo main como:\n   public static void main(String[] args)
 java.launcher.cls.error3=Erro: o m\u00E9todo main deve retornar um valor do tipo void na classe {0}; \ndefina o m\u00E9todo main como:\n   public static void main(String[] args)
-java.launcher.cls.error4=Erro: o m\u00E9todo main n\u00E3o foi encontrado na classe {0}; defina o m\u00E9todo main como:\\n   public static void main(String[] args)\\nou uma classe da aplica\u00E7\u00E3o JavaFX deve expandir {1}
-java.launcher.cls.error5=Erro: os componentes de runtime do JavaFX n\u00E3o foram encontrados. Eles s\u00E3o obrigat\u00F3rios para executar esta aplica\u00E7\u00E3o
+java.launcher.cls.error4=Erro: o m\u00E9todo main n\u00E3o foi encontrado na classe {0}; defina o m\u00E9todo main como:\n   public static void main(String[] args)\nou uma classe de aplicativo JavaFX deve expandir {1}
+java.launcher.cls.error5=Erro: os componentes de runtime do JavaFX n\u00E3o foram encontrados. Eles s\u00E3o obrigat\u00F3rios para executar este aplicativo
 java.launcher.jar.error1=Erro: ocorreu um erro inesperado ao tentar abrir o arquivo {0}
 java.launcher.jar.error2=manifesto n\u00E3o encontrado em {0}
 java.launcher.jar.error3=nenhum atributo de manifesto principal em {0}
 java.launcher.init.error=erro de inicializa\u00E7\u00E3o
 java.launcher.javafx.error1=Erro: O m\u00E9todo launchApplication do JavaFX tem a assinatura errada. Ele\\ndeve ser declarado como est\u00E1tico e retornar um valor do tipo void
+java.launcher.module.error1=o m\u00F3dulo {0} n\u00E3o tem um atributo MainClass, use -m <module>/<main-class>
+java.launcher.module.error2=Erro: N\u00E3o foi poss\u00EDvel localizar nem carregar a classe principal {0} no m\u00F3dulo {1}
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties
index 92f061f..902f660 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   Syntax: {0} [-alternativ] class [argument...]\n           (f\u00F6r att k\u00F6ra en klass)\n   eller  {0} [-alternativ] -jar jarfile [argument...]\n           (f\u00F6r att k\u00F6ra en jar-fil)\nd\u00E4r alternativen omfattar:\n
+java.launcher.opt.header  =   Syntax: {0} [options] class [args...]\n           (f\u00F6r att k\u00F6ra en klass)\n   eller  {0} [options] -jar jarfile [args...]\n           (f\u00F6r att k\u00F6ra en jar-fil)\n   eller  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (f\u00F6r att k\u00F6ra huvudklassen i en modul)\nmed alternativen:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  anv\u00E4nd en {0}-bitsdatamodell om det finns\n
 java.launcher.opt.vmselect   =\    {0}\t  f\u00F6r att v\u00E4lja "{1}" VM\n
@@ -34,21 +34,24 @@
 java.launcher.ergo.message2  =\                  eftersom du k\u00F6r en serverklassmaskin.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <klass\u00F6kv\u00E4g f\u00F6r kataloger och zip-/jar-filer>\n    -classpath <klass\u00F6kv\u00E4g f\u00F6r kataloger och zip-/jar-filer>\n                  En {0}-separerad lista med kataloger, JAR-arkiv,\n                  och ZIP-arkiv f\u00F6r s\u00F6kning efter klassfiler.\n    -D<name>=<value>\n                  ange en systemegenskap\n    -verbose:[class|gc|jni]\n                  aktivera utf\u00F6rliga utdata\n    -version      skriv ut produktversionen och avsluta\n    -version:<value>\n                  beg\u00E4r den specifika versionen som ska k\u00F6ras\n    -showversion  skriv ut produktversionen och forts\u00E4tt\n    -jre-restrict-search | -no-jre-restrict-search\n                  inkludera/exkludera anv\u00E4ndarprivata JRE:er i versions\u00F6kningen\n    -? -help      skriv ut det h\u00E4r hj\u00E4lpmeddelandet\n    -X            skriv ut hj\u00E4lp f\u00F6r icke-standardalternativ\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  aktivera verifiering med angiven detaljgrad\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  avaktivera verifiering med angiven detaljgrad\n    -esa | -enablesystemassertions\n                  aktivera systemverifieringar\n    -dsa | -disablesystemassertions\n                  avaktivera systemverifieringar\n    -agentlib:<libname>[=<options>]\n                  ladda ursprungligt agentbibliotek <libname>, e.g. -agentlib:hprof\n                  se \u00E4ven -agentlib:jdwp=help och -agentlib:hprof=help\n    -agentpath:<pathname>[=<options>]\n                  ladda ursprungligt agentbibliotek med helt s\u00F6kv\u00E4gsnamn\n    -javaagent:<jarpath>[=<options>]\n                  ladda Java-programspr\u00E5ksagent, se java.lang.instrument\n    -splash:<imagepath>\n                  visa v\u00E4lkomstsk\u00E4rm med angiven bild\nMer information finns p\u00E5 http://www.oracle.com/technetwork/java/javase/documentation/index.html.
+java.launcher.opt.footer     =\    -cp <class search path of directories and zip/jar files>\n    -classpath <class search path of directories and zip/jar files>\n                  En {0}-avgr\u00E4nsad lista \u00F6ver kataloger, JAR-arkiv\n                  och ZIP-arkiv att s\u00F6ka efter klassfiler i.\n    -mp <module path>\n    -modulepath <module path>...\n                  En {0}-avgr\u00E4nsad lista \u00F6ver kataloger, d\u00E4r varje\n                  katalog \u00E4r en katalog med moduler.\n    -upgrademodulepath <module path>...\n                  En {0}-avgr\u00E4nsad lista \u00F6ver kataloger, d\u00E4r varje\n                  katalog \u00E4r en katalog med moduler som ers\u00E4tter\n                  uppgraderingsbara moduler i exekveringsavbilden\n    -m <modulename> | <modulename>/<mainclass>\n                  den ursprungliga modulen eller huvudmodulen att l\u00F6sa\n    -addmods <modulename>[,<modulename>...]\n                  rotmoduler att l\u00F6sa f\u00F6rutom den ursprungliga modulen\n    -limitmods <modulename>[,<modulename>...]\n                  begr\u00E4nsar universumet med observerbara moduler\n    -listmods[:<modulename>[,<modulename>...]]\n                  lista observerbara moduler och avsluta\n    -D<name>=<value>\n                  ange en systemegenskap\n    -verbose:[class|gc|jni]\n                  aktivera utf\u00F6rliga utdata\n    -version      skriv ut produktversion och avsluta\n    -showversion  skriv ut produktversion och forts\u00E4tt\n    -? -help      skriv ut det h\u00E4r hj\u00E4lpmeddelandet\n    -X            skriv ut f\u00F6r icke-standardalternativ\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  aktivera verifieringar med den angivna detaljgraden\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  avaktivera verifieringar med den angivna detaljgraden\n    -esa | -enablesystemassertions\n                  aktivera systemverifieringar\n    -dsa | -disablesystemassertions\n                  avaktivera systemverifieringar\n    -agentlib:<libname>[=<options>]\n                  ladda det ursprungliga agentbiblioteket <libname>, exempel: -agentlib:jdwp\n                  se \u00E4ven -agentlib:jdwp=help\n    -agentpath:<pathname>[=<options>]\n                  ladda det ursprungliga agentbiblioteket med fullst\u00E4ndigt s\u00F6kv\u00E4gsnamn\n    -javaagent:<jarpath>[=<options>]\n                  ladda agenten f\u00F6r programmeringsspr\u00E5ket Java, se java.lang.instrument\n    -splash:<imagepath>\n                  visa v\u00E4lkomstsk\u00E4rmen med den angivna bilden\n    @<filepath>   l\u00E4s alternativ fr\u00E5n den angivna filen\n
+See Se http://www.oracle.com/technetwork/java/javase/documentation/index.html f\u00F6r mer information.
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           k\u00F6rning i blandat l\u00E4ge (standard)\n    -Xint             endast k\u00F6rning i tolkat l\u00E4ge\n    -Xbootclasspath:<kataloger och zip-/jar-filer avgr\u00E4nsas med {0}>\n                      ange s\u00F6kv\u00E4g f\u00F6r programladdningsklasser och -resurser\n    -Xbootclasspath/a:<kataloger och zip-/jar-filer avgr\u00E4nsas med {0}>\n                      l\u00E4gg till i slutet av programladdningsklassens s\u00F6kv\u00E4g\n    -Xbootclasspath/p:<kataloger och zip-/jar-filer avgr\u00E4nsas med {0}>\n                      l\u00E4gg till i b\u00F6rjan av programladdningsklassens s\u00F6kv\u00E4g\n    -Xdiag            visa ytterligare diagnostiska meddelanden\n    -Xnoclassgc       avaktivera klassens skr\u00E4pinsamling\n    -Xincgc           aktivera inkrementell skr\u00E4pinsamling\n    -Xloggc:<fil>    logga GC-status till en fil med tidsst\u00E4mplar\n    -Xbatch           avaktivera bakgrundskompilering\n    -Xms<storlek>        ange ursprunglig storlek f\u00F6r Java-heap\n    -Xmx<storlek>        ange maximal storlek f\u00F6r Java-heap\n    -Xss<storlek>        ange storlek f\u00F6r java-tr\u00E5dsstack\n    -Xprof            utdata f\u00F6r processorprofilering\n    -Xfuture          aktivera str\u00E4ngaste kontroller, f\u00F6rv\u00E4ntad framtida standard\n    -Xrs              minska OS-signalanv\u00E4ndning av Java/VM (se dokumentation)\n    -Xcheck:jni       utf\u00F6r ytterligare kontroller f\u00F6r JNI-funktioner\n    -Xshare:off       anv\u00E4nd inte delade klassdata\n    -Xshare:auto      anv\u00E4nd delade klassdata om det g\u00E5r (standard)\n    -Xshare:on        kr\u00E4v att delade klassdata anv\u00E4nds, annars slutf\u00F6r inte.\n    -XshowSettings    visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:all\n                      visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:vm visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:properties\n                      visa alla egenskapsinst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:locale\n                      visa alla spr\u00E5krelaterade inst\u00E4llningar och forts\u00E4tt\n\n-X-alternativen \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande.\n
+java.launcher.X.usage=\    -Xmixed           exekvering i blandat l\u00E4ge (standard)\n    -Xint             endast exekvering i tolkat l\u00E4ge\n    -Xbootclasspath/a:<directories and zip/jar files separated by {0}>\n                      l\u00E4gg till sist i klass\u00F6kv\u00E4gen f\u00F6r programladdning\n    -Xdiag            visa fler diagnostiska meddelanden\n    -Xdiag:resolver   visa diagnostiska meddelanden f\u00F6r matchning\n    -Xnoclassgc       avaktivera klasskr\u00E4pinsamling\n    -Xincgc           aktivera inkrementell skr\u00E4pinsamling\n    -Xloggc:<file>    logga GC-status till en fil med tidsst\u00E4mplar\n    -Xbatch           avaktivera bakgrundskompilering\n    -Xms<size>        ange ursprunglig storlek f\u00F6r Java-heap-utrymmet\n    -Xmx<size>        ange st\u00F6rsta storlek f\u00F6r Java-heap-utrymmet\n    -Xss<size>        ange storlek f\u00F6r java-tr\u00E5dsstacken\n    -Xprof            utdata f\u00F6r processorprofilering\n    -Xfuture          aktivera str\u00E4ngaste kontroller, f\u00F6rv\u00E4ntad framtida standard\n    -Xrs              minska operativsystemssignalanv\u00E4ndning f\u00F6r Java/VM (se dokumentationen)\n    -Xcheck:jni       utf\u00F6r fler kontroller f\u00F6r JNI-funktioner\n    -Xshare:off       f\u00F6rs\u00F6k inte anv\u00E4nda delade klassdata\n    -Xshare:auto      anv\u00E4nd delade klassdata om m\u00F6jligt (standard)\n    -Xshare:on        kr\u00E4v anv\u00E4ndning av delade klassdata, utf\u00F6r inte i annat fall.\n    -XshowSettings    visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:all\n                      visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:vm visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:properties\n                      visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:locale\n                      visa alla spr\u00E5kkonventionsrelaterade inst\u00E4llningar och forts\u00E4tt\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module> l\u00E4ser andra moduler,\n                      oavsett moduldeklarationen\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module> exporterar <package> till andra moduler,\n                      oavsett moduldeklarationen\n    -Xpatch:<module>=<file>({0}<file>)*\n                      \u00C5sidos\u00E4tt eller ut\u00F6ka en modul med klasser och resurser\n                      i JAR-filer eller kataloger\n    -Xdisable-@files  avaktivera framtida argumentfilsut\u00F6kning\n\n-X-alternativen \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\nF\u00F6ljande alternativ \u00E4r specifika f\u00F6r Mac OS X:\n    -XstartOnFirstThread\n                      k\u00F6r huvudmetoden() p\u00E5 den f\u00F6rsta (AppKit) tr\u00E5den\n    -Xdock:name=<application name>"\n                      \u00E5sidosatt standardapplikationsnamn visas i docka\n    -Xdock:icon=<path to icon file>\n                      \u00E5sidosatt standardikon visas i docka\n\n
 
-java.launcher.cls.error1=Fel: Hittar inte eller kan inte ladda huvudklassen {0}
+java.launcher.cls.error1=Fel: Kan inte hitta eller kan inte ladda huvudklassen {0}
 java.launcher.cls.error2=Fel: Huvudmetoden \u00E4r inte {0} i klassen {1}, definiera huvudmetoden som:\n   public static void main(String[] args)
 java.launcher.cls.error3=Fel: Huvudmetoden m\u00E5ste returnera ett v\u00E4rde av typen void i klassen {0}, \ndefiniera huvudmetoden som:\n   public static void main(String[] args)
 java.launcher.cls.error4=Fel: Huvudmetoden finns inte i klassen {0}, definiera huvudmetoden som:\n   public static void main(String[] args)\neller s\u00E5 m\u00E5ste en JavaFX-applikationsklass ut\u00F6ka {1}
-java.launcher.cls.error5=Fel: JavaFX-k\u00F6rningskomponenter saknas, och de kr\u00E4vs f\u00F6r att kunna k\u00F6ra den h\u00E4r applikationen
+java.launcher.cls.error5=Fel: JavaFX-exekveringskomponenter saknas, och de kr\u00E4vs f\u00F6r att kunna k\u00F6ra den h\u00E4r applikationen
 java.launcher.jar.error1=Fel: Ett ov\u00E4ntat fel intr\u00E4ffade n\u00E4r filen {0} skulle \u00F6ppnas
 java.launcher.jar.error2=manifest finns inte i {0}
 java.launcher.jar.error3=inget huvudmanifestattribut i {0}
 java.launcher.init.error=initieringsfel
 java.launcher.javafx.error1=Fel: JavaFX launchApplication-metoden har fel signatur, den \nm\u00E5ste ha deklarerats som statisk och returnera ett v\u00E4rde av typen void
+java.launcher.module.error1=modulen {0} har inget MainClass-attribut, anv\u00E4nd -m <module>/<main-class>
+java.launcher.module.error2=Fel: kunde inte hitta eller ladda huvudklassen {0} i modulen {1}
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties
index 3ab1bd4..1296fe9 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   \u7528\u6CD5: {0} [-options] class [args...]\n           (\u6267\u884C\u7C7B)\n   \u6216  {0} [-options] -jar jarfile [args...]\n           (\u6267\u884C jar \u6587\u4EF6)\n\u5176\u4E2D\u9009\u9879\u5305\u62EC:\n
+java.launcher.opt.header  =   \u7528\u6CD5: {0} [options] class [args...]\n           (\u6267\u884C\u7C7B)\n   or  {0} [options] -jar jarfile [args...]\n           (\u6267\u884C jar \u6587\u4EF6)\n   or  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (\u6267\u884C\u6A21\u5757\u4E2D\u7684\u4E3B\u7C7B)\n\u5176\u4E2D options \u5305\u62EC:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  \u4F7F\u7528 {0} \u4F4D\u6570\u636E\u6A21\u578B (\u5982\u679C\u53EF\u7528)\n
 java.launcher.opt.vmselect   =\    {0}\t  \u9009\u62E9 "{1}" VM\n
@@ -34,10 +34,11 @@
 java.launcher.ergo.message2  =\                  \u56E0\u4E3A\u60A8\u662F\u5728\u670D\u52A1\u5668\u7C7B\u8BA1\u7B97\u673A\u4E0A\u8FD0\u884C\u3002\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <\u76EE\u5F55\u548C zip/jar \u6587\u4EF6\u7684\u7C7B\u641C\u7D22\u8DEF\u5F84>\n    -classpath <\u76EE\u5F55\u548C zip/jar \u6587\u4EF6\u7684\u7C7B\u641C\u7D22\u8DEF\u5F84>\n                  \u7528 {0} \u5206\u9694\u7684\u76EE\u5F55, JAR \u6863\u6848\n                  \u548C ZIP \u6863\u6848\u5217\u8868, \u7528\u4E8E\u641C\u7D22\u7C7B\u6587\u4EF6\u3002\n    -D<\u540D\u79F0>=<\u503C>\n                  \u8BBE\u7F6E\u7CFB\u7EDF\u5C5E\u6027\n    -verbose:[class|gc|jni]\n                  \u542F\u7528\u8BE6\u7EC6\u8F93\u51FA\n    -version      \u8F93\u51FA\u4EA7\u54C1\u7248\u672C\u5E76\u9000\u51FA\n    -version:<\u503C>\n                  \u9700\u8981\u6307\u5B9A\u7684\u7248\u672C\u624D\u80FD\u8FD0\u884C\n    -showversion  \u8F93\u51FA\u4EA7\u54C1\u7248\u672C\u5E76\u7EE7\u7EED\n    -jre-restrict-search | -no-jre-restrict-search\n                  \u5728\u7248\u672C\u641C\u7D22\u4E2D\u5305\u62EC/\u6392\u9664\u7528\u6237\u4E13\u7528 JRE\n    -? -help      \u8F93\u51FA\u6B64\u5E2E\u52A9\u6D88\u606F\n    -X            \u8F93\u51FA\u975E\u6807\u51C6\u9009\u9879\u7684\u5E2E\u52A9\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \u6309\u6307\u5B9A\u7684\u7C92\u5EA6\u542F\u7528\u65AD\u8A00\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \u7981\u7528\u5177\u6709\u6307\u5B9A\u7C92\u5EA6\u7684\u65AD\u8A00\n    -esa | -enablesystemassertions\n                  \u542F\u7528\u7CFB\u7EDF\u65AD\u8A00\n    -dsa | -disablesystemassertions\n                  \u7981\u7528\u7CFB\u7EDF\u65AD\u8A00\n    -agentlib:<libname>[=<\u9009\u9879>]\n                  \u52A0\u8F7D\u672C\u673A\u4EE3\u7406\u5E93 <libname>, \u4F8B\u5982 -agentlib:hprof\n                  \u53E6\u8BF7\u53C2\u9605 -agentlib:jdwp=help \u548C -agentlib:hprof=help\n    -agentpath:<pathname>[=<\u9009\u9879>]\n                  \u6309\u5B8C\u6574\u8DEF\u5F84\u540D\u52A0\u8F7D\u672C\u673A\u4EE3\u7406\u5E93\n    -javaagent:<jarpath>[=<\u9009\u9879>]\n                  \u52A0\u8F7D Java \u7F16\u7A0B\u8BED\u8A00\u4EE3\u7406, \u8BF7\u53C2\u9605 java.lang.instrument\n    -splash:<imagepath>\n                  \u4F7F\u7528\u6307\u5B9A\u7684\u56FE\u50CF\u663E\u793A\u542F\u52A8\u5C4F\u5E55\n\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u53C2\u9605 http://www.oracle.com/technetwork/java/javase/documentation/index.html\u3002
+java.launcher.opt.footer     =\    -cp <\u76EE\u5F55\u548C zip/jar \u6587\u4EF6\u7684\u7C7B\u641C\u7D22\u8DEF\u5F84>\n    -classpath <\u76EE\u5F55\u548C zip/jar \u6587\u4EF6\u7684\u7C7B\u641C\u7D22\u8DEF\u5F84>\n                  \u7528\u4E8E\u641C\u7D22\u7C7B\u6587\u4EF6\u7684\u76EE\u5F55, JAR \u6863\u6848\n                  \u548C ZIP \u6863\u6848\u7684\u5217\u8868, \u4F7F\u7528 {0} \u5206\u9694\u3002\n    -mp <\u6A21\u5757\u8DEF\u5F84>\n    -modulepath <\u6A21\u5757\u8DEF\u5F84>...\n                  \u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u5217\u8868, \u6BCF\u4E2A\u76EE\u5F55\n                  \u90FD\u662F\u4E00\u4E2A\u5305\u542B\u6A21\u5757\u7684\u76EE\u5F55\u3002\n    -upgrademodulepath <module path>...\n                  \u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u5217\u8868, \u6BCF\u4E2A\u76EE\u5F55\n                  \u90FD\u662F\u4E00\u4E2A\u5305\u542B\u6A21\u5757\u7684\u76EE\u5F55, \u8FD9\u4E9B\u6A21\u5757\n                  \u7528\u4E8E\u66FF\u6362\u8FD0\u884C\u65F6\u6620\u50CF\u4E2D\u7684\u53EF\u5347\u7EA7\u6A21\u5757\n    -m <modulename> | <modulename>/<mainclass>\n                  \u8981\u89E3\u6790\u7684\u521D\u59CB\u6A21\u5757\u6216\u4E3B\u6A21\u5757\n    -addmods <modulename>[,<modulename>...]\n                  \u9664\u4E86\u521D\u59CB\u6A21\u5757\u4E4B\u5916\u8981\u89E3\u6790\u7684\u6839\u6A21\u5757\n    -limitmods <modulename>[,<modulename>...]\n                  \u9650\u5236\u53EF\u89C2\u5BDF\u6A21\u5757\u7684\u9886\u57DF\n    -listmods[:<modulename>[,<modulename>...]]\n                  \u5217\u51FA\u53EF\u89C2\u5BDF\u6A21\u5757\u5E76\u9000\u51FA\n    -D<name>=<value>\n                  \u8BBE\u7F6E\u7CFB\u7EDF\u5C5E\u6027\n    -verbose:[class|gc|jni]\n                  \u542F\u7528\u8BE6\u7EC6\u8F93\u51FA\n    -version      \u8F93\u51FA\u4EA7\u54C1\u7248\u672C\u5E76\u9000\u51FA\n    -showversion  \u8F93\u51FA\u4EA7\u54C1\u7248\u672C\u5E76\u7EE7\u7EED\n    -? -help      \u8F93\u51FA\u6B64\u5E2E\u52A9\u6D88\u606F\n    -X            \u8F93\u51FA\u975E\u6807\u51C6\u9009\u9879\u7684\u5E2E\u52A9\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \u6309\u6307\u5B9A\u7684\u7C92\u5EA6\u542F\u7528\u65AD\u8A00\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \u7981\u7528\u5177\u6709\u6307\u5B9A\u7C92\u5EA6\u7684\u65AD\u8A00\n    -esa | -enablesystemassertions\n                  \u542F\u7528\u7CFB\u7EDF\u65AD\u8A00\n    -dsa | -disablesystemassertions\n                  \u7981\u7528\u7CFB\u7EDF\u65AD\u8A00\n    -agentlib:<libname>[=<options>]\n                  \u52A0\u8F7D\u672C\u673A\u4EE3\u7406\u5E93 <libname>, \u4F8B\u5982 -agentlib:jdwp\n                  \u53E6\u8BF7\u53C2\u9605 -agentlib:jdwp=help\n    -agentpath:<pathname>[=<options>]\n                  \u6309\u5B8C\u6574\u8DEF\u5F84\u540D\u52A0\u8F7D\u672C\u673A\u4EE3\u7406\u5E93\n    -javaagent:<jarpath>[=<options>]\n                  \u52A0\u8F7D Java \u7F16\u7A0B\u8BED\u8A00\u4EE3\u7406, \u8BF7\u53C2\u9605 java.lang.instrument\n    -splash:<imagepath>\n                  \u4F7F\u7528\u6307\u5B9A\u7684\u56FE\u50CF\u663E\u793A\u542F\u52A8\u5C4F\u5E55\n    @<filepath>   \u4ECE\u6307\u5B9A\u6587\u4EF6\u4E2D\u8BFB\u53D6\u9009\u9879\n
+See \u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u53C2\u9605 http://www.oracle.com/technetwork/java/javase/documentation/index.html\u3002
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           \u6DF7\u5408\u6A21\u5F0F\u6267\u884C (\u9ED8\u8BA4)\n    -Xint             \u4EC5\u89E3\u91CA\u6A21\u5F0F\u6267\u884C\n    -Xbootclasspath:<\u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u548C zip/jar \u6587\u4EF6>\n                      \u8BBE\u7F6E\u641C\u7D22\u8DEF\u5F84\u4EE5\u5F15\u5BFC\u7C7B\u548C\u8D44\u6E90\n    -Xbootclasspath/a:<\u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u548C zip/jar \u6587\u4EF6>\n                      \u9644\u52A0\u5728\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u672B\u5C3E\n    -Xbootclasspath/p:<\u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u548C zip/jar \u6587\u4EF6>\n                      \u7F6E\u4E8E\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u4E4B\u524D\n    -Xdiag            \u663E\u793A\u9644\u52A0\u8BCA\u65AD\u6D88\u606F\n    -Xnoclassgc       \u7981\u7528\u7C7B\u5783\u573E\u6536\u96C6\n    -Xincgc           \u542F\u7528\u589E\u91CF\u5783\u573E\u6536\u96C6\n    -Xloggc:<file>    \u5C06 GC \u72B6\u6001\u8BB0\u5F55\u5728\u6587\u4EF6\u4E2D (\u5E26\u65F6\u95F4\u6233)\n    -Xbatch           \u7981\u7528\u540E\u53F0\u7F16\u8BD1\n    -Xms<size>        \u8BBE\u7F6E\u521D\u59CB Java \u5806\u5927\u5C0F\n    -Xmx<size>        \u8BBE\u7F6E\u6700\u5927 Java \u5806\u5927\u5C0F\n    -Xss<size>        \u8BBE\u7F6E Java \u7EBF\u7A0B\u5806\u6808\u5927\u5C0F\n    -Xprof            \u8F93\u51FA cpu \u914D\u7F6E\u6587\u4EF6\u6570\u636E\n    -Xfuture          \u542F\u7528\u6700\u4E25\u683C\u7684\u68C0\u67E5, \u9884\u671F\u5C06\u6765\u7684\u9ED8\u8BA4\u503C\n    -Xrs              \u51CF\u5C11 Java/VM \u5BF9\u64CD\u4F5C\u7CFB\u7EDF\u4FE1\u53F7\u7684\u4F7F\u7528 (\u8BF7\u53C2\u9605\u6587\u6863)\n    -Xcheck:jni       \u5BF9 JNI \u51FD\u6570\u6267\u884C\u5176\u4ED6\u68C0\u67E5\n    -Xshare:off       \u4E0D\u5C1D\u8BD5\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E\n    -Xshare:auto      \u5728\u53EF\u80FD\u7684\u60C5\u51B5\u4E0B\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E (\u9ED8\u8BA4)\n    -Xshare:on        \u8981\u6C42\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E, \u5426\u5219\u5C06\u5931\u8D25\u3002\n    -XshowSettings    \u663E\u793A\u6240\u6709\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:all\n                      \u663E\u793A\u6240\u6709\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:vm \u663E\u793A\u6240\u6709\u4E0E vm \u76F8\u5173\u7684\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:properties\n                      \u663E\u793A\u6240\u6709\u5C5E\u6027\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:locale\n                      \u663E\u793A\u6240\u6709\u4E0E\u533A\u57DF\u8BBE\u7F6E\u76F8\u5173\u7684\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n\n-X \u9009\u9879\u662F\u975E\u6807\u51C6\u9009\u9879, \u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
+java.launcher.X.usage=\    -Xmixed           \u6DF7\u5408\u6A21\u5F0F\u6267\u884C (\u9ED8\u8BA4\u503C)\n    -Xint             \u4EC5\u89E3\u91CA\u6A21\u5F0F\u6267\u884C\n    -Xbootclasspath/a:<\u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u548C zip/jar \u6587\u4EF6>\n                      \u9644\u52A0\u5728\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u672B\u5C3E\n    -Xdiag            \u663E\u793A\u9644\u52A0\u8BCA\u65AD\u6D88\u606F\n    -Xdiag:resolver   \u663E\u793A\u89E3\u6790\u5668\u8BCA\u65AD\u6D88\u606F\n    -Xnoclassgc       \u7981\u7528\u7C7B\u5783\u573E\u6536\u96C6\n    -Xincgc           \u542F\u7528\u589E\u91CF\u5783\u573E\u6536\u96C6\n    -Xloggc:<file>    \u5C06 GC \u72B6\u6001\u8BB0\u5F55\u5728\u6587\u4EF6\u4E2D (\u5E26\u65F6\u95F4\u6233)\n    -Xbatch           \u7981\u7528\u540E\u53F0\u7F16\u8BD1\n    -Xms<size>        \u8BBE\u7F6E\u521D\u59CB Java \u5806\u5927\u5C0F\n    -Xmx<size>        \u8BBE\u7F6E\u6700\u5927 Java \u5806\u5927\u5C0F\n    -Xss<size>        \u8BBE\u7F6E Java \u7EBF\u7A0B\u5806\u6808\u5927\u5C0F\n    -Xprof            \u8F93\u51FA cpu \u5206\u6790\u6570\u636E\n    -Xfuture          \u542F\u7528\u6700\u4E25\u683C\u7684\u68C0\u67E5, \u9884\u671F\u5C06\u6765\u7684\u9ED8\u8BA4\u503C\n    -Xrs              \u51CF\u5C11 Java/VM \u5BF9\u64CD\u4F5C\u7CFB\u7EDF\u4FE1\u53F7\u7684\u4F7F\u7528 (\u8BF7\u53C2\u9605\u6587\u6863)\n    -Xcheck:jni       \u5BF9 JNI \u51FD\u6570\u6267\u884C\u5176\u4ED6\u68C0\u67E5\n    -Xshare:off       \u4E0D\u5C1D\u8BD5\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E\n    -Xshare:auto      \u5728\u53EF\u80FD\u7684\u60C5\u51B5\u4E0B\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E (\u9ED8\u8BA4\u503C)\n    -Xshare:on        \u8981\u6C42\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E, \u5426\u5219\u5C06\u5931\u8D25\u3002\n    -XshowSettings    \u663E\u793A\u6240\u6709\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:all\n                      \u663E\u793A\u6240\u6709\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:vm \u663E\u793A\u6240\u6709\u4E0E vm \u76F8\u5173\u7684\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:properties\n                      \u663E\u793A\u6240\u6709\u5C5E\u6027\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:locale\n                      \u663E\u793A\u6240\u6709\u4E0E\u533A\u57DF\u8BBE\u7F6E\u76F8\u5173\u7684\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      <module> \u8BFB\u53D6\u5176\u4ED6\u6A21\u5757,\n                      \u800C\u65E0\u8BBA\u6A21\u5757\u58F0\u660E\u5982\u4F55\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      <module> \u5C06 <package> \u5BFC\u51FA\u5230\u5176\u4ED6\u6A21\u5757,\n                      \u800C\u65E0\u8BBA\u6A21\u5757\u58F0\u660E\u5982\u4F55\n    -Xpatch:<module>=<file>({0}<file>)*\n                      \u4F7F\u7528 JAR \u6587\u4EF6\u6216\u76EE\u5F55\u4E2D\u7684\u7C7B\u548C\u8D44\u6E90\n                      \u8986\u76D6\u6216\u589E\u5F3A\u6A21\u5757\n    -Xdisable-@files  \u7981\u6B62\u8FDB\u4E00\u6B65\u6269\u5C55\u53C2\u6570\u6587\u4EF6\n\n-X \u9009\u9879\u662F\u975E\u6807\u51C6\u9009\u9879, \u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\u4EE5\u4E0B\u9009\u9879\u4E3A Mac OS X \u7279\u5B9A\u7684\u9009\u9879:\n    -XstartOnFirstThread\n                      \u5728\u7B2C\u4E00\u4E2A (AppKit) \u7EBF\u7A0B\u4E0A\u8FD0\u884C main() \u65B9\u6CD5\n    -Xdock:name=<\u5E94\u7528\u7A0B\u5E8F\u540D\u79F0>"\n                      \u8986\u76D6\u505C\u9760\u680F\u4E2D\u663E\u793A\u7684\u9ED8\u8BA4\u5E94\u7528\u7A0B\u5E8F\u540D\u79F0\n    -Xdock:icon=<\u56FE\u6807\u6587\u4EF6\u7684\u8DEF\u5F84>\n                      \u8986\u76D6\u505C\u9760\u680F\u4E2D\u663E\u793A\u7684\u9ED8\u8BA4\u56FE\u6807\n\n
@@ -52,3 +53,5 @@
 java.launcher.jar.error3={0}\u4E2D\u6CA1\u6709\u4E3B\u6E05\u5355\u5C5E\u6027
 java.launcher.init.error=\u521D\u59CB\u5316\u9519\u8BEF
 java.launcher.javafx.error1=\u9519\u8BEF: JavaFX launchApplication \u65B9\u6CD5\u5177\u6709\u9519\u8BEF\u7684\u7B7E\u540D, \u5FC5\u987B\n\u5C06\u65B9\u6CD5\u58F0\u660E\u4E3A\u9759\u6001\u65B9\u6CD5\u5E76\u8FD4\u56DE\u7A7A\u7C7B\u578B\u7684\u503C
+java.launcher.module.error1=\u6A21\u5757 {0} \u4E0D\u5177\u6709 MainClass \u5C5E\u6027, \u8BF7\u4F7F\u7528 -m <module>/<main-class>
+java.launcher.module.error2=\u9519\u8BEF: \u5728\u6A21\u5757 {1} \u4E2D\u627E\u4E0D\u5230\u6216\u65E0\u6CD5\u52A0\u8F7D\u4E3B\u7C7B {0}
diff --git a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties
index d099058..122419b 100644
--- a/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties
+++ b/jdk/src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,7 +24,7 @@
 #
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.header  =   \u7528\u6CD5: {0} [-options] class [args...]\n           (\u57F7\u884C\u985E\u5225)\n   \u6216  {0} [-options] -jar jarfile [args...]\n           (\u57F7\u884C jar \u6A94\u6848)\n\u9078\u9805\u5305\u62EC:\n
+java.launcher.opt.header  =   \u7528\u6CD5: {0} [options] class [args...]\n           (\u7528\u65BC\u57F7\u884C\u985E\u5225)\n   \u6216  {0} [options] -jar jarfile [args...]\n           (\u7528\u65BC\u57F7\u884C jar \u6A94\u6848)\n   \u6216  {0} [-options] -mp <modulepath> -m <modulename> | <modulename>/<mainclass>\n           (\u7528\u65BC\u57F7\u884C\u6A21\u7D44\u4E2D\u7684\u4E3B\u8981\u985E\u5225)\n\u5176\u4E2D\u7684\u9078\u9805\u5305\u62EC:\n
 
 java.launcher.opt.datamodel  =\    -d{0}\t  \u4F7F\u7528 {0} \u4F4D\u5143\u8CC7\u6599\u6A21\u578B (\u5982\u679C\u6709\u7684\u8A71)\n
 java.launcher.opt.vmselect   =\    {0}\t  \u9078\u53D6 "{1}" VM\n
@@ -34,17 +34,18 @@
 java.launcher.ergo.message2  =\                  \u56E0\u70BA\u60A8\u6B63\u5728\u4F3A\u670D\u5668\u985E\u5225\u6A5F\u5668\u4E0A\u57F7\u884C\u3002\n
 
 # Translators please note do not translate the options themselves
-java.launcher.opt.footer     =\    -cp <class search path of directories and zip/jar files>\n    -classpath <class search path of directories and zip/jar files>\n                  \u4F7F\u7528 {0} \u5340\u9694\u7684\u76EE\u9304\u3001JAR \u5B58\u6A94\u4EE5\u53CA\n                  ZIP \u5B58\u6A94\u6E05\u55AE\u4F86\u641C\u5C0B\u985E\u5225\u6A94\u6848\u3002\n    -D<name>=<value>\n                  \u8A2D\u5B9A\u7CFB\u7D71\u5C6C\u6027\n    -verbose:[class|gc|jni]\n                  \u555F\u7528\u8A73\u7D30\u8CC7\u8A0A\u8F38\u51FA\n    -version      \u5217\u5370\u7522\u54C1\u7248\u672C\u4E26\u7D50\u675F\n    -version:<value>\n                  \u9700\u8981\u6307\u5B9A\u7684\u7248\u672C\u624D\u80FD\u57F7\u884C\n    -showversion  \u5217\u5370\u7522\u54C1\u7248\u672C\u4E26\u7E7C\u7E8C\n    -jre-restrict-search | -no-jre-restrict-search\n                  \u5728\u7248\u672C\u641C\u5C0B\u4E2D\u5305\u62EC/\u6392\u9664\u4F7F\u7528\u8005\u5C08\u7528 JRE\n    -? -help      \u5217\u5370\u6B64\u8AAA\u660E\u8A0A\u606F\n    -X            \u5217\u5370\u975E\u6A19\u6E96\u9078\u9805\u7684\u8AAA\u660E\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \u555F\u7528\u542B\u6307\u5B9A\u8A73\u7D30\u7A0B\u5EA6\u7684\u5BA3\u544A\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \u505C\u7528\u542B\u6307\u5B9A\u8A73\u7D30\u7A0B\u5EA6\u7684\u5BA3\u544A\n    -esa | -enablesystemassertions\n                  \u555F\u7528\u7CFB\u7D71\u5BA3\u544A\n    -dsa | -disablesystemassertions\n                  \u505C\u7528\u7CFB\u7D71\u5BA3\u544A\n    -agentlib:<libname>[=<options>]\n                  \u8F09\u5165\u539F\u751F\u4EE3\u7406\u7A0B\u5F0F\u7A0B\u5F0F\u5EAB <libname>\uFF0C\u4F8B\u5982 -agentlib:hprof\n                  \u53E6\u8ACB\u53C3\u95B1 -agentlib:jdwp=help \u8207 -agentlib:hprof=help\n    -agentpath:<pathname>[=<options>]\n                  \u4F7F\u7528\u5B8C\u6574\u8DEF\u5F91\u540D\u7A31\u8F09\u5165\u539F\u751F\u4EE3\u7406\u7A0B\u5F0F\u7A0B\u5F0F\u5EAB\n    -javaagent:<jarpath>[=<options>]\n                  \u8F09\u5165 Java \u7A0B\u5F0F\u8A9E\u8A00\u4EE3\u7406\u7A0B\u5F0F\uFF0C\u8ACB\u53C3\u95B1 java.lang.instrument\n    -splash:<imagepath>\n                  \u986F\u793A\u6307\u5B9A\u5F71\u50CF\u7684\u8EDF\u9AD4\u8CC7\u8A0A\u756B\u9762\n\u8ACB\u53C3\u95B1 http://www.oracle.com/technetwork/java/javase/documentation/index.html \u66B8\u89E3\u8A73\u7D30\u8CC7\u8A0A\u3002
+java.launcher.opt.footer     =\    -cp <class search path of directories and zip/jar files>\n    -classpath <class search path of directories and zip/jar files>\n                  \u4F7F\u7528\u4EE5 {0} \u5340\u9694\u7684\u76EE\u9304\u3001JAR \u5B58\u6A94\u4EE5\u53CA\n                  ZIP \u5B58\u6A94\u6E05\u55AE\u4F86\u641C\u5C0B\u985E\u5225\u6A94\u6848\u3002\n    -mp <module path>\n    -modulepath <module path>...\n                  \u4EE5 {0} \u5340\u9694\u7684\u76EE\u9304\u6E05\u55AE\uFF0C\u6BCF\u500B\u76EE\u9304\n                  \u5747\u70BA\u6A21\u7D44\u76EE\u9304\u3002\n    -upgrademodulepath <module path>...\n                  \u4EE5 {0} \u5340\u9694\u7684\u76EE\u9304\u6E05\u55AE\uFF0C\u6BCF\u500B\u76EE\u9304\n                  \u5747\u70BA\u6A21\u7D44\u76EE\u9304\uFF0C\u4E14\u7576\u4E2D\u7684\u6A21\u7D44\u53EF\u53D6\u4EE3\n                  \u7A0B\u5F0F\u5BE6\u969B\u57F7\u884C\u5F71\u50CF\u4E2D\u7684\u53EF\u5347\u7D1A\u6A21\u7D44\n    -m <modulename> | <modulename>/<mainclass>\n                  \u8981\u89E3\u6790\u7684\u8D77\u59CB\u6216\u4E3B\u8981\u6A21\u7D44\n    -addmods <modulename>[,<modulename>...]\n                  \u9664\u4E86\u8D77\u59CB\u6A21\u7D44\u5916\uFF0C\u8981\u89E3\u6790\u7684\u6839\u6A21\u7D44\n    -limitmods <modulename>[,<modulename>...]\n                  \u9650\u5236\u53EF\u76E3\u6E2C\u6A21\u7D44\u7684\u7BC4\u570D\n    -listmods[:<modulename>[,<modulename>...]]\n                  \u5217\u51FA\u53EF\u76E3\u6E2C\u6A21\u7D44\u4E26\u7D50\u675F\n    -D<name>=<value>\n                  \u8A2D\u5B9A\u7CFB\u7D71\u5C6C\u6027\n    -verbose:[class|gc|jni]\n                  \u555F\u7528\u8A73\u7D30\u8CC7\u8A0A\u8F38\u51FA\n    -version     \u5217\u5370\u7522\u54C1\u7248\u672C\u4E26\u7D50\u675F\n    -showversion  \u5217\u5370\u7522\u54C1\u7248\u672C\u4E26\u7E7C\u7E8C\n    -? -help      \u5217\u5370\u6B64\u8AAA\u660E\u8A0A\u606F\n    -X            \u5217\u5370\u975E\u6A19\u6E96\u9078\u9805\u7684\u8AAA\u660E\n    -ea[:<packagename>...|:<classname>]\n    -enableassertions[:<packagename>...|:<classname>]\n                  \u555F\u7528\u542B\u6307\u5B9A\u8A73\u7D30\u7A0B\u5EA6\u7684\u5BA3\u544A\n    -da[:<packagename>...|:<classname>]\n    -disableassertions[:<packagename>...|:<classname>]\n                  \u505C\u7528\u542B\u6307\u5B9A\u8A73\u7D30\u7A0B\u5EA6\u7684\u5BA3\u544A\n    -esa | -enablesystemassertions\n                  \u555F\u7528\u7CFB\u7D71\u5BA3\u544A\n    -dsa | -disablesystemassertions\n                  \u505C\u7528\u7CFB\u7D71\u5BA3\u544A\n    -agentlib:<libname>[=<options>]\n                  \u8F09\u5165\u539F\u751F\u4EE3\u7406\u7A0B\u5F0F\u7A0B\u5F0F\u5EAB <libname>\uFF0C\u4F8B\u5982 -agentlib:jdwp\n                  \u53E6\u8ACB\u53C3\u95B1 -agentlib:jdwp=help\n    -agentpath:<pathname>[=<options>]\n                  \u4F7F\u7528\u5B8C\u6574\u8DEF\u5F91\u540D\u7A31\u8F09\u5165\u539F\u751F\u4EE3\u7406\u7A0B\u5F0F\u7A0B\u5F0F\u5EAB\n    -javaagent:<jarpath>[=<options>]\n                  \u8F09\u5165 Java \u7A0B\u5F0F\u8A9E\u8A00\u4EE3\u7406\u7A0B\u5F0F\uFF0C\u8ACB\u53C3\u95B1 java.lang.instrument\n    -splash:<imagepath>\n                   \u4EE5\u6307\u5B9A\u5F71\u50CF\u986F\u793A\u8EDF\u9AD4\u8CC7\u8A0A\u756B\u9762\n    @<filepath>   \u5F9E\u6307\u5B9A\u6A94\u6848\u8B80\u53D6\u9078\u9805\n
+See \u8ACB\u53C3\u95B1 http://www.oracle.com/technetwork/java/javase/documentation/index.html \u66B8\u89E3\u8A73\u7D30\u8CC7\u8A0A\u3002
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xmixed           \u6DF7\u5408\u6A21\u5F0F\u57F7\u884C (\u9810\u8A2D)\n    -Xint             \u50C5\u9650\u89E3\u8B6F\u6A21\u5F0F\u57F7\u884C\n    -Xbootclasspath:<\u4EE5 {0} \u5206\u9694\u7684\u76EE\u9304\u548C zip/jar \u6A94\u6848>\n                      \u8A2D\u5B9A\u555F\u52D5\u5B89\u88DD\u985E\u5225\u548C\u8CC7\u6E90\u7684\u641C\u5C0B\u8DEF\u5F91\n    -Xbootclasspath/a:<\u4EE5 {0} \u5206\u9694\u7684\u76EE\u9304\u548C zip/jar \u6A94\u6848>\n                      \u9644\u52A0\u5728\u555F\u52D5\u5B89\u88DD\u985E\u5225\u8DEF\u5F91\u7684\u7D50\u5C3E\n    -Xbootclasspath/p:<\u4EE5 {0} \u5206\u9694\u7684\u76EE\u9304\u548C zip/jar \u6A94\u6848>\n                      \u9644\u52A0\u5728\u555F\u52D5\u5B89\u88DD\u985E\u5225\u8DEF\u5F91\u7684\u524D\u9762\n    -Xdiag            \u986F\u793A\u5176\u4ED6\u7684\u8A3A\u65B7\u8A0A\u606F\n    -Xnoclassgc       \u505C\u7528\u985E\u5225\u8CC7\u6E90\u56DE\u6536\n    -Xincgc           \u555F\u7528\u6F38\u9032\u8CC7\u6E90\u56DE\u6536\n    -Xloggc:<file>    \u5229\u7528\u6642\u6233\u5C07 GC \u72C0\u614B\u8A18\u9304\u81F3\u6A94\u6848\u4E2D\n    -Xbatch           \u505C\u7528\u80CC\u666F\u7DE8\u8B6F\n    -Xms<size>        \u8A2D\u5B9A\u8D77\u59CB Java \u5806\u96C6\u5927\u5C0F\n    -Xmx<size>        \u8A2D\u5B9A Java \u5806\u96C6\u5927\u5C0F\u4E0A\u9650\n    -Xss<size>        \u8A2D\u5B9A Java \u57F7\u884C\u7DD2\u5806\u758A\u5927\u5C0F\n    -Xprof            \u8F38\u51FA CPU \u5206\u6790\u8CC7\u6599\n    -Xfuture          \u555F\u7528\u6700\u56B4\u683C\u7684\u6AA2\u67E5\uFF0C\u9810\u5148\u4F5C\u70BA\u5C07\u4F86\u7684\u9810\u8A2D\n    -Xrs              \u6E1B\u5C11 Java/VM \u4F7F\u7528\u4F5C\u696D\u7CFB\u7D71\u4FE1\u865F (\u8ACB\u53C3\u95B1\u6587\u4EF6)\n    -Xcheck:jni       \u57F7\u884C\u5176\u4ED6\u7684 JNI \u51FD\u6578\u6AA2\u67E5\n    -Xshare:off       \u4E0D\u5617\u8A66\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599\n    -Xshare:auto      \u5118\u53EF\u80FD\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599 (\u9810\u8A2D)\n    -Xshare:on        \u9700\u8981\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599\uFF0C\u5426\u5247\u5931\u6557\u3002\n    -XshowSettings    \u986F\u793A\u6240\u6709\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:all\n                      \u986F\u793A\u6240\u6709\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:vm \u986F\u793A\u6240\u6709 VM \u76F8\u95DC\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:properties\n                      \u986F\u793A\u6240\u6709\u5C6C\u6027\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:locale\n                      \u986F\u793A\u6240\u6709\u5730\u5340\u8A2D\u5B9A\u76F8\u95DC\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n\n -X \u9078\u9805\u4E0D\u662F\u6A19\u6E96\u9078\u9805\uFF0C\u82E5\u6709\u8B8A\u66F4\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
+java.launcher.X.usage=\    -Xmixed           \u6DF7\u5408\u6A21\u5F0F\u57F7\u884C (\u9810\u8A2D)\n    -Xint             \u50C5\u9650\u89E3\u8B6F\u6A21\u5F0F\u57F7\u884C\n    -Xbootclasspath/a:<\u4EE5 {0} \u5206\u9694\u7684\u76EE\u9304\u548C zip/jar \u6A94\u6848>\n                      \u9644\u52A0\u5728\u555F\u52D5\u5B89\u88DD\u985E\u5225\u8DEF\u5F91\u7684\u7D50\u5C3E\n    -Xdiag            \u986F\u793A\u5176\u4ED6\u7684\u8A3A\u65B7\u8A0A\u606F\n    -Xdiag:resolver   \u986F\u793A\u89E3\u6790\u5668\u8A3A\u65B7\u8A0A\u606F\n    -Xnoclassgc       \u505C\u7528\u985E\u5225\u8CC7\u6E90\u56DE\u6536\n    -Xincgc           \u555F\u7528\u6F38\u9032\u8CC7\u6E90\u56DE\u6536\n    -Xloggc:<file>    \u5C07 GC \u72C0\u614B\u548C\u6642\u6233\u8A18\u9304\u81F3\u6A94\u6848\n    -Xbatch           \u505C\u7528\u80CC\u666F\u7DE8\u8B6F\n    -Xms<size>        \u8A2D\u5B9A\u8D77\u59CB Java \u5806\u96C6\u5927\u5C0F\n    -Xmx<size>        \u8A2D\u5B9A Java \u5806\u96C6\u5927\u5C0F\u4E0A\u9650\n    -Xss<size>        \u8A2D\u5B9A Java \u57F7\u884C\u7DD2\u5806\u758A\u5927\u5C0F\n    -Xprof            \u8F38\u51FA CPU \u5206\u6790\u8CC7\u6599\n    -Xfuture          \u555F\u7528\u6700\u56B4\u683C\u7684\u6AA2\u67E5\uFF0C\u9810\u5148\u4F5C\u70BA\u5C07\u4F86\u7684\u9810\u8A2D\n    -Xrs              \u6E1B\u5C11 Java/VM \u4F7F\u7528\u4F5C\u696D\u7CFB\u7D71\u4FE1\u865F (\u8ACB\u53C3\u95B1\u6587\u4EF6)\n    -Xcheck:jni       \u57F7\u884C\u5176\u4ED6\u7684 JNI \u51FD\u6578\u6AA2\u67E5\n    -Xshare:off       \u4E0D\u5617\u8A66\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599\n    -Xshare:auto      \u5118\u53EF\u80FD\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599 (\u9810\u8A2D)\n    -Xshare:on        \u9700\u8981\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599\uFF0C\u5426\u5247\u5931\u6557\u3002\n    -XshowSettings    \u986F\u793A\u6240\u6709\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:all\n                      \u986F\u793A\u6240\u6709\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:vm \u986F\u793A\u6240\u6709 VM \u76F8\u95DC\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:properties\n                      \u986F\u793A\u6240\u6709\u5C6C\u6027\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XshowSettings:locale\n                      \u986F\u793A\u6240\u6709\u5730\u5340\u8A2D\u5B9A\u76F8\u95DC\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\n    -XaddReads:<module>=<other-module>(,<other-module>)*\n                      \u7121\u8AD6\u6A21\u7D44\u5BA3\u544A\u70BA\u4F55\uFF0C\n                      <module> \u6703\u8B80\u53D6\u5176\u4ED6\u6A21\u7D44\n    -XaddExports:<module>/<package>=<other-module>(,<other-module>)*\n                      \u7121\u8AD6\u6A21\u7D44\u5BA3\u544A\u70BA\u4F55\uFF0C<module> \u6703\u5C07 <package>\n                      \u532F\u51FA\u81F3\u5176\u4ED6\u6A21\u7D44\n    -Xpatch:<module>=<file>({0}<file>)*\n                      \u8986\u5BEB\u6216\u52A0\u5F37 JAR \u6A94\u6848\u6216\u76EE\u9304\u4E2D\u7684\n                      \u6A21\u7D44\u985E\u578B\u548C\u8CC7\u6E90\n    -Xdisable-@files  \u505C\u7528\u9032\u4E00\u6B65\u7684\u5F15\u6578\u6A94\u6848\u64F4\u5145\n\n-X  \u9078\u9805\u4E0D\u662F\u6A19\u6E96\u9078\u9805\uFF0C\u82E5\u6709\u8B8A\u66F4\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\u4E0B\u5217\u662F Mac OS X \u7279\u5B9A\u9078\u9805:\n    -XstartOnFirstThread\n                      \u5728\u7B2C\u4E00\u500B (AppKit) \u57F7\u884C\u7DD2\u57F7\u884C main() \u65B9\u6CD5\n    -Xdock:name=<application name>"\n                      \u8986\u5BEB\u7D50\u5408\u8AAA\u660E\u756B\u9762\u4E2D\u986F\u793A\u7684\u9810\u8A2D\u61C9\u7528\u7A0B\u5F0F\u540D\u7A31\n    -Xdock:icon=<path to icon file>\n                      \u8986\u5BEB\u7D50\u5408\u8AAA\u660E\u756B\u9762\u4E2D\u986F\u793A\u7684\u9810\u8A2D\u5716\u793A\n\n
 
 java.launcher.cls.error1=\u932F\u8AA4: \u627E\u4E0D\u5230\u6216\u7121\u6CD5\u8F09\u5165\u4E3B\u8981\u985E\u5225 {0}
 java.launcher.cls.error2=\u932F\u8AA4: \u4E3B\u8981\u65B9\u6CD5\u4E0D\u662F\u985E\u5225 {1} \u4E2D\u7684 {0}\uFF0C\u8ACB\u5B9A\u7FA9\u4E3B\u8981\u65B9\u6CD5\u70BA:\n   public static void main(String[] args)
-java.launcher.cls.error3=\u932F\u8AA4: \u4E3B\u8981\u65B9\u6CD5\u5FC5\u9808\u50B3\u56DE\u985E\u5225 {0} \u4E2D void \u985E\u578B\u7684\u503C\uFF0C \n\u8ACB\u5B9A\u7FA9\u4E3B\u8981\u65B9\u6CD5\u70BA:\n   public static void main(String[] args)
+java.launcher.cls.error3=\u932F\u8AA4: \u4E3B\u8981\u65B9\u6CD5\u5FC5\u9808\u50B3\u56DE\u985E\u5225 {0} \u4E2D void \u985E\u578B\u7684\u503C\uFF0C\n\u8ACB\u5B9A\u7FA9\u4E3B\u8981\u65B9\u6CD5\u70BA:\n   public static void main(String[] args)
 java.launcher.cls.error4=\u932F\u8AA4: \u5728\u985E\u5225 {0} \u4E2D\u627E\u4E0D\u5230\u4E3B\u8981\u65B9\u6CD5\uFF0C\u8ACB\u5B9A\u7FA9\u4E3B\u8981\u65B9\u6CD5\u70BA:\n   public static void main(String[] args)\n\u6216\u8005 JavaFX \u61C9\u7528\u7A0B\u5F0F\u985E\u5225\u5FC5\u9808\u64F4\u5145 {1}
 java.launcher.cls.error5=\u932F\u8AA4: \u907A\u6F0F\u57F7\u884C\u6B64\u61C9\u7528\u7A0B\u5F0F\u6240\u9700\u7684 JavaFX \u7A0B\u5F0F\u5BE6\u969B\u57F7\u884C\u5143\u4EF6
 java.launcher.jar.error1=\u932F\u8AA4: \u5617\u8A66\u958B\u555F\u6A94\u6848 {0} \u6642\u767C\u751F\u672A\u9810\u671F\u7684\u932F\u8AA4
@@ -52,3 +53,5 @@
 java.launcher.jar.error3={0} \u4E2D\u6C92\u6709\u4E3B\u8981\u8CC7\u8A0A\u6E05\u55AE\u5C6C\u6027
 java.launcher.init.error=\u521D\u59CB\u5316\u932F\u8AA4
 java.launcher.javafx.error1=\u932F\u8AA4: JavaFX launchApplication \u65B9\u6CD5\u7684\u7C3D\u7AE0\u932F\u8AA4\uFF0C\u5B83\n\u5FC5\u9808\u5BA3\u544A\u70BA\u975C\u614B\u4E26\u50B3\u56DE void \u985E\u578B\u7684\u503C
+java.launcher.module.error1=\u6A21\u7D44 {0} \u4E0D\u542B MainClass \u5C6C\u6027\uFF0C\u8ACB\u4F7F\u7528 -m <module>/<main-class>
+java.launcher.module.error2=\u932F\u8AA4: \u627E\u4E0D\u5230\u6216\u7121\u6CD5\u8F09\u5165\u6A21\u7D44 {1} \u4E2D\u7684\u4E3B\u8981\u985E\u5225 {0}
diff --git a/jdk/src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java b/jdk/src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java
index b52f508..cd9dd9a 100644
--- a/jdk/src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java
+++ b/jdk/src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java
@@ -62,7 +62,7 @@
         // Handle Object and Annotation methods
         if (member.equals("equals") && paramTypes.length == 1 &&
             paramTypes[0] == Object.class)
-            return equalsImpl(args[0]);
+            return equalsImpl(proxy, args[0]);
         if (paramTypes.length != 0)
             throw new AssertionError("Too many parameters for an annotation method");
 
@@ -209,8 +209,8 @@
     /**
      * Implementation of dynamicProxy.equals(Object o)
      */
-    private Boolean equalsImpl(Object o) {
-        if (o == this)
+    private Boolean equalsImpl(Object proxy, Object o) {
+        if (o == proxy)
             return true;
 
         if (!type.isInstance(o))
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Main.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Main.java
index 1aa10f5..2832c0d 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Main.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Main.java
@@ -3274,6 +3274,11 @@
         // we parsed them using an X.509 certificate factory
         int i;
         PublicKey userPubKey = userCert.getPublicKey();
+
+        // Remove duplicated certificates.
+        HashSet<Certificate> nodup = new HashSet<>(Arrays.asList(replyCerts));
+        replyCerts = nodup.toArray(new Certificate[nodup.size()]);
+
         for (i=0; i<replyCerts.length; i++) {
             if (userPubKey.equals(replyCerts[i].getPublicKey())) {
                 break;
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java
index 3b944c3..46cddd8 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_de.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "Schl\u00FCssel- und Zertifikatsverwaltungstool"},
         {"Commands.", "Befehle:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "\"keytool -command_name -help\" f\u00FCr Verwendung von command_name verwenden"},
+                "Verwenden Sie \"keytool -command_name -help\" f\u00FCr die Verwendung von command_name.\nVerwenden Sie die Option -conf <url>, um eine vorkonfigurierte Optionsdatei anzugeben."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "Generiert eine Zertifikatanforderung"}, //-certreq
@@ -72,7 +72,7 @@
         {"Imports.entries.from.a.JDK.1.1.x.style.identity.database",
                 "Importiert Eintr\u00E4ge aus einer Identity-Datenbank im JDK 1.1.x-Stil"}, //-identitydb
         {"Imports.a.certificate.or.a.certificate.chain",
-                "Importiert ein Zertifikat oder eine Zertifikatkette"}, //-importcert
+                "Importiert ein Zertifikat oder eine Zertifikatskette"}, //-importcert
         {"Imports.a.password",
                 "Importiert ein Kennwort"}, //-importpass
         {"Imports.one.or.all.entries.from.another.keystore",
@@ -304,9 +304,9 @@
                 "{0}, {1,date}, "},
         {"alias.", "{0}, "},
         {"Entry.type.type.", "Eintragstyp: {0}"},
-        {"Certificate.chain.length.", "Zertifikatkettenl\u00E4nge: "},
+        {"Certificate.chain.length.", "Zertifikatskettenl\u00E4nge: "},
         {"Certificate.i.1.", "Zertifikat[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "Zertifikat-Fingerprint (SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "Zertifikat-Fingerprint (SHA-256): "},
         {"Keystore.type.", "Keystore-Typ: "},
         {"Keystore.provider.", "Keystore-Provider: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(RETURN, wenn identisch mit <{0}>)"},
         {".PATTERN.printX509Cert",
-                "Eigent\u00FCmer: {0}\nAussteller: {1}\nSeriennummer: {2}\nG\u00FCltig von: {3} bis: {4}\nZertifikat-Fingerprints:\n\t MD5:  {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t Signaturalgorithmusname: {8}\n\t Version: {9}"},
+                "Eigent\u00FCmer: {0}\nAussteller: {1}\nSeriennummer: {2}\nG\u00FCltig von: {3} bis: {4}\nZertifikatfingerprints:\n\t SHA1: {5}\n\t SHA256: {6}\nSignaturalgorithmusname: {7}\nAlgorithmus des Public Key von Betreff: {8} ({9,number,#})\nVersion: {10}"},
         {"What.is.your.first.and.last.name.",
                 "Wie lautet Ihr Vor- und Nachname?"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -367,7 +367,7 @@
         {"Alias.alias.has.no.key",
                 "Alias <{0}> verf\u00FCgt \u00FCber keinen Schl\u00FCssel"},
         {"Alias.alias.references.an.entry.type.that.is.not.a.private.key.entry.The.keyclone.command.only.supports.cloning.of.private.key",
-                 "Alias <{0}> verweist auf einen Eintragstyp, der kein Private Key-Eintrag ist. Der Befehl -keyclone unterst\u00FCtzt nur das Clonen von Private Key-Eintr\u00E4gen"},
+                 "Alias <{0}> verweist auf einen Eintragstyp, der kein Private Key-Eintrag ist. Der Befehl -keyclone unterst\u00FCtzt nur das Klonen von Private Key-Eintr\u00E4gen"},
 
         {".WARNING.WARNING.WARNING.",
             "*****************  WARNING WARNING WARNING  *****************"},
@@ -388,9 +388,9 @@
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "Zertifikatantwort enth\u00E4lt keinen Public Key f\u00FCr <{0}>"},
         {"Incomplete.certificate.chain.in.reply",
-                "Unvollst\u00E4ndige Zertifikatkette in Antwort"},
+                "Unvollst\u00E4ndige Zertifikatskette in Antwort"},
         {"Certificate.chain.in.reply.does.not.verify.",
-                "Zertifikatkette in Antwort verifiziert nicht: "},
+                "Zertifikatskette in Antwort verifiziert nicht: "},
         {"Top.level.certificate.in.reply.",
                 "Zertifikat der obersten Ebene in Antwort:\n"},
         {".is.not.trusted.", "... ist nicht vertrauensw\u00FCrdig. "},
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java
index e8e731c..5d6f995 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_es.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "Herramienta de Gesti\u00F3n de Certificados y Claves"},
         {"Commands.", "Comandos:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "Utilice \"keytool -command_name -help\" para la sintaxis de nombre_comando"},
+                "Utilice \"keytool -command_name -help\" para la sintaxis de nombre_comando.\nUtilice la opci\u00F3n -conf <url> para especificar un archivo de opciones preconfigurado."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "Genera una solicitud de certificado"}, //-certreq
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "Tipo de Entrada: {0}"},
         {"Certificate.chain.length.", "Longitud de la Cadena de Certificado: "},
         {"Certificate.i.1.", "Certificado[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "Huella Digital de Certificado (SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "Huella de certificado (SHA-256): "},
         {"Keystore.type.", "Tipo de Almac\u00E9n de Claves: "},
         {"Keystore.provider.", "Proveedor de Almac\u00E9n de Claves: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(INTRO si es el mismo que para <{0}>)"},
         {".PATTERN.printX509Cert",
-                "Propietario: {0}\nEmisor: {1}\nN\u00FAmero de serie: {2}\nV\u00E1lido desde: {3} hasta: {4}\nHuellas digitales del Certificado:\n\t MD5: {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t Nombre del Algoritmo de Firma: {8}\n\t Versi\u00F3n: {9}"},
+                "Propietario: {0}\nEmisor: {1}\nN\u00FAmero de serie: {2}\nV\u00E1lido desde: {3} hasta: {4}\nHuellas digitales del certificado:\n\t SHA1: {5}\n\t SHA256: {6}\nNombre del algoritmo de firma: {7}\nAlgoritmo de clave p\u00FAblica de asunto: {8} ({9,number,#})\nVersi\u00F3n: {10}"},
         {"What.is.your.first.and.last.name.",
                 "\u00BFCu\u00E1les son su nombre y su apellido?"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java
index 84fa8dc..d247c5d3 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_fr.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "Outil de gestion de certificats et de cl\u00E9s"},
         {"Commands.", "Commandes :"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "Utiliser \"keytool -command_name -help\" pour la syntaxe de command_name"},
+                "Utilisez \"keytool -command_name -help\" pour la syntaxe de command_name.\nUtilisez l'option -conf <url> pour indiquer un fichier d'options pr\u00E9configur\u00E9es."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "G\u00E9n\u00E8re une demande de certificat"}, //-certreq
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "Type d''entr\u00E9e\u00A0: {0}"},
         {"Certificate.chain.length.", "Longueur de cha\u00EEne du certificat : "},
         {"Certificate.i.1.", "Certificat[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "Empreinte du certificat (SHA1) : "},
+        {"Certificate.fingerprint.SHA.256.", "Empreinte du certificat (SHA-256) : "},
         {"Keystore.type.", "Type de fichier de cl\u00E9s : "},
         {"Keystore.provider.", "Fournisseur de fichier de cl\u00E9s : "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(appuyez sur Entr\u00E9e si le r\u00E9sultat est identique \u00E0 <{0}>)"},
         {".PATTERN.printX509Cert",
-                "Propri\u00E9taire : {0}\nEmetteur : {1}\nNum\u00E9ro de s\u00E9rie : {2}\nValide du : {3} au : {4}\nEmpreintes du certificat :\n\t MD5:  {5}\n\t SHA1 : {6}\n\t SHA256 : {7}\n\t Nom de l''algorithme de signature : {8}\n\t Version : {9}"},
+                "Propri\u00E9taire : {0}\nEmetteur : {1}\nNum\u00E9ro de s\u00E9rie : {2}\nValide du : {3} au : {4}\nEmpreintes du certificat :\n\t SHA1 : {5}\n\t SHA256 : {6}\nNom de l''algorithme de signature : {7}\nAlgorithme de cl\u00E9 publique du sujet : {8} ({9,number,#})\nVersion : {10}"},
         {"What.is.your.first.and.last.name.",
                 "Quels sont vos nom et pr\u00E9nom ?"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java
index 5912de8..64a92f8 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_it.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "Strumento di gestione di chiavi e certificati"},
         {"Commands.", "Comandi:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "Utilizzare \"keytool -command_name -help\" per informazioni sull'uso di command_name"},
+                "Utilizzare \"keytool -command_name -help\" per informazioni sull'uso di command_name.\nUtilizzare l'opzione -conf <url> per specificare un file di opzioni preconfigurato."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "Genera una richiesta di certificato"}, //-certreq
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "Tipo di voce: {0}"},
         {"Certificate.chain.length.", "Lunghezza catena certificati: "},
         {"Certificate.i.1.", "Certificato[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "Impronta digitale certificato (SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "Copia di certificato (SHA-256): "},
         {"Keystore.type.", "Tipo keystore: "},
         {"Keystore.provider.", "Provider keystore: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(INVIO se corrisponde al nome di <{0}>)"},
         {".PATTERN.printX509Cert",
-                "Proprietario: {0}\nAutorit\u00E0 emittente: {1}\nNumero di serie: {2}\nValido da: {3} a: {4}\nImpronte digitali certificato:\n\t MD5:  {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t Nome algoritmo firma: {8}\n\t Versione: {9}"},
+                "Proprietario: {0}\nEmittente: {1}\nNumero di serie: {2}\nValido da: {3} a: {4}\nCopie di certificato:\n\t SHA1: {5}\n\t SHA256: {6}\nNome algoritmo firma: {7}\nAlgoritmo di chiave pubblica oggetto: {8} ({9,number,#})\nVersione: {10}"},
         {"What.is.your.first.and.last.name.",
                 "Specificare nome e cognome"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java
index 65d0285..4d5a60a 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "\u30AD\u30FC\u304A\u3088\u3073\u8A3C\u660E\u66F8\u7BA1\u7406\u30C4\u30FC\u30EB"},
         {"Commands.", "\u30B3\u30DE\u30F3\u30C9:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "command_name\u306E\u4F7F\u7528\u65B9\u6CD5\u306B\u3064\u3044\u3066\u306F\"keytool -command_name -help\"\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044"},
+                "command_name\u306E\u4F7F\u7528\u65B9\u6CD5\u306B\u3064\u3044\u3066\u306F\u3001\"keytool -command_name -help\"\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002\n\u4E8B\u524D\u69CB\u6210\u6E08\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u6307\u5B9A\u3059\u308B\u306B\u306F\u3001-conf <url>\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002"},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "\u8A3C\u660E\u66F8\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u751F\u6210\u3057\u307E\u3059"}, //-certreq
@@ -248,7 +248,7 @@
                  "\u65E2\u5B58\u306E\u30A8\u30F3\u30C8\u30EA\u306E\u5225\u540D{0}\u304C\u5B58\u5728\u3057\u3066\u3044\u307E\u3059\u3002\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\u3002[\u3044\u3044\u3048]:  "},
         {"Too.many.failures.try.later", "\u969C\u5BB3\u304C\u591A\u3059\u304E\u307E\u3059 - \u5F8C\u3067\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044"},
         {"Certification.request.stored.in.file.filename.",
-                "\u8A3C\u660E\u66F8\u30EA\u30AF\u30A8\u30B9\u30C8\u304C\u30D5\u30A1\u30A4\u30EB<{0}>\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F"},
+                "\u8A8D\u8A3C\u30EA\u30AF\u30A8\u30B9\u30C8\u304C\u30D5\u30A1\u30A4\u30EB<{0}>\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F"},
         {"Submit.this.to.your.CA", "\u3053\u308C\u3092CA\u306B\u63D0\u51FA\u3057\u3066\u304F\u3060\u3055\u3044"},
         {"if.alias.not.specified.destalias.and.srckeypass.must.not.be.specified",
             "\u5225\u540D\u3092\u6307\u5B9A\u3057\u306A\u3044\u5834\u5408\u3001\u51FA\u529B\u5148\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u5225\u540D\u304A\u3088\u3073\u30BD\u30FC\u30B9\u30FB\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093"},
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "\u30A8\u30F3\u30C8\u30EA\u30FB\u30BF\u30A4\u30D7: {0}"},
         {"Certificate.chain.length.", "\u8A3C\u660E\u66F8\u30C1\u30A7\u30FC\u30F3\u306E\u9577\u3055: "},
         {"Certificate.i.1.", "\u8A3C\u660E\u66F8[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "\u8A3C\u660E\u66F8\u306E\u30D5\u30A3\u30F3\u30AC\u30D7\u30EA\u30F3\u30C8(SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "\u8A3C\u660E\u66F8\u306E\u30D5\u30A3\u30F3\u30AC\u30D7\u30EA\u30F3\u30C8(SHA-256): "},
         {"Keystore.type.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30BF\u30A4\u30D7: "},
         {"Keystore.provider.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30D7\u30ED\u30D0\u30A4\u30C0: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,22 +346,22 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(<{0}>\u3068\u540C\u3058\u5834\u5408\u306FRETURN\u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044)"},
         {".PATTERN.printX509Cert",
-                "\u6240\u6709\u8005: {0}\n\u767A\u884C\u8005: {1}\n\u30B7\u30EA\u30A2\u30EB\u756A\u53F7: {2}\n\u6709\u52B9\u671F\u9593\u306E\u958B\u59CB\u65E5: {3}\u7D42\u4E86\u65E5: {4}\n\u8A3C\u660E\u66F8\u306E\u30D5\u30A3\u30F3\u30AC\u30D7\u30EA\u30F3\u30C8:\n\t MD5:  {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t \u7F72\u540D\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u540D: {8}\n\t \u30D0\u30FC\u30B8\u30E7\u30F3: {9}"},
+                "\u6240\u6709\u8005: {0}\n\u767A\u884C\u8005: {1}\n\u30B7\u30EA\u30A2\u30EB\u756A\u53F7: {2}\n\u6709\u52B9\u671F\u9593\u306E\u958B\u59CB\u65E5: {3}\u7D42\u4E86\u65E5: {4}\n\u8A3C\u660E\u66F8\u306E\u30D5\u30A3\u30F3\u30AC\u30D7\u30EA\u30F3\u30C8:\n\t SHA1: {5}\n\t SHA256: {6}\n\u7F72\u540D\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u540D: {7}\n\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u516C\u958B\u9375\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0: {8} ({9,number,#})\n\u30D0\u30FC\u30B8\u30E7\u30F3: {10}"},
         {"What.is.your.first.and.last.name.",
-                "\u59D3\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
+                "\u59D3\u540D\u306F\u4F55\u3067\u3059\u304B\u3002"},
         {"What.is.the.name.of.your.organizational.unit.",
-                "\u7D44\u7E54\u5358\u4F4D\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
+                "\u7D44\u7E54\u5358\u4F4D\u540D\u306F\u4F55\u3067\u3059\u304B\u3002"},
         {"What.is.the.name.of.your.organization.",
-                "\u7D44\u7E54\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
+                "\u7D44\u7E54\u540D\u306F\u4F55\u3067\u3059\u304B\u3002"},
         {"What.is.the.name.of.your.City.or.Locality.",
-                "\u90FD\u5E02\u540D\u307E\u305F\u306F\u5730\u57DF\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
+                "\u90FD\u5E02\u540D\u307E\u305F\u306F\u5730\u57DF\u540D\u306F\u4F55\u3067\u3059\u304B\u3002"},
         {"What.is.the.name.of.your.State.or.Province.",
-                "\u90FD\u9053\u5E9C\u770C\u540D\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
+                "\u90FD\u9053\u5E9C\u770C\u540D\u307E\u305F\u306F\u5DDE\u540D\u306F\u4F55\u3067\u3059\u304B\u3002"},
         {"What.is.the.two.letter.country.code.for.this.unit.",
-                "\u3053\u306E\u5358\u4F4D\u306B\u8A72\u5F53\u3059\u308B2\u6587\u5B57\u306E\u56FD\u30B3\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
+                "\u3053\u306E\u5358\u4F4D\u306B\u8A72\u5F53\u3059\u308B2\u6587\u5B57\u306E\u56FD\u30B3\u30FC\u30C9\u306F\u4F55\u3067\u3059\u304B\u3002"},
         {"Is.name.correct.", "{0}\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B\u3002"},
         {"no", "\u3044\u3044\u3048"},
-        {"yes", "\u306F\u3044"},
+        {"yes", "yes"},
         {"y", "y"},
         {".defaultValue.", "  [{0}]:  "},
         {"Alias.alias.has.no.key",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java
index b4adfab..62ba6a4 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_ko.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "\uD0A4 \uBC0F \uC778\uC99D\uC11C \uAD00\uB9AC \uD234"},
         {"Commands.", "\uBA85\uB839:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "command_name \uC0AC\uC6A9\uBC95\uC5D0 \"keytool -command_name -help\" \uC0AC\uC6A9"},
+                "command_name \uC0AC\uC6A9\uBC95\uC5D0 \"keytool -command_name -help\"\uB97C \uC0AC\uC6A9\uD569\uB2C8\uB2E4.\n-conf <url> \uC635\uC158\uC744 \uC0AC\uC6A9\uD558\uC5EC \uC0AC\uC804 \uAD6C\uC131\uB41C \uC635\uC158 \uD30C\uC77C\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "\uC778\uC99D\uC11C \uC694\uCCAD\uC744 \uC0DD\uC131\uD569\uB2C8\uB2E4."}, //-certreq
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "\uD56D\uBAA9 \uC720\uD615: {0}"},
         {"Certificate.chain.length.", "\uC778\uC99D\uC11C \uCCB4\uC778 \uAE38\uC774: "},
         {"Certificate.i.1.", "\uC778\uC99D\uC11C[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "\uC778\uC99D\uC11C \uC9C0\uBB38(SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "\uC778\uC99D\uC11C \uC9C0\uBB38(SHA-256): "},
         {"Keystore.type.", "\uD0A4 \uC800\uC7A5\uC18C \uC720\uD615: "},
         {"Keystore.provider.", "\uD0A4 \uC800\uC7A5\uC18C \uC81C\uACF5\uC790: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(<{0}>\uACFC(\uC640) \uB3D9\uC77C\uD55C \uACBD\uC6B0 Enter \uD0A4\uB97C \uB204\uB984)"},
         {".PATTERN.printX509Cert",
-                "\uC18C\uC720\uC790: {0}\n\uBC1C\uD589\uC790: {1}\n\uC77C\uB828 \uBC88\uD638: {2}\n\uC801\uD569\uD55C \uC2DC\uC791 \uB0A0\uC9DC: {3}, \uC885\uB8CC \uB0A0\uC9DC: {4}\n\uC778\uC99D\uC11C \uC9C0\uBB38:\n\t MD5: {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t \uC11C\uBA85 \uC54C\uACE0\uB9AC\uC998 \uC774\uB984: {8}\n\t \uBC84\uC804: {9}"},
+                "\uC18C\uC720\uC790: {0}\n\uBC1C\uD589\uC790: {1}\n\uC77C\uB828 \uBC88\uD638: {2}\n\uC801\uD569\uD55C \uC2DC\uC791 \uB0A0\uC9DC: {3} \uC885\uB8CC \uB0A0\uC9DC: {4}\n\uC778\uC99D\uC11C \uC9C0\uBB38:\n\t SHA1: {5}\n\t SHA256: {6}\n\uC11C\uBA85 \uC54C\uACE0\uB9AC\uC998 \uC774\uB984: {7}\n\uC8FC\uCCB4 \uACF5\uC6A9 \uD0A4 \uC54C\uACE0\uB9AC\uC998: {8} ({9,number,#})\n\uBC84\uC804: {10}"},
         {"What.is.your.first.and.last.name.",
                 "\uC774\uB984\uACFC \uC131\uC744 \uC785\uB825\uD558\uC2ED\uC2DC\uC624."},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java
index 747902a..cb0f96a 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_pt_BR.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,14 +48,14 @@
                  "Ferramenta de Gerenciamento de Chave e Certificado"},
         {"Commands.", "Comandos:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "Use \"keytool -command_name -help\" para uso de command_name"},
+                "Utilize \"keytool -command_name -help\" para uso de command_name.\nUtilize a op\u00E7\u00E3o -conf <url> para especificar um arquivo de op\u00E7\u00F5es pr\u00E9-configurado."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "Gera uma solicita\u00E7\u00E3o de certificado"}, //-certreq
         {"Changes.an.entry.s.alias",
                 "Altera um alias de entrada"}, //-changealias
         {"Deletes.an.entry",
-                "Deleta uma entrada"}, //-delete
+                "Exclui uma entrada"}, //-delete
         {"Exports.certificate",
                 "Exporta o certificado"}, //-exportcert
         {"Generates.a.key.pair",
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "Tipo de entrada: {0}"},
         {"Certificate.chain.length.", "Comprimento da cadeia de certificados: "},
         {"Certificate.i.1.", "Certificado[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "Fingerprint (SHA1) do certificado: "},
+        {"Certificate.fingerprint.SHA.256.", "Fingerprint (SHA-256) do certificado: "},
         {"Keystore.type.", "Tipo de \u00E1rea de armazenamento de chaves: "},
         {"Keystore.provider.", "Fornecedor da \u00E1rea de armazenamento de chaves: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(RETURN se for igual ao de <{0}>)"},
         {".PATTERN.printX509Cert",
-                "Propriet\u00E1rio: {0}\nEmissor: {1}\nN\u00FAmero de s\u00E9rie: {2}\nV\u00E1lido de: {3} a: {4}\nFingerprints do certificado:\n\t MD5:  {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t Nome do algoritmo de assinatura: {8}\n\t Vers\u00E3o: {9}"},
+                "Propriet\u00E1rio: {0}\nEmissor: {1}\nN\u00FAmero de s\u00E9rie: {2}\nV\u00E1lido de {3} at\u00E9 {4}\nFingerprints do certificado:\n\t SHA1: {5}\n\t SHA256: {6}\nNome do algoritmo de assinatura: {7}\nAlgoritmo de Chave P\u00FAblica do Assunto: {8} ({9,number,#})\nVers\u00E3o: {10}"},
         {"What.is.your.first.and.last.name.",
                 "Qual \u00E9 o seu nome e o seu sobrenome?"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java
index a8847f7..cc0bf64 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_sv.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "Hanteringsverktyg f\u00F6r nycklar och certifikat"},
         {"Commands.", "Kommandon:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "L\u00E4s \"Hj\u00E4lp - Nyckelverktyg - command_name\" om anv\u00E4ndning av command_name"},
+                "Anv\u00E4nd \"keytool -command_name -help\" f\u00F6r syntax f\u00F6r command_name.\nAnv\u00E4nd alternativet -conf <url> f\u00F6r att ange en f\u00F6rkonfigurerad alternativfil."},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "Genererar certifikatbeg\u00E4ran"}, //-certreq
@@ -175,7 +175,7 @@
         {"validity.number.of.days",
                 "antal dagar f\u00F6r giltighet"}, //-validity
         {"Serial.ID.of.cert.to.revoke",
-                 "Seriellt ID f\u00F6r certifikat som ska \u00E5terkallas"}, //-id
+                 "Seriellt id f\u00F6r certifikat som ska \u00E5terkallas"}, //-id
         // keytool: Running part
         {"keytool.error.", "nyckelverktygsfel: "},
         {"Illegal.option.", "Otill\u00E5tet alternativ:  "},
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "Posttyp: {0}"},
         {"Certificate.chain.length.", "L\u00E4ngd p\u00E5 certifikatskedja: "},
         {"Certificate.i.1.", "Certifikat[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "Certifikatets fingeravtryck (SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "Certifikatfingeravtryck (SHA-256): "},
         {"Keystore.type.", "Nyckellagertyp: "},
         {"Keystore.provider.", "Nyckellagerleverant\u00F6r: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(RETURN om det \u00E4r det samma som f\u00F6r <{0}>)"},
         {".PATTERN.printX509Cert",
-                "\u00C4gare: {0}\nUtf\u00E4rdare: {1}\nSerienummer: {2}\nGiltigt fr\u00E5n den: {3} till: {4}\nCertifikatets fingeravtryck:\n\t MD5: {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t Namn p\u00E5 signaturalgoritm: {8}\n\t Version: {9}"},
+                "\u00C4gare: {0}\nUtf\u00E4rdare: {1}\nSerienummer: {2}\nGiltigt fr\u00E5n: {3}, till: {4}\nCertifikatfingeravtryck:\n\t SHA1: {5}\n\t SHA256: {6}\nSignaturalgoritmnamn: {7}\n\u00C4mne f\u00F6r algoritm f\u00F6r \u00F6ppen nyckel: {8} ({9,number,#})\nVersion: {10}"},
         {"What.is.your.first.and.last.name.",
                 "Vad heter du i f\u00F6r- och efternamn?"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -373,7 +373,7 @@
             "*****************  WARNING WARNING WARNING  *****************"},
         {"Signer.d.", "Signerare #%d:"},
         {"Timestamp.", "Tidsst\u00E4mpel:"},
-        {"Signature.", "Underskrift:"},
+        {"Signature.", "Signatur:"},
         {"CRLs.", "CRL:er:"},
         {"Certificate.owner.", "Certifikat\u00E4gare: "},
         {"Not.a.signed.jar.file", "Ingen signerad jar-fil"},
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java
index e9dafbd..6b4dd10 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_CN.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "\u5BC6\u94A5\u548C\u8BC1\u4E66\u7BA1\u7406\u5DE5\u5177"},
         {"Commands.", "\u547D\u4EE4:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "\u4F7F\u7528 \"keytool -command_name -help\" \u83B7\u53D6 command_name \u7684\u7528\u6CD5"},
+                "\u4F7F\u7528 \"keytool -command_name -help\" \u53EF\u83B7\u53D6 command_name \u7684\u7528\u6CD5\u3002\n\u4F7F\u7528 -conf <url> \u9009\u9879\u53EF\u6307\u5B9A\u9884\u914D\u7F6E\u7684\u9009\u9879\u6587\u4EF6\u3002"},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "\u751F\u6210\u8BC1\u4E66\u8BF7\u6C42"}, //-certreq
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "\u6761\u76EE\u7C7B\u578B: {0}"},
         {"Certificate.chain.length.", "\u8BC1\u4E66\u94FE\u957F\u5EA6: "},
         {"Certificate.i.1.", "\u8BC1\u4E66[{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "\u8BC1\u4E66\u6307\u7EB9 (SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "\u8BC1\u4E66\u6307\u7EB9 (SHA-256): "},
         {"Keystore.type.", "\u5BC6\u94A5\u5E93\u7C7B\u578B: "},
         {"Keystore.provider.", "\u5BC6\u94A5\u5E93\u63D0\u4F9B\u65B9: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(\u5982\u679C\u548C <{0}> \u76F8\u540C, \u5219\u6309\u56DE\u8F66)"},
         {".PATTERN.printX509Cert",
-                "\u6240\u6709\u8005: {0}\n\u53D1\u5E03\u8005: {1}\n\u5E8F\u5217\u53F7: {2}\n\u6709\u6548\u671F\u5F00\u59CB\u65E5\u671F: {3}, \u622A\u6B62\u65E5\u671F: {4}\n\u8BC1\u4E66\u6307\u7EB9:\n\t MD5: {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t \u7B7E\u540D\u7B97\u6CD5\u540D\u79F0: {8}\n\t \u7248\u672C: {9}"},
+                "\u6240\u6709\u8005: {0}\n\u53D1\u5E03\u8005: {1}\n\u5E8F\u5217\u53F7: {2}\n\u751F\u6548\u65F6\u95F4: {3}, \u5931\u6548\u65F6\u95F4: {4}\n\u8BC1\u4E66\u6307\u7EB9:\n\t SHA1: {5}\n\t SHA256: {6}\n\u7B7E\u540D\u7B97\u6CD5\u540D\u79F0: {7}\n\u4E3B\u4F53\u516C\u5171\u5BC6\u94A5\u7B97\u6CD5: {8} ({9,number,#})\n\u7248\u672C: {10}"},
         {"What.is.your.first.and.last.name.",
                 "\u60A8\u7684\u540D\u5B57\u4E0E\u59D3\u6C0F\u662F\u4EC0\u4E48?"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java
index 60e67f4..0edfc61 100644
--- a/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java
+++ b/jdk/src/java.base/share/classes/sun/security/tools/keytool/Resources_zh_TW.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.tools.keytool;
 
 /**
- * This class represents the <code>ResourceBundle</code>
+ * <p> This class represents the <code>ResourceBundle</code>
  * for the keytool.
  *
  */
@@ -48,7 +48,7 @@
                  "\u91D1\u9470\u8207\u6191\u8B49\u7BA1\u7406\u5DE5\u5177"},
         {"Commands.", "\u547D\u4EE4:"},
         {"Use.keytool.command.name.help.for.usage.of.command.name",
-                "\u4F7F\u7528 \"keytool -command_name -help\" \u53D6\u5F97 command_name \u7684\u7528\u6CD5"},
+                "\u4F7F\u7528 \"keytool -command_name -help\" \u53D6\u5F97 command_name \u7684\u7528\u6CD5\u3002\n\u4F7F\u7528 -conf <url> \u9078\u9805\u6307\u5B9A\u9810\u5148\u8A2D\u5B9A\u7684\u9078\u9805\u6A94\u6848\u3002"},
         // keytool: help: commands
         {"Generates.a.certificate.request",
                 "\u7522\u751F\u6191\u8B49\u8981\u6C42"}, //-certreq
@@ -306,7 +306,7 @@
         {"Entry.type.type.", "\u9805\u76EE\u985E\u578B: {0}"},
         {"Certificate.chain.length.", "\u6191\u8B49\u93C8\u9577\u5EA6: "},
         {"Certificate.i.1.", "\u6191\u8B49 [{0,number,integer}]:"},
-        {"Certificate.fingerprint.SHA1.", "\u6191\u8B49\u6307\u7D0B (SHA1): "},
+        {"Certificate.fingerprint.SHA.256.", "\u6191\u8B49\u6307\u7D0B (SHA-256): "},
         {"Keystore.type.", "\u91D1\u9470\u5132\u5B58\u5EAB\u985E\u578B: "},
         {"Keystore.provider.", "\u91D1\u9470\u5132\u5B58\u5EAB\u63D0\u4F9B\u8005: "},
         {"Your.keystore.contains.keyStore.size.entry",
@@ -346,7 +346,7 @@
         {".RETURN.if.same.as.for.otherAlias.",
                 "\t(RETURN \u5982\u679C\u548C <{0}> \u7684\u76F8\u540C)"},
         {".PATTERN.printX509Cert",
-                "\u64C1\u6709\u8005: {0}\n\u767C\u51FA\u8005: {1}\n\u5E8F\u865F: {2}\n\u6709\u6548\u671F\u81EA: {3} \u5230: {4}\n\u6191\u8B49\u6307\u7D0B:\n\t MD5:  {5}\n\t SHA1: {6}\n\t SHA256: {7}\n\t \u7C3D\u7AE0\u6F14\u7B97\u6CD5\u540D\u7A31: {8}\n\t \u7248\u672C: {9}"},
+                "\u64C1\u6709\u8005: {0}\n\u767C\u51FA\u8005: {1}\n\u5E8F\u865F: {2}\n\u6709\u6548\u671F\u81EA: {3} \u5230: {4}\n\u6191\u8B49\u6307\u7D0B:\n\t SHA1: {5}\n\t SHA256: {6}\n\u7C3D\u7AE0\u6F14\u7B97\u6CD5\u540D\u7A31: {7}\n\u4E3B\u9AD4\u516C\u958B\u91D1\u9470\u6F14\u7B97\u6CD5: {8} ({9,number,#})\n\u7248\u672C: {10}"},
         {"What.is.your.first.and.last.name.",
                 "\u60A8\u7684\u540D\u5B57\u8207\u59D3\u6C0F\u70BA\u4F55\uFF1F"},
         {"What.is.the.name.of.your.organizational.unit.",
@@ -381,9 +381,9 @@
                 "\u6C92\u6709\u4F86\u81EA SSL \u4F3A\u670D\u5668\u7684\u6191\u8B49"},
 
         {".The.integrity.of.the.information.stored.in.your.keystore.",
-            "* \u5C1A\u672A\u9A57\u8B49\u5132\u5B58\u65BC\u91D1\u9470\u5132\u5B58\u5EAB\u4E2D\u8CC7\u8A0A  *\n* \u7684\u5B8C\u6574\u6027\uFF01\u82E5\u8981\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C*\n* \u60A8\u5FC5\u9808\u63D0\u4F9B\u60A8\u7684\u91D1\u9470\u5132\u5B58\u5EAB\u5BC6\u78BC\u3002                  *"},
+            "* \u5C1A\u672A\u9A57\u8B49\u5132\u5B58\u65BC\u91D1\u9470\u5132\u5B58\u5EAB\u4E2D\u8CC7\u8A0A  *\n* \u7684\u5B8C\u6574\u6027\uFF01\u82E5\u8981\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C    *\n* \u60A8\u5FC5\u9808\u63D0\u4F9B\u60A8\u7684\u91D1\u9470\u5132\u5B58\u5EAB\u5BC6\u78BC\u3002  *"},
         {".The.integrity.of.the.information.stored.in.the.srckeystore.",
-            "* \u5C1A\u672A\u9A57\u8B49\u5132\u5B58\u65BC srckeystore \u4E2D\u8CC7\u8A0A*\n* \u7684\u5B8C\u6574\u6027\uFF01\u82E5\u8981\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C\u60A8\u5FC5\u9808 *\n* \u63D0\u4F9B srckeystore \u5BC6\u78BC\u3002          *"},
+            "* \u5C1A\u672A\u9A57\u8B49\u5132\u5B58\u65BC srckeystore \u4E2D\u8CC7\u8A0A *\n* \u7684\u5B8C\u6574\u6027\uFF01\u82E5\u8981\u9A57\u8B49\u5176\u5B8C\u6574\u6027\uFF0C\u60A8    *\n* \u5FC5\u9808\u63D0\u4F9B srckeystore \u5BC6\u78BC\u3002       *"},
 
         {"Certificate.reply.does.not.contain.public.key.for.alias.",
                 "\u6191\u8B49\u56DE\u8986\u4E26\u672A\u5305\u542B <{0}> \u7684\u516C\u958B\u91D1\u9470"},
@@ -433,6 +433,8 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
+     * <p>
+     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ko.java b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ko.java
index a7537fe..1218fec 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ko.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ko.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -88,7 +88,7 @@
         {"Keystore.alias.","\uD0A4 \uC800\uC7A5\uC18C \uBCC4\uCE6D: "},
         {"Keystore.password.","\uD0A4 \uC800\uC7A5\uC18C \uBE44\uBC00\uBC88\uD638: "},
         {"Private.key.password.optional.",
-            "\uC804\uC6A9 \uD0A4 \uBE44\uBC00\uBC88\uD638(\uC120\uD0DD \uC0AC\uD56D): "},
+            "\uC804\uC6A9 \uD0A4 \uBE44\uBC00\uBC88\uD638(\uC120\uD0DD\uC0AC\uD56D): "},
 
         // com.sun.security.auth.module.Krb5LoginModule
         {"Kerberos.username.defUsername.",
diff --git a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_sv.java b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_sv.java
index f2e82c7b..28a17ea 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_sv.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_sv.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -117,7 +117,7 @@
         {"only.Principal.based.grant.entries.permitted",
                 "endast identitetshavarbaserade poster till\u00E5ts"},
         {"expected.permission.entry", "f\u00F6rv\u00E4ntade beh\u00F6righetspost"},
-        {"number.", "antal "},
+        {"number.", "nummer"},
         {"expected.expect.read.end.of.file.",
                 "f\u00F6rv\u00E4ntade {0}, l\u00E4ste filslut"},
         {"expected.read.end.of.file", "f\u00F6rv\u00E4ntade ';', l\u00E4ste filslut"},
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Pem.java b/jdk/src/java.base/share/classes/sun/security/util/Pem.java
index 7e7a0e6..26be1ce 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Pem.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Pem.java
@@ -26,6 +26,7 @@
 package sun.security.util;
 
 import java.io.IOException;
+import java.nio.charset.StandardCharsets;
 import java.util.Base64;
 
 /**
@@ -42,7 +43,8 @@
      * @throws java.io.IOException if input is invalid
      */
     public static byte[] decode(String input) throws IOException {
-        byte[] src = input.replaceAll("\\s+", "").getBytes();
+        byte[] src = input.replaceAll("\\s+", "")
+                .getBytes(StandardCharsets.ISO_8859_1);
         try {
             return Base64.getDecoder().decode(src);
         } catch (IllegalArgumentException e) {
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_de.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_de.java
index 5f98820..6c87cd2 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_de.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_de.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_es.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_es.java
index 783f072..9f8ac1c 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_es.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_es.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -134,7 +134,7 @@
                 "no se puede especificar Principal con una clase de comod\u00EDn sin un nombre de comod\u00EDn"},
         {"expected.codeBase.or.SignedBy.or.Principal",
                 "se esperaba codeBase o SignedBy o Principal"},
-        {"expected.permission.entry", "se esperaba una entrada de permiso"},
+        {"expected.permission.entry", "se esperaba un permiso de entrada"},
         {"number.", "n\u00FAmero "},
         {"expected.expect.read.end.of.file.",
                 "se esperaba [{0}], se ha le\u00EDdo [final de archivo]"},
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_fr.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_fr.java
index a2053cf..cb3753d 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_fr.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_fr.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_it.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_it.java
index 28ceead..29201c3 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_it.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_it.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_ja.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_ja.java
index 474d264..00dac7d 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_ja.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_ko.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_ko.java
index 8dfca86..9da7551 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_ko.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_ko.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_pt_BR.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_pt_BR.java
index ba17abf..7755484 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_pt_BR.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_pt_BR.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_sv.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_sv.java
index 000c36d..4788f7b 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_sv.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_sv.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -135,7 +135,7 @@
         {"expected.codeBase.or.SignedBy.or.Principal",
                 "f\u00F6rv\u00E4ntad codeBase eller SignedBy eller identitetshavare"},
         {"expected.permission.entry", "f\u00F6rv\u00E4ntade beh\u00F6righetspost"},
-        {"number.", "antal "},
+        {"number.", "nummer"},
         {"expected.expect.read.end.of.file.",
                 "f\u00F6rv\u00E4ntade [{0}], l\u00E4ste [filslut]"},
         {"expected.read.end.of.file.",
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_CN.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_CN.java
index 536fd09..9e8396c 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_CN.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_CN.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_TW.java b/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_TW.java
index a1de718..d815311 100644
--- a/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_TW.java
+++ b/jdk/src/java.base/share/classes/sun/security/util/Resources_zh_TW.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
 package sun.security.util;
 
 /**
- * <p> This class represents the <code>ResourceBundle</code>
+ * This class represents the <code>ResourceBundle</code>
  * for javax.security.auth and sun.security.
  *
  */
@@ -83,7 +83,7 @@
         // javax.security.auth.login.LoginContext
         {"Invalid.null.input.name", "\u7121\u6548\u7A7A\u503C\u8F38\u5165: \u540D\u7A31"},
         {"No.LoginModules.configured.for.name",
-         "\u7121\u91DD\u5C0D {0} \u914D\u7F6E\u7684 LoginModules"},
+         "\u7121\u91DD\u5C0D {0} \u8A2D\u5B9A\u7684 LoginModules"},
         {"invalid.null.Subject.provided", "\u63D0\u4F9B\u7121\u6548\u7A7A\u503C\u4E3B\u984C"},
         {"invalid.null.CallbackHandler.provided",
                 "\u63D0\u4F9B\u7121\u6548\u7A7A\u503C CallbackHandler"},
@@ -160,8 +160,6 @@
     /**
      * Returns the contents of this <code>ResourceBundle</code>.
      *
-     * <p>
-     *
      * @return the contents of this <code>ResourceBundle</code>.
      */
     @Override
diff --git a/jdk/src/java.base/share/classes/sun/util/locale/LocaleMatcher.java b/jdk/src/java.base/share/classes/sun/util/locale/LocaleMatcher.java
index 9f3f01c..9e62b2e 100644
--- a/jdk/src/java.base/share/classes/sun/util/locale/LocaleMatcher.java
+++ b/jdk/src/java.base/share/classes/sun/util/locale/LocaleMatcher.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -118,7 +118,7 @@
                 return new ArrayList<String>(tags);
             } else {
                 for (String tag : tags) {
-                    tag = tag.toLowerCase();
+                    tag = tag.toLowerCase(Locale.ROOT);
                     if (tag.startsWith(range)) {
                         int len = range.length();
                         if ((tag.length() == len || tag.charAt(len) == '-')
@@ -143,7 +143,7 @@
             }
             String[] rangeSubtags = range.split("-");
             for (String tag : tags) {
-                tag = tag.toLowerCase();
+                tag = tag.toLowerCase(Locale.ROOT);
                 String[] tagSubtags = tag.split("-");
                 if (!rangeSubtags[0].equals(tagSubtags[0])
                     && !rangeSubtags[0].equals("*")) {
@@ -216,7 +216,7 @@
             String rangeForRegex = range.replaceAll("\\x2A", "\\\\p{Alnum}*");
             while (rangeForRegex.length() > 0) {
                 for (String tag : tags) {
-                    tag = tag.toLowerCase();
+                    tag = tag.toLowerCase(Locale.ROOT);
                     if (tag.matches(rangeForRegex)) {
                         return tag;
                     }
@@ -228,7 +228,8 @@
                     rangeForRegex = rangeForRegex.substring(0, index);
 
                     // if range ends with an extension key, truncate it.
-                    if (rangeForRegex.lastIndexOf('-') == rangeForRegex.length()-2) {
+                    index = rangeForRegex.lastIndexOf('-');
+                    if (index >= 0 && index == rangeForRegex.length()-2) {
                         rangeForRegex =
                             rangeForRegex.substring(0, rangeForRegex.length()-2);
                     }
@@ -242,7 +243,7 @@
     }
 
     public static List<LanguageRange> parse(String ranges) {
-        ranges = ranges.replaceAll(" ", "").toLowerCase();
+        ranges = ranges.replaceAll(" ", "").toLowerCase(Locale.ROOT);
         if (ranges.startsWith("accept-language:")) {
             ranges = ranges.substring(16); // delete unnecessary prefix
         }
@@ -409,7 +410,7 @@
         // Create a map, key=originalKey.toLowerCaes(), value=originalKey
         Map<String, String> keyMap = new HashMap<>();
         for (String key : map.keySet()) {
-            keyMap.put(key.toLowerCase(), key);
+            keyMap.put(key.toLowerCase(Locale.ROOT), key);
         }
 
         List<LanguageRange> list = new ArrayList<>();
@@ -425,7 +426,7 @@
                     if (equivalents != null) {
                         int len = r.length();
                         for (String equivalent : equivalents) {
-                            list.add(new LanguageRange(equivalent.toLowerCase()
+                            list.add(new LanguageRange(equivalent.toLowerCase(Locale.ROOT)
                                      + range.substring(len),
                                      lr.getWeight()));
                         }
diff --git a/jdk/src/java.base/share/conf/security/java.policy b/jdk/src/java.base/share/conf/security/java.policy
index 9c19eaf..bb8c235 100644
--- a/jdk/src/java.base/share/conf/security/java.policy
+++ b/jdk/src/java.base/share/conf/security/java.policy
@@ -100,6 +100,18 @@
         permission java.security.AllPermission;
 };
 
+grant codeBase "jrt:/java.smartcardio" {
+        permission javax.smartcardio.CardPermission "*", "*";
+        permission java.lang.RuntimePermission "loadLibrary.j2pcsc";
+        permission java.lang.RuntimePermission "accessClassInPackage.sun.security.*";
+        permission java.util.PropertyPermission "*", "read";
+        // needed for looking up native PC/SC library
+        permission java.io.FilePermission "<<ALL FILES>>","read";
+        permission java.security.SecurityPermission "putProviderProperty.SunPCSC";
+        permission java.security.SecurityPermission "clearProviderProperties.SunPCSC";
+        permission java.security.SecurityPermission "removeProviderProperty.SunPCSC";
+};
+
 grant codeBase "jrt:/java.xml.bind" {
         permission java.lang.RuntimePermission "accessClassInPackage.com.sun.xml.internal.*";
         permission java.lang.RuntimePermission "accessClassInPackage.com.sun.istack.internal";
diff --git a/jdk/src/java.base/share/conf/security/java.security b/jdk/src/java.base/share/conf/security/java.security
index 8515b3b..942a303 100644
--- a/jdk/src/java.base/share/conf/security/java.security
+++ b/jdk/src/java.base/share/conf/security/java.security
@@ -33,9 +33,9 @@
 #
 # Each provider must implement a subclass of the Provider class.
 # To register a provider in this master security properties file,
-# specify the Provider subclass name and priority in the format
+# specify the provider and priority in the format
 #
-#    security.provider.<n>=<className>
+#    security.provider.<n>=<provName | className>
 #
 # This declares a provider, and specifies its preference
 # order n. The preference order is the order in which providers are
@@ -43,20 +43,15 @@
 # requested). The order is 1-based; 1 is the most preferred, followed
 # by 2, and so on.
 #
+# <provName> must specify the name of the Provider as passed to its super
+# class java.security.Provider constructor. This is for providers loaded
+# through the ServiceLoader mechanism.
+#
 # <className> must specify the subclass of the Provider class whose
 # constructor sets the values of various properties that are required
 # for the Java Security API to look up the algorithms or other
-# facilities implemented by the provider.
-#
-# There must be at least one provider specification in java.security.
-# There is a default provider that comes standard with the JDK. It
-# is called the "SUN" provider, and its Provider subclass
-# named Sun appears in the sun.security.provider package. Thus, the
-# "SUN" provider is registered via the following:
-#
-#    security.provider.1=sun.security.provider.Sun
-#
-# (The number 1 is used for the default provider.)
+# facilities implemented by the provider. This is for providers loaded
+# through classpath.
 #
 # Note: Providers can be dynamically registered instead by calls to
 # either the addProvider or insertProviderAt method in the Security
diff --git a/jdk/src/java.base/unix/classes/java/lang/ProcessImpl.java b/jdk/src/java.base/unix/classes/java/lang/ProcessImpl.java
index cdf14441..4b4441a 100644
--- a/jdk/src/java.base/unix/classes/java/lang/ProcessImpl.java
+++ b/jdk/src/java.base/unix/classes/java/lang/ProcessImpl.java
@@ -649,7 +649,7 @@
         private final Object closeLock = new Object();
 
         ProcessPipeInputStream(int fd) {
-            super(new FileInputStream(newFileDescriptor(fd)));
+            super(new PipeInputStream(newFileDescriptor(fd)));
         }
         private static byte[] drainInputStream(InputStream in)
                 throws IOException {
@@ -725,8 +725,7 @@
     // behavior.  By deferring the close we allow any pending reads to see -1
     // (EOF) as they did before.
     //
-    private static class DeferredCloseInputStream extends FileInputStream
-    {
+    private static class DeferredCloseInputStream extends PipeInputStream {
         DeferredCloseInputStream(FileDescriptor fd) {
             super(fd);
         }
@@ -848,7 +847,7 @@
         private boolean closePending = false;
 
         DeferredCloseProcessPipeInputStream(int fd) {
-            super(new FileInputStream(newFileDescriptor(fd)));
+            super(new PipeInputStream(newFileDescriptor(fd)));
         }
 
         private InputStream drainInputStream(InputStream in)
diff --git a/jdk/src/java.base/windows/classes/java/lang/ProcessImpl.java b/jdk/src/java.base/windows/classes/java/lang/ProcessImpl.java
index 6abdce8..a59eba9 100644
--- a/jdk/src/java.base/windows/classes/java/lang/ProcessImpl.java
+++ b/jdk/src/java.base/windows/classes/java/lang/ProcessImpl.java
@@ -443,7 +443,7 @@
                 FileDescriptor stdout_fd = new FileDescriptor();
                 fdAccess.setHandle(stdout_fd, stdHandles[1]);
                 stdout_stream = new BufferedInputStream(
-                    new FileInputStream(stdout_fd));
+                    new PipeInputStream(stdout_fd));
             }
 
             if (stdHandles[2] == -1L)
@@ -451,7 +451,7 @@
             else {
                 FileDescriptor stderr_fd = new FileDescriptor();
                 fdAccess.setHandle(stderr_fd, stdHandles[2]);
-                stderr_stream = new FileInputStream(stderr_fd);
+                stderr_stream = new PipeInputStream(stderr_fd);
             }
 
             return null; }});
diff --git a/jdk/src/java.base/windows/classes/sun/nio/fs/WindowsPath.java b/jdk/src/java.base/windows/classes/sun/nio/fs/WindowsPath.java
index 763f10e..b27f663 100644
--- a/jdk/src/java.base/windows/classes/sun/nio/fs/WindowsPath.java
+++ b/jdk/src/java.base/windows/classes/sun/nio/fs/WindowsPath.java
@@ -243,13 +243,13 @@
             // relative to default directory
             String remaining = path.substring(root.length());
             String defaultDirectory = getFileSystem().defaultDirectory();
-            String result;
-            if (defaultDirectory.endsWith("\\")) {
-                result = defaultDirectory + remaining;
+            if (remaining.length() == 0) {
+                return defaultDirectory;
+            } else if (defaultDirectory.endsWith("\\")) {
+                 return defaultDirectory + remaining;
             } else {
-                result = defaultDirectory + "\\" + remaining;
+                return defaultDirectory + "\\" + remaining;
             }
-            return result;
         } else {
             // relative to some other drive
             String wd;
@@ -412,9 +412,11 @@
         }
 
         // append remaining names in child
-        for (int j=i; j<cn; j++) {
-            result.append(other.getName(j).toString());
-            result.append("\\");
+        if (!other.isEmpty()) {
+            for (int j=i; j<cn; j++) {
+                result.append(other.getName(j).toString());
+                result.append("\\");
+            }
         }
 
         // drop trailing slash in result
diff --git a/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_de.properties b/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_de.properties
index 42a62870..b85ed0c 100644
--- a/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_de.properties
+++ b/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -124,9 +124,9 @@
 
 # The following string will be formatted by a MessageFormat
 # and {0} will be replaced by page number being printed
-PrintingDialog.contentProgress.textAndMnemonic=Seite {0} wurde gedruckt ...
+PrintingDialog.contentProgress.textAndMnemonic=Seite {0} wurde gedruckt...
 
-PrintingDialog.contentAborting.textAndMnemonic=Druckvorgang wird abgebrochen ...
+PrintingDialog.contentAborting.textAndMnemonic=Druckvorgang wird abgebrochen...
 
 PrintingDialog.abortButton.textAndMnemonic=&Abbruch
 PrintingDialog.abortButtonToolTip.textAndMnemonic=Druckvorgang abbrechen
@@ -149,7 +149,7 @@
 # Used for html forms
 FormView.submitButton.textAndMnemonic=Abfrage weiterleiten
 FormView.resetButton.textAndMnemonic=Zur\u00FCcksetzen
-FormView.browseFileButton.textAndMnemonic=Durchsuchen ...
+FormView.browseFileButton.textAndMnemonic=Durchsuchen...
 
 ############ Abstract Document Strings ############
 AbstractDocument.styleChange.textAndMnemonic=Formatvorlagen\u00E4nderung
@@ -169,7 +169,7 @@
 ComboBox.togglePopup.textAndMnemonic=togglePopup
 
 ############ Progress Monitor Strings ############
-ProgressMonitor.progress.textAndMnemonic=Fortschritt ...
+ProgressMonitor.progress.textAndMnemonic=Fortschritt...
 
 ############ Split Pane Strings ############
 SplitPane.leftButton.textAndMnemonic=linke Schaltfl\u00E4che
diff --git a/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_sv.properties b/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_sv.properties
index 7891d9d..774548f 100644
--- a/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_sv.properties
+++ b/jdk/src/java.desktop/macosx/classes/com/apple/laf/resources/aqua_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -124,7 +124,7 @@
 
 # The following string will be formatted by a MessageFormat
 # and {0} will be replaced by page number being printed
-PrintingDialog.contentProgress.textAndMnemonic=Utskriven sida {0}...
+PrintingDialog.contentProgress.textAndMnemonic=Skriver ut sida {0}...
 
 PrintingDialog.contentAborting.textAndMnemonic=Utskriften avbryts...
 
@@ -172,8 +172,8 @@
 ProgressMonitor.progress.textAndMnemonic=P\u00E5g\u00E5r...
 
 ############ Split Pane Strings ############
-SplitPane.leftButton.textAndMnemonic=v\u00E4nster knapp
-SplitPane.rightButton.textAndMnemonic=h\u00F6ger knapp
+SplitPane.leftButton.textAndMnemonic=v\u00E4nsterknapp
+SplitPane.rightButton.textAndMnemonic=h\u00F6gerknapp
 # Used for Isindex
 IsindexView.prompt=Detta \u00E4r ett s\u00F6kbart index. Ange s\u00F6kord:
 
diff --git a/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java b/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java
index f0d0a22..5fcc238 100644
--- a/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java
+++ b/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java
@@ -430,9 +430,6 @@
 
     @Override // PlatformWindow
     public void dispose() {
-        if (owner != null) {
-            CWrapper.NSWindow.removeChildWindow(owner.getNSWindowPtr(), getNSWindowPtr());
-        }
         contentView.dispose();
         nativeDispose(getNSWindowPtr());
         CPlatformWindow.super.dispose();
@@ -527,26 +524,6 @@
     public void setVisible(boolean visible) {
         final long nsWindowPtr = getNSWindowPtr();
 
-        // Process parent-child relationship when hiding
-        final ComponentAccessor acc = AWTAccessor.getComponentAccessor();
-        if (!visible) {
-            // Unparent my children
-            for (Window w : target.getOwnedWindows()) {
-                WindowPeer p = acc.getPeer(w);
-                if (p instanceof LWWindowPeer) {
-                    CPlatformWindow pw = (CPlatformWindow)((LWWindowPeer)p).getPlatformWindow();
-                    if (pw != null && pw.isVisible()) {
-                        CWrapper.NSWindow.removeChildWindow(nsWindowPtr, pw.getNSWindowPtr());
-                    }
-                }
-            }
-
-            // Unparent myself
-            if (owner != null && owner.isVisible()) {
-                CWrapper.NSWindow.removeChildWindow(owner.getNSWindowPtr(), nsWindowPtr);
-            }
-        }
-
         // Configure stuff
         updateIconImages();
         updateFocusabilityForAutoRequestFocus(false);
@@ -619,20 +596,22 @@
         updateFocusabilityForAutoRequestFocus(true);
 
         // Manage parent-child relationship when showing
+        final ComponentAccessor acc = AWTAccessor.getComponentAccessor();
+
         if (visible) {
-            // Add myself as a child
+            // Order myself above my parent
             if (owner != null && owner.isVisible()) {
-                CWrapper.NSWindow.addChildWindow(owner.getNSWindowPtr(), nsWindowPtr, CWrapper.NSWindow.NSWindowAbove);
+                CWrapper.NSWindow.orderWindow(nsWindowPtr, CWrapper.NSWindow.NSWindowAbove, owner.getNSWindowPtr());
                 applyWindowLevel(target);
             }
 
-            // Add my own children to myself
+            // Order my own children above myself
             for (Window w : target.getOwnedWindows()) {
                 final Object p = acc.getPeer(w);
                 if (p instanceof LWWindowPeer) {
                     CPlatformWindow pw = (CPlatformWindow)((LWWindowPeer)p).getPlatformWindow();
                     if (pw != null && pw.isVisible()) {
-                        CWrapper.NSWindow.addChildWindow(nsWindowPtr, pw.getNSWindowPtr(), CWrapper.NSWindow.NSWindowAbove);
+                        CWrapper.NSWindow.orderWindow(pw.getNSWindowPtr(), CWrapper.NSWindow.NSWindowAbove, nsWindowPtr);
                         pw.applyWindowLevel(w);
                     }
                 }
@@ -1052,8 +1031,8 @@
             // Order the window to front of the stack of child windows
             final long nsWindowSelfPtr = getNSWindowPtr();
             final long nsWindowOwnerPtr = owner.getNSWindowPtr();
-            CWrapper.NSWindow.removeChildWindow(nsWindowOwnerPtr, nsWindowSelfPtr);
-            CWrapper.NSWindow.addChildWindow(nsWindowOwnerPtr, nsWindowSelfPtr, CWrapper.NSWindow.NSWindowAbove);
+            CWrapper.NSWindow.orderFront(nsWindowOwnerPtr);
+            CWrapper.NSWindow.orderWindow(nsWindowSelfPtr, CWrapper.NSWindow.NSWindowAbove, nsWindowOwnerPtr);
         }
 
         applyWindowLevel(target);
diff --git a/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPrinterGraphicsConfig.java b/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPrinterGraphicsConfig.java
index 64f564a..7dcb235 100644
--- a/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPrinterGraphicsConfig.java
+++ b/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPrinterGraphicsConfig.java
@@ -166,8 +166,7 @@
     }
 
     /**
-     *
-     * Returns a {@code AffineTransform} that can be concatenated
+     * Returns an {@code AffineTransform} that can be concatenated
      * with the default {@code AffineTransform}
      * of a {@code GraphicsConfiguration} so that 72 units in user
      * space equals 1 inch in device space.
diff --git a/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CWarningWindow.java b/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CWarningWindow.java
index 28a4b65..ee44dbf 100644
--- a/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CWarningWindow.java
+++ b/jdk/src/java.desktop/macosx/classes/sun/lwawt/macosx/CWarningWindow.java
@@ -206,15 +206,6 @@
         synchronized (lock) {
             final long nsWindowPtr = getNSWindowPtr();
 
-            // Process parent-child relationship when hiding
-            if (!visible) {
-                // Unparent myself
-                if (owner != null && owner.isVisible()) {
-                    CWrapper.NSWindow.removeChildWindow(
-                            owner.getNSWindowPtr(), nsWindowPtr);
-                }
-            }
-
             // Actually show or hide the window
             if (visible) {
                 CWrapper.NSWindow.orderFront(nsWindowPtr);
@@ -226,10 +217,10 @@
 
             // Manage parent-child relationship when showing
             if (visible) {
-                // Add myself as a child
+                // Order myself above my parent
                 if (owner != null && owner.isVisible()) {
-                    CWrapper.NSWindow.addChildWindow(owner.getNSWindowPtr(),
-                            nsWindowPtr, CWrapper.NSWindow.NSWindowAbove);
+                    CWrapper.NSWindow.orderWindow(nsWindowPtr,
+                            CWrapper.NSWindow.NSWindowAbove, owner.getNSWindowPtr());
 
                     // do not allow security warning to be obscured by other windows
                     applyWindowLevel(ownerWindow);
diff --git a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.h b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.h
index d1bb8c6..d48fe76 100644
--- a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.h
+++ b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.h
@@ -46,6 +46,7 @@
     AWTWindow *ownerWindow;
     jint preFullScreenLevel;
     NSRect standardFrame;
+    BOOL isMinimizing;
 }
 
 // An instance of either AWTWindow_Normal or AWTWindow_Panel
@@ -60,6 +61,7 @@
 @property (nonatomic) BOOL isEnabled;
 @property (nonatomic) jint preFullScreenLevel;
 @property (nonatomic) NSRect standardFrame;
+@property (nonatomic) BOOL isMinimizing;
 
 - (id) initWithPlatformWindow:(JNFWeakJObjectWrapper *)javaPlatformWindow
                   ownerWindow:owner
diff --git a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.m b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.m
index eff112a..bc15d9b 100644
--- a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.m
+++ b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.m
@@ -180,6 +180,7 @@
 @synthesize ownerWindow;
 @synthesize preFullScreenLevel;
 @synthesize standardFrame;
+@synthesize isMinimizing;
 
 - (void) updateMinMaxSize:(BOOL)resizable {
     if (resizable) {
@@ -304,6 +305,7 @@
     [self.nsWindow release]; // the property retains the object already
 
     self.isEnabled = YES;
+    self.isMinimizing = NO;
     self.javaPlatformWindow = platformWindow;
     self.styleBits = bits;
     self.ownerWindow = owner;
@@ -423,6 +425,68 @@
     [super dealloc];
 }
 
+// Tests wheather the corresponding Java paltform window is visible or not
++ (BOOL) isJavaPlatformWindowVisible:(NSWindow *)window {
+    BOOL isVisible = NO;
+    
+    if ([AWTWindow isAWTWindow:window] && [window delegate] != nil) {
+        AWTWindow *awtWindow = (AWTWindow *)[window delegate];
+        [AWTToolkit eventCountPlusPlus];
+        
+        JNIEnv *env = [ThreadUtilities getJNIEnv];
+        jobject platformWindow = [awtWindow.javaPlatformWindow jObjectWithEnv:env];
+        if (platformWindow != NULL) {
+            static JNF_MEMBER_CACHE(jm_isVisible, jc_CPlatformWindow, "isVisible", "()Z");
+            isVisible = JNFCallBooleanMethod(env, platformWindow, jm_isVisible) == JNI_TRUE ? YES : NO;
+            (*env)->DeleteLocalRef(env, platformWindow);
+            
+        }
+    }
+    return isVisible;
+}
+
+// Orders window's childs based on the current focus state
+- (void) orderChildWindows:(BOOL)focus {
+AWT_ASSERT_APPKIT_THREAD;
+
+    if (self.isMinimizing) {
+        // Do not perform any ordering, if iconify is in progress
+        return;
+    }
+
+    NSEnumerator *windowEnumerator = [[NSApp windows]objectEnumerator];
+    NSWindow *window;
+    while ((window = [windowEnumerator nextObject]) != nil) {
+        if ([AWTWindow isJavaPlatformWindowVisible:window]) {
+            AWTWindow *awtWindow = (AWTWindow *)[window delegate];
+            AWTWindow *owner = awtWindow.ownerWindow;
+            if (IS(awtWindow.styleBits, ALWAYS_ON_TOP)) {
+                // Do not order 'always on top' windows
+                continue;
+            }
+            while (awtWindow.ownerWindow != nil) {
+                if (awtWindow.ownerWindow == self) {
+                    if (focus) {
+                        // Move the childWindow to floating level
+                        // so it will appear in front of its
+                        // parent which owns the focus
+                        [window setLevel:NSFloatingWindowLevel];
+                    } else {
+                        // Focus owner has changed, move the childWindow
+                        // back to normal window level
+                        [window setLevel:NSNormalWindowLevel];
+                    }
+                    // The childWindow should be displayed in front of
+                    // its nearest parentWindow
+                    [window orderWindow:NSWindowAbove relativeTo:[owner.nsWindow windowNumber]];
+                    break;
+                }
+                awtWindow = awtWindow.ownerWindow;
+            }
+        }
+    }
+}
+
 // NSWindow overrides
 - (BOOL) canBecomeKeyWindow {
 AWT_ASSERT_APPKIT_THREAD;
@@ -511,6 +575,30 @@
     return [self standardFrame];
 }
 
+// Hides/shows window's childs during iconify/de-iconify operation
+- (void) iconifyChildWindows:(BOOL)iconify {
+AWT_ASSERT_APPKIT_THREAD;
+
+    NSEnumerator *windowEnumerator = [[NSApp windows]objectEnumerator];
+    NSWindow *window;
+    while ((window = [windowEnumerator nextObject]) != nil) {
+        if ([AWTWindow isJavaPlatformWindowVisible:window]) {
+            AWTWindow *awtWindow = (AWTWindow *)[window delegate];
+            while (awtWindow.ownerWindow != nil) {
+                if (awtWindow.ownerWindow == self) {
+                    if (iconify) {
+                        [window orderOut:window];
+                    } else {
+                        [window orderFront:window];
+                    }
+                    break;
+                }
+                awtWindow = awtWindow.ownerWindow;
+            }
+        }
+    }
+}
+
 - (void) _deliverIconify:(BOOL)iconify {
 AWT_ASSERT_APPKIT_THREAD;
 
@@ -524,16 +612,28 @@
     }
 }
 
+- (void)windowWillMiniaturize:(NSNotification *)notification {
+AWT_ASSERT_APPKIT_THREAD;
+
+    self.isMinimizing = YES;
+    // Excplicitly make myself a key window to avoid possible
+    // negative visual effects during iconify operation
+    [self.nsWindow makeKeyAndOrderFront:self.nsWindow];
+    [self iconifyChildWindows:YES];
+}
+
 - (void)windowDidMiniaturize:(NSNotification *)notification {
 AWT_ASSERT_APPKIT_THREAD;
 
     [self _deliverIconify:JNI_TRUE];
+    self.isMinimizing = NO;
 }
 
 - (void)windowDidDeminiaturize:(NSNotification *)notification {
 AWT_ASSERT_APPKIT_THREAD;
 
     [self _deliverIconify:JNI_FALSE];
+    [self iconifyChildWindows:NO];
 }
 
 - (void) _deliverWindowFocusEvent:(BOOL)focused oppositeWindow:(AWTWindow *)opposite {
@@ -579,6 +679,7 @@
     [AWTWindow setLastKeyWindow:nil];
 
     [self _deliverWindowFocusEvent:YES oppositeWindow: opposite];
+    [self orderChildWindows:YES];
 }
 
 - (void) windowDidResignKey: (NSNotification *) notification {
@@ -606,6 +707,7 @@
     }
 
     [self _deliverWindowFocusEvent:NO oppositeWindow: opposite];
+    [self orderChildWindows:NO];
 }
 
 - (void) windowDidBecomeMain: (NSNotification *) notification {
@@ -709,9 +811,12 @@
             if (p.y >= (frame.origin.y + contentRect.size.height)) {
                 JNIEnv *env = [ThreadUtilities getJNIEnvUncached];
                 jobject platformWindow = [self.javaPlatformWindow jObjectWithEnv:env];
-                // Currently, no need to deliver the whole NSEvent.
-                static JNF_MEMBER_CACHE(jm_deliverNCMouseDown, jc_CPlatformWindow, "deliverNCMouseDown", "()V");
-                JNFCallVoidMethod(env, platformWindow, jm_deliverNCMouseDown);
+                if (platformWindow != NULL) {
+                    // Currently, no need to deliver the whole NSEvent.
+                    static JNF_MEMBER_CACHE(jm_deliverNCMouseDown, jc_CPlatformWindow, "deliverNCMouseDown", "()V");
+                    JNFCallVoidMethod(env, platformWindow, jm_deliverNCMouseDown);
+                    (*env)->DeleteLocalRef(env, platformWindow);
+                }
             }
         }
 }
diff --git a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CGraphicsEnv.m b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CGraphicsEnv.m
index 1c3baf4..0fb9116 100644
--- a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CGraphicsEnv.m
+++ b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CGraphicsEnv.m
@@ -127,6 +127,7 @@
                     jc_CGraphicsEnvironment, "_displayReconfiguration","(IZ)V");
             JNFCallVoidMethod(env, graphicsEnv, jm_displayReconfiguration,
                     (jint) display, (jboolean) flags & kCGDisplayRemoveFlag);
+            (*env)->DeleteLocalRef(env, graphicsEnv);
         });
     }];
 }
diff --git a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CMenuItem.m b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CMenuItem.m
index e6b7e21..ac82ca8 100644
--- a/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CMenuItem.m
+++ b/jdk/src/java.desktop/macosx/native/libawt_lwawt/awt/CMenuItem.m
@@ -63,6 +63,7 @@
 - (BOOL) worksWhenModal {
     return YES;
 }
+
 // Events
 - (void)handleAction:(NSMenuItem *)sender {
     AWT_ASSERT_APPKIT_THREAD;
@@ -91,7 +92,6 @@
     }
     else {
         if ([currEvent type] == NSKeyDown) {
-            
             // Event available through sender variable hence NSApplication
             // not needed for checking the keyboard input sans the modifier keys
             // Also, the method used to fetch eventKey earlier would be locale dependent
@@ -99,7 +99,6 @@
             // is not U.S. (Devanagari in this case)
             // With current implementation, EventKey = MenuKey = e irrespective of
             // input method
-            
             NSString *eventKey = [sender keyEquivalent];
             // Apple uses characters from private Unicode range for some of the
             // keys, so we need to do the same translation here that we do
@@ -116,15 +115,15 @@
             if (keyWindow != nil) {
                 return;
             }
-            else {
-                static JNF_CLASS_CACHE(jc_CMenuItem, "sun/lwawt/macosx/CMenuItem");
-                static JNF_MEMBER_CACHE(jm_handleAction, jc_CMenuItem, "handleAction", "(JI)V"); // AWT_THREADING Safe (event)
-                
-                NSUInteger modifiers = [currEvent modifierFlags];
-                jint javaModifiers = NsKeyModifiersToJavaModifiers(modifiers, NO);
-                
-                JNFCallVoidMethod(env, fPeer, jm_handleAction, UTC(currEvent), javaModifiers); // AWT_THREADING Safe (event)
-            }
+        }
+        else {
+            static JNF_CLASS_CACHE(jc_CMenuItem, "sun/lwawt/macosx/CMenuItem");
+            static JNF_MEMBER_CACHE(jm_handleAction, jc_CMenuItem, "handleAction", "(JI)V"); // AWT_THREADING Safe (event)
+            
+            NSUInteger modifiers = [currEvent modifierFlags];
+            jint javaModifiers = NsKeyModifiersToJavaModifiers(modifiers, NO);
+            
+            JNFCallVoidMethod(env, fPeer, jm_handleAction, UTC(currEvent), javaModifiers); // AWT_THREADING Safe (event)
         }
     }
     JNF_COCOA_EXIT(env);
diff --git a/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_de.properties b/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_de.properties
index 4514866..3261a0b 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_de.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_de.properties
@@ -17,7 +17,7 @@
 awtcomponent=AWT-Komponente
 checkbox=Kontrollk\u00E4stchen
 colorchooser=Farbauswahl
-columnheader=Spalten-Header
+columnheader=Spaltenheader
 combobox=Kombinationsfeld
 canvas=Leinwand
 desktopicon=Desktopsymbol
@@ -46,7 +46,7 @@
 pushbutton=Schaltfl\u00E4che
 radiobutton=Optionsfeld
 rootpane=Root-Bereich
-rowheader=Zeilen-Header
+rowheader=Zeilenheader
 scrollbar=Bildlaufleiste
 scrollpane=Bildlaufbereich
 separator=Trennzeichen
diff --git a/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_sv.properties
index 3261b2c..8075f3e 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_sv.properties
@@ -88,7 +88,7 @@
 modal=modal
 multiline=flera rader
 multiselectable=flerval
-opaque=t\u00E4ckande
+opaque=ogenomskinlig
 pressed=nedtryckt
 resizable=storleks\u00E4ndringsbar
 selectable=valbar
diff --git a/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_zh_TW.properties b/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_zh_TW.properties
index 1de30c2..6f47fbb 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_zh_TW.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/accessibility/internal/resources/accessibility_zh_TW.properties
@@ -44,7 +44,7 @@
 popupmenu=\u5373\u73FE\u5F0F\u529F\u80FD\u8868
 progressbar=\u9032\u5EA6\u5217
 pushbutton=\u4E0B\u58D3\u6309\u9215
-radiobutton=\u55AE\u9078\u9215
+radiobutton=\u5713\u9215
 rootpane=root \u7A97\u683C
 rowheader=\u5217\u6A19\u984C
 scrollbar=\u6372\u8EF8
diff --git a/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/MethodInfo.java b/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/MethodInfo.java
index 58324de..9cc5740 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/MethodInfo.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/MethodInfo.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
 package com.sun.beans.introspect;
 
 import com.sun.beans.TypeResolver;
@@ -31,7 +32,9 @@
 import java.lang.reflect.Modifier;
 import java.lang.reflect.Type;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
+import java.util.Comparator;
 import java.util.List;
 
 final class MethodInfo {
@@ -87,8 +90,60 @@
                 }
             }
         }
-        return (list != null)
-                ? Collections.unmodifiableList(list)
-                : Collections.emptyList();
+        if (list != null) {
+            list.sort(MethodOrder.instance);
+            return Collections.unmodifiableList(list);
+        }
+        return Collections.emptyList();
+    }
+
+    /**
+     * A comparator that defines a total order so that methods have the same
+     * name and identical signatures appear next to each others. The methods are
+     * sorted in such a way that methods which override each other will sit next
+     * to each other, with the overridden method last - e.g. is Integer getFoo()
+     * placed before Object getFoo().
+     **/
+    private static final class MethodOrder implements Comparator<Method> {
+
+        /*
+         * Code particularly was copied from com.sun.jmx.mbeanserver.MethodOrder
+         */
+        @Override
+        public int compare(final Method a, final Method b) {
+            int cmp = a.getName().compareTo(b.getName());
+            if (cmp != 0) {
+                return cmp;
+            }
+            final Class<?>[] aparams = a.getParameterTypes();
+            final Class<?>[] bparams = b.getParameterTypes();
+            if (aparams.length != bparams.length) {
+                return aparams.length - bparams.length;
+            }
+            for (int i = 0; i < aparams.length; ++i) {
+                final Class<?> aparam = aparams[i];
+                final Class<?> bparam = bparams[i];
+                if (aparam == bparam) {
+                    continue;
+                }
+                cmp = aparam.getName().compareTo(bparam.getName());
+                if (cmp != 0) {
+                    return cmp;
+                }
+            }
+            final Class<?> aret = a.getReturnType();
+            final Class<?> bret = b.getReturnType();
+            if (aret == bret) {
+                return 0;
+            }
+
+            // Super type comes last: Integer, Number, Object
+            if (aret.isAssignableFrom(bret)) {
+                return 1;
+            }
+            return -1;
+        }
+
+        static final MethodOrder instance = new MethodOrder();
     }
 }
diff --git a/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/PropertyInfo.java b/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/PropertyInfo.java
index 3bda169..fb55f34 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/PropertyInfo.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/beans/introspect/PropertyInfo.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
 package com.sun.beans.introspect;
 
 import java.beans.BeanProperty;
@@ -40,7 +41,11 @@
 import static com.sun.beans.finder.ClassFinder.findClass;
 
 public final class PropertyInfo {
-    public enum Name {bound, expert, hidden, preferred, required, visualUpdate, description, enumerationValues}
+
+    public enum Name {
+        bound, expert, hidden, preferred, required, visualUpdate, description,
+        enumerationValues
+    }
 
     private static final String VETO_EXCEPTION_NAME = "java.beans.PropertyVetoException";
     private static final Class<?> VETO_EXCEPTION;
@@ -107,12 +112,14 @@
         if ((this.type == null) && (this.indexed == null)) {
             return false;
         }
-        initialize(this.write);
-        initialize(this.read);
+        boolean done = initialize(this.read);
+        if (!done) {
+            initialize(this.write);
+        }
         return true;
     }
 
-    private void initialize(MethodInfo info) {
+    private boolean initialize(MethodInfo info) {
         if (info != null) {
             BeanProperty annotation = info.method.getAnnotation(BeanProperty.class);
             if (annotation != null) {
@@ -157,8 +164,10 @@
                 } catch (Exception ignored) {
                     ignored.printStackTrace();
                 }
+                return true;
             }
         }
+        return false;
     }
 
     public Class<?> getPropertyType() {
diff --git a/jdk/src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFFieldNode.java b/jdk/src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFFieldNode.java
index 994d10d..3504232 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFFieldNode.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFFieldNode.java
@@ -38,9 +38,14 @@
  * wherein the child node is procedural rather than buffered.
  */
 public class TIFFFieldNode extends IIOMetadataNode {
+    private static boolean isIFD(TIFFField f) {
+        int type = f.getType();
+        return f.hasDirectory() &&
+            (type == TIFFTag.TIFF_LONG || type == TIFFTag.TIFF_IFD_POINTER);
+    }
+
     private static String getNodeName(TIFFField f) {
-        return (f.hasDirectory() || f.getData() instanceof TIFFDirectory) ?
-            "TIFFIFD" : "TIFFField";
+        return isIFD(f) ? "TIFFIFD" : "TIFFField";
     }
 
     private boolean isIFD;
@@ -52,8 +57,7 @@
     public TIFFFieldNode(TIFFField field) {
         super(getNodeName(field));
 
-        isIFD = field.hasDirectory() ||
-            field.getData() instanceof TIFFDirectory;
+        isIFD = isIFD(field);
 
         this.field = field;
 
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties
index a43a8be..34516dd 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties
@@ -39,7 +39,7 @@
 FileChooser.openButton.textAndMnemonic=\uD655\uC778
 FileChooser.saveDialogTitle.textAndMnemonic=\uC800\uC7A5
 FileChooser.openDialogTitle.textAndMnemonic=\uC5F4\uAE30
-FileChooser.pathLabel.textAndMnemonic=\uC120\uD0DD \uC0AC\uD56D(&S):
+FileChooser.pathLabel.textAndMnemonic=\uC120\uD0DD\uC0AC\uD56D(&S):
 FileChooser.filterLabel.textAndMnemonic=\uD544\uD130:
 FileChooser.foldersLabel.textAndMnemonic=\uD3F4\uB354(&D)
 FileChooser.filesLabel.textAndMnemonic=\uD30C\uC77C(&F)
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties
index 5149f9e..7c3f41d 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties
@@ -44,11 +44,11 @@
 FileChooser.foldersLabel.textAndMnemonic=Map&par
 FileChooser.filesLabel.textAndMnemonic=&Filer
 
-FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan Filv\u00E4ljare.
+FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan f\u00F6r filval.
 FileChooser.saveButtonToolTip.textAndMnemonic=Spara vald fil.
 FileChooser.openButtonToolTip.textAndMnemonic=\u00D6ppna vald fil.
 
-FileChooser.renameFileDialog.textAndMnemonic=Namn\u00E4ndra fil "{0}" till
+FileChooser.renameFileDialog.textAndMnemonic=\u00C4ndra namn p\u00E5 fil "{0}" till
 FileChooser.renameFileError.titleAndMnemonic=Fel
 FileChooser.renameFileError.textAndMnemonic=Fel vid namn\u00E4ndring av fil "{0}" till "{1}"
 
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/resources/motif_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/resources/motif_sv.properties
index fff8ecf..0aa6d5d 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/resources/motif_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/resources/motif_sv.properties
@@ -33,8 +33,8 @@
 FileChooser.enterFileNameLabel.textAndMnemonic=A&nge filnamn:
 FileChooser.enterFolderNameLabel.textAndMnemonic=Ange ett mappnamn:
 
-FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan Filv\u00E4ljare.
+FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan f\u00F6r filval.
 FileChooser.saveButtonToolTip.textAndMnemonic=Spara vald fil.
 FileChooser.openButtonToolTip.textAndMnemonic=\u00D6ppna vald fil.
 FileChooser.updateButtonToolTip.textAndMnemonic=Uppdatera kataloglistan.
-FileChooser.helpButtonToolTip.textAndMnemonic=Hj\u00E4lp - Filv\u00E4ljare.
+FileChooser.helpButtonToolTip.textAndMnemonic=Hj\u00E4lp f\u00F6r val av fil.
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/DesktopProperty.java b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/DesktopProperty.java
index ab6aa61..4e55f2a 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/DesktopProperty.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/DesktopProperty.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 import java.lang.ref.*;
 import javax.swing.*;
 import javax.swing.plaf.*;
+import sun.awt.AppContext;
 
 /**
  * Wrapper for a value from the desktop. The value is lazily looked up, and
@@ -41,10 +42,8 @@
 // NOTE: Don't rely on this class staying in this location. It is likely
 // to move to a different package in the future.
 public class DesktopProperty implements UIDefaults.ActiveValue {
-    /**
-     * Indicates if an updateUI call is pending.
-     */
-    private static boolean updatePending;
+    private static final StringBuilder DESKTOP_PROPERTY_UPDATE_PENDING_KEY =
+            new StringBuilder("DesktopPropertyUpdatePending");
 
     /**
      * ReferenceQueue of unreferenced WeakPCLs.
@@ -86,14 +85,16 @@
      * Sets whether or not an updateUI call is pending.
      */
     private static synchronized void setUpdatePending(boolean update) {
-        updatePending = update;
+        AppContext.getAppContext()
+                .put(DESKTOP_PROPERTY_UPDATE_PENDING_KEY, update);
     }
 
     /**
      * Returns true if a UI update is pending.
      */
     private static synchronized boolean isUpdatePending() {
-        return updatePending;
+        return Boolean.TRUE.equals(AppContext.getAppContext()
+                .get(DESKTOP_PROPERTY_UPDATE_PENDING_KEY));
     }
 
     /**
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java
index d27205f..5f7580b 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java
@@ -1085,6 +1085,8 @@
               }),
             "FormattedTextField.inactiveBackground", ReadOnlyTextBackground,
             "FormattedTextField.disabledBackground", DisabledTextBackground,
+            "FormattedTextField.background", TextBackground,
+            "FormattedTextField.foreground", WindowTextColor,
 
             // *** Panel
             "Panel.font", ControlFont,
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_fr.properties b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_fr.properties
index 87e7a8d..f8985b1 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_fr.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_fr.properties
@@ -25,8 +25,8 @@
 FileChooser.filesOfTypeLabel.textAndMnemonic=&Type de fichier :
 FileChooser.upFolderToolTip.textAndMnemonic=Remonte d'un niveau.
 FileChooser.upFolderAccessibleName=Monter
-FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire d'origine
-FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
+FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire de base
+FileChooser.homeFolderAccessibleName=R\u00E9pertoire de base
 FileChooser.newFolderToolTip.textAndMnemonic=Cr\u00E9e un dossier.
 FileChooser.newFolderAccessibleName=Nouveau dossier
 FileChooser.newFolderActionLabel.textAndMnemonic=Nouveau dossier
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_ko.properties b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_ko.properties
index a5d7862..75ba844 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_ko.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_ko.properties
@@ -33,11 +33,11 @@
 FileChooser.listViewButtonToolTip.textAndMnemonic=\uBAA9\uB85D
 FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
 FileChooser.listViewActionLabel.textAndMnemonic=\uBAA9\uB85D
-FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80\uC815\uBCF4
+FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80\uC815\uBCF4
 FileChooser.viewMenuButtonToolTipText = \uBCF4\uAE30 \uBA54\uB274
 FileChooser.viewMenuButtonAccessibleName = \uBCF4\uAE30 \uBA54\uB274
-FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80\uC815\uBCF4
 FileChooser.refreshActionLabel.textAndMnemonic=\uC0C8\uB85C \uACE0\uCE68
 FileChooser.viewMenuLabel.textAndMnemonic=\uBCF4\uAE30
 FileChooser.fileNameHeader.textAndMnemonic=\uC774\uB984
diff --git a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_sv.properties
index 977b0db..70aaa5d 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/resources/windows_sv.properties
@@ -22,7 +22,7 @@
 FileChooser.saveInLabel.textAndMnemonic=Spara i:
 FileChooser.fileNameLabel.textAndMnemonic=Fil&namn:
 FileChooser.folderNameLabel.textAndMnemonic=Mapp&namn:
-FileChooser.filesOfTypeLabel.textAndMnemonic=Filer av &typ:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Filer av &typen:
 FileChooser.upFolderToolTip.textAndMnemonic=Upp en niv\u00E5
 FileChooser.upFolderAccessibleName=Upp
 FileChooser.homeFolderToolTip.textAndMnemonic=Hem
diff --git a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractDataLine.java b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractDataLine.java
index 0cea4c6..b0f8579 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractDataLine.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractDataLine.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -59,10 +59,9 @@
     // current buffer size in bytes
     protected int bufferSize;
 
-    protected boolean running = false;
-    private boolean started = false;
-    private boolean active = false;
-
+    private volatile boolean running;
+    private volatile boolean started;
+    private volatile boolean active;
 
     /**
      * Constructs a new AbstractLine.
diff --git a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractLine.java b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractLine.java
index 1d0393d..6c349b9 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractLine.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractLine.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -47,7 +47,7 @@
     protected final Line.Info info;
     protected Control[] controls;
     AbstractMixer mixer;
-    private boolean open     = false;
+    private volatile boolean open;
     private final Vector<Object> listeners = new Vector<>();
 
     /**
diff --git a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractMidiDevice.java b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractMidiDevice.java
index 007d4a4..e9cab2c 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractMidiDevice.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AbstractMidiDevice.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -65,7 +65,7 @@
 
     // DEVICE STATE
 
-    private boolean open          = false;
+    private volatile boolean open;
     private int openRefCount;
 
     /** List of Receivers and Transmitters that opened the device implicitely.
@@ -75,7 +75,7 @@
     /**
      * This is the device handle returned from native code
      */
-    protected long id                   = 0;
+    protected volatile long id;
 
 
 
@@ -479,7 +479,7 @@
         (which opens the device implicitely).
      */
     abstract class AbstractReceiver implements MidiDeviceReceiver {
-        private boolean open = true;
+        private volatile boolean open = true;
 
 
         /** Deliver a MidiMessage.
diff --git a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AudioSynthesizerPropertyInfo.java b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AudioSynthesizerPropertyInfo.java
index 3fadc82..11f2b7e 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/media/sound/AudioSynthesizerPropertyInfo.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/media/sound/AudioSynthesizerPropertyInfo.java
@@ -32,7 +32,7 @@
 public final class AudioSynthesizerPropertyInfo {
 
     /**
-     * Constructs a {@code AudioSynthesizerPropertyInfo} object with a given
+     * Constructs an {@code AudioSynthesizerPropertyInfo} object with a given
      * name and value. The {@code description} and {@code choices}
      * are initialized by {@code null} values.
      *
diff --git a/jdk/src/java.desktop/share/classes/com/sun/media/sound/MidiInDevice.java b/jdk/src/java.desktop/share/classes/com/sun/media/sound/MidiInDevice.java
index 373870f..be8480d 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/media/sound/MidiInDevice.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/media/sound/MidiInDevice.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,7 @@
  */
 final class MidiInDevice extends AbstractMidiDevice implements Runnable {
 
-    private Thread midiInThread = null;
+    private volatile Thread midiInThread;
 
     // CONSTRUCTOR
 
diff --git a/jdk/src/java.desktop/share/classes/com/sun/media/sound/RealTimeSequencer.java b/jdk/src/java.desktop/share/classes/com/sun/media/sound/RealTimeSequencer.java
index b26708b..fcb2a7a 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/media/sound/RealTimeSequencer.java
+++ b/jdk/src/java.desktop/share/classes/com/sun/media/sound/RealTimeSequencer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -106,7 +106,7 @@
     /**
      * True if the sequence is running.
      */
-    private boolean running = false;
+    private volatile boolean running;
 
 
     /** the thread for pushing out the MIDI messages */
@@ -116,7 +116,7 @@
     /**
      * True if we are recording
      */
-    private boolean recording = false;
+    private volatile boolean recording;
 
 
     /**
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties
index c8e67df..e891844 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties
@@ -71,7 +71,7 @@
 FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\uC120\uD0DD\uB41C \uB514\uB809\uD1A0\uB9AC \uC5F4\uAE30
 
 FileChooser.filesListAccessibleName=\uD30C\uC77C \uBAA9\uB85D
-FileChooser.filesDetailsAccessibleName=\uD30C\uC77C \uC138\uBD80 \uC815\uBCF4
+FileChooser.filesDetailsAccessibleName=\uD30C\uC77C \uC138\uBD80\uC815\uBCF4
 
 ############ COLOR CHOOSER STRINGS #############
 ColorChooser.preview.textAndMnemonic=\uBBF8\uB9AC\uBCF4\uAE30
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties
index 8c8a501..a579d30 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties
@@ -33,7 +33,7 @@
 ############ FILE CHOOSER STRINGS #############
 FileChooser.fileDescription.textAndMnemonic=Generisk fil
 FileChooser.directoryDescription.textAndMnemonic=Katalog
-FileChooser.newFolderError.textAndMnemonic=Fel uppstod n\u00E4r ny mapp skapades
+FileChooser.newFolderError.textAndMnemonic=Kan inte skapa ny mapp
 FileChooser.newFolderErrorSeparator= :
 FileChooser.newFolderParentDoesntExistTitle.textAndMnemonic=Kan inte skapa mappen
 FileChooser.newFolderParentDoesntExist.textAndMnemonic=Kan inte skapa mappen.\n\nSystemet kan inte hitta angiven s\u00F6kv\u00E4g.
@@ -59,15 +59,15 @@
 FileChooser.win32.newFolder=Ny mapp
 FileChooser.win32.newFolder.subsequent=Ny mapp ({0})
 FileChooser.other.newFolder=Ny mapp
-FileChooser.other.newFolder.subsequent=Ny mapp.{0}
+FileChooser.other.newFolder.subsequent=Ny mapp {0}
 
 
 ## file chooser tooltips ###
-FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt filvalsdialogruta
+FileChooser.cancelButtonToolTip.textAndMnemonic=Avbryt dialogrutan f\u00F6r filval
 FileChooser.saveButtonToolTip.textAndMnemonic=Spara vald fil
 FileChooser.openButtonToolTip.textAndMnemonic=\u00D6ppna vald fil
 FileChooser.updateButtonToolTip.textAndMnemonic=Uppdatera kataloglistan
-FileChooser.helpButtonToolTip.textAndMnemonic=Hj\u00E4lp - Filv\u00E4ljare
+FileChooser.helpButtonToolTip.textAndMnemonic=Hj\u00E4lp f\u00F6r val av fil
 FileChooser.directoryOpenButtonToolTip.textAndMnemonic=\u00D6ppna vald katalog
 
 FileChooser.filesListAccessibleName=Fillista
@@ -129,7 +129,7 @@
 
 # The following string will be formatted by a MessageFormat
 # and {0} will be replaced by page number being printed
-PrintingDialog.contentProgress.textAndMnemonic=Utskriven sida {0}...
+PrintingDialog.contentProgress.textAndMnemonic=Skriver ut sida {0}...
 
 PrintingDialog.contentAborting.textAndMnemonic=Utskriften avbryts...
 
@@ -177,8 +177,8 @@
 ProgressMonitor.progress.textAndMnemonic=P\u00E5g\u00E5r...
 
 ############ Split Pane Strings ############
-SplitPane.leftButton.textAndMnemonic=v\u00E4nster knapp
-SplitPane.rightButton.textAndMnemonic=h\u00F6ger knapp
+SplitPane.leftButton.textAndMnemonic=v\u00E4nsterknapp
+SplitPane.rightButton.textAndMnemonic=h\u00F6gerknapp
 # Used for Isindex
 IsindexView.prompt=Detta \u00E4r ett s\u00F6kbart index. Ange s\u00F6kord:
 
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties
index 9dd46c0..9644ad6b 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties
@@ -25,8 +25,8 @@
 FileChooser.filesOfTypeLabel.textAndMnemonic=&Type de fichier :
 FileChooser.upFolderToolTip.textAndMnemonic=Remonte d'un niveau.
 FileChooser.upFolderAccessibleName=Monter
-FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire d'origine
-FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
+FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire de base
+FileChooser.homeFolderAccessibleName=R\u00E9pertoire de base
 FileChooser.newFolderToolTip.textAndMnemonic=Cr\u00E9e un dossier.
 FileChooser.newFolderAccessibleName=Nouveau dossier
 FileChooser.newFolderActionLabel.textAndMnemonic=Nouveau dossier
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties
index f01b47d..06bedaa 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties
@@ -33,9 +33,9 @@
 FileChooser.listViewButtonToolTip.textAndMnemonic=\uBAA9\uB85D
 FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
 FileChooser.listViewActionLabel.textAndMnemonic=\uBAA9\uB85D
-FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80\uC815\uBCF4
+FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80\uC815\uBCF4
+FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80\uC815\uBCF4
 FileChooser.refreshActionLabel.textAndMnemonic=\uC0C8\uB85C \uACE0\uCE68
 FileChooser.viewMenuLabel.textAndMnemonic=\uBCF4\uAE30
 FileChooser.fileNameHeader.textAndMnemonic=\uC774\uB984
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties
index 08e642c..a2bfcd5 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties
@@ -20,9 +20,9 @@
 
 FileChooser.lookInLabel.textAndMnemonic=Leta &i:
 FileChooser.saveInLabel.textAndMnemonic=Spara i:
-FileChooser.fileNameLabel.textAndMnemonic=&Fil:
+FileChooser.fileNameLabel.textAndMnemonic=Fil&namn:
 FileChooser.folderNameLabel.textAndMnemonic=&Mapp:
-FileChooser.filesOfTypeLabel.textAndMnemonic=Mapp&namn:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Filer av &typen:
 FileChooser.upFolderToolTip.textAndMnemonic=Upp en niv\u00E5
 FileChooser.upFolderAccessibleName=Upp
 FileChooser.homeFolderToolTip.textAndMnemonic=Hem
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties
index a21072d..2c1c572 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties
@@ -25,8 +25,8 @@
 FileChooser.filesOfTypeLabel.textAndMnemonic=&Type de fichier :
 FileChooser.upFolderToolTip.textAndMnemonic=Remonte d'un niveau.
 FileChooser.upFolderAccessibleName=Monter
-FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire d'origine
-FileChooser.homeFolderAccessibleName=R\u00E9pertoire d'origine
+FileChooser.homeFolderToolTip.textAndMnemonic=R\u00E9pertoire de base
+FileChooser.homeFolderAccessibleName=R\u00E9pertoire de base
 FileChooser.newFolderToolTip.textAndMnemonic=Cr\u00E9e un dossier.
 FileChooser.newFolderAccessibleName=Nouveau dossier
 FileChooser.newFolderActionLabel.textAndMnemonic=Nouveau dossier
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties
index d106464..9c1e35c 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties
@@ -33,9 +33,9 @@
 FileChooser.listViewButtonToolTip.textAndMnemonic=\uBAA9\uB85D
 FileChooser.listViewButtonAccessibleName=\uBAA9\uB85D
 FileChooser.listViewActionLabel.textAndMnemonic=\uBAA9\uB85D
-FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80 \uC815\uBCF4
-FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80 \uC815\uBCF4
+FileChooser.detailsViewButtonToolTip.textAndMnemonic=\uC138\uBD80\uC815\uBCF4
+FileChooser.detailsViewButtonAccessibleName=\uC138\uBD80\uC815\uBCF4
+FileChooser.detailsViewActionLabel.textAndMnemonic=\uC138\uBD80\uC815\uBCF4
 FileChooser.refreshActionLabel.textAndMnemonic=\uC0C8\uB85C \uACE0\uCE68
 FileChooser.viewMenuLabel.textAndMnemonic=\uBCF4\uAE30
 FileChooser.fileNameHeader.textAndMnemonic=\uC774\uB984
diff --git a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties
index 6c91f5a..9a4da01 100644
--- a/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties
+++ b/jdk/src/java.desktop/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties
@@ -22,7 +22,7 @@
 FileChooser.saveInLabel.textAndMnemonic=Spara i:
 FileChooser.fileNameLabel.textAndMnemonic=Fil&namn:
 FileChooser.folderNameLabel.textAndMnemonic=Mapp&namn:
-FileChooser.filesOfTypeLabel.textAndMnemonic=Filer av &typ:
+FileChooser.filesOfTypeLabel.textAndMnemonic=Filer av &typen:
 FileChooser.upFolderToolTip.textAndMnemonic=Upp en niv\u00E5
 FileChooser.upFolderAccessibleName=Upp
 FileChooser.homeFolderToolTip.textAndMnemonic=Hem
diff --git a/jdk/src/java.desktop/share/classes/java/awt/BorderLayout.java b/jdk/src/java.desktop/share/classes/java/awt/BorderLayout.java
index 4b23f93..e2feddc 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/BorderLayout.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/BorderLayout.java
@@ -76,7 +76,7 @@
  * orientation is {@code LEFT_TO_RIGHT}, only the
  * {@code PAGE_START} will be laid out.
  * <p>
- * NOTE: Currently (in the Java 2 platform v1.2),
+ * NOTE: Currently,
  * {@code BorderLayout} does not support vertical
  * orientations.  The {@code isVertical} setting on the container's
  * {@code ComponentOrientation} is not respected.
diff --git a/jdk/src/java.desktop/share/classes/java/awt/DefaultKeyboardFocusManager.java b/jdk/src/java.desktop/share/classes/java/awt/DefaultKeyboardFocusManager.java
index ad23e21..a3f3397 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/DefaultKeyboardFocusManager.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/DefaultKeyboardFocusManager.java
@@ -148,9 +148,20 @@
         Component toFocus =
             KeyboardFocusManager.getMostRecentFocusOwner(aWindow);
 
-        if (toFocus != null && toFocus != vetoedComponent && doRestoreFocus(toFocus, vetoedComponent, false)) {
-            return true;
-        } else if (clearOnFailure) {
+        if (toFocus != null && toFocus != vetoedComponent) {
+            Component heavyweight = getHeavyweight(aWindow);
+            if (heavyweight != null) {
+                setNativeFocusOwner(heavyweight);
+                Toolkit.getEventQueue().createSecondaryLoop(
+                        () -> getGlobalFocusedWindow() != aWindow, null, 50)
+                        .enter();
+            }
+            if (getGlobalFocusedWindow() == aWindow &&
+                              doRestoreFocus(toFocus, vetoedComponent, false)) {
+                return true;
+            }
+        }
+        if (clearOnFailure) {
             clearGlobalFocusOwnerPriv();
             return true;
         } else {
diff --git a/jdk/src/java.desktop/share/classes/java/awt/GraphicsConfiguration.java b/jdk/src/java.desktop/share/classes/java/awt/GraphicsConfiguration.java
index 3a5640c..bdf01af 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/GraphicsConfiguration.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/GraphicsConfiguration.java
@@ -360,8 +360,7 @@
     public abstract AffineTransform getDefaultTransform();
 
     /**
-     *
-     * Returns a {@code AffineTransform} that can be concatenated
+     * Returns an {@code AffineTransform} that can be concatenated
      * with the default {@code AffineTransform}
      * of a {@code GraphicsConfiguration} so that 72 units in user
      * space equals 1 inch in device space.
diff --git a/jdk/src/java.desktop/share/classes/java/awt/TextField.java b/jdk/src/java.desktop/share/classes/java/awt/TextField.java
index effdfd4..d052ef5 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/TextField.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/TextField.java
@@ -159,6 +159,8 @@
      * @param      text       the text to be displayed. If
      *             {@code text} is {@code null}, the empty
      *             string {@code ""} will be displayed.
+     *             If {@code text} contains EOL character, then
+     *             it will be replaced by space character.
      * @exception HeadlessException if GraphicsEnvironment.isHeadless()
      * returns true.
      * @see java.awt.GraphicsEnvironment#isHeadless
@@ -190,6 +192,8 @@
      * @param      text       the text to be displayed. If
      *             {@code text} is {@code null}, the empty
      *             string {@code ""} will be displayed.
+     *             If {@code text} contains EOL character, then
+     *             it will be replaced by space character.
      * @param      columns     the number of columns.  If
      *             {@code columns} is less than {@code 0},
      *             {@code columns} is set to {@code 0}.
@@ -293,7 +297,11 @@
     /**
      * Sets the text that is presented by this
      * text component to be the specified text.
-     * @param       t   the new text.
+     * @param      t       the new text. If
+     *             {@code t} is {@code null}, the empty
+     *             string {@code ""} will be displayed.
+     *             If {@code t} contains EOL character, then
+     *             it will be replaced by space character.
      * @see         java.awt.TextComponent#getText
      */
     public void setText(String t) {
diff --git a/jdk/src/java.desktop/share/classes/java/awt/font/TransformAttribute.java b/jdk/src/java.desktop/share/classes/java/awt/font/TransformAttribute.java
index 9e3fe42..f47ba90 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/font/TransformAttribute.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/font/TransformAttribute.java
@@ -74,7 +74,7 @@
 
     /**
      * Returns a copy of the wrapped transform.
-     * @return a {@code AffineTransform} that is a copy of the wrapped
+     * @return an {@code AffineTransform} that is a copy of the wrapped
      * transform of this {@code TransformAttribute}.
      */
     public AffineTransform getTransform() {
diff --git a/jdk/src/java.desktop/share/classes/java/awt/geom/AffineTransform.java b/jdk/src/java.desktop/share/classes/java/awt/geom/AffineTransform.java
index 02e464d..019abbe 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/geom/AffineTransform.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/geom/AffineTransform.java
@@ -1160,10 +1160,18 @@
     }
 
     /**
-     * Returns the X coordinate scaling element (m00) of the 3x3
-     * affine transformation matrix.
-     * @return a double value that is the X coordinate of the scaling
-     *  element of the affine transformation matrix.
+     * Returns the {@code m00} element of the 3x3 affine transformation matrix.
+     * This matrix factor determines how input X coordinates will affect output
+     * X coordinates and is one element of the scale of the transform.
+     * To measure the full amount by which X coordinates are stretched or
+     * contracted by this transform, use the following code:
+     * <pre>
+     *     Point2D p = new Point2D.Double(1, 0);
+     *     p = tx.deltaTransform(p, p);
+     *     double scaleX = p.distance(0, 0);
+     * </pre>
+     * @return a double value that is {@code m00} element of the
+     *         3x3 affine transformation matrix.
      * @see #getMatrix
      * @since 1.2
      */
@@ -1172,10 +1180,18 @@
     }
 
     /**
-     * Returns the Y coordinate scaling element (m11) of the 3x3
-     * affine transformation matrix.
-     * @return a double value that is the Y coordinate of the scaling
-     *  element of the affine transformation matrix.
+     * Returns the {@code m11} element of the 3x3 affine transformation matrix.
+     * This matrix factor determines how input Y coordinates will affect output
+     * Y coordinates and is one element of the scale of the transform.
+     * To measure the full amount by which Y coordinates are stretched or
+     * contracted by this transform, use the following code:
+     * <pre>
+     *     Point2D p = new Point2D.Double(0, 1);
+     *     p = tx.deltaTransform(p, p);
+     *     double scaleY = p.distance(0, 0);
+     * </pre>
+     * @return a double value that is {@code m11} element of the
+     *         3x3 affine transformation matrix.
      * @see #getMatrix
      * @since 1.2
      */
diff --git a/jdk/src/java.desktop/share/classes/java/awt/image/renderable/ParameterBlock.java b/jdk/src/java.desktop/share/classes/java/awt/image/renderable/ParameterBlock.java
index f9a3a2d..aa7686c 100644
--- a/jdk/src/java.desktop/share/classes/java/awt/image/renderable/ParameterBlock.java
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/renderable/ParameterBlock.java
@@ -619,9 +619,9 @@
      *
      * @param index the index of the parameter to be returned.
      * @return the parameter at the specified index
-     *         as a {@code int} value.
+     *         as an {@code int} value.
      * @throws ClassCastException if the parameter at the
-     *         specified index is not a {@code Integer}
+     *         specified index is not an {@code Integer}
      * @throws NullPointerException if the parameter at the specified
      *         index is {@code null}
      * @throws ArrayIndexOutOfBoundsException if {@code index}
diff --git a/jdk/src/java.desktop/share/classes/java/beans/BeanProperty.java b/jdk/src/java.desktop/share/classes/java/beans/BeanProperty.java
index b18aae5..83415ce 100644
--- a/jdk/src/java.desktop/share/classes/java/beans/BeanProperty.java
+++ b/jdk/src/java.desktop/share/classes/java/beans/BeanProperty.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
 package java.beans;
 
 import java.lang.annotation.Documented;
@@ -32,16 +33,16 @@
 import static java.lang.annotation.RetentionPolicy.RUNTIME;
 
 /**
- * An annotation used to specify some property-related information
- * for the automatically generated {@link BeanInfo} classes.
- * This annotation is not used if the annotated class
- * has a corresponding user-defined {@code BeanInfo} class,
- * which does not imply the automatic analysis.
- *
- * @see BeanInfo#getPropertyDescriptors
- * @since 9
+ * An annotation used to specify some property-related information for the
+ * automatically generated {@link BeanInfo} classes. This annotation is not used
+ * if the annotated class has a corresponding user-defined {@code BeanInfo}
+ * class, which does not imply the automatic analysis. If both the read and the
+ * write methods of the property are annotated, then the read method annotation
+ * will have more priority and replace the write method annotation.
  *
  * @author Sergey A. Malenkov
+ * @see BeanInfo#getPropertyDescriptors
+ * @since 9
  */
 @Documented
 @Target({METHOD})
diff --git a/jdk/src/java.desktop/share/classes/java/beans/Encoder.java b/jdk/src/java.desktop/share/classes/java/beans/Encoder.java
index 1a7a4aa..7c5e67d 100644
--- a/jdk/src/java.desktop/share/classes/java/beans/Encoder.java
+++ b/jdk/src/java.desktop/share/classes/java/beans/Encoder.java
@@ -136,7 +136,7 @@
      * a shared internal persistence delegate is returned
      * that encodes {@code null} value.
      * <li>
-     * If the type is a {@code enum} declaration,
+     * If the type is an {@code enum} declaration,
      * a shared internal persistence delegate is returned
      * that encodes constants of this enumeration
      * by their names.
diff --git a/jdk/src/java.desktop/share/classes/java/beans/PersistenceDelegate.java b/jdk/src/java.desktop/share/classes/java/beans/PersistenceDelegate.java
index a4badc5..63a751f 100644
--- a/jdk/src/java.desktop/share/classes/java/beans/PersistenceDelegate.java
+++ b/jdk/src/java.desktop/share/classes/java/beans/PersistenceDelegate.java
@@ -89,7 +89,7 @@
 
     /**
      * The {@code writeObject} is a single entry point to the persistence
-     * and is used by a {@code Encoder} in the traditional
+     * and is used by an {@code Encoder} in the traditional
      * mode of delegation. Although this method is not final,
      * it should not need to be subclassed under normal circumstances.
      * <p>
diff --git a/jdk/src/java.desktop/share/classes/java/beans/Statement.java b/jdk/src/java.desktop/share/classes/java/beans/Statement.java
index cacb032..3a47f84 100644
--- a/jdk/src/java.desktop/share/classes/java/beans/Statement.java
+++ b/jdk/src/java.desktop/share/classes/java/beans/Statement.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -39,6 +39,8 @@
 import com.sun.beans.finder.MethodFinder;
 import sun.reflect.misc.MethodUtil;
 
+import static sun.reflect.misc.ReflectUtil.checkPackageAccess;
+
 /**
  * A {@code Statement} object represents a primitive statement
  * in which a single method is applied to a target and
@@ -205,12 +207,22 @@
         Object[] arguments = getArguments();
         if (arguments == null) {
             arguments = emptyArray;
+        } else {
+            arguments = arguments.clone();
         }
-        // Class.forName() won't load classes outside
-        // of core from a class inside core. Special
-        // case this method.
         if (target == Class.class && methodName.equals("forName")) {
-            return ClassFinder.resolveClass((String)arguments[0], this.loader);
+            final String name = (String) arguments[0];
+            if (arguments.length == 1) {
+                // Class.forName(String className) won't load classes outside
+                // of core from a class inside core. Special
+                // case this method.
+                // checkPackageAccess(name) will be called by ClassFinder
+                return ClassFinder.resolveClass(name, this.loader);
+            }
+            // The 3 args Class.forName(String className, boolean, classloader)
+            // requires getClassLoader permission, but we will be stricter and
+            // will require access to the package as well.
+            checkPackageAccess(name);
         }
         Class<?>[] argClasses = new Class<?>[arguments.length];
         for(int i = 0; i < arguments.length; i++) {
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/BaselineTIFFTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/BaselineTIFFTagSet.java
index d1dbd3c..8c9ce8e 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/BaselineTIFFTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/BaselineTIFFTagSet.java
@@ -58,7 +58,7 @@
  * @since 9
  * @see   <a href="http://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf">  TIFF 6.0 Specification</a>
  */
-public class BaselineTIFFTagSet extends TIFFTagSet {
+public final class BaselineTIFFTagSet extends TIFFTagSet {
 
     private static BaselineTIFFTagSet theInstance = null;
 
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifGPSTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifGPSTagSet.java
index 03198c4..174eb7a 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifGPSTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifGPSTagSet.java
@@ -38,7 +38,7 @@
  * @since 9
  * @see   ExifTIFFTagSet
  */
-public class ExifGPSTagSet extends TIFFTagSet {
+public final class ExifGPSTagSet extends TIFFTagSet {
     private static ExifGPSTagSet theInstance = null;
 
     /**
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifInteroperabilityTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifInteroperabilityTagSet.java
index 7089c65..140b667 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifInteroperabilityTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifInteroperabilityTagSet.java
@@ -34,7 +34,7 @@
  * @since 9
  * @see   ExifTIFFTagSet
  */
-public class ExifInteroperabilityTagSet extends TIFFTagSet {
+public final class ExifInteroperabilityTagSet extends TIFFTagSet {
     /**
      * A tag indicating the identification of the Interoperability rule
      * (type ASCII).
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifParentTIFFTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifParentTIFFTagSet.java
index 108e1a1..194416b 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifParentTIFFTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifParentTIFFTagSet.java
@@ -36,7 +36,7 @@
  *
  * @since 9
  */
-public class ExifParentTIFFTagSet extends TIFFTagSet {
+public final class ExifParentTIFFTagSet extends TIFFTagSet {
 
     private static ExifParentTIFFTagSet theInstance = null;
 
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifTIFFTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifTIFFTagSet.java
index c5be97c..0987175 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifTIFFTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/ExifTIFFTagSet.java
@@ -41,7 +41,7 @@
  *
  * @since 9
  */
-public class ExifTIFFTagSet extends TIFFTagSet {
+public final class ExifTIFFTagSet extends TIFFTagSet {
 
     private static ExifTIFFTagSet theInstance = null;
 
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/FaxTIFFTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/FaxTIFFTagSet.java
index 8a3043d..3ecfe50 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/FaxTIFFTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/FaxTIFFTagSet.java
@@ -33,7 +33,7 @@
  *
  * @since 9
  */
-public class FaxTIFFTagSet extends TIFFTagSet {
+public final class FaxTIFFTagSet extends TIFFTagSet {
 
     private static FaxTIFFTagSet theInstance = null;
 
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/GeoTIFFTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/GeoTIFFTagSet.java
index 58adc76..4f77c29 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/GeoTIFFTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/GeoTIFFTagSet.java
@@ -41,7 +41,7 @@
  *
  * @since 9
  */
-public class GeoTIFFTagSet extends TIFFTagSet {
+public final class GeoTIFFTagSet extends TIFFTagSet {
 
     private static GeoTIFFTagSet theInstance = null;
 
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java
index a6ba385..8a1fbf2 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java
@@ -843,10 +843,9 @@
      * Returns the {@code TIFFField} as a node named either
      * <tt>"TIFFField"</tt> or <tt>"TIFFIFD"</tt> as described in the
      * TIFF native image metadata specification. The node will be named
-     * <tt>"TIFFIFD"</tt> if and only if the field's data object is an
-     * instance of {@link TIFFDirectory} or equivalently
-     * {@link TIFFTag#isIFDPointer getTag.isIFDPointer()} returns
-     * {@code true}.
+     * <tt>"TIFFIFD"</tt> if and only if {@link #hasDirectory()} returns
+     * {@code true} and the field's type is either {@link TIFFTag#TIFF_LONG}
+     * or {@link TIFFTag#TIFF_IFD_POINTER}.
      *
      * @return a {@code Node} named <tt>"TIFFField"</tt> or
      * <tt>"TIFFIFD"</tt>.
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFTagSet.java b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFTagSet.java
index 793bafc..00278e1 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFTagSet.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFTagSet.java
@@ -34,14 +34,13 @@
 import java.util.TreeSet;
 
 /**
- * A class representing a set of TIFF tags.  Each tag in the set must
- * have a unique number (this is a limitation of the TIFF
- * specification itself).
+ * A class representing a set of TIFF tags.  Each tag in the set must have
+ * a unique number (this is a limitation of the TIFF specification itself).
  *
  * <p> This class and its subclasses are responsible for mapping
  * between raw tag numbers and {@code TIFFTag} objects, which
  * contain additional information about each tag, such as the tag's
- * name, legal data types, and mnemonic names for some or all of ts
+ * name, legal data types, and mnemonic names for some or all of its
  * data values.
  *
  * @since 9
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/spi/ServiceRegistry.java b/jdk/src/java.desktop/share/classes/javax/imageio/spi/ServiceRegistry.java
index abe85a2..465f155 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/spi/ServiceRegistry.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/spi/ServiceRegistry.java
@@ -770,7 +770,12 @@
         poset.add(provider);
         if (provider instanceof RegisterableService) {
             RegisterableService rs = (RegisterableService)provider;
-            rs.onRegistration(registry, category);
+            try {
+                rs.onRegistration(registry, category);
+            } catch (Throwable t) {
+                System.err.println("Caught and handled this exception :");
+                t.printStackTrace();
+            }
         }
 
         return !present;
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageInputStream.java b/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageInputStream.java
index 09602f3..db8a52b 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageInputStream.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageInputStream.java
@@ -32,7 +32,7 @@
 
 /**
  * A seekable input stream interface for use by
- * {@code ImageReader}s.  Various input sources, such as
+ * {@code ImageReader}s. Various input sources, such as
  * {@code InputStream}s and {@code File}s,
  * as well as future fast I/O sources may be "wrapped" by a suitable
  * implementation of this interface for use by the Image I/O API.
@@ -469,7 +469,7 @@
      * then a {@code UTFDataFormatException} is thrown.
      *
      * <p> If end of file is encountered at any time during this
-     * entire process, then an {@code java.io.EOFException} is thrown.
+     * entire process, then a {@code java.io.EOFException} is thrown.
      *
      * <p> After every group has been converted to a character by this
      * process, the characters are gathered, in the same order in
@@ -499,7 +499,7 @@
     /**
      * Reads {@code len} bytes from the stream, and stores them
      * into {@code b} starting at index {@code off}.
-     * If the end of the stream is reached, an {@code java.io.EOFException}
+     * If the end of the stream is reached, a {@code java.io.EOFException}
      * will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
@@ -523,7 +523,7 @@
     /**
      * Reads {@code b.length} bytes from the stream, and stores them
      * into {@code b} starting at index {@code 0}.
-     * If the end of the stream is reached, an {@code java.io.EOFException}
+     * If the end of the stream is reached, a {@code java.io.EOFException}
      * will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
@@ -543,8 +543,8 @@
      * Reads {@code len} shorts (signed 16-bit integers) from the
      * stream according to the current byte order, and
      * stores them into {@code s} starting at index
-     * {@code off}.  If the end of the stream is reached, an
-     * {@code java.io.EOFException} will be thrown.
+     * {@code off}.  If the end of the stream is reached,
+     * a {@code java.io.EOFException} will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
      * the read occurs.
@@ -568,8 +568,8 @@
      * Reads {@code len} chars (unsigned 16-bit integers) from the
      * stream according to the current byte order, and
      * stores them into {@code c} starting at index
-     * {@code off}.  If the end of the stream is reached, an
-     * {@code java.io.EOFException} will be thrown.
+     * {@code off}.  If the end of the stream is reached,
+     * a {@code java.io.EOFException} will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
      * the read occurs.
@@ -593,8 +593,8 @@
      * Reads {@code len} ints (signed 32-bit integers) from the
      * stream according to the current byte order, and
      * stores them into {@code i} starting at index
-     * {@code off}.  If the end of the stream is reached, an
-     * {@code java.io.EOFException} will be thrown.
+     * {@code off}.  If the end of the stream is reached,
+     * a {@code java.io.EOFException} will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
      * the read occurs.
@@ -618,8 +618,8 @@
      * Reads {@code len} longs (signed 64-bit integers) from the
      * stream according to the current byte order, and
      * stores them into {@code l} starting at index
-     * {@code off}.  If the end of the stream is reached, an
-     * {@code java.io.EOFException} will be thrown.
+     * {@code off}.  If the end of the stream is reached,
+     * a {@code java.io.EOFException} will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
      * the read occurs.
@@ -644,7 +644,7 @@
      * floats) from the stream according to the current byte order,
      * and stores them into {@code f} starting at
      * index {@code off}.  If the end of the stream is reached,
-     * an {@code java.io.EOFException} will be thrown.
+     * a {@code java.io.EOFException} will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
      * the read occurs.
@@ -669,7 +669,7 @@
      * floats) from the stream according to the current byte order,
      * and stores them into {@code d} starting at
      * index {@code off}.  If the end of the stream is reached,
-     * an {@code java.io.EOFException} will be thrown.
+     * a {@code java.io.EOFException} will be thrown.
      *
      * <p> The bit offset within the stream is reset to zero before
      * the read occurs.
@@ -781,7 +781,7 @@
      * byte order is being used (i.e., {@code getByteOrder() == false}).
      *
      * <p> If the end of the stream is encountered before all the bits
-     * have been read, an {@code java.io.EOFException} is thrown.
+     * have been read, a {@code java.io.EOFException} is thrown.
      *
      * @param numBits the number of bits to read, as an {@code int}
      * between 0 and 64, inclusive.
@@ -848,8 +848,8 @@
      * {@code pos} is smaller than the flushed position (as
      * returned by {@code getflushedPosition}).
      *
-     * <p> It is legal to seek past the end of the file; an
-     * {@code java.io.EOFException} will be thrown only if a read is
+     * <p> It is legal to seek past the end of the file;
+     * a {@code java.io.EOFException} will be thrown only if a read is
      * performed.
      *
      * @param pos a {@code long} containing the desired file
diff --git a/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageOutputStream.java b/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageOutputStream.java
index 37375c5..2067f42 100644
--- a/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageOutputStream.java
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/stream/ImageOutputStream.java
@@ -44,7 +44,7 @@
  * a non-zero bit offset before a byte-aligned read.  When reading bytes,
  * any bit offset is set to 0 before the read; when writing bytes, a
  * non-zero bit offset causes the remaining bits in the byte to be written
- * as 0s.  The byte-aligned write then starts at the next byte position.
+ * as 0s. The byte-aligned write then starts at the next byte position.
  *
  * @see ImageInputStream
  *
@@ -290,7 +290,7 @@
     /**
      * Writes a {@code double} value, which is comprised of four
      * bytes, to the output stream. It does this as if it first
-     * converts this {@code double} value to an {@code long}
+     * converts this {@code double} value to a {@code long}
      * in exactly the manner of the
      * {@code Double.doubleToLongBits} method and then writes the
      * long value in exactly the manner of the {@code writeLong}
diff --git a/jdk/src/java.desktop/share/classes/javax/print/ServiceUI.java b/jdk/src/java.desktop/share/classes/javax/print/ServiceUI.java
index fede6e1..82566e9 100644
--- a/jdk/src/java.desktop/share/classes/javax/print/ServiceUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/print/ServiceUI.java
@@ -134,7 +134,9 @@
      *
      * @param gc used to select screen. null means primary or default screen.
      * @param x location of dialog including border in screen coordinates
+     * relative to the origin of {@code gc}.
      * @param y location of dialog including border in screen coordinates
+     * relative to the origin of {@code gc}.
      * @param services to be browsable, must be non-null.
      * @param defaultService initial PrintService to display.
      * @param flavor the flavor to be printed, or null.
diff --git a/jdk/src/java.desktop/share/classes/javax/print/package.html b/jdk/src/java.desktop/share/classes/javax/print/package.html
index 2ef9578..e306ac6 100644
--- a/jdk/src/java.desktop/share/classes/javax/print/package.html
+++ b/jdk/src/java.desktop/share/classes/javax/print/package.html
@@ -122,7 +122,7 @@
 PrintRequestAttributeSet aset = 
 	new HashPrintRequestAttributeSet();
 aset.add(new Copies(5));
-aset.add(MediaSize.A4);
+aset.add(MediaSizeName.ISO_A4);
 aset.add(Sides.DUPLEX);
 PrintService[] services = 
   PrintServiceLookup.lookupPrintServices(psInFormat, aset);
diff --git a/jdk/src/java.desktop/share/classes/javax/sound/midi/Sequence.java b/jdk/src/java.desktop/share/classes/javax/sound/midi/Sequence.java
index 3dd0ca5..b6b035b 100644
--- a/jdk/src/java.desktop/share/classes/javax/sound/midi/Sequence.java
+++ b/jdk/src/java.desktop/share/classes/javax/sound/midi/Sequence.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -266,11 +266,7 @@
      * @see #getTracks
      */
     public boolean deleteTrack(Track track) {
-
-        synchronized(tracks) {
-
-            return tracks.removeElement(track);
-        }
+        return tracks.removeElement(track);
     }
 
     /**
@@ -282,8 +278,8 @@
      * @see #deleteTrack
      */
     public Track[] getTracks() {
-
-        return tracks.toArray(new Track[tracks.size()]);
+        // Creation of the non-empty array will be synchronized inside toArray()
+        return tracks.toArray(new Track[0]);
     }
 
     /**
diff --git a/jdk/src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java b/jdk/src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java
index 39264aa..5728d62 100644
--- a/jdk/src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java
+++ b/jdk/src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java
@@ -633,7 +633,7 @@
          * {@code String} is the same name that was passed to the constructor.
          * For the predefined encodings, the name is similar to the encoding's
          * variable (field) name. For example, {@code PCM_SIGNED.toString()}
-         * returns the name "pcm_signed".
+         * returns the name "PCM_SIGNED".
          *
          * @return the encoding name
          */
diff --git a/jdk/src/java.desktop/share/classes/javax/sound/sampled/EnumControl.java b/jdk/src/java.desktop/share/classes/javax/sound/sampled/EnumControl.java
index c029f22..cdbb5f7 100644
--- a/jdk/src/java.desktop/share/classes/javax/sound/sampled/EnumControl.java
+++ b/jdk/src/java.desktop/share/classes/javax/sound/sampled/EnumControl.java
@@ -26,8 +26,8 @@
 package javax.sound.sampled;
 
 /**
- * A {@code EnumControl} provides control over a set of discrete possible values
- * , each represented by an object. In a graphical user interface, such a
+ * An {@code EnumControl} provides control over a set of discrete possible
+ * values, each represented by an object. In a graphical user interface, such a
  * control might be represented by a set of buttons, each of which chooses one
  * value or setting. For example, a reverb control might provide several preset
  * reverberation settings, instead of providing continuously adjustable
diff --git a/jdk/src/java.desktop/share/classes/javax/sound/sampled/UnsupportedAudioFileException.java b/jdk/src/java.desktop/share/classes/javax/sound/sampled/UnsupportedAudioFileException.java
index 31d6816..b58b49e 100644
--- a/jdk/src/java.desktop/share/classes/javax/sound/sampled/UnsupportedAudioFileException.java
+++ b/jdk/src/java.desktop/share/classes/javax/sound/sampled/UnsupportedAudioFileException.java
@@ -38,16 +38,16 @@
     private static final long serialVersionUID = -139127412623160368L;
 
     /**
-     * Constructs a {@code UnsupportedAudioFileException} that has {@code null}
-     * as its error detail message.
+     * Constructs an {@code UnsupportedAudioFileException} that has
+     * {@code null} as its error detail message.
      */
     public UnsupportedAudioFileException() {
         super();
     }
 
     /**
-     * Constructs a {@code UnsupportedAudioFileException} that has the specified
-     * detail message.
+     * Constructs an {@code UnsupportedAudioFileException} that has the
+     * specified detail message.
      *
      * @param  message a string containing the error detail message
      */
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/BorderFactory.java b/jdk/src/java.desktop/share/classes/javax/swing/BorderFactory.java
index f1013e5..31b77cb 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/BorderFactory.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/BorderFactory.java
@@ -52,7 +52,7 @@
 
 //// LineBorder ///////////////////////////////////////////////////////////////
     /**
-     * Creates a line border withe the specified color.
+     * Creates a line border with the specified color.
      *
      * @param color  a <code>Color</code> to use for the line
      * @return the <code>Border</code> object
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/GroupLayout.java b/jdk/src/java.desktop/share/classes/javax/swing/GroupLayout.java
index 40ead7d..65fc010 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/GroupLayout.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/GroupLayout.java
@@ -718,10 +718,10 @@
      * <p>
      * Linked {@code Component}s are not be resizable.
      *
-     * @param components the {@code Component}s that are to have the same size
      * @param axis the axis to link the size along; one of
      *             {@code SwingConstants.HORIZONTAL} or
-     *             {@code SwingConstans.VERTICAL}
+     *             {@code SwingConstants.VERTICAL}
+     * @param components the {@code Component}s that are to have the same size
      * @throws IllegalArgumentException if {@code components} is
      *         {@code null}, or contains {@code null}; or {@code axis}
      *          is not {@code SwingConstants.HORIZONTAL} or
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/InputVerifier.java b/jdk/src/java.desktop/share/classes/javax/swing/InputVerifier.java
index 111015e..bcc160a 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/InputVerifier.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/InputVerifier.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,108 +28,151 @@
 import java.util.*;
 
 /**
- * The purpose of this class is to help clients support smooth focus
- * navigation through GUIs with text fields. Such GUIs often need
- * to ensure that the text entered by the user is valid (for example,
- * that it's in
- * the proper format) before allowing the user to navigate out of
- * the text field. To do this, clients create a subclass of
- * <code>InputVerifier</code> and, using <code>JComponent</code>'s
- * <code>setInputVerifier</code> method,
- * attach an instance of their subclass to the <code>JComponent</code> whose input they
- * want to validate. Before focus is transfered to another Swing component
- * that requests it, the input verifier's <code>shouldYieldFocus</code> method is
- * called.  Focus is transfered only if that method returns <code>true</code>.
+ * This class provides the validation mechanism for Swing components. GUIs often
+ * need to ensure that the components are in a valid state before allowing the
+ * user to navigate the input focus. To do this, clients create a subclass of
+ * {@code InputVerifier} and, using {@code JComponent}'s
+ * {@code setInputVerifier} method, attach an instance of their subclass to
+ * the {@code JComponent} which is the source of the focus transfer operation.
+ * The {@code InputVerifier} also provides the possibility to validate against
+ * the target of the focus transfer which may reject the focus.
+ * Before focus is transferred from the source Swing component to the target
+ * Swing component, the input verifier's
+ * {@code shouldYieldFocus(source, target)} method is called. Focus is
+ * transferred only if that method returns
+ * {@code true}.
  * <p>
  * The following example has two text fields, with the first one expecting
- * the string "pass" to be entered by the user. If that string is entered in
- * the first text field, then the user can advance to the second text field
- * either by clicking in it or by pressing TAB. However, if another string
- * is entered in the first text field, then the user will be unable to
+ * the string "pass" to be entered by the user. If either that string is entered
+ * in the first text field or the second text field contains "accept" string,
+ * then the user can advance focus to the second text field by clicking in it or
+ * by pressing TAB.
+ * However, if another string is entered in the first text field and the second
+ * text field does not contain "accept", then the user will be unable to
  * transfer focus to the second text field.
  *
  * <pre>
  * import java.awt.*;
- * import java.util.*;
- * import java.awt.event.*;
  * import javax.swing.*;
  *
  * // This program demonstrates the use of the Swing InputVerifier class.
  * // It creates two text fields; the first of the text fields expects the
- * // string "pass" as input, and will allow focus to advance out of it
- * // only after that string is typed in by the user.
+ * // string "pass" as input, and will allow focus to advance to the second text
+ * // field if either that string is typed in by the user or the second
+ * // field contains "accept" string.
  *
  * public class VerifierTest extends JFrame {
+ *
  *     public VerifierTest() {
- *         JTextField tf1 = new JTextField ("Type \"pass\" here");
- *         getContentPane().add (tf1, BorderLayout.NORTH);
- *         tf1.setInputVerifier(new PassVerifier());
+ *         JTextField field1 = new JTextField("Type \"pass\" here");
+ *         JTextField field2 = new JTextField("or \"accept\" here");
+ *         getContentPane().add(field1, BorderLayout.NORTH);
+ *         getContentPane().add(field2, BorderLayout.SOUTH);
  *
- *         JTextField tf2 = new JTextField ("TextField2");
- *         getContentPane().add (tf2, BorderLayout.SOUTH);
- *
- *         WindowListener l = new WindowAdapter() {
- *             public void windowClosing(WindowEvent e) {
- *                 System.exit(0);
+ *         field.setInputVerifier(new InputVerifier() {
+ *             public boolean verify(JComponent input) {
+ *                return "pass".equals(((JTextField) input).getText());
  *             }
- *         };
- *         addWindowListener(l);
- *     }
  *
- *     class PassVerifier extends InputVerifier {
- *         public boolean verify(JComponent input) {
- *             JTextField tf = (JTextField) input;
- *             return "pass".equals(tf.getText());
- *         }
+ *             public boolean verifyTarget(JComponent input) {
+ *                 return "accept".equals(((JTextField) input).getText());
+ *             }
+ *
+ *             public boolean shouldYieldFocus(JComponent source,
+ *                                                          JComponent target) {
+ *                 return verify(source) || verifyTarget(target);
+ *             }
+ *         });
+ *
+ *         pack();
+ *         setVisible(true);
  *     }
  *
  *     public static void main(String[] args) {
- *         Frame f = new VerifierTest();
- *         f.pack();
- *         f.setVisible(true);
+ *         SwingUtilities.invokeLater(VerifierTest::new);
  *     }
  * }
  * </pre>
  *
- *  @since 1.3
+ * @since 1.3
  */
-
-
 public abstract class InputVerifier {
 
-  /**
-   * Checks whether the JComponent's input is valid. This method should
-   * have no side effects. It returns a boolean indicating the status
-   * of the argument's input.
-   *
-   * @param input the JComponent to verify
-   * @return <code>true</code> when valid, <code>false</code> when invalid
-   * @see JComponent#setInputVerifier
-   * @see JComponent#getInputVerifier
-   *
-   */
+    /**
+     * Checks whether the JComponent's input is valid. This method should
+     * have no side effects. It returns a boolean indicating the status
+     * of the argument's input.
+     *
+     * @param input the JComponent to verify
+     * @return {@code true} when valid, {@code false} when invalid
+     * @see JComponent#setInputVerifier
+     * @see JComponent#getInputVerifier
+     */
+    public abstract boolean verify(JComponent input);
 
-  public abstract boolean verify(JComponent input);
+    /**
+     * Calls {@code verify(input)} to ensure that the input is valid.
+     * This method can have side effects. In particular, this method
+     * is called when the user attempts to advance focus out of the
+     * argument component into another Swing component in this window.
+     * If this method returns {@code true}, then the focus is transferred
+     * normally; if it returns {@code false}, then the focus remains in
+     * the argument component.
+     *
+     * @param input the JComponent to verify
+     * @return {@code true} when valid, {@code false} when invalid
+     * @see JComponent#setInputVerifier
+     * @see JComponent#getInputVerifier
+     *
+     * @deprecated use {@link #shouldYieldFocus(JComponent, JComponent)}
+     * instead.
+     */
+    @Deprecated(since = "9")
+    public boolean shouldYieldFocus(JComponent input) {
+        return verify(input);
+    }
 
+    /**
+     * Checks whether the target JComponent that will be receiving the focus
+     * is ready to accept it. This method should be over-ridden only if it is
+     * necessary to validate the target of the focus transfer.
+     * This method should have no side effects. It returns a boolean
+     * indicating the status of the argument's input.
+     *
+     * @implSpec By default this method returns {@code true}.
+     *
+     * @param target the target JComponent to verify
+     * @return {@code true} when valid, {@code false} when invalid
+     * @see JComponent#setInputVerifier
+     * @see JComponent#getInputVerifier
+     * @since 9
+     */
+    public boolean verifyTarget(JComponent target) {
+        return true;
+    }
 
-  /**
-   * Calls <code>verify(input)</code> to ensure that the input is valid.
-   * This method can have side effects. In particular, this method
-   * is called when the user attempts to advance focus out of the
-   * argument component into another Swing component in this window.
-   * If this method returns <code>true</code>, then the focus is transfered
-   * normally; if it returns <code>false</code>, then the focus remains in
-   * the argument component.
-   *
-   * @param input the JComponent to verify
-   * @return <code>true</code> when valid, <code>false</code> when invalid
-   * @see JComponent#setInputVerifier
-   * @see JComponent#getInputVerifier
-   *
-   */
-
-  public boolean shouldYieldFocus(JComponent input) {
-    return verify(input);
-  }
-
+    /**
+     * Is called by Swing if this {@code InputVerifier} is assigned to the
+     * {@code source} Swing component to check whether the requested focus
+     * transfer from the {@code source} to {@code target} is allowed.
+     * This method can have side effects.
+     * If this method returns {@code true}, then the focus is transferred
+     * normally; if it returns {@code false}, then the focus remains in
+     * the first argument component.
+     *
+     * @implSpec The basic implementation of this method returns the conjunction
+     * of results obtained from {@code verify(input)} and
+     * {@code verifyTarget(input)} to ensure that both the source and the target
+     * components are in valid state.
+     *
+     * @param source the source JComponent of the focus transfer
+     * @param target the target JComponent of the focus transfer
+     * @return {@code true} when valid, {@code false} when invalid
+     * @see JComponent#setInputVerifier
+     * @see JComponent#getInputVerifier
+     * @since 9
+     */
+    public boolean shouldYieldFocus(JComponent source, JComponent target) {
+        return shouldYieldFocus(source) && verifyTarget(target);
+    }
 }
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/JComponent.java b/jdk/src/java.desktop/share/classes/javax/swing/JComponent.java
index 56d1df0..f6c3486 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/JComponent.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JComponent.java
@@ -3587,7 +3587,7 @@
                     SwingUtilities.appContextPut(INPUT_VERIFIER_SOURCE_KEY,
                                                  jFocusOwner);
                     try {
-                        return iv.shouldYieldFocus(jFocusOwner);
+                        return iv.shouldYieldFocus(jFocusOwner, target);
                     } finally {
                         if (currentSource != null) {
                             // We're already in the InputVerifier for
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/JEditorPane.java b/jdk/src/java.desktop/share/classes/javax/swing/JEditorPane.java
index 3211d57..1829f16 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/JEditorPane.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JEditorPane.java
@@ -559,10 +559,9 @@
             in = new BufferedInputStream(in, READ_LIMIT);
             in.mark(READ_LIMIT);
         }
-        try {
-            String charset = (String) getClientProperty("charset");
-            Reader r = (charset != null) ? new InputStreamReader(in, charset) :
-                new InputStreamReader(in);
+        String charset = (String) getClientProperty("charset");
+        try(Reader r = (charset != null) ? new InputStreamReader(in, charset) :
+                new InputStreamReader(in)) {
             kit.read(r, doc, 0);
         } catch (BadLocationException e) {
             throw new IOException(e.getMessage());
@@ -1186,7 +1185,7 @@
         if (k == null) {
             // try to dynamically load the support
             String classname = getKitTypeRegistry().get(type);
-            ClassLoader loader = getKitLoaderRegistry().get(type);
+            ClassLoader loader = getKitLoaderRegistry().get(type).orElse(null);
             try {
                 Class<?> c;
                 if (loader != null) {
@@ -1243,7 +1242,7 @@
      */
     public static void registerEditorKitForContentType(String type, String classname, ClassLoader loader) {
         getKitTypeRegistry().put(type, classname);
-        getKitLoaderRegistry().put(type, loader);
+        getKitLoaderRegistry().put(type, Optional.ofNullable(loader));
         getKitRegisty().remove(type);
     }
 
@@ -1268,10 +1267,10 @@
         return tmp;
     }
 
-    private static Hashtable<String, ClassLoader> getKitLoaderRegistry() {
+    private static Hashtable<String, Optional<ClassLoader>> getKitLoaderRegistry() {
         loadDefaultKitsIfNecessary();
         @SuppressWarnings("unchecked")
-        Hashtable<String, ClassLoader> tmp =
+        Hashtable<String,  Optional<ClassLoader>> tmp =
             (Hashtable)SwingUtilities.appContextGet(kitLoaderRegistryKey);
         return tmp;
     }
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/LookAndFeel.java b/jdk/src/java.desktop/share/classes/javax/swing/LookAndFeel.java
index a61c784..bd8ea83 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/LookAndFeel.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/LookAndFeel.java
@@ -346,7 +346,7 @@
     }
 
     /**
-     * Creates a {@code InputMapUIResource} from <code>keys</code>. This is
+     * Creates an {@code InputMapUIResource} from <code>keys</code>. This is
      * a convenience method for creating a new {@code InputMapUIResource},
      * invoking {@code loadKeyBindings(map, keys)}, and returning the
      * {@code InputMapUIResource}.
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/PopupFactory.java b/jdk/src/java.desktop/share/classes/javax/swing/PopupFactory.java
index 3a5f91a..e3d8006 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/PopupFactory.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/PopupFactory.java
@@ -175,12 +175,43 @@
      * @return Popup containing Contents
      */
     public Popup getPopup(Component owner, Component contents,
-                          int x, int y) throws IllegalArgumentException {
+            int x, int y) throws IllegalArgumentException {
+        return getPopup(owner, contents, x, y, false);
+    }
+
+    /**
+     * Creates a {@code Popup} for the Component {@code owner}
+     * containing the Component {@code contents}.
+     * The window containing the component {@code owner}
+     * will be used as the parent window. A null {@code owner} implies there
+     * is no valid parent. {@code x} and {@code y} specify the preferred
+     * initial location to place the {@code Popup} at. Based on screen size,
+     * or other parameters, the {@code Popup} may not display at {@code x} and
+     * {@code y}. {@code isHeavyWeightPopup} specifies if the {@code Popup}
+     * will be heavyweight. Passing {@code true} will force the {@code Popup}
+     * type to be heavyweight, otherwise {@code Popup} type will be selected by
+     * {@code Popup} factory. Lightweight {@code Popup} windows are more
+     * efficient than heavyweight (native peer) windows, but lightweight
+     * and heavyweight components do not mix well in a GUI.
+     * This method is intended to be used only by PopupFactory sub-classes.
+     * @param owner Component mouse coordinates are relative to, may be null
+     * @param contents Contents of the Popup
+     * @param x Initial x screen coordinate
+     * @param y Initial y screen coordinate
+     * @param isHeavyWeightPopup true if Popup should be heavy weight,
+     * otherwise popup type will be selected by popup factory.
+     * @throws IllegalArgumentException if contents is null
+     * @return Popup containing Contents
+     */
+    protected Popup getPopup(Component owner, Component contents, int x, int y,
+            boolean isHeavyWeightPopup) throws IllegalArgumentException {
         if (contents == null) {
             throw new IllegalArgumentException(
-                          "Popup.getPopup must be passed non-null contents");
+                    "Popup.getPopup must be passed non-null contents");
         }
-
+        if (isHeavyWeightPopup) {
+            return getPopup(owner, contents, x, y, HEAVY_WEIGHT_POPUP);
+        }
         int popupType = getPopupType(owner, contents, x, y);
         Popup popup = getPopup(owner, contents, x, y, popupType);
 
@@ -987,3 +1018,4 @@
         }
     }
 }
+
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/UIManager.java b/jdk/src/java.desktop/share/classes/javax/swing/UIManager.java
index deca83e..caadac4 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/UIManager.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/UIManager.java
@@ -59,6 +59,7 @@
 import sun.swing.SwingUtilities2;
 import java.lang.reflect.Method;
 import java.util.HashMap;
+import java.util.Objects;
 import sun.awt.AppContext;
 import sun.awt.AWTAccessor;
 
@@ -495,6 +496,48 @@
         return getLAFState().lookAndFeel;
     }
 
+    /**
+     * Creates a supported built-in Java {@code LookAndFeel} specified
+     * by the given {@code L&F name} name.
+     *
+     * @param name a {@code String} specifying the name of the built-in
+     *             look and feel
+     * @return the built-in {@code LookAndFeel} object
+     * @throws NullPointerException if {@code name} is {@code null}
+     * @throws UnsupportedLookAndFeelException if the built-in Java {@code L&F}
+     *         is not found for the given name or it is not supported by the
+     *         underlying platform
+     *
+     * @see LookAndFeel#getName
+     * @see LookAndFeel#isSupportedLookAndFeel
+     *
+     * @since 9
+     */
+    public static LookAndFeel createLookAndFeel(String name)
+            throws UnsupportedLookAndFeelException {
+        Objects.requireNonNull(name);
+
+        if ("GTK look and feel".equals(name)) {
+            name = "GTK+";
+        }
+
+        try {
+            for (LookAndFeelInfo info : installedLAFs) {
+                if (info.getName().equals(name)) {
+                    Class<?> cls = Class.forName(UIManager.class.getModule(),
+                                                 info.getClassName());
+                    LookAndFeel laf = (LookAndFeel) cls.newInstance();
+                    if (!laf.isSupportedLookAndFeel()) {
+                        break;
+                    }
+                    return laf;
+                }
+            }
+        } catch (InstantiationException | IllegalAccessException ignore) {
+        }
+
+        throw new UnsupportedLookAndFeelException(name);
+    }
 
     /**
      * Sets the current look and feel to {@code newLookAndFeel}.
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/event/AncestorListener.java b/jdk/src/java.desktop/share/classes/javax/swing/event/AncestorListener.java
index 30dd3cf..eba1f45 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/event/AncestorListener.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/event/AncestorListener.java
@@ -57,7 +57,7 @@
     /**
      * Called when the source or one of its ancestors is made invisible
      * either by setVisible(false) being called or by its being
-     * remove from the component hierarchy.  The method is only called
+     * removed from the component hierarchy.  The method is only called
      * if the source has actually become invisible.  For this to be true
      * at least one of its parents must by invisible or it is not in
      * a hierarchy rooted at a Window
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/BorderUIResource.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/BorderUIResource.java
index 52abe95..0fa90f6 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/BorderUIResource.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/BorderUIResource.java
@@ -160,7 +160,7 @@
     public static class EmptyBorderUIResource extends EmptyBorder implements UIResource {
 
         /**
-         * Constructs a {@code EmptyBorderUIResource}.
+         * Constructs an {@code EmptyBorderUIResource}.
          * @param top the top inset of the border
          * @param left the left inset of the border
          * @param bottom the bottom inset of the border
@@ -170,7 +170,7 @@
             super(top, left, bottom, right);
         }
         /**
-         * Constructs a {@code EmptyBorderUIResource}.
+         * Constructs an {@code EmptyBorderUIResource}.
          * @param insets the insets of the border
          */
         @ConstructorProperties({"borderInsets"})
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java
index e08c8a3..b7f2ff6 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -150,8 +150,6 @@
      */
     protected KeyListener popupKeyListener;
 
-    private MouseWheelListener mouseWheelListener;
-
     // This is used for knowing when to cache the minimum preferred size.
     // If the data in the list changes, the cached value get marked for recalc.
     // Added to the current JComboBox model
@@ -415,10 +413,6 @@
                 comboBox.getModel().addListDataListener( listDataListener );
             }
         }
-
-        if ((mouseWheelListener = createMouseWheelListener()) != null) {
-            comboBox.addMouseWheelListener(mouseWheelListener);
-        }
     }
 
     /**
@@ -465,9 +459,6 @@
                 comboBox.getModel().removeListDataListener( listDataListener );
             }
         }
-        if (mouseWheelListener != null) {
-            comboBox.removeMouseWheelListener(mouseWheelListener);
-        }
     }
 
     /**
@@ -581,10 +572,6 @@
         return handler;
     }
 
-    private MouseWheelListener createMouseWheelListener() {
-        return getHandler();
-    }
-
     //
     // end UI Initialization
     //======================
@@ -1737,8 +1724,7 @@
     //
     private class Handler implements ActionListener, FocusListener,
                                      KeyListener, LayoutManager,
-                                     ListDataListener, PropertyChangeListener,
-                                     MouseWheelListener {
+                                     ListDataListener, PropertyChangeListener {
         //
         // PropertyChangeListener
         //
@@ -2026,10 +2012,6 @@
                 }
             }
         }
-
-        public void mouseWheelMoved(MouseWheelEvent e) {
-            e.consume();
-        }
    }
 
     class DefaultKeySelectionManager implements JComboBox.KeySelectionManager, UIResource {
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboPopup.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboPopup.java
index 3b3d33c..63a54b7 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboPopup.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboPopup.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -379,17 +379,26 @@
     // PopupMenuListeners.
 
     protected void firePopupMenuWillBecomeVisible() {
+        if (scrollerMouseWheelListener != null) {
+            comboBox.addMouseWheelListener(scrollerMouseWheelListener);
+        }
         super.firePopupMenuWillBecomeVisible();
         // comboBox.firePopupMenuWillBecomeVisible() is called from BasicComboPopup.show() method
         // to let the user change the popup menu from the PopupMenuListener.popupMenuWillBecomeVisible()
     }
 
     protected void firePopupMenuWillBecomeInvisible() {
+        if (scrollerMouseWheelListener != null) {
+            comboBox.removeMouseWheelListener(scrollerMouseWheelListener);
+        }
         super.firePopupMenuWillBecomeInvisible();
         comboBox.firePopupMenuWillBecomeInvisible();
     }
 
     protected void firePopupMenuCanceled() {
+        if (scrollerMouseWheelListener != null) {
+            comboBox.removeMouseWheelListener(scrollerMouseWheelListener);
+        }
         super.firePopupMenuCanceled();
         comboBox.firePopupMenuCanceled();
     }
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java
index 6125786..d58a528 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicFileChooserUI.java
@@ -1050,17 +1050,6 @@
             FileSystemView fs = chooser.getFileSystemView();
             File dir = chooser.getCurrentDirectory();
 
-            if (filename != null) {
-                // Remove whitespaces from end of filename
-                int i = filename.length() - 1;
-
-                while (i >=0 && filename.charAt(i) <= ' ') {
-                    i--;
-                }
-
-                filename = filename.substring(0, i + 1);
-            }
-
             if (filename == null || filename.length() == 0) {
                 // no file selected, multiple selection off, therefore cancel the approve action
                 resetGlobFilter();
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java
index 3fc1351..718fadc 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java
@@ -228,6 +228,15 @@
             arrowIcon instanceof UIResource) {
             arrowIcon = UIManager.getIcon(prefix + ".arrowIcon");
         }
+        updateCheckIcon();
+    }
+
+    /**
+     * Updates check Icon based on column layout
+     */
+    private void updateCheckIcon() {
+        String prefix = getPropertyPrefix();
+
         if (checkIcon == null ||
             checkIcon instanceof UIResource) {
             checkIcon = UIManager.getIcon(prefix + ".checkIcon");
@@ -238,8 +247,8 @@
                     BasicGraphicsUtils.isLeftToRight(menuItem), menuItem);
             if (isColumnLayout) {
                 MenuItemCheckIconFactory iconFactory =
-                    (MenuItemCheckIconFactory) UIManager.get(prefix
-                        + ".checkIconFactory");
+                        (MenuItemCheckIconFactory) UIManager.get(prefix
+                                + ".checkIconFactory");
                 if (iconFactory != null
                         && MenuItemLayoutHelper.useCheckAndArrow(menuItem)
                         && iconFactory.isCompatible(checkIcon, prefix)) {
@@ -1090,6 +1099,8 @@
                 BasicHTML.updateRenderer(lbl, text);
             } else if (name  == "iconTextGap") {
                 defaultTextIconGap = ((Number)e.getNewValue()).intValue();
+            } else if (name == "horizontalTextPosition") {
+                updateCheckIcon();
             }
         }
     }
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicRootPaneUI.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicRootPaneUI.java
index 714a063..e42c25b 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicRootPaneUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicRootPaneUI.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -281,7 +281,7 @@
 
             if (sender instanceof JRootPane) {
                 JButton owner = ((JRootPane)sender).getDefaultButton();
-                return (owner != null && owner.getModel().isEnabled());
+                return (owner != null && owner.getModel().isEnabled() && owner.isShowing());
             }
             return true;
         }
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java
index fdab80f..bc901f7 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1212,7 +1212,7 @@
             scrollbar.repaint(r.x, r.y, r.width, r.height);
 
             trackHighlight = NO_HIGHLIGHT;
-            isDragging = false;
+            setDragging(false);
             offset = 0;
             scrollTimer.stop();
             useCachedValue = true;
@@ -1256,7 +1256,7 @@
                     offset = currentMouseX - getThumbBounds().x;
                     break;
                 }
-                isDragging = true;
+                setDragging(true);
                 return;
             }
             else if (getSupportsAbsolutePositioning() &&
@@ -1269,11 +1269,11 @@
                     offset = getThumbBounds().width / 2;
                     break;
                 }
-                isDragging = true;
+                setDragging(true);
                 setValueFrom(e);
                 return;
             }
-            isDragging = false;
+            setDragging(false);
 
             Dimension sbSize = scrollbar.getSize();
             direction = +1;
@@ -1636,6 +1636,12 @@
         }
     }
 
+    private void setDragging(boolean dragging) {
+        this.isDragging = dragging;
+        scrollbar.repaint(getThumbBounds());
+    }
+
+
     /** Property change handler */
     public class PropertyChangeHandler implements PropertyChangeListener
     {
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/plaf/synth/SynthScrollBarUI.java b/jdk/src/java.desktop/share/classes/javax/swing/plaf/synth/SynthScrollBarUI.java
index b93196a..b5da6f5 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/synth/SynthScrollBarUI.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/synth/SynthScrollBarUI.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -201,9 +201,12 @@
     }
 
     private int getComponentState(JComponent c, Region region) {
-        if (region == Region.SCROLL_BAR_THUMB && isThumbRollover() &&
-                                                 c.isEnabled()) {
-            return MOUSE_OVER;
+        if (region == Region.SCROLL_BAR_THUMB && c.isEnabled()) {
+            if (isDragging) {
+                return PRESSED;
+            } else if (isThumbRollover()) {
+                return MOUSE_OVER;
+            }
         }
         return SynthLookAndFeel.getComponentState(c);
     }
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/text/AbstractDocument.java b/jdk/src/java.desktop/share/classes/javax/swing/text/AbstractDocument.java
index 815aee0..5514ecb 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/text/AbstractDocument.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/text/AbstractDocument.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -702,6 +702,9 @@
         if ((str == null) || (str.length() == 0)) {
             return;
         }
+        if (offs > getLength()) {
+            throw new BadLocationException("Invalid insert", getLength());
+        }
         DocumentFilter filter = getDocumentFilter();
 
         writeLock();
diff --git a/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java b/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
index d178ae4..9aa36bf 100644
--- a/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
+++ b/jdk/src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
@@ -2084,57 +2084,69 @@
         while (true) {
             int i = 0;
             while (!insideComment && i < SCRIPT_END_TAG.length
-                       && (SCRIPT_END_TAG[i] == ch
-                           || SCRIPT_END_TAG_UPPER_CASE[i] == ch)) {
+                    && (SCRIPT_END_TAG[i] == ch
+                    || SCRIPT_END_TAG_UPPER_CASE[i] == ch)) {
                 charsToAdd[i] = (char) ch;
                 ch = readCh();
                 i++;
             }
             if (i == SCRIPT_END_TAG.length) {
-
-                /*  '</script>' tag detected */
-                /* Here, ch == the first character after </script> */
                 return;
-            } else {
-
-                /* To account for extra read()'s that happened */
-                for (int j = 0; j < i; j++) {
-                    addString(charsToAdd[j]);
-                }
-
-                switch (ch) {
-                case -1:
-                    error("eof.script");
-                    return;
-                case '\n':
-                    ln++;
-                    ch = readCh();
-                    lfCount++;
-                    addString('\n');
-                    break;
-                case '\r':
-                    ln++;
-                    if ((ch = readCh()) == '\n') {
-                        ch = readCh();
-                        crlfCount++;
-                    } else {
-                        crCount++;
-                    }
-                    addString('\n');
-                    break;
-                default:
-                    addString(ch);
-                    String str = new String(getChars(0, strpos));
-                    if (!insideComment && str.endsWith(START_COMMENT)) {
-                        insideComment = true;
-                    }
-                    if (insideComment && str.endsWith(END_COMMENT)) {
-                        insideComment = false;
-                    }
-                    ch = readCh();
-                    break;
-                } // switch
             }
+
+            if (!insideComment && i == 1 && charsToAdd[0] == START_COMMENT.charAt(0)) {
+                // it isn't end script tag, but may be it's start comment tag?
+                while (i < START_COMMENT.length()
+                        && START_COMMENT.charAt(i) == ch) {
+                    charsToAdd[i] = (char) ch;
+                    ch = readCh();
+                    i++;
+                }
+                if (i == START_COMMENT.length()) {
+                    insideComment = true;
+                }
+            }
+            if (insideComment) {
+                while (i < END_COMMENT.length()
+                        && END_COMMENT.charAt(i) == ch) {
+                    charsToAdd[i] = (char) ch;
+                    ch = readCh();
+                    i++;
+                }
+                if (i == END_COMMENT.length()) {
+                    insideComment = false;
+                }
+            }
+
+            /* To account for extra read()'s that happened */
+            for (int j = 0; j < i; j++) {
+                addString(charsToAdd[j]);
+            }
+            switch (ch) {
+            case -1:
+                error("eof.script");
+                return;
+            case '\n':
+                ln++;
+                ch = readCh();
+                lfCount++;
+                addString('\n');
+                break;
+            case '\r':
+                ln++;
+                if ((ch = readCh()) == '\n') {
+                    ch = readCh();
+                    crlfCount++;
+                } else {
+                    crCount++;
+                }
+                addString('\n');
+                break;
+            default:
+                addString(ch);
+                ch = readCh();
+                break;
+            } // switch
         } // while
     }
 
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_de.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_de.java
index cab08eb..a89a8a0 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_de.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_de.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,7 @@
             {"appletviewer.menuitem.stop", "Stoppen"},
             {"appletviewer.menuitem.save", "Speichern..."},
             {"appletviewer.menuitem.start", "Starten..."},
-            {"appletviewer.menuitem.clone", "Clonen..."},
+            {"appletviewer.menuitem.clone", "Klonen..."},
             {"appletviewer.menuitem.tag", "Tag..."},
             {"appletviewer.menuitem.info", "Informationen..."},
             {"appletviewer.menuitem.edit", "Bearbeiten"},
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "Warnung: F\u00FCr <embed>-Tag ist ein \"height\"-Attribut erforderlich."},
             {"appletviewer.parse.warning.embed.requireswidth", "Warnung: F\u00FCr <embed>-Tag ist ein \"width\"-Attribut erforderlich."},
             {"appletviewer.parse.warning.appnotLongersupported", "Warnung: <app>-Tag wird nicht mehr unterst\u00FCtzt. Verwenden Sie stattdessen <applet>:"},
-            {"appletviewer.usage", "Verwendung: appletviewer <Optionen> url(s)\n\nwobei die <Optionen> Folgendes umfassen:\n  -debug                  Applet Viewer im Java-Debugger starten\n  -encoding <Codierung>    Zeichencodierung f\u00FCr HTML-Dateien angeben\n  -J<Laufzeitkennzeichen>        Argument an den Java-Interpreter \u00FCbergeben\n\nDie Option \"-J\" ist nicht standardm\u00E4\u00DFig und kann ohne vorherige Ank\u00FCndigung ge\u00E4ndert werden."},
+            {"appletviewer.deprecated", "AppletViewer ist veraltet."},
+            {"appletviewer.usage", "Verwendung: appletviewer <Optionen> url(s)\n\nwobei die <Optionen> Folgendes umfassen:\n  -encoding <Codierung>    Zeichencodierung f\u00FCr HTML-Dateien angeben\n  -J<Laufzeitkennzeichen>        Argument an den Java-Interpreter \u00FCbergeben\n\nDie Option \"-J\" ist nicht standardm\u00E4\u00DFig und kann ohne vorherige Ank\u00FCndigung ge\u00E4ndert werden."},
             {"appletviewer.main.err.unsupportedopt", "Nicht unterst\u00FCtzte Option: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "Unbekanntes Argument: {0}"},
             {"appletviewer.main.err.dupoption", "Doppelte Verwendung von Option: {0}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_es.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_es.java
index d282fd9..579e67a 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_es.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_es.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "Advertencia: la etiqueta <embed> requiere el atributo height."},
             {"appletviewer.parse.warning.embed.requireswidth", "Advertencia: la etiqueta <embed> requiere el atributo width."},
             {"appletviewer.parse.warning.appnotLongersupported", "Advertencia: la etiqueta <app> ya no est\u00E1 soportada, utilice <applet> en su lugar:"},
-            {"appletviewer.usage", "Sintaxis: appletviewer <opciones> url(s)\n\ndonde <opciones> incluye:\n  -debug                  Iniciar el visor de applet en el depurador Java\n  -encoding <codificaci\u00F3n>    Especificar la codificaci\u00F3n de caracteres utilizada por los archivos HTML\n  -J<indicador de tiempo de ejecuci\u00F3n>        Transferir argumento al int\u00E9rprete de Java\n\nLa opci\u00F3n -J es no est\u00E1ndar y est\u00E1 sujeta a cambios sin previo aviso."},
+            {"appletviewer.deprecated", "AppletViewer est\u00E1 anticuado."},
+            {"appletviewer.usage", "Sintaxis: appletviewer <opciones> url(s)\n\ndonde <opciones> incluye:\n  -encoding <codificaci\u00F3n>    Especificar la codificaci\u00F3n de caracteres utilizada por los archivos HTML\n  -J<indicador de tiempo de ejecuci\u00F3n>        Transferir argumento al int\u00E9rprete de Java\n\nLa opci\u00F3n -J es no est\u00E1ndar y est\u00E1 sujeta a cambios sin previo aviso."},
             {"appletviewer.main.err.unsupportedopt", "Opci\u00F3n no soportada: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "Argumento no reconocido: {0}"},
             {"appletviewer.main.err.dupoption", "Uso duplicado de la opci\u00F3n: {0}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_fr.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_fr.java
index cc6e257b..0c86e5a 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_fr.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_fr.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "Avertissement : la balise <embed> requiert un attribut de hauteur."},
             {"appletviewer.parse.warning.embed.requireswidth", "Avertissement : la balise <embed> requiert un attribut de largeur."},
             {"appletviewer.parse.warning.appnotLongersupported", "Avertissement : la balise <app> n'est plus prise en charge, utilisez <applet> \u00E0 la place :"},
-            {"appletviewer.usage", "Syntaxe : appletviewer <options> url(s)\n\no\u00F9 <options> inclut :\n  -debug                  D\u00E9marrer le visualiseur d'applets dans le d\u00E9bogueur Java\n  -encoding <encoding>    Indiquer l'encodage de caract\u00E8res utilis\u00E9 par les fichiers HTML\n  -J<runtime flag>        Transmettre l'argument \u00E0 l'interpr\u00E9teur Java\n\nL'option -J n'est pas standard et elle peut \u00EAtre modifi\u00E9e sans pr\u00E9avis."},
+            {"appletviewer.deprecated", "AppletViewer est en phase d'abandon."},
+            {"appletviewer.usage", "Syntaxe : appletviewer <options> url(s)\n\no\u00F9 <options> inclut :\n  -encoding <encoding>    Indiquer l'encodage de caract\u00E8res utilis\u00E9 par les fichiers HTML\n  -J<runtime flag>        Transmettre l'argument \u00E0 l'interpr\u00E9teur Java\n\nL'option -J n'est pas standard et elle peut \u00EAtre modifi\u00E9e sans pr\u00E9avis."},
             {"appletviewer.main.err.unsupportedopt", "Option non prise en charge : {0}"},
             {"appletviewer.main.err.unrecognizedarg", "Argument non reconnu : {0}"},
             {"appletviewer.main.err.dupoption", "Utilisation en double de l''option : {0}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_it.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_it.java
index 1e666a8..423b005 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_it.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_it.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "Avvertenza: la tag <embed> richiede un attributo height."},
             {"appletviewer.parse.warning.embed.requireswidth", "Avvertenza: la tag <embed> richiede un attributo width."},
             {"appletviewer.parse.warning.appnotLongersupported", "Avvertenza: la tag <app> non \u00E8 pi\u00F9 supportata. Utilizzare <applet>:"},
-            {"appletviewer.usage", "Uso: appletviewer <opzioni> url(s)\n\ndove <opzioni> includono:\n  -debug                  Avvia il visualizzatore applet nel debugger Java\n  -encoding <codifica>    Specifica la codifica dei caratteri utilizzata dai file HTML\n  -J<flag runtime>        Passa l'argomento all'interpreter Java\n\nL'opzione -J non \u00E8 standard ed \u00E8 soggetta a modifica senza preavviso."},
+            {"appletviewer.deprecated", "AppletViewer non pi\u00F9 valido."},
+            {"appletviewer.usage", "Uso: appletviewer <options> url(s)\n\ndove <options> includono:\n  -encoding <encoding>    Specifica la codifica dei caratteri utilizzata dai file HTML\n  -J<runtime flag>        Passa l'argomento all'interpreter Java\n\nL'opzione -J non \u00E8 standard ed \u00E8 soggetta a modifica senza preavviso."},
             {"appletviewer.main.err.unsupportedopt", "Opzione non supportata: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "Argomento non riconosciuto: {0}"},
             {"appletviewer.main.err.dupoption", "Uso duplicato dell''opzione: {0}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ja.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ja.java
index 6fde7ce..2c35c2e 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ja.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -57,9 +57,9 @@
             {"appletviewer.appletinfo.applet", "-- \u30A2\u30D7\u30EC\u30C3\u30C8\u60C5\u5831\u306A\u3057 --"},
             {"appletviewer.appletinfo.param", "-- \u30D1\u30E9\u30E1\u30FC\u30BF\u60C5\u5831\u306A\u3057 --"},
             {"appletviewer.appletinfo.textframe", "\u30A2\u30D7\u30EC\u30C3\u30C8\u60C5\u5831"},
-            {"appletviewer.appletprint.fail", "\u5370\u5237\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002"},
-            {"appletviewer.appletprint.finish", "\u5370\u5237\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F\u3002"},
-            {"appletviewer.appletprint.cancel", "\u5370\u5237\u304C\u4E2D\u6B62\u3055\u308C\u307E\u3057\u305F\u3002"},
+            {"appletviewer.appletprint.fail", "\u5370\u5237\u304C\u5931\u6557\u3057\u307E\u3057\u305F\u3002"},
+            {"appletviewer.appletprint.finish", "\u5370\u5237\u3092\u7D42\u4E86\u3057\u307E\u3057\u305F\u3002"},
+            {"appletviewer.appletprint.cancel", "\u5370\u5237\u304C\u53D6\u308A\u6D88\u3055\u308C\u307E\u3057\u305F\u3002"},
             {"appletviewer.appletencoding", "\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0: {0}"},
             {"appletviewer.parse.warning.requiresname", "\u8B66\u544A: <param name=... value=...>\u30BF\u30B0\u306Bname\u5C5E\u6027\u304C\u5FC5\u8981\u3067\u3059\u3002"},
             {"appletviewer.parse.warning.paramoutside", "\u8B66\u544A: <param>\u30BF\u30B0\u304C<applet> ... </applet>\u306E\u5916\u5074\u3067\u3059\u3002"},
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "\u8B66\u544A: <embed>\u30BF\u30B0\u306Bheight\u5C5E\u6027\u304C\u5FC5\u8981\u3067\u3059\u3002"},
             {"appletviewer.parse.warning.embed.requireswidth", "\u8B66\u544A: <embed>\u30BF\u30B0\u306Bwidth\u5C5E\u6027\u304C\u5FC5\u8981\u3067\u3059\u3002"},
             {"appletviewer.parse.warning.appnotLongersupported", "\u8B66\u544A: <app>\u30BF\u30B0\u306F\u73FE\u5728\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u304B\u308F\u308A\u306B<applet>\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
-            {"appletviewer.usage", "\u4F7F\u7528\u65B9\u6CD5: appletviewer <options> url(s)\n\n<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059:\n  -debug                  Java\u30C7\u30D0\u30C3\u30AC\u3067\u30A2\u30D7\u30EC\u30C3\u30C8\u30FB\u30D3\u30E5\u30FC\u30A2\u3092\u958B\u59CB\u3059\u308B\n  -encoding <encoding>    HTML\u30D5\u30A1\u30A4\u30EB\u306B\u3088\u3063\u3066\u4F7F\u7528\u3055\u308C\u308B\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3059\u308B\n  -J<runtime flag>        \u5F15\u6570\u3092Java\u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u306B\u6E21\u3059\n\n-J\u306F\u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u3042\u308A\u3001\u4E88\u544A\u306A\u3057\u306B\u5909\u66F4\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002"},
+            {"appletviewer.deprecated", "AppletViewer\u306F\u975E\u63A8\u5968\u3067\u3059\u3002"},
+            {"appletviewer.usage", "\u4F7F\u7528\u65B9\u6CD5: appletviewer <options> url(s)\n\n<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059:\n  -encoding <encoding>    HTML\u30D5\u30A1\u30A4\u30EB\u306B\u3088\u3063\u3066\u4F7F\u7528\u3055\u308C\u308B\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3059\u308B\n  -J<runtime flag>        \u5F15\u6570\u3092Java\u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u306B\u6E21\u3059\n\n-J\u306F\u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u3042\u308A\u3001\u4E88\u544A\u306A\u3057\u306B\u5909\u66F4\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002"},
             {"appletviewer.main.err.unsupportedopt", "\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30AA\u30D7\u30B7\u30E7\u30F3: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "\u8A8D\u8B58\u3055\u308C\u306A\u3044\u5F15\u6570: {0}"},
             {"appletviewer.main.err.dupoption", "\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u4F7F\u7528\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: {0}"},
@@ -98,7 +99,7 @@
             {"appletioexception.loadclass.throw.notloaded", "\u30AF\u30E9\u30B9\u304C\u30ED\u30FC\u30C9\u3055\u308C\u307E\u305B\u3093: {0}"},
             {"appletclassloader.loadcode.verbose", "{1}\u3092\u53D6\u5F97\u3059\u308B\u305F\u3081\u306E{0}\u3078\u306E\u30B9\u30C8\u30EA\u30FC\u30E0\u3092\u958B\u304D\u307E\u3059"},
             {"appletclassloader.filenotfound", "{0}\u306E\u691C\u7D22\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},
-            {"appletclassloader.fileformat", "{0}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u30FB\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
+            {"appletclassloader.fileformat", "{0}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u5F62\u5F0F\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
             {"appletclassloader.fileioexception", "{0}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B\u5165\u51FA\u529B\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
             {"appletclassloader.fileexception", "{1}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B{0}\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
             {"appletclassloader.filedeath", "{1}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B{0}\u304C\u5F37\u5236\u7D42\u4E86\u3057\u307E\u3057\u305F"},
@@ -132,7 +133,7 @@
             {"appletpanel.notdisposed", "\u30ED\u30FC\u30C9: \u30A2\u30D7\u30EC\u30C3\u30C8\u304C\u7834\u68C4\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
             {"appletpanel.bail", "\u4E2D\u65AD\u6E08: \u7D42\u4E86\u3057\u3066\u3044\u307E\u3059\u3002"},
             {"appletpanel.filenotfound", "{0}\u306E\u691C\u7D22\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093"},
-            {"appletpanel.fileformat", "{0}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u30FB\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
+            {"appletpanel.fileformat", "{0}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B\u30D5\u30A1\u30A4\u30EB\u5F62\u5F0F\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
             {"appletpanel.fileioexception", "{0}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B\u5165\u51FA\u529B\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
             {"appletpanel.fileexception", "{1}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B{0}\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F"},
             {"appletpanel.filedeath", "{1}\u306E\u30ED\u30FC\u30C9\u4E2D\u306B{0}\u304C\u5F37\u5236\u7D42\u4E86\u3057\u307E\u3057\u305F"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ko.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ko.java
index 6e2af43..d2db1b0 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ko.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_ko.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,13 +73,14 @@
             {"appletviewer.parse.warning.embed.requiresheight", "\uACBD\uACE0: <embed> \uD0DC\uADF8\uC5D0\uB294 height \uC18D\uC131\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},
             {"appletviewer.parse.warning.embed.requireswidth", "\uACBD\uACE0: <embed> \uD0DC\uADF8\uC5D0\uB294 width \uC18D\uC131\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},
             {"appletviewer.parse.warning.appnotLongersupported", "\uACBD\uACE0: <app> \uD0DC\uADF8\uB294 \uB354 \uC774\uC0C1 \uC9C0\uC6D0\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uB300\uC2E0 <applet>\uC744 \uC0AC\uC6A9\uD558\uC2ED\uC2DC\uC624."},
-            {"appletviewer.usage", "\uC0AC\uC6A9\uBC95: appletviewer <options> url(s)\n\n\uC5EC\uAE30\uC11C <options>\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n  -debug                  Java \uB514\uBC84\uAC70\uC5D0\uC11C \uC560\uD50C\uB9BF \uBDF0\uC5B4\uB97C \uC2DC\uC791\uD569\uB2C8\uB2E4.\n  -encoding <encoding>    HTML \uD30C\uC77C\uC5D0 \uC0AC\uC6A9\uB420 \uBB38\uC790 \uC778\uCF54\uB529\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4.\n  -J<runtime flag>        Java \uC778\uD130\uD504\uB9AC\uD130\uB85C \uC778\uC218\uB97C \uC804\uB2EC\uD569\uB2C8\uB2E4.\n\n-J \uC635\uC158\uC740 \uD45C\uC900\uC774 \uC544\uB2C8\uBA70 \uC608\uACE0 \uC5C6\uC774 \uBCC0\uACBD\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},
+            {"appletviewer.deprecated", "AppletViewer\uB294 \uB354 \uC774\uC0C1 \uC0AC\uC6A9\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."},
+            {"appletviewer.usage", "\uC0AC\uC6A9\uBC95: appletviewer <options> url(s)\n\n\uC5EC\uAE30\uC11C <options>\uB294 \uB2E4\uC74C\uACFC \uAC19\uC2B5\uB2C8\uB2E4.\n  -encoding <encoding>    HTML \uD30C\uC77C\uC5D0 \uC0AC\uC6A9\uB420 \uBB38\uC790 \uC778\uCF54\uB529\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4.\n  -J<runtime flag>        Java \uC778\uD130\uD504\uB9AC\uD130\uB85C \uC778\uC218\uB97C \uC804\uB2EC\uD569\uB2C8\uB2E4.\n\n-J \uC635\uC158\uC740 \uD45C\uC900\uC774 \uC544\uB2C8\uBA70 \uC608\uACE0 \uC5C6\uC774 \uBCC0\uACBD\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},
             {"appletviewer.main.err.unsupportedopt", "\uC9C0\uC6D0\uB418\uC9C0 \uC54A\uB294 \uC635\uC158: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "\uC54C \uC218 \uC5C6\uB294 \uC778\uC218: {0}"},
             {"appletviewer.main.err.dupoption", "\uC911\uBCF5\uB41C \uC635\uC158 \uC0AC\uC6A9: {0}"},
             {"appletviewer.main.err.inputfile", "\uC9C0\uC815\uB41C \uC785\uB825 \uD30C\uC77C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},
             {"appletviewer.main.err.badurl", "\uC798\uBABB\uB41C URL: {0}({1})"},
-            {"appletviewer.main.err.io", "\uC77D\uB294 \uC911 I/O \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}"},
+            {"appletviewer.main.err.io", "\uC77D\uB294 \uC911 I/O \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}"},
             {"appletviewer.main.err.readablefile", "{0}\uC774(\uAC00) \uD30C\uC77C\uC774\uBA70 \uC77D\uAE30 \uAC00\uB2A5\uD55C \uC0C1\uD0DC\uC778\uC9C0 \uD655\uC778\uD558\uC2ED\uC2DC\uC624."},
             {"appletviewer.main.err.correcturl", "{0}\uC774(\uAC00) \uC62C\uBC14\uB978 URL\uC785\uB2C8\uAE4C?"},
             {"appletviewer.main.prop.store", "\uC0AC\uC6A9\uC790 \uAD00\uB828 AppletViewer \uC18D\uC131"},
@@ -88,7 +89,7 @@
             {"appletviewer.main.warn.nosecmgr", "\uACBD\uACE0: \uBCF4\uC548\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD558\uB294 \uC911\uC785\uB2C8\uB2E4."},
             {"appletviewer.main.debug.cantfinddebug", "\uB514\uBC84\uAC70\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4!"},
             {"appletviewer.main.debug.cantfindmain", "\uB514\uBC84\uAC70\uC5D0\uC11C \uAE30\uBCF8 \uBA54\uC18C\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4!"},
-            {"appletviewer.main.debug.exceptionindebug", "\uB514\uBC84\uAC70\uC5D0 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!"},
+            {"appletviewer.main.debug.exceptionindebug", "\uB514\uBC84\uAC70\uC5D0 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!"},
             {"appletviewer.main.debug.cantaccess", "\uB514\uBC84\uAC70\uC5D0 \uC561\uC138\uC2A4\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4!"},
             {"appletviewer.main.nosecmgr", "\uACBD\uACE0: SecurityManager\uAC00 \uC124\uCE58\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4!"},
             {"appletviewer.main.warning", "\uACBD\uACE0: \uC2DC\uC791\uB41C \uC560\uD50C\uB9BF\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. <applet> \uD0DC\uADF8\uAC00 \uC785\uB825\uB418\uC5C8\uB294\uC9C0 \uD655\uC778\uD558\uC2ED\uC2DC\uC624."},
@@ -98,9 +99,9 @@
             {"appletioexception.loadclass.throw.notloaded", "\uD074\uB798\uC2A4\uAC00 \uB85C\uB4DC\uB418\uC9C0 \uC54A\uC74C: {0}"},
             {"appletclassloader.loadcode.verbose", "{1}\uC744(\uB97C) \uAC00\uC838\uC624\uAE30 \uC704\uD574 {0}\uC5D0 \uB300\uD55C \uC2A4\uD2B8\uB9BC\uC744 \uC5EC\uB294 \uC911"},
             {"appletclassloader.filenotfound", "{0}\uC744(\uB97C) \uAC80\uC0C9\uD558\uB294 \uC911 \uD30C\uC77C\uC744 \uCC3E\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."},
-            {"appletclassloader.fileformat", "\uB85C\uB4DC \uC911 \uD30C\uC77C \uD615\uC2DD \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}"},
-            {"appletclassloader.fileioexception", "\uB85C\uB4DC \uC911 I/O \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}"},
-            {"appletclassloader.fileexception", "\uB85C\uB4DC \uC911 {0} \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {1}"},
+            {"appletclassloader.fileformat", "\uB85C\uB4DC \uC911 \uD30C\uC77C \uD615\uC2DD \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}"},
+            {"appletclassloader.fileioexception", "\uB85C\uB4DC \uC911 I/O \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}"},
+            {"appletclassloader.fileexception", "\uB85C\uB4DC \uC911 {0} \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {1}"},
             {"appletclassloader.filedeath", "\uB85C\uB4DC \uC911 {0}\uC774(\uAC00) \uC885\uB8CC\uB428: {1}"},
             {"appletclassloader.fileerror", "\uB85C\uB4DC \uC911 {0} \uC624\uB958 \uBC1C\uC0DD: {1}"},
             {"appletclassloader.findclass.verbose.openstream", "{1}\uC744(\uB97C) \uAC00\uC838\uC624\uAE30 \uC704\uD574 {0}\uC5D0 \uB300\uD55C \uC2A4\uD2B8\uB9BC\uC744 \uC5EC\uB294 \uC911"},
@@ -108,7 +109,7 @@
             {"appletclassloader.getresource.verbose.found", "\uC2DC\uC2A4\uD15C \uB9AC\uC18C\uC2A4\uB85C {0} \uB9AC\uC18C\uC2A4\uB97C \uCC3E\uC558\uC2B5\uB2C8\uB2E4."},
             {"appletclassloader.getresourceasstream.verbose", "\uC2DC\uC2A4\uD15C \uB9AC\uC18C\uC2A4\uB85C {0} \uB9AC\uC18C\uC2A4\uB97C \uCC3E\uC558\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.runloader.err", "\uAC1D\uCCB4 \uB610\uB294 \uCF54\uB4DC \uB9E4\uAC1C\uBCC0\uC218\uC785\uB2C8\uB2E4!"},
-            {"appletpanel.runloader.exception", "{0}\uC758 \uC9C1\uB82C\uD654\uB97C \uD574\uC81C\uD558\uB294 \uC911 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
+            {"appletpanel.runloader.exception", "{0}\uC758 \uC9C1\uB82C\uD654\uB97C \uD574\uC81C\uD558\uB294 \uC911 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.destroyed", "\uC560\uD50C\uB9BF\uC774 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.loaded", "\uC560\uD50C\uB9BF\uC774 \uB85C\uB4DC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.started", "\uC560\uD50C\uB9BF\uC774 \uC2DC\uC791\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},
@@ -120,8 +121,8 @@
             {"appletpanel.nocreate", "\uB85C\uB4DC: {0}\uC744(\uB97C) \uC778\uC2A4\uD134\uC2A4\uD654\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.noconstruct", "\uB85C\uB4DC: {0}\uC740(\uB294) \uACF5\uC6A9\uC774 \uC544\uB2C8\uAC70\uB098 \uACF5\uC6A9 \uC0DD\uC131\uC790\uB97C \uD3EC\uD568\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.death", "\uC885\uB8CC\uB428"},
-            {"appletpanel.exception", "\uC608\uC678 \uC0AC\uD56D: {0}."},
-            {"appletpanel.exception2", "\uC608\uC678 \uC0AC\uD56D: {0}: {1}."},
+            {"appletpanel.exception", "\uC608\uC678\uC0AC\uD56D: {0}."},
+            {"appletpanel.exception2", "\uC608\uC678\uC0AC\uD56D: {0}: {1}."},
             {"appletpanel.error", "\uC624\uB958: {0}."},
             {"appletpanel.error2", "\uC624\uB958: {0}: {1}."},
             {"appletpanel.notloaded", "\uCD08\uAE30\uD654: \uC560\uD50C\uB9BF\uC774 \uB85C\uB4DC\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."},
@@ -132,9 +133,9 @@
             {"appletpanel.notdisposed", "\uB85C\uB4DC: \uC560\uD50C\uB9BF\uC774 \uBC30\uCE58\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."},
             {"appletpanel.bail", "\uC911\uB2E8\uB428: \uC911\uB2E8\uD558\uB294 \uC911\uC785\uB2C8\uB2E4."},
             {"appletpanel.filenotfound", "{0}\uC744(\uB97C) \uAC80\uC0C9\uD558\uB294 \uC911 \uD30C\uC77C\uC744 \uCC3E\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."},
-            {"appletpanel.fileformat", "\uB85C\uB4DC \uC911 \uD30C\uC77C \uD615\uC2DD \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}"},
-            {"appletpanel.fileioexception", "\uB85C\uB4DC \uC911 I/O \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}"},
-            {"appletpanel.fileexception", "\uB85C\uB4DC \uC911 {0} \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {1}"},
+            {"appletpanel.fileformat", "\uB85C\uB4DC \uC911 \uD30C\uC77C \uD615\uC2DD \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}"},
+            {"appletpanel.fileioexception", "\uB85C\uB4DC \uC911 I/O \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}"},
+            {"appletpanel.fileexception", "\uB85C\uB4DC \uC911 {0} \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {1}"},
             {"appletpanel.filedeath", "\uB85C\uB4DC \uC911 {0}\uC774(\uAC00) \uC885\uB8CC\uB428: {1}"},
             {"appletpanel.fileerror", "\uB85C\uB4DC \uC911 {0} \uC624\uB958 \uBC1C\uC0DD: {1}"},
             {"appletpanel.badattribute.exception", "HTML \uAD6C\uBB38 \uBD84\uC11D \uC911: width/height \uC18D\uC131\uC5D0 \uB300\uD55C \uAC12\uC774 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."},
@@ -162,36 +163,36 @@
             {"appletprops.button.ok", "\uD655\uC778"},
             /* end 4066432 */
             {"appletprops.prop.store", "\uC0AC\uC6A9\uC790 \uAD00\uB828 AppletViewer \uC18D\uC131"},
-            {"appletsecurityexception.checkcreateclassloader", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uD074\uB798\uC2A4 \uB85C\uB354"},
-            {"appletsecurityexception.checkaccess.thread", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC2A4\uB808\uB4DC"},
-            {"appletsecurityexception.checkaccess.threadgroup", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC2A4\uB808\uB4DC \uADF8\uB8F9: {0}"},
-            {"appletsecurityexception.checkexit", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC885\uB8CC: {0}"},
-            {"appletsecurityexception.checkexec", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC2E4\uD589: {0}"},
-            {"appletsecurityexception.checklink", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uB9C1\uD06C: {0}"},
-            {"appletsecurityexception.checkpropsaccess", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC18D\uC131"},
-            {"appletsecurityexception.checkpropsaccess.key", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC18D\uC131 \uC561\uC138\uC2A4 {0}"},
-            {"appletsecurityexception.checkread.exception1", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: {0}, {1}"},
-            {"appletsecurityexception.checkread.exception2", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: file.read: {0}"},
-            {"appletsecurityexception.checkread", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: file.read: {0} == {1}"},
-            {"appletsecurityexception.checkwrite.exception", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: {0}, {1}"},
-            {"appletsecurityexception.checkwrite", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: file.write: {0} == {1}"},
-            {"appletsecurityexception.checkread.fd", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: fd.read"},
-            {"appletsecurityexception.checkwrite.fd", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: fd.write"},
-            {"appletsecurityexception.checklisten", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: socket.listen: {0}"},
-            {"appletsecurityexception.checkaccept", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: socket.accept: {0}:{1}"},
-            {"appletsecurityexception.checkconnect.networknone", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: socket.connect: {0}->{1}"},
-            {"appletsecurityexception.checkconnect.networkhost1", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: {1}\uC5D0\uC11C {0}\uC5D0 \uC811\uC18D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
-            {"appletsecurityexception.checkconnect.networkhost2", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: {0} \uD638\uC2A4\uD2B8 \uB610\uB294 {1}\uC5D0 \uB300\uD55C IP\uB97C \uBD84\uC11D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. "},
-            {"appletsecurityexception.checkconnect.networkhost3", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: {0} \uD638\uC2A4\uD2B8\uC5D0 \uB300\uD55C IP\uB97C \uBD84\uC11D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. trustProxy \uC18D\uC131\uC744 \uCC38\uC870\uD558\uC2ED\uC2DC\uC624."},
-            {"appletsecurityexception.checkconnect", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uC811\uC18D: {0}->{1}"},
-            {"appletsecurityexception.checkpackageaccess", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uD328\uD0A4\uC9C0\uC5D0 \uC561\uC138\uC2A4\uD560 \uC218 \uC5C6\uC74C: {0}"},
-            {"appletsecurityexception.checkpackagedefinition", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uD328\uD0A4\uC9C0\uB97C \uC815\uC758\uD560 \uC218 \uC5C6\uC74C: {0}"},
-            {"appletsecurityexception.cannotsetfactory", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uD329\uD1A0\uB9AC\uB97C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
-            {"appletsecurityexception.checkmemberaccess", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uBA64\uBC84 \uC561\uC138\uC2A4\uB97C \uD655\uC778\uD558\uC2ED\uC2DC\uC624."},
-            {"appletsecurityexception.checkgetprintjob", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: getPrintJob"},
-            {"appletsecurityexception.checksystemclipboardaccess", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: getSystemClipboard"},
-            {"appletsecurityexception.checkawteventqueueaccess", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: getEventQueue"},
-            {"appletsecurityexception.checksecurityaccess", "\uBCF4\uC548 \uC608\uC678 \uC0AC\uD56D: \uBCF4\uC548 \uC791\uC5C5: {0}"},
+            {"appletsecurityexception.checkcreateclassloader", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uD074\uB798\uC2A4 \uB85C\uB354"},
+            {"appletsecurityexception.checkaccess.thread", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC2A4\uB808\uB4DC"},
+            {"appletsecurityexception.checkaccess.threadgroup", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC2A4\uB808\uB4DC \uADF8\uB8F9: {0}"},
+            {"appletsecurityexception.checkexit", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC885\uB8CC: {0}"},
+            {"appletsecurityexception.checkexec", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC2E4\uD589: {0}"},
+            {"appletsecurityexception.checklink", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uB9C1\uD06C: {0}"},
+            {"appletsecurityexception.checkpropsaccess", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC18D\uC131"},
+            {"appletsecurityexception.checkpropsaccess.key", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC18D\uC131 \uC561\uC138\uC2A4 {0}"},
+            {"appletsecurityexception.checkread.exception1", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: {0}, {1}"},
+            {"appletsecurityexception.checkread.exception2", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: file.read: {0}"},
+            {"appletsecurityexception.checkread", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: file.read: {0} == {1}"},
+            {"appletsecurityexception.checkwrite.exception", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: {0}, {1}"},
+            {"appletsecurityexception.checkwrite", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: file.write: {0} == {1}"},
+            {"appletsecurityexception.checkread.fd", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: fd.read"},
+            {"appletsecurityexception.checkwrite.fd", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: fd.write"},
+            {"appletsecurityexception.checklisten", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: socket.listen: {0}"},
+            {"appletsecurityexception.checkaccept", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: socket.accept: {0}:{1}"},
+            {"appletsecurityexception.checkconnect.networknone", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: socket.connect: {0}->{1}"},
+            {"appletsecurityexception.checkconnect.networkhost1", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: {1}\uC5D0\uC11C {0}\uC5D0 \uC811\uC18D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
+            {"appletsecurityexception.checkconnect.networkhost2", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: {0} \uD638\uC2A4\uD2B8 \uB610\uB294 {1}\uC5D0 \uB300\uD55C IP\uB97C \uBD84\uC11D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. "},
+            {"appletsecurityexception.checkconnect.networkhost3", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: {0} \uD638\uC2A4\uD2B8\uC5D0 \uB300\uD55C IP\uB97C \uBD84\uC11D\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. trustProxy \uC18D\uC131\uC744 \uCC38\uC870\uD558\uC2ED\uC2DC\uC624."},
+            {"appletsecurityexception.checkconnect", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uC811\uC18D: {0}->{1}"},
+            {"appletsecurityexception.checkpackageaccess", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uD328\uD0A4\uC9C0\uC5D0 \uC561\uC138\uC2A4\uD560 \uC218 \uC5C6\uC74C: {0}"},
+            {"appletsecurityexception.checkpackagedefinition", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uD328\uD0A4\uC9C0\uB97C \uC815\uC758\uD560 \uC218 \uC5C6\uC74C: {0}"},
+            {"appletsecurityexception.cannotsetfactory", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uD329\uD1A0\uB9AC\uB97C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
+            {"appletsecurityexception.checkmemberaccess", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uBA64\uBC84 \uC561\uC138\uC2A4\uB97C \uD655\uC778\uD558\uC2ED\uC2DC\uC624."},
+            {"appletsecurityexception.checkgetprintjob", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: getPrintJob"},
+            {"appletsecurityexception.checksystemclipboardaccess", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: getSystemClipboard"},
+            {"appletsecurityexception.checkawteventqueueaccess", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: getEventQueue"},
+            {"appletsecurityexception.checksecurityaccess", "\uBCF4\uC548 \uC608\uC678\uC0AC\uD56D: \uBCF4\uC548 \uC791\uC5C5: {0}"},
             {"appletsecurityexception.getsecuritycontext.unknown", "\uC54C \uC218 \uC5C6\uB294 \uD074\uB798\uC2A4 \uB85C\uB354 \uC720\uD615\uC785\uB2C8\uB2E4. getContext\uB97C \uD655\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
             {"appletsecurityexception.checkread.unknown", "\uC54C \uC218 \uC5C6\uB294 \uD074\uB798\uC2A4 \uB85C\uB354 \uC720\uD615\uC785\uB2C8\uB2E4. {0} \uC77D\uAE30\uB97C \uD655\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
             {"appletsecurityexception.checkconnect.unknown", "\uC54C \uC218 \uC5C6\uB294 \uD074\uB798\uC2A4 \uB85C\uB354 \uC720\uD615\uC785\uB2C8\uB2E4. \uC811\uC18D\uC744 \uD655\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java
index cb9a776..0bf4637 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "Advert\u00EAncia: a tag <embed> requer um atributo de altura."},
             {"appletviewer.parse.warning.embed.requireswidth", "Advert\u00EAncia: a tag <embed> requer um atributo de largura."},
             {"appletviewer.parse.warning.appnotLongersupported", "Advert\u00EAncia: a tag <app> n\u00E3o \u00E9 mais suportada; use <applet>:"},
-            {"appletviewer.usage", "Uso: appletviewer <op\u00E7\u00F5es> url(s)\n\nem que as <op\u00E7\u00F5es> incluem:\n  -debug                  Inicia o visualizador do applet no depurador Java\n  -encoding <codifica\u00E7\u00E3o>    Especifica a codifica\u00E7\u00E3o de caractere usada pelos arquivos HTML\n  -J<flag de runtime>        Informa o argumento ao intepretador java\n\nA op\u00E7\u00E3o -J n\u00E3o \u00E9 padr\u00E3o e est\u00E1 sujeita \u00E0 altera\u00E7\u00E3o sem notifica\u00E7\u00E3o."},
+            {"appletviewer.deprecated", "O AppletViewer est\u00E1 obsoleto."},
+            {"appletviewer.usage", "Uso: appletviewer <op\u00E7\u00F5es> url(s)\n\nem que as <op\u00E7\u00F5es> incluem:\n  -encoding <codifica\u00E7\u00E3o>    Especifica a codifica\u00E7\u00E3o de caractere usada pelos arquivos HTML\n  -J<flag de runtime>        Informa o argumento ao intepretador java\n\nA op\u00E7\u00E3o -J n\u00E3o \u00E9 padr\u00E3o e est\u00E1 sujeita \u00E0 altera\u00E7\u00E3o sem notifica\u00E7\u00E3o."},
             {"appletviewer.main.err.unsupportedopt", "Op\u00E7\u00E3o n\u00E3o suportada: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "Argumento n\u00E3o reconhecido: {0}"},
             {"appletviewer.main.err.dupoption", "Uso duplicado da op\u00E7\u00E3o: {0}"},
@@ -93,7 +94,7 @@
             {"appletviewer.main.nosecmgr", "Advert\u00EAncia: SecurityManager n\u00E3o instalado!"},
             {"appletviewer.main.warning", "Advert\u00EAncia: Nenhum applet iniciado. Certifique-se de que a entrada contenha uma tag <applet>."},
             {"appletviewer.main.warn.prop.overwrite", "Advert\u00EAncia: Substituindo a propriedade do sistema temporariamente a pedido do usu\u00E1rio: chave: {0} valor antigo: {1} valor novo: {2}"},
-            {"appletviewer.main.warn.cantreadprops", "Advert\u00EAncia: N\u00E3o \u00E9 poss\u00EDvel ler o arquivo de propriedades AppletViewer: {0} Usando defaults."},
+            {"appletviewer.main.warn.cantreadprops", "Advert\u00EAncia: N\u00E3o \u00E9 poss\u00EDvel ler o arquivo de propriedades AppletViewer: {0} Usando padr\u00F5es."},
             {"appletioexception.loadclass.throw.interrupted", "carregamento de classe interrompido: {0}"},
             {"appletioexception.loadclass.throw.notloaded", "classe n\u00E3o carregada: {0}"},
             {"appletclassloader.loadcode.verbose", "Fluxo de abertura para: {0} para obter {1}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_sv.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_sv.java
index 6605e02..f21af43 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_sv.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_sv.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "Varning: <embed>-taggen kr\u00E4ver ett h\u00F6jdattribut."},
             {"appletviewer.parse.warning.embed.requireswidth", "Varning: <embed>-taggen kr\u00E4ver ett breddattribut."},
             {"appletviewer.parse.warning.appnotLongersupported", "Varning: <app>-taggen st\u00F6ds inte l\u00E4ngre, anv\u00E4nd <applet> ist\u00E4llet:"},
-            {"appletviewer.usage", "Syntax: appletviewer-<alternativ> url:er \n\nd\u00E4r <alternativ> inkluderar:\n  -debug                  Startar appletvisning i Java-fels\u00F6kningen\n  -encoding <kodning>    Anger teckenkodning  som anv\u00E4nds i HTML-filer\n  -J<k\u00F6rningsflagga>        \u00D6verf\u00F6r argument till Java-tolkningen\n\nAlternativet -J \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande."},
+            {"appletviewer.deprecated", "AppletViewer \u00E4r inaktuellt."},
+            {"appletviewer.usage", "Syntax: appletviewer <options> url(s)\n\nd\u00E4r <options> \u00E4r:\n  -encoding <encoding>    Ange teckenkodning som anv\u00E4nds av HTML-filer\n  -J<runtime flag>        \u00D6verf\u00F6r argument till java-tolken\n\nAlternativet -J \u00E4r inte standard och kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande."},
             {"appletviewer.main.err.unsupportedopt", "Alternativ som inte st\u00F6ds: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "Ok\u00E4nt argument: {0}"},
             {"appletviewer.main.err.dupoption", "Duplicerat alternativ: {0}"},
@@ -85,17 +86,17 @@
             {"appletviewer.main.prop.store", "Anv\u00E4ndarspecifika egenskaper f\u00F6r AppletViewer"},
             {"appletviewer.main.err.prop.cantread", "Kan inte l\u00E4sa egenskapsfilen: {0}"},
             {"appletviewer.main.err.prop.cantsave", "Kan inte spara egenskapsfilen: {0}"},
-            {"appletviewer.main.warn.nosecmgr", "Varning: s\u00E4kerheten inaktiveras."},
+            {"appletviewer.main.warn.nosecmgr", "Varning! S\u00E4kerheten avaktiveras."},
             {"appletviewer.main.debug.cantfinddebug", "Hittar inte fels\u00F6kningsprogrammet!"},
             {"appletviewer.main.debug.cantfindmain", "Hittar inte huvudmetoden i fels\u00F6kningsprogrammet!"},
             {"appletviewer.main.debug.exceptionindebug", "Undantag i fels\u00F6kningsprogrammet!"},
             {"appletviewer.main.debug.cantaccess", "Det finns ingen \u00E5tkomst till fels\u00F6kningsprogrammet!"},
             {"appletviewer.main.nosecmgr", "Varning: SecurityManager har inte installerats!"},
             {"appletviewer.main.warning", "Varning: Inga appletar har startats. Kontrollera att indata inneh\u00E5ller <applet>-tagg."},
-            {"appletviewer.main.warn.prop.overwrite", "Varning: Skriver tillf\u00E4lligt \u00F6ver systemegenskap enligt beg\u00E4ran fr\u00E5n anv\u00E4ndare: nyckel: {0} gammalt v\u00E4rde: {1} nytt v\u00E4rde: {2}"},
+            {"appletviewer.main.warn.prop.overwrite", "Varning: Skriver tillf\u00E4lligt \u00F6ver systemegenskap enligt beg\u00E4ran fr\u00E5n anv\u00E4ndare: nyckel: {0} tidigare v\u00E4rde: {1} nytt v\u00E4rde: {2}"},
             {"appletviewer.main.warn.cantreadprops", "Varning: Kan inte l\u00E4sa egenskapsfil f\u00F6r AppletViewer: {0} Standardv\u00E4rden anv\u00E4nds."},
-            {"appletioexception.loadclass.throw.interrupted", "klassinl\u00E4sning avbr\u00F6ts: {0}"},
-            {"appletioexception.loadclass.throw.notloaded", "klass inte inl\u00E4st: {0}"},
+            {"appletioexception.loadclass.throw.interrupted", "klassladdning avbr\u00F6ts: {0}"},
+            {"appletioexception.loadclass.throw.notloaded", "klass inte laddad: {0}"},
             {"appletclassloader.loadcode.verbose", "\u00D6ppnar str\u00F6m till: {0} f\u00F6r h\u00E4mtning av {1}"},
             {"appletclassloader.filenotfound", "Hittade inte fil vid s\u00F6kning efter: {0}"},
             {"appletclassloader.fileformat", "Undantag av filformat vid laddning av: {0}"},
@@ -124,7 +125,7 @@
             {"appletpanel.exception2", "undantag: {0}: {1}."},
             {"appletpanel.error", "fel: {0}."},
             {"appletpanel.error2", "fel {0}: {1}."},
-            {"appletpanel.notloaded", "Initiera: applet \u00E4r inte inl\u00E4st."},
+            {"appletpanel.notloaded", "Initiera: applet \u00E4r inte laddad."},
             {"appletpanel.notinited", "Starta: applet \u00E4r inte initierad."},
             {"appletpanel.notstarted", "Stoppa: applet har inte startats."},
             {"appletpanel.notstopped", "Radera: applet har inte stoppats."},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java
index 05171be..f7c8c4f 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "\u8B66\u544A: <embed> \u6807\u8BB0\u9700\u8981\u9AD8\u5EA6\u5C5E\u6027\u3002"},
             {"appletviewer.parse.warning.embed.requireswidth", "\u8B66\u544A: <embed> \u6807\u8BB0\u9700\u8981\u5BBD\u5EA6\u5C5E\u6027\u3002"},
             {"appletviewer.parse.warning.appnotLongersupported", "\u8B66\u544A: \u4E0D\u518D\u652F\u6301 <app> \u6807\u8BB0, \u8BF7\u6539\u7528 <applet>:"},
-            {"appletviewer.usage", "\u7528\u6CD5: appletviewer <options> url\n\n\u5176\u4E2D, <options> \u5305\u62EC:\n  -debug                  \u5728 Java \u8C03\u8BD5\u5668\u4E2D\u542F\u52A8\u5C0F\u5E94\u7528\u7A0B\u5E8F\u67E5\u770B\u5668\n  -encoding <encoding>    \u6307\u5B9A HTML \u6587\u4EF6\u4F7F\u7528\u7684\u5B57\u7B26\u7F16\u7801\n  -J<runtime flag>        \u5C06\u53C2\u6570\u4F20\u9012\u5230 java \u89E3\u91CA\u5668\n\n-J \u9009\u9879\u662F\u975E\u6807\u51C6\u9009\u9879, \u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002"},
+            {"appletviewer.deprecated", "AppletViewer \u5DF2\u8FC7\u65F6\u3002"},
+            {"appletviewer.usage", "\u7528\u6CD5: appletviewer <options> url(s)\n\n\u5176\u4E2D <options> \u5305\u62EC:\n  -encoding <encoding>    \u6307\u5B9A HTML \u6587\u4EF6\u4F7F\u7528\u7684\u5B57\u7B26\u7F16\u7801\n  -J<runtime flag>        \u5C06\u53C2\u6570\u4F20\u9012\u5230 java \u89E3\u91CA\u5668\n\n-J \u9009\u9879\u662F\u975E\u6807\u51C6\u9009\u9879, \u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002"},
             {"appletviewer.main.err.unsupportedopt", "\u4E0D\u652F\u6301\u7684\u9009\u9879: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "\u65E0\u6CD5\u8BC6\u522B\u7684\u53C2\u6570: {0}"},
             {"appletviewer.main.err.dupoption", "\u91CD\u590D\u4F7F\u7528\u9009\u9879: {0}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java
index 65b079db..8ceeed3 100644
--- a/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java
+++ b/jdk/src/java.desktop/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -73,7 +73,8 @@
             {"appletviewer.parse.warning.embed.requiresheight", "\u8B66\u544A: <embed> \u6A19\u8A18\u9700\u8981\u9AD8\u5EA6\u5C6C\u6027\u3002"},
             {"appletviewer.parse.warning.embed.requireswidth", "\u8B66\u544A: <embed> \u6A19\u8A18\u9700\u8981\u5BEC\u5EA6\u5C6C\u6027\u3002"},
             {"appletviewer.parse.warning.appnotLongersupported", "\u8B66\u544A: \u4E0D\u518D\u652F\u63F4 <app> \u6A19\u8A18\uFF0C\u8ACB\u6539\u7528 <applet>:"},
-            {"appletviewer.usage", "\u7528\u6CD5: appletviewer <options> url(s)\n\n\u5176\u4E2D\u7684 <options> \u5305\u62EC:\n  -debug                  \u5728 Java \u9664\u932F\u7A0B\u5F0F\u4E2D\u555F\u52D5 Applet \u6AA2\u8996\u5668\n  -encoding <encoding>    \u6307\u5B9A HTML \u6A94\u6848\u4F7F\u7528\u7684\u5B57\u5143\u7DE8\u78BC\n  -J<runtime flag>        \u5C07\u5F15\u6578\u50B3\u9001\u81F3 java \u89E3\u8B6F\u5668\n\n -J \u9078\u9805\u4E0D\u662F\u6A19\u6E96\u9078\u9805\uFF0C\u82E5\u6709\u8B8A\u66F4\u4E0D\u53E6\u884C\u901A\u77E5\u3002"},
+            {"appletviewer.deprecated", "AppletViewer \u5DF2\u4E0D\u518D\u4F7F\u7528\u3002"},
+            {"appletviewer.usage", "\u7528\u6CD5: appletviewer <options> url(s)\n\n\u5176\u4E2D\u7684 <options> \u5305\u62EC:\n  -encoding <encoding>    \u6307\u5B9A HTML \u6A94\u6848\u4F7F\u7528\u7684\u5B57\u5143\u7DE8\u78BC\n  -J<runtime flag>        \u5C07\u5F15\u6578\u50B3\u9001\u81F3 Java \u89E3\u8B6F\u5668\n\n-J \u9078\u9805\u4E0D\u662F\u6A19\u6E96\u9078\u9805\uFF0C\u82E5\u6709\u8B8A\u66F4\u4E0D\u53E6\u884C\u901A\u77E5\u3002"},
             {"appletviewer.main.err.unsupportedopt", "\u4E0D\u652F\u63F4\u7684\u9078\u9805: {0}"},
             {"appletviewer.main.err.unrecognizedarg", "\u7121\u6CD5\u8FA8\u8B58\u7684\u5F15\u6578: {0}"},
             {"appletviewer.main.err.dupoption", "\u91CD\u8907\u4F7F\u7528\u9078\u9805: {0}"},
diff --git a/jdk/src/java.desktop/share/classes/sun/awt/image/OffScreenImageSource.java b/jdk/src/java.desktop/share/classes/sun/awt/image/OffScreenImageSource.java
index 3dcdde0..12fe4f6 100644
--- a/jdk/src/java.desktop/share/classes/sun/awt/image/OffScreenImageSource.java
+++ b/jdk/src/java.desktop/share/classes/sun/awt/image/OffScreenImageSource.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -186,8 +186,21 @@
             theConsumer.setProperties(properties);
             sendPixels();
             theConsumer.imageComplete(ImageConsumer.SINGLEFRAMEDONE);
-            theConsumer.imageComplete(ImageConsumer.STATICIMAGEDONE);
+
+            try {
+                theConsumer.imageComplete(ImageConsumer.STATICIMAGEDONE);
+            } catch (RuntimeException e) {
+                // We did not previously call this method here and
+                // some image consumer filters were not prepared for it to be
+                // called at this time. We allow them to have runtime issues
+                // for this one call only without triggering the IMAGEERROR
+                // condition below.
+                e.printStackTrace();
+            }
+
         } catch (NullPointerException e) {
+            e.printStackTrace();
+
             if (theConsumer != null) {
                 theConsumer.imageComplete(ImageConsumer.IMAGEERROR);
             }
diff --git a/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_de.properties b/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_de.properties
index 83e9b66..0d4d3f7 100644
--- a/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_de.properties
+++ b/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_de.properties
@@ -44,7 +44,7 @@
 AWT.subtract=NumPad -
 AWT.decimal=NumPad .
 AWT.divide=NumPad /
-AWT.delete=Entf
+AWT.delete=L\u00F6schen
 AWT.numLock=Num
 AWT.scrollLock=Rollen
 AWT.f1=F1
diff --git a/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_pt_BR.properties b/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_pt_BR.properties
index 00441e6..bcc0228 100644
--- a/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_pt_BR.properties
+++ b/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_pt_BR.properties
@@ -44,7 +44,7 @@
 AWT.subtract=Teclado Num\u00E9rico -
 AWT.decimal=Teclado Num\u00E9rico .
 AWT.divide=Teclado Num\u00E9rico /
-AWT.delete=Deletar
+AWT.delete=Excluir
 AWT.numLock=Num Lock
 AWT.scrollLock=Scroll Lock
 AWT.f1=F1
@@ -151,7 +151,7 @@
 AWT.undefined=Indefinido
 
 # Predefined cursor names
-AWT.DefaultCursor=Cursor Default
+AWT.DefaultCursor=Cursor Padr\u00E3o
 AWT.CrosshairCursor=Cursor em Forma de Cruz
 AWT.TextCursor=Cursor de Texto
 AWT.WaitCursor=Cursor em Forma de Ampulheta
@@ -165,9 +165,9 @@
 AWT.EResizeCursor=Cursor de Seta Que Aponta \u00E0 Direita
 AWT.HandCursor=Cursor em Forma de M\u00E3o
 AWT.MoveCursor=Cursor de Movimento
-AWT.DefaultDragCursor=Cursor Default de Arrastar
-AWT.DefaultNoDropCursor=Cursor Default sem Arrastar
-AWT.DefaultDropCursor=Cursor Default de Soltar
+AWT.DefaultDragCursor=Cursor Padr\u00E3o de Arrastar
+AWT.DefaultNoDropCursor=Cursor Padr\u00E3o sem Arrastar
+AWT.DefaultDropCursor=Cursor Padr\u00E3o de Soltar
 
 # Input method related strings
 AWT.CompositionWindowTitle=Janela de Entrada
diff --git a/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_sv.properties b/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_sv.properties
index c5f015c..d114d9f 100644
--- a/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_sv.properties
+++ b/jdk/src/java.desktop/share/classes/sun/awt/resources/awt_sv.properties
@@ -19,14 +19,14 @@
 AWT.pause=Paus
 AWT.capsLock=Caps Lock
 AWT.escape=Esc
-AWT.space=Mellanslag
-AWT.pgup=Page Up
-AWT.pgdn=Page Down
+AWT.space=Blanksteg
+AWT.pgup=Sida upp
+AWT.pgdn=Sida ned
 AWT.end=End
 AWT.home=Hem
-AWT.left=V\u00E4nsterpil
+AWT.left=V\u00E4nster
 AWT.up=Upp
-AWT.right=H\u00F6gerpil
+AWT.right=H\u00F6ger
 AWT.down=Nedpil
 AWT.begin=Begin
 AWT.comma=Kommatecken
@@ -114,7 +114,7 @@
 AWT.minus=Minus
 AWT.rightParenthesis=H\u00F6gerparentes
 AWT.underscore=Understreck
-AWT.final=Slutgiltig
+AWT.final=Slutlig
 AWT.convert=Konvertera
 AWT.noconvert=Ingen konvertering
 AWT.accept=Acceptera
diff --git a/jdk/src/java.desktop/share/classes/sun/font/FontFamily.java b/jdk/src/java.desktop/share/classes/sun/font/FontFamily.java
index b8092ab..7b6cac6 100644
--- a/jdk/src/java.desktop/share/classes/sun/font/FontFamily.java
+++ b/jdk/src/java.desktop/share/classes/sun/font/FontFamily.java
@@ -335,9 +335,9 @@
         case Font.BOLD|Font.ITALIC:
             if (bolditalic != null) {
                 return bolditalic;
-            } else if (italic != null && italic.canDoStyle(style)) {
-                    return italic;
             } else if (bold != null && bold.canDoStyle(style)) {
+                return bold;
+            } else if (italic != null && italic.canDoStyle(style)) {
                     return italic;
             } else if (plain != null && plain.canDoStyle(style)) {
                     return plain;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/HeadlessGraphicsEnvironment.java b/jdk/src/java.desktop/share/classes/sun/java2d/HeadlessGraphicsEnvironment.java
index e46e0c4..24d51a0 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/HeadlessGraphicsEnvironment.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/HeadlessGraphicsEnvironment.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,27 +31,8 @@
 import java.awt.HeadlessException;
 import java.awt.image.BufferedImage;
 import java.awt.Font;
-import java.text.AttributedCharacterIterator;
-import java.awt.print.PrinterJob;
-import java.util.Map;
-import java.util.Hashtable;
 import java.util.Locale;
-import java.util.Vector;
-import java.util.StringTokenizer;
-import java.util.ResourceBundle;
-import java.util.MissingResourceException;
-import java.io.IOException;
-import java.io.FilenameFilter;
-import java.io.File;
-import java.util.NoSuchElementException;
 import sun.awt.FontConfiguration;
-import java.util.TreeMap;
-import java.util.Set;
-import java.awt.font.TextAttribute;
-import java.io.InputStream;
-import java.io.FileInputStream;
-import java.io.BufferedInputStream;
-import java.util.Properties;
 import java.awt.Point;
 import java.awt.Rectangle;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/SunGraphics2D.java b/jdk/src/java.desktop/share/classes/sun/java2d/SunGraphics2D.java
index 8207213..57b40d7 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/SunGraphics2D.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/SunGraphics2D.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1915,8 +1915,7 @@
                 sr.setOutputArea(devClip);
                 sr.appendPath(cpi);
                 sr.getPathBox(box);
-                Region r = Region.getInstance(box);
-                r.appendSpans(sr);
+                Region r = Region.getInstance(box, sr);
                 clipRegion = r;
                 clipState =
                     r.isRectangular() ? CLIP_RECTANGULAR : CLIP_SHAPE;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java b/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java
index 06f4ea6..6e7cecd 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,6 @@
 import java.awt.image.BufferedImage;
 import java.awt.image.ComponentColorModel;
 import java.awt.image.ComponentSampleModel;
-import java.awt.image.DataBuffer;
 import java.awt.image.ColorModel;
 import java.awt.image.Raster;
 import java.awt.image.SampleModel;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java b/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java
index 4d5ae1f..6228caf 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,19 +36,14 @@
 package sun.java2d.cmm.lcms;
 
 import java.awt.color.ICC_Profile;
-import java.awt.color.ProfileDataException;
 import java.awt.color.CMMException;
 import java.awt.color.ColorSpace;
 import java.awt.image.BufferedImage;
 import java.awt.image.Raster;
 import java.awt.image.WritableRaster;
 import java.awt.image.ColorModel;
-import java.awt.image.DirectColorModel;
-import java.awt.image.ComponentColorModel;
 import java.awt.image.SampleModel;
 import java.awt.image.DataBuffer;
-import java.awt.image.SinglePixelPackedSampleModel;
-import java.awt.image.ComponentSampleModel;
 import sun.java2d.cmm.*;
 import sun.java2d.cmm.lcms.*;
 import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/CompositeType.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/CompositeType.java
index a8227cd..6279d82 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/CompositeType.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/CompositeType.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,6 @@
 
 package sun.java2d.loops;
 
-import java.awt.image.BufferedImage;
 import java.awt.AlphaComposite;
 import java.util.HashMap;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawGlyphListLCD.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawGlyphListLCD.java
index 4172287..89ed93a 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawGlyphListLCD.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawGlyphListLCD.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,6 @@
 package sun.java2d.loops;
 
 import sun.java2d.loops.GraphicsPrimitive;
-import sun.java2d.pipe.Region;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
 import sun.font.GlyphList;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawLine.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawLine.java
index 2d5e1de..684f242 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawLine.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawLine.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,9 +30,6 @@
 package sun.java2d.loops;
 
 import sun.java2d.loops.GraphicsPrimitive;
-import java.awt.Color;
-import java.awt.image.ColorModel;
-import java.awt.image.Raster;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawRect.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawRect.java
index 4c38e5e..8dcf16e 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawRect.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/DrawRect.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,9 +30,6 @@
 package sun.java2d.loops;
 
 import sun.java2d.loops.GraphicsPrimitive;
-import java.awt.Color;
-import java.awt.image.ColorModel;
-import java.awt.image.Raster;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillRect.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillRect.java
index 39ed1cb..2a12dda 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillRect.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillRect.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,9 +30,6 @@
 package sun.java2d.loops;
 
 import sun.java2d.loops.GraphicsPrimitive;
-import java.awt.Color;
-import java.awt.image.ColorModel;
-import java.awt.image.Raster;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillSpans.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillSpans.java
index 199d07c..cb218f9 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillSpans.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/FillSpans.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,9 +32,6 @@
 
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.pipe.SpanIterator;
-import java.awt.Color;
-import java.awt.image.ColorModel;
-import java.awt.image.Raster;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/FontInfo.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/FontInfo.java
index cc87d60..b09abbb 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/FontInfo.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/FontInfo.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,11 +26,9 @@
 package sun.java2d.loops;
 
 import java.awt.Font;
-import java.awt.geom.AffineTransform;
 
 import sun.font.Font2D;
 import sun.font.FontStrike;
-import sun.font.FontStrikeDesc;
 
 /*
  * A FontInfo object holds all calculated or derived data needed
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/GeneralRenderer.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/GeneralRenderer.java
index af0fa2e..fcb83cc 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/GeneralRenderer.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/GeneralRenderer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,8 +33,6 @@
 import java.awt.image.DataBuffer;
 import java.awt.image.ColorModel;
 import java.awt.geom.Path2D;
-import java.awt.geom.PathIterator;
-import java.awt.geom.AffineTransform;
 import sun.java2d.pipe.Region;
 import sun.java2d.pipe.SpanIterator;
 import sun.java2d.SunGraphics2D;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/MaskFill.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/MaskFill.java
index 877aefb..24174bf 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/MaskFill.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/MaskFill.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,13 +25,8 @@
 
 package sun.java2d.loops;
 
-import java.awt.Paint;
-import java.awt.PaintContext;
 import java.awt.Composite;
-import java.awt.Rectangle;
-import java.awt.image.ColorModel;
 import java.awt.image.BufferedImage;
-import java.awt.image.WritableRaster;
 import sun.awt.image.BufImgSurfaceData;
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.SunGraphics2D;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/ScaledBlit.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/ScaledBlit.java
index f0083d3..066b0a9 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/ScaledBlit.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/ScaledBlit.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,6 @@
 package sun.java2d.loops;
 
 import java.awt.Composite;
-import java.lang.ref.WeakReference;
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.SurfaceData;
 import sun.java2d.pipe.Region;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/SurfaceType.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/SurfaceType.java
index bcbcf9f..70bbaca 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/SurfaceType.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/SurfaceType.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,6 @@
 
 package sun.java2d.loops;
 
-import java.awt.image.BufferedImage;
 import java.awt.image.ColorModel;
 import sun.awt.image.PixelConverter;
 import java.util.HashMap;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformBlit.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformBlit.java
index 7d3f9bb..290596f 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformBlit.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformBlit.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,6 @@
 
 import java.awt.Composite;
 import java.awt.geom.AffineTransform;
-import java.lang.ref.WeakReference;
 import sun.java2d.SurfaceData;
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.pipe.Region;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformHelper.java b/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformHelper.java
index a80ac32..26e1c7d 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformHelper.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/loops/TransformHelper.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,6 @@
 
 import java.awt.Composite;
 import java.awt.geom.AffineTransform;
-import java.lang.ref.WeakReference;
 import sun.java2d.SurfaceData;
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.pipe.Region;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/opengl/OGLMaskFill.java b/jdk/src/java.desktop/share/classes/sun/java2d/opengl/OGLMaskFill.java
index b75d5a4..ab053f1 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/opengl/OGLMaskFill.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/opengl/OGLMaskFill.java
@@ -26,6 +26,7 @@
 package sun.java2d.opengl;
 
 import java.awt.Composite;
+import sun.java2d.InvalidPipeException;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.loops.GraphicsPrimitiveMgr;
@@ -67,7 +68,14 @@
     protected void validateContext(SunGraphics2D sg2d,
                                    Composite comp, int ctxflags)
     {
-        OGLSurfaceData dstData = (OGLSurfaceData)sg2d.surfaceData;
+        OGLSurfaceData dstData;
+        try {
+            dstData = (OGLSurfaceData) sg2d.surfaceData;
+        } catch (ClassCastException e) {
+            throw new InvalidPipeException("wrong surface data type: " +
+                                           sg2d.surfaceData);
+        }
+
         OGLContext.validateContext(dstData, dstData,
                                    sg2d.getCompClip(), comp,
                                    null, sg2d.paint, sg2d, ctxflags);
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/AATextRenderer.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/AATextRenderer.java
index 5b8350f..3ea109d 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/AATextRenderer.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/AATextRenderer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,6 @@
 
 package sun.java2d.pipe;
 
-import java.awt.font.GlyphVector;
 import sun.java2d.SunGraphics2D;
 import sun.font.GlyphList;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/BufferedContext.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/BufferedContext.java
index 85301c2..88396e6 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/BufferedContext.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/BufferedContext.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,6 +38,8 @@
 import static sun.java2d.pipe.BufferedRenderPipe.BYTES_PER_SPAN;
 
 import java.lang.annotation.Native;
+import java.lang.ref.Reference;
+import java.lang.ref.WeakReference;
 
 /**
  * Base context class for managing state in a single-threaded rendering
@@ -87,11 +89,11 @@
      */
     protected static BufferedContext currentContext;
 
-    private AccelSurface    validatedSrcData;
-    private AccelSurface    validatedDstData;
-    private Region          validatedClip;
-    private Composite       validatedComp;
-    private Paint           validatedPaint;
+    private Reference<AccelSurface> validSrcDataRef = new WeakReference<>(null);
+    private Reference<AccelSurface> validDstDataRef = new WeakReference<>(null);
+    private Reference<Region> validClipRef = new WeakReference<>(null);
+    private Reference<Composite> validCompRef = new WeakReference<>(null);
+    private Reference<Paint> validPaintRef = new WeakReference<>(null);
     // renamed from isValidatedPaintAColor as part of a work around for 6764257
     private boolean         isValidatedPaintJustAColor;
     private int             validatedRGB;
@@ -127,9 +129,9 @@
                                        int flags)
     {
         // assert rq.lock.isHeldByCurrentThread();
-        BufferedContext d3dc = dstData.getContext();
-        d3dc.validate(srcData, dstData,
-                      clip, comp, xform, paint, sg2d, flags);
+        BufferedContext context = dstData.getContext();
+        context.validate(srcData, dstData,
+                         clip, comp, xform, paint, sg2d, flags);
     }
 
     /**
@@ -200,13 +202,15 @@
                 updatePaint = true;
                 isValidatedPaintJustAColor = true;
             }
-        } else if (validatedPaint != paint) {
+        } else if (validPaintRef.get() != paint) {
             updatePaint = true;
             // this should be set when we are switching from paint to color
             // in which case this condition will be true
             isValidatedPaintJustAColor = false;
         }
 
+        final AccelSurface validatedSrcData = validSrcDataRef.get();
+        final AccelSurface validatedDstData = validDstDataRef.get();
         if ((currentContext != this) ||
             (srcData != validatedSrcData) ||
             (dstData != validatedDstData))
@@ -228,11 +232,12 @@
             setSurfaces(srcData, dstData);
 
             currentContext = this;
-            validatedSrcData = srcData;
-            validatedDstData = dstData;
+            validSrcDataRef = new WeakReference<>(srcData);
+            validDstDataRef = new WeakReference<>(dstData);
         }
 
         // validate clip
+        final Region validatedClip = validClipRef.get();
         if ((clip != validatedClip) || updateClip) {
             if (clip != null) {
                 if (updateClip ||
@@ -248,13 +253,13 @@
             } else {
                 resetClip();
             }
-            validatedClip = clip;
+            validClipRef = new WeakReference<>(clip);
         }
 
         // validate composite (note that a change in the context flags
         // may require us to update the composite state, even if the
         // composite has not changed)
-        if ((comp != validatedComp) || (flags != validatedFlags)) {
+        if ((comp != validCompRef.get()) || (flags != validatedFlags)) {
             if (comp != null) {
                 setComposite(comp, flags);
             } else {
@@ -263,7 +268,7 @@
             // the paint state is dependent on the composite state, so make
             // sure we update the color below
             updatePaint = true;
-            validatedComp = comp;
+            validCompRef = new WeakReference<>(comp);
             validatedFlags = flags;
         }
 
@@ -297,7 +302,7 @@
             } else {
                 BufferedPaints.resetPaint(rq);
             }
-            validatedPaint = paint;
+            validPaintRef = new WeakReference<>(paint);
         }
 
         // mark dstData dirty
@@ -315,9 +320,9 @@
      * @see RenderQueue#lock
      * @see RenderQueue#unlock
      */
-    public void invalidateSurfaces() {
-        validatedSrcData = null;
-        validatedDstData = null;
+    private void invalidateSurfaces() {
+        validSrcDataRef.clear();
+        validDstDataRef.clear();
     }
 
     private void setSurfaces(AccelSurface srcData,
@@ -434,9 +439,9 @@
         resetClip();
         BufferedPaints.resetPaint(rq);
         invalidateSurfaces();
-        validatedComp = null;
-        validatedClip = null;
-        validatedPaint = null;
+        validCompRef.clear();
+        validClipRef.clear();
+        validPaintRef.clear();
         isValidatedPaintJustAColor = false;
         xformInUse = false;
     }
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/DrawImage.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/DrawImage.java
index b1ebb01..1c9665c 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/DrawImage.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/DrawImage.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -401,10 +401,10 @@
         }
 
         Region clip = sg.getCompClip();
-        final int dx1 = Math.max((int) Math.floor(ddx1), clip.lox);
-        final int dy1 = Math.max((int) Math.floor(ddy1), clip.loy);
-        final int dx2 = Math.min((int) Math.ceil(ddx2), clip.hix);
-        final int dy2 = Math.min((int) Math.ceil(ddy2), clip.hiy);
+        final int dx1 = Math.max((int) Math.floor(ddx1), clip.getLoX());
+        final int dy1 = Math.max((int) Math.floor(ddy1), clip.getLoY());
+        final int dx2 = Math.min((int) Math.ceil(ddx2), clip.getHiX());
+        final int dy2 = Math.min((int) Math.ceil(ddy2), clip.getHiY());
         if (dx2 <= dx1 || dy2 <= dy1) {
             // empty destination means no output
             return;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListLoopPipe.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListLoopPipe.java
index 86830d9..764a62e 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListLoopPipe.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListLoopPipe.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,6 @@
 
 package sun.java2d.pipe;
 
-import java.awt.font.GlyphVector;
 import sun.awt.SunHints;
 import sun.java2d.SunGraphics2D;
 import sun.font.GlyphList;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListPipe.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListPipe.java
index 0b107b0..f88cc12 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListPipe.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/GlyphListPipe.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,14 +25,10 @@
 
 package sun.java2d.pipe;
 
-import java.awt.Font;
-import java.awt.Rectangle;
-import java.awt.Shape;
 import java.awt.font.FontRenderContext;
 import java.awt.font.GlyphVector;
 import java.awt.font.TextLayout;
 
-import sun.awt.SunHints;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
 import sun.font.GlyphList;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/LoopPipe.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/LoopPipe.java
index 93ba37d..2712f6a 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/LoopPipe.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/LoopPipe.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,22 +25,16 @@
 
 package sun.java2d.pipe;
 
-import java.awt.Font;
 import java.awt.Shape;
 import java.awt.BasicStroke;
-import java.awt.Polygon;
 import java.awt.geom.AffineTransform;
 import java.awt.geom.PathIterator;
 import java.awt.geom.RoundRectangle2D;
 import java.awt.geom.Ellipse2D;
 import java.awt.geom.Arc2D;
-import java.awt.geom.IllegalPathStateException;
 import java.awt.geom.Path2D;
-import java.awt.font.GlyphVector;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.SurfaceData;
-import sun.java2d.loops.FontInfo;
-import sun.java2d.loops.DrawPolygons;
 import sun.java2d.loops.FillParallelogram;
 import sun.java2d.loops.DrawParallelogram;
 import sun.awt.SunHints;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/OutlineTextRenderer.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/OutlineTextRenderer.java
index 6f288ea..a50d373 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/OutlineTextRenderer.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/OutlineTextRenderer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,7 +29,6 @@
 import java.awt.font.GlyphVector;
 import java.awt.font.TextLayout;
 import sun.java2d.SunGraphics2D;
-import sun.font.GlyphList;
 import sun.awt.SunHints;
 
 import java.awt.Shape;
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/Region.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/Region.java
index 95a7aa4..e78d5f7 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/Region.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/Region.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -62,37 +62,21 @@
  * bands[rowstart+3+N*2] = ...    // start of next Y row
  * </pre>
  */
-public class Region {
-    static final int INIT_SIZE = 50;
-    static final int GROW_SIZE = 50;
+public final class Region {
+    private static final int INIT_SIZE = 50;
+    private static final int GROW_SIZE = 50;
 
-    /**
-     * Immutable Region.
-     */
-    private static final class ImmutableRegion extends Region {
-        protected ImmutableRegion(int lox, int loy, int hix, int hiy) {
-            super(lox, loy, hix, hiy);
-        }
-
-        // Override all the methods that mutate the object
-        public void appendSpans(sun.java2d.pipe.SpanIterator si) {}
-        public void setOutputArea(java.awt.Rectangle r) {}
-        public void setOutputAreaXYWH(int x, int y, int w, int h) {}
-        public void setOutputArea(int[] box) {}
-        public void setOutputAreaXYXY(int lox, int loy, int hix, int hiy) {}
-    }
-
-    public static final Region EMPTY_REGION = new ImmutableRegion(0, 0, 0, 0);
-    public static final Region WHOLE_REGION = new ImmutableRegion(
+    public static final Region EMPTY_REGION = new Region(0, 0, 0, 0);
+    public static final Region WHOLE_REGION = new Region(
             Integer.MIN_VALUE,
             Integer.MIN_VALUE,
             Integer.MAX_VALUE,
             Integer.MAX_VALUE);
 
-    int lox;
-    int loy;
-    int hix;
-    int hiy;
+    private int lox;
+    private int loy;
+    private int hix;
+    private int hiy;
 
     int endIndex;
     int[] bands;
@@ -155,7 +139,7 @@
         return (int) Math.round(newv);
     }
 
-    protected Region(int lox, int loy, int hix, int hiy) {
+    private Region(int lox, int loy, int hix, int hiy) {
         this.lox = lox;
         this.loy = loy;
         this.hix = hix;
@@ -258,9 +242,7 @@
             sr.setOutputArea(devBounds);
             sr.appendPath(s.getPathIterator(at));
             sr.getPathBox(box);
-            Region r = Region.getInstance(box);
-            r.appendSpans(sr);
-            return r;
+            return Region.getInstance(box, sr);
         } finally {
             sr.dispose();
         }
@@ -349,56 +331,18 @@
     }
 
     /**
-     * Sets the rectangle of interest for storing and returning
-     * region bands.
-     * <p>
-     * This method can also be used to initialize a simple rectangular
-     * region.
+     * Returns a Region object with a rectangle of interest specified by the
+     * indicated rectangular area in lox, loy, hix, hiy format.
+     * <p/>
+     * Appends the list of spans returned from the indicated SpanIterator. Each
+     * span must be at a higher starting Y coordinate than the previous data or
+     * it must have a Y range equal to the highest Y band in the region and a
+     * higher X coordinate than any of the spans in that band.
      */
-    public void setOutputArea(Rectangle r) {
-        setOutputAreaXYWH(r.x, r.y, r.width, r.height);
-    }
-
-    /**
-     * Sets the rectangle of interest for storing and returning
-     * region bands.  The rectangle is specified in x, y, width, height
-     * format and appropriate clipping is performed as per the method
-     * {@code dimAdd}.
-     * <p>
-     * This method can also be used to initialize a simple rectangular
-     * region.
-     */
-    public void setOutputAreaXYWH(int x, int y, int w, int h) {
-        setOutputAreaXYXY(x, y, dimAdd(x, w), dimAdd(y, h));
-    }
-
-    /**
-     * Sets the rectangle of interest for storing and returning
-     * region bands.  The rectangle is specified as a span array.
-     * <p>
-     * This method can also be used to initialize a simple rectangular
-     * region.
-     */
-    public void setOutputArea(int box[]) {
-        this.lox = box[0];
-        this.loy = box[1];
-        this.hix = box[2];
-        this.hiy = box[3];
-    }
-
-    /**
-     * Sets the rectangle of interest for storing and returning
-     * region bands.  The rectangle is specified in lox, loy,
-     * hix, hiy format.
-     * <p>
-     * This method can also be used to initialize a simple rectangular
-     * region.
-     */
-    public void setOutputAreaXYXY(int lox, int loy, int hix, int hiy) {
-        this.lox = lox;
-        this.loy = loy;
-        this.hix = hix;
-        this.hiy = hiy;
+    public static Region getInstance(int box[], SpanIterator si) {
+        Region ret = new Region(box[0], box[1], box[2], box[3]);
+        ret.appendSpans(si);
+        return ret;
     }
 
     /**
@@ -408,7 +352,7 @@
      * Y range equal to the highest Y band in the region and a
      * higher X coordinate than any of the spans in that band.
      */
-    public void appendSpans(SpanIterator si) {
+    private void appendSpans(SpanIterator si) {
         int[] box = new int[6];
 
         while (si.nextSpan(box)) {
@@ -739,9 +683,9 @@
         return ret;
     }
 
-    static final int INCLUDE_A      = 1;
-    static final int INCLUDE_B      = 2;
-    static final int INCLUDE_COMMON = 4;
+    private static final int INCLUDE_A      = 1;
+    private static final int INCLUDE_B      = 2;
+    private static final int INCLUDE_COMMON = 4;
 
     private void filterSpans(Region ra, Region rb, int flags) {
         int abands[] = ra.bands;
@@ -1080,35 +1024,35 @@
     /**
      * Returns the lowest X coordinate in the Region.
      */
-    public final int getLoX() {
+    public int getLoX() {
         return lox;
     }
 
     /**
      * Returns the lowest Y coordinate in the Region.
      */
-    public final int getLoY() {
+    public int getLoY() {
         return loy;
     }
 
     /**
      * Returns the highest X coordinate in the Region.
      */
-    public final int getHiX() {
+    public int getHiX() {
         return hix;
     }
 
     /**
      * Returns the highest Y coordinate in the Region.
      */
-    public final int getHiY() {
+    public int getHiY() {
         return hiy;
     }
 
     /**
      * Returns the width of this Region clipped to the range (0 - MAX_INT).
      */
-    public final int getWidth() {
+    public int getWidth() {
         if (hix < lox) return 0;
         int w;
         if ((w = hix - lox) < 0) {
@@ -1120,7 +1064,7 @@
     /**
      * Returns the height of this Region clipped to the range (0 - MAX_INT).
      */
-    public final int getHeight() {
+    public int getHeight() {
         if (hiy < loy) return 0;
         int h;
         if ((h = hiy - loy) < 0) {
@@ -1325,6 +1269,7 @@
         return si;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
         sb.append("Region[[");
@@ -1335,13 +1280,13 @@
         sb.append(hix);
         sb.append(", ");
         sb.append(hiy);
-        sb.append("]");
+        sb.append(']');
         if (bands != null) {
             int col = 0;
             while (col < endIndex) {
                 sb.append("y{");
                 sb.append(bands[col++]);
-                sb.append(",");
+                sb.append(',');
                 sb.append(bands[col++]);
                 sb.append("}[");
                 int end = bands[col++];
@@ -1351,20 +1296,25 @@
                     sb.append(bands[col++]);
                     sb.append(", ");
                     sb.append(bands[col++]);
-                    sb.append(")");
+                    sb.append(')');
                 }
-                sb.append("]");
+                sb.append(']');
             }
         }
-        sb.append("]");
+        sb.append(']');
         return sb.toString();
     }
 
+    @Override
     public int hashCode() {
         return (isEmpty() ? 0 : (lox * 3 + loy * 5 + hix * 7 + hiy * 9));
     }
 
+    @Override
     public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
         if (!(o instanceof Region)) {
             return false;
         }
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionClipSpanIterator.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionClipSpanIterator.java
index ef54445..69bba24 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionClipSpanIterator.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionClipSpanIterator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,8 +25,6 @@
 
 package sun.java2d.pipe;
 
-import java.awt.geom.PathIterator;
-import java.awt.Rectangle;
 
 /**
  * This class clips a SpanIterator to a Region and outputs the
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionIterator.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionIterator.java
index 6c3e791..413f519 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionIterator.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/RegionIterator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,6 @@
 
 package sun.java2d.pipe;
 
-import java.awt.Rectangle;
 
 /**
  * This class defines the API for iterating through the bands
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/ShapeSpanIterator.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/ShapeSpanIterator.java
index 0ccf594..5747719 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/ShapeSpanIterator.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/ShapeSpanIterator.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -131,7 +131,7 @@
      * span segments to the bounds of the specified Region.
      */
     public void setOutputArea(Region r) {
-        setOutputAreaXYXY(r.lox, r.loy, r.hix, r.hiy);
+        setOutputAreaXYXY(r.getLoX(), r.getLoY(), r.getHiX(), r.getHiY());
     }
 
     /*
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SolidTextRenderer.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SolidTextRenderer.java
index 6c6f98c..acbdb04 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SolidTextRenderer.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SolidTextRenderer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,8 +25,6 @@
 
 package sun.java2d.pipe;
 
-import java.awt.font.GlyphVector;
-import sun.awt.SunHints;
 import sun.java2d.SunGraphics2D;
 import sun.font.GlyphList;
 
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SpanClipRenderer.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SpanClipRenderer.java
index 0e18b92..0af4ddf 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SpanClipRenderer.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/SpanClipRenderer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 1999, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,6 @@
 
 import java.awt.Rectangle;
 import java.awt.Shape;
-import java.awt.geom.PathIterator;
 import sun.java2d.SunGraphics2D;
 
 /**
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextPipe.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextPipe.java
index 539e08e..d99cf75 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextPipe.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextPipe.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,6 @@
 
 import sun.java2d.SunGraphics2D;
 import java.awt.font.GlyphVector;
-import java.awt.font.TextLayout;
 
 /**
  * This interface defines the set of calls that pipeline objects
diff --git a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextRenderer.java b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextRenderer.java
index 6b63ba3..aeaa332 100644
--- a/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextRenderer.java
+++ b/jdk/src/java.desktop/share/classes/sun/java2d/pipe/TextRenderer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,10 +27,7 @@
 
 import java.awt.Rectangle;
 import java.awt.Shape;
-import java.awt.Font;
-import java.awt.font.GlyphVector;
 import sun.java2d.SunGraphics2D;
-import sun.java2d.loops.FontInfo;
 import sun.font.GlyphList;
 
 /*
diff --git a/jdk/src/java.desktop/share/classes/sun/print/PSPrinterJob.java b/jdk/src/java.desktop/share/classes/sun/print/PSPrinterJob.java
index b22fe72..deada06 100644
--- a/jdk/src/java.desktop/share/classes/sun/print/PSPrinterJob.java
+++ b/jdk/src/java.desktop/share/classes/sun/print/PSPrinterJob.java
@@ -1933,6 +1933,14 @@
     protected void deviceFill(PathIterator pathIter, Color color,
                               AffineTransform tx, Shape clip) {
 
+        if (Double.isNaN(tx.getScaleX()) ||
+            Double.isNaN(tx.getScaleY()) ||
+            Double.isNaN(tx.getShearX()) ||
+            Double.isNaN(tx.getShearY()) ||
+            Double.isNaN(tx.getTranslateX()) ||
+            Double.isNaN(tx.getTranslateY())) {
+            return;
+        }
         setTransform(tx);
         setClip(clip);
         setColor(color);
diff --git a/jdk/src/java.desktop/share/classes/sun/print/ServiceDialog.java b/jdk/src/java.desktop/share/classes/sun/print/ServiceDialog.java
index 6e5a4cf..0f7578f 100644
--- a/jdk/src/java.desktop/share/classes/sun/print/ServiceDialog.java
+++ b/jdk/src/java.desktop/share/classes/sun/print/ServiceDialog.java
@@ -1632,10 +1632,13 @@
             float hgt = mediaSize.getY(units);
             float pax = lm;
             float pay = tm;
+            float par = rm;
+            float pab = bm;
             float paw = wid - lm - rm;
             float pah = hgt - tm - bm;
 
             if (paw <= 0f || pah <= 0f || pax < 0f || pay < 0f ||
+                par <= 0f || pab <= 0f ||
                 pax < mpaMax.getX(units) || paw > mpaMax.getWidth(units) ||
                 pay < mpaMax.getY(units) || pah > mpaMax.getHeight(units)) {
                 return null;
diff --git a/jdk/src/java.desktop/share/classes/sun/print/resources/serviceui_sv.properties b/jdk/src/java.desktop/share/classes/sun/print/resources/serviceui_sv.properties
index f6475df..b20cc9d 100644
--- a/jdk/src/java.desktop/share/classes/sun/print/resources/serviceui_sv.properties
+++ b/jdk/src/java.desktop/share/classes/sun/print/resources/serviceui_sv.properties
@@ -28,7 +28,7 @@
 dialog.noprintermsg=Hittade ingen utskriftstj\u00E4nst.
 dialog.writeerror=Kan inte skriva till filen:
 #
-label.info=Information:
+label.info=Info:
 label.jobname=&Utskrift:
 label.numcopies=Antal e&xemplar:
 label.priority=P&rioritet:
diff --git a/jdk/src/java.desktop/unix/classes/sun/awt/X11/XCheckboxMenuItemPeer.java b/jdk/src/java.desktop/unix/classes/sun/awt/X11/XCheckboxMenuItemPeer.java
index 75f2bef..4096ec8 100644
--- a/jdk/src/java.desktop/unix/classes/sun/awt/X11/XCheckboxMenuItemPeer.java
+++ b/jdk/src/java.desktop/unix/classes/sun/awt/X11/XCheckboxMenuItemPeer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,8 @@
 
 import sun.awt.AWTAccessor;
 
-class XCheckboxMenuItemPeer extends XMenuItemPeer implements CheckboxMenuItemPeer {
+final class XCheckboxMenuItemPeer extends XMenuItemPeer
+        implements CheckboxMenuItemPeer {
 
     /************************************************
      *
@@ -49,6 +50,7 @@
      ************************************************/
 
     //Prom CheckboxMenuItemtPeer
+    @Override
     public void setState(boolean t) {
         repaintIfShowing();
     }
@@ -72,8 +74,10 @@
     /**
      * Toggles state and generates ItemEvent
      */
-    void action(final long when) {
+    @Override
+    void action(long when, int modifiers) {
         XToolkit.executeOnEventHandlerThread((CheckboxMenuItem)getTarget(), new Runnable() {
+                @Override
                 public void run() {
                     doToggleState(when);
                 }
diff --git a/jdk/src/java.desktop/unix/classes/sun/awt/X11/XWindowPeer.java b/jdk/src/java.desktop/unix/classes/sun/awt/X11/XWindowPeer.java
index 3dad9f30..97676f2 100644
--- a/jdk/src/java.desktop/unix/classes/sun/awt/X11/XWindowPeer.java
+++ b/jdk/src/java.desktop/unix/classes/sun/awt/X11/XWindowPeer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -174,27 +174,24 @@
 
         cachedFocusableWindow = isFocusableWindow();
 
-        Font f = target.getFont();
-        if (f == null) {
-            f = XWindow.getDefaultFont();
-            target.setFont(f);
-            // we should not call setFont because it will call a repaint
-            // which the peer may not be ready to do yet.
+        if (!target.isFontSet()) {
+               target.setFont(XWindow.getDefaultFont());
+               // we should not call setFont because it will call a repaint
+               // which the peer may not be ready to do yet.
         }
-        Color c = target.getBackground();
-        if (c == null) {
-            Color background = SystemColor.window;
-            target.setBackground(background);
-            // we should not call setBackGround because it will call a repaint
-            // which the peer may not be ready to do yet.
+        if (!target.isBackgroundSet()) {
+               target.setBackground(SystemColor.window);
+               // we should not call setBackGround because it will call a repaint
+               // which the peer may not be ready to do yet.
+
         }
-        c = target.getForeground();
-        if (c == null) {
-            target.setForeground(SystemColor.windowText);
-            // we should not call setForeGround because it will call a repaint
-            // which the peer may not be ready to do yet.
+        if (!target.isForegroundSet()) {
+               target.setForeground(SystemColor.windowText);
+               // we should not call setForeGround because it will call a repaint
+               // which the peer may not be ready to do yet.
         }
 
+
         alwaysOnTop = ((Window)target).isAlwaysOnTop() && ((Window)target).isAlwaysOnTopSupported();
 
         GraphicsConfiguration gc = getGraphicsConfiguration();
diff --git a/jdk/src/java.desktop/unix/classes/sun/java2d/xr/XRRenderer.java b/jdk/src/java.desktop/unix/classes/sun/java2d/xr/XRRenderer.java
index 5eb84ed..9040018 100644
--- a/jdk/src/java.desktop/unix/classes/sun/java2d/xr/XRRenderer.java
+++ b/jdk/src/java.desktop/unix/classes/sun/java2d/xr/XRRenderer.java
@@ -28,6 +28,7 @@
 import java.awt.*;
 import java.awt.geom.*;
 import sun.awt.SunToolkit;
+import sun.java2d.InvalidPipeException;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.loops.*;
 import sun.java2d.pipe.Region;
@@ -69,7 +70,12 @@
      * destination context.
      */
     private final void validateSurface(SunGraphics2D sg2d) {
-        XRSurfaceData xrsd = (XRSurfaceData) sg2d.surfaceData;
+        XRSurfaceData xrsd;
+        try {
+            xrsd = (XRSurfaceData) sg2d.surfaceData;
+        } catch (ClassCastException e) {
+            throw new InvalidPipeException("wrong surface data type: " + sg2d.surfaceData);
+        }
         xrsd.validateAsDestination(sg2d, sg2d.getCompClip());
         xrsd.maskBuffer.validateCompositeState(sg2d.composite, sg2d.transform,
                                                sg2d.paint, sg2d);
diff --git a/jdk/src/java.desktop/unix/native/common/awt/CUPSfuncs.c b/jdk/src/java.desktop/unix/native/common/awt/CUPSfuncs.c
index 7ba8652..0f8d024 100644
--- a/jdk/src/java.desktop/unix/native/common/awt/CUPSfuncs.c
+++ b/jdk/src/java.desktop/unix/native/common/awt/CUPSfuncs.c
@@ -371,6 +371,10 @@
     ppd_option_t *option;
     ppd_choice_t *choice;
     ppd_size_t *size;
+    const char *filename = NULL;
+    int i;
+    jobjectArray sizeArray = NULL;
+    jfloat *dims;
 
     const char *name = (*env)->GetStringUTFChars(env, printer, NULL);
     if (name == NULL) {
@@ -378,10 +382,6 @@
         JNU_ThrowOutOfMemoryError(env, "Could not create printer name");
         return NULL;
     }
-    const char *filename;
-    int i;
-    jobjectArray sizeArray = NULL;
-    jfloat *dims;
 
     // NOTE: cupsGetPPD returns a pointer to a filename of a temporary file.
     // unlink() must be called to remove the file after using it.
@@ -470,6 +470,8 @@
     jclass intCls, cls;
     jmethodID intCtr, arrListAddMID;
     int i;
+    const char *name = NULL;
+    const char *filename = NULL;
 
     intCls = (*env)->FindClass(env, "java/lang/Integer");
     CHECK_NULL(intCls);
@@ -481,13 +483,13 @@
         (*env)->GetMethodID(env, cls, "add", "(Ljava/lang/Object;)Z");
     CHECK_NULL(arrListAddMID);
 
-    const char *name = (*env)->GetStringUTFChars(env, printer, NULL);
+    name = (*env)->GetStringUTFChars(env, printer, NULL);
     if (name == NULL) {
         (*env)->ExceptionClear(env);
         JNU_ThrowOutOfMemoryError(env, "Could not create printer name");
         return;
     }
-    const char *filename;
+
 
     // NOTE: cupsGetPPD returns a pointer to a filename of a temporary file.
     // unlink() must be called to remove the file after using it.
diff --git a/jdk/src/java.desktop/unix/native/common/awt/fontpath.c b/jdk/src/java.desktop/unix/native/common/awt/fontpath.c
index c0d99e5..9a2e027 100644
--- a/jdk/src/java.desktop/unix/native/common/awt/fontpath.c
+++ b/jdk/src/java.desktop/unix/native/common/awt/fontpath.c
@@ -1012,17 +1012,20 @@
     jfieldID familyNameID, styleNameID, fullNameID, fontFileID;
     jmethodID fcFontCons;
     char* debugMinGlyphsStr = getenv("J2D_DEBUG_MIN_GLYPHS");
+    jclass fcInfoClass;
+    jclass fcCompFontClass;
+    jclass fcFontClass;
 
     CHECK_NULL(fcInfoObj);
     CHECK_NULL(fcCompFontArray);
 
-    jclass fcInfoClass =
+    fcInfoClass =
         (*env)->FindClass(env, "sun/font/FontConfigManager$FontConfigInfo");
     CHECK_NULL(fcInfoClass);
-    jclass fcCompFontClass =
+    fcCompFontClass =
         (*env)->FindClass(env, "sun/font/FontConfigManager$FcCompFont");
     CHECK_NULL(fcCompFontClass);
-    jclass fcFontClass =
+    fcFontClass =
          (*env)->FindClass(env, "sun/font/FontConfigManager$FontConfigFont");
     CHECK_NULL(fcFontClass);
 
@@ -1146,7 +1149,8 @@
         int fn, j, fontCount, nfonts;
         unsigned int minGlyphs;
         FcChar8 **family, **styleStr, **fullname, **file;
-        jarray fcFontArr;
+        jarray fcFontArr = NULL;
+        FcCharSet *unionCharset = NULL;
 
         fcCompFontObj = (*env)->GetObjectArrayElement(env, fcCompFontArray, i);
         fcNameStr =
@@ -1218,7 +1222,7 @@
                 minGlyphs = val;
             }
         }
-        FcCharSet *unionCharset = NULL;
+
         for (j=0; j<nfonts; j++) {
             FcPattern *fontPattern = fontset->fonts[j];
             FcChar8 *fontformat;
diff --git a/jdk/src/java.desktop/unix/native/libawt_xawt/awt/gtk_interface.c b/jdk/src/java.desktop/unix/native/libawt_xawt/awt/gtk_interface.c
index 8497908..25527de 100644
--- a/jdk/src/java.desktop/unix/native/libawt_xawt/awt/gtk_interface.c
+++ b/jdk/src/java.desktop/unix/native/libawt_xawt/awt/gtk_interface.c
@@ -43,7 +43,7 @@
     gboolean (*check)(const char* lib_name, gboolean load);
 } GtkLib;
 
-static GtkLib libs[] = {
+static GtkLib gtk_libs[] = {
     {
         GTK_2,
         JNI_LIB_NAME("gtk-x11-2.0"),
@@ -57,26 +57,42 @@
         VERSIONED_JNI_LIB_NAME("gtk-3", "0"),
         &gtk3_load,
         &gtk3_check
-    },
-    {
-        0,
-        NULL,
-        NULL,
-        NULL,
-        NULL
     }
 };
 
+static GtkLib** get_libs_order(GtkVersion version) {
+    static GtkLib** load_order;
+    static int n_libs = 0;
+    if (!n_libs) {
+        n_libs = sizeof(gtk_libs) / sizeof(GtkLib);
+        load_order = calloc(n_libs + 1, sizeof(GtkLib *));
+    }
+    int i, first = 0;
+    for (i = 0; i < n_libs; i++) {
+        load_order[i] = &gtk_libs[i];
+        if (load_order[i]->version == version) {
+            first = i;
+        }
+    }
+    if (first) {
+        for (i = first; i > 0; i--) {
+            load_order[i] = load_order[i - 1];
+        }
+        load_order[0] = &gtk_libs[first];
+    }
+    return load_order;
+}
+
 static GtkLib* get_loaded() {
-    GtkLib* lib = libs;
-    while(!gtk && lib->version) {
+    GtkLib** libs = get_libs_order(GTK_ANY);
+    while(!gtk && *libs) {
+        GtkLib* lib = *libs++;
         if (lib->check(lib->vname, /* load = */FALSE)) {
             return lib;
         }
         if (lib->check(lib->name, /* load = */FALSE)) {
             return lib;
         }
-        lib++;
     }
     return NULL;
 }
@@ -85,23 +101,18 @@
     if (gtk == NULL) {
         GtkLib* lib = get_loaded();
         if (lib) {
-            if (version != GTK_ANY && lib->version != version) {
-                if (verbose) {
-                    fprintf(stderr, "WARNING: Cannot load GTK%d library: \
-                         GTK%d has already been loaded\n", version, lib->version);
-                }
-                return FALSE;
-            }
             if (verbose) {
-                fprintf(stderr, "Looking for GTK%d library...\n", version);
+                fprintf(stderr, "Looking for GTK%d library...\n",
+                                                                 lib->version);
             }
             gtk = lib->load(env, lib->vname);
             if (!gtk) {
                 gtk = lib->load(env, lib->name);
             }
         } else {
-            lib = libs;
-            while (!gtk && lib->version) {
+            GtkLib** libs = get_libs_order(version);
+            while (!gtk && *libs) {
+                lib = *libs++;
                 if (version == GTK_ANY || lib->version == version) {
                     if (verbose) {
                         fprintf(stderr, "Looking for GTK%d library...\n",
@@ -115,9 +126,7 @@
                         fprintf(stderr, "Not found.\n");
                     }
                 }
-                lib++;
             }
-            lib--;
         }
         if (verbose) {
             if (gtk) {
@@ -131,23 +140,21 @@
 }
 
 static gboolean check_version(GtkVersion version) {
-    GtkLib* lib = libs;
-    while (lib->version) {
-        if (version == GTK_ANY || lib->version == version) {
-            if (lib->check(lib->vname, /* load = */TRUE)) {
-                return TRUE;
-            }
-            if (lib->check(lib->name, /* load = */TRUE)) {
-                return TRUE;
-            }
+    GtkLib** libs = get_libs_order(version);
+    while (*libs) {
+        GtkLib* lib = *libs++;
+        if (lib->check(lib->vname, /* load = */TRUE)) {
+            return TRUE;
         }
-        lib++;
+        if (lib->check(lib->name, /* load = */TRUE)) {
+            return TRUE;
+        }
     }
     return FALSE;
 }
 
 gboolean gtk_check_version(GtkVersion version) {
-    if (gtk) {
+    if (gtk || get_loaded()) {
         return TRUE;
     }
     return check_version(version);
diff --git a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WDialogPeer.java b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WDialogPeer.java
index 86c7080..a497dff 100644
--- a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WDialogPeer.java
+++ b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WDialogPeer.java
@@ -37,10 +37,6 @@
     // target has none explicitly specified.
     static final Color defaultBackground =  SystemColor.control;
 
-    // If target doesn't have its background color set, we set its
-    // background to platform default.
-    boolean needDefaultBackground;
-
     WDialogPeer(Dialog target) {
         super(target);
 
@@ -67,7 +63,7 @@
         Dialog target = (Dialog)this.target;
         // Need to set target's background to default _before_ a call
         // to super.initialize.
-        if (needDefaultBackground) {
+        if (!target.isBackgroundSet()) {
             target.setBackground(defaultBackground);
         }
 
@@ -133,19 +129,6 @@
         }
     }
 
-    /* Native create() peeks at target's background and if it's null
-     * calls this method to arrage for default background to be set on
-     * target.  Can't make the check in Java, since getBackground will
-     * return owner's background if target has none set.
-     */
-    private void setDefaultColor() {
-        // Can't call target.setBackground directly, since we are
-        // called on toolkit thread.  Can't schedule a Runnable on the
-        // EventHandlerThread because of the race condition.  So just
-        // set a flag and call target.setBackground in initialize.
-        needDefaultBackground = true;
-    }
-
     native void pSetIMMOption(String option);
     void notifyIMMOptionChange(){
       InputMethodManager.getInstance().notifyChangeRequest((Component)target);
diff --git a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WFileDialogPeer.java b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WFileDialogPeer.java
index 40c995d..27a0c15 100644
--- a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WFileDialogPeer.java
+++ b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WFileDialogPeer.java
@@ -328,4 +328,7 @@
         FileDialog fileDialog = (FileDialog)target;
         return AWTAccessor.getFileDialogAccessor().isMultipleMode(fileDialog);
     }
+
+    @Override
+    public native Point getLocationOnScreen();
 }
diff --git a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WPrinterJob.java b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WPrinterJob.java
index 89c2850..457393a 100644
--- a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WPrinterJob.java
+++ b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WPrinterJob.java
@@ -1852,12 +1852,14 @@
             setCollateAttrib(SheetCollate.UNCOLLATED, attributes);
         }
 
-        if ((flags & PD_PAGENUMS) != 0) {
-            attributes.add(SunPageSelection.RANGE);
-        } else if ((flags & PD_SELECTION) != 0) {
-            attributes.add(SunPageSelection.SELECTION);
-        } else {
-            attributes.add(SunPageSelection.ALL);
+        if ((flags & PD_NOSELECTION) != PD_NOSELECTION) {
+            if ((flags & PD_PAGENUMS) != 0) {
+                attributes.add(SunPageSelection.RANGE);
+            } else if ((flags & PD_SELECTION) != 0) {
+                attributes.add(SunPageSelection.SELECTION);
+            } else {
+                attributes.add(SunPageSelection.ALL);
+            }
         }
 
         if ((fields & DM_ORIENTATION) != 0) {
diff --git a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WWindowPeer.java b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WWindowPeer.java
index 2e8e812..a776c74 100644
--- a/jdk/src/java.desktop/windows/classes/sun/awt/windows/WWindowPeer.java
+++ b/jdk/src/java.desktop/windows/classes/sun/awt/windows/WWindowPeer.java
@@ -177,12 +177,17 @@
 
         updateInsets(insets_);
 
-        Font f = ((Window)target).getFont();
-        if (f == null) {
-            f = defaultFont;
-            ((Window)target).setFont(f);
-            setFont(f);
+        if (!((Window) target).isFontSet()) {
+            ((Window) target).setFont(defaultFont);
+            setFont(defaultFont);
         }
+        if (!((Window) target).isForegroundSet()) {
+            ((Window) target).setForeground(SystemColor.windowText);
+        }
+        if (!((Window) target).isBackgroundSet()) {
+            ((Window) target).setBackground(SystemColor.window);
+        }
+
         // Express our interest in display changes
         GraphicsConfiguration gc = getGraphicsConfiguration();
         ((Win32GraphicsDevice)gc.getDevice()).addDisplayChangedListener(this);
diff --git a/jdk/src/java.desktop/windows/classes/sun/java2d/d3d/D3DMaskFill.java b/jdk/src/java.desktop/windows/classes/sun/java2d/d3d/D3DMaskFill.java
index e5e3d25..dae1d08 100644
--- a/jdk/src/java.desktop/windows/classes/sun/java2d/d3d/D3DMaskFill.java
+++ b/jdk/src/java.desktop/windows/classes/sun/java2d/d3d/D3DMaskFill.java
@@ -26,6 +26,7 @@
 package sun.java2d.d3d;
 
 import java.awt.Composite;
+import sun.java2d.InvalidPipeException;
 import sun.java2d.SunGraphics2D;
 import sun.java2d.loops.GraphicsPrimitive;
 import sun.java2d.loops.GraphicsPrimitiveMgr;
@@ -67,7 +68,13 @@
     protected void validateContext(SunGraphics2D sg2d,
                                    Composite comp, int ctxflags)
     {
-        D3DSurfaceData dstData = (D3DSurfaceData)sg2d.surfaceData;
+        D3DSurfaceData dstData;
+        try {
+            dstData = (D3DSurfaceData) sg2d.surfaceData;
+        } catch (ClassCastException e) {
+            throw new InvalidPipeException("wrong surface data type: " +
+                                           sg2d.surfaceData);
+        }
         D3DContext.validateContext(dstData, dstData,
                                    sg2d.getCompClip(), comp,
                                    null, sg2d.paint, sg2d, ctxflags);
diff --git a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Component.cpp b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Component.cpp
index 781d4c5..c169ea9 100644
--- a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Component.cpp
+++ b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Component.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -3781,7 +3781,10 @@
     HWND hWnd = GetHWnd();
     HWND hTop = GetTopLevelParentForWindow(hWnd);
     ::ClientToScreen(hTop, &p);
-
+    if (!m_bitsCandType) {
+        SetCandidateWindow(m_bitsCandType, x - p.x, y - p.y);
+        return;
+    }
     for (int iCandType=0; iCandType<32; iCandType++, bits<<=1) {
         if ( m_bitsCandType & bits )
             SetCandidateWindow(iCandType, x - p.x, y - p.y);
@@ -3799,7 +3802,7 @@
     HIMC hIMC = ImmGetContext(hwnd);
     CANDIDATEFORM cf;
     cf.dwIndex = iCandType;
-    cf.dwStyle = CFS_CANDIDATEPOS;
+    cf.dwStyle = CFS_POINT;
     cf.ptCurrentPos.x = x;
     cf.ptCurrentPos.y = y;
 
@@ -3831,8 +3834,12 @@
 
 MsgRouting AwtComponent::WmImeNotify(WPARAM subMsg, LPARAM bitsCandType)
 {
-    if (!m_useNativeCompWindow && subMsg == IMN_OPENCANDIDATE) {
-        m_bitsCandType = bitsCandType;
+    if (!m_useNativeCompWindow) {
+        if (subMsg == IMN_OPENCANDIDATE) {
+            m_bitsCandType = subMsg;
+        } else if (subMsg != IMN_SETCANDIDATEPOS) {
+            m_bitsCandType = 0;
+        }
         InquireCandidatePosition();
         return mrConsume;
     }
@@ -4100,12 +4107,7 @@
     if (mr != mrConsume)  {
         HWND proxy = GetProxyFocusOwner();
         if (proxy != NULL && ::IsWindowEnabled(proxy)) {
-            if (proxy != GetHWnd()) {
-                retVal = ::SendMessage(proxy, message, wParam, lParam);
-            } else {
-                retVal = ComCtl32Util::GetInstance().DefWindowProc(NULL,
-                                                proxy, message, wParam, lParam);
-            }
+            retVal = ::DefWindowProc(proxy, message, wParam, lParam);
             mr = mrConsume;
         }
     }
diff --git a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Dialog.cpp b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Dialog.cpp
index 7bb201b..fb65b85 100644
--- a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Dialog.cpp
+++ b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Dialog.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -100,7 +100,6 @@
 {
     JNIEnv *env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2);
 
-    jobject background = NULL;
     jobject target = NULL;
     AwtDialog* dialog = NULL;
 
@@ -181,22 +180,13 @@
             }
             dialog->DoUpdateIcon();
 
-
-            background = env->GetObjectField(target,
-                                             AwtComponent::backgroundID);
-            if (background == NULL) {
-                JNU_CallMethodByName(env, NULL,
-                                     peer, "setDefaultColor", "()V");
-            }
         }
     } catch (...) {
-        env->DeleteLocalRef(background);
         env->DeleteLocalRef(target);
         throw;
     }
 
 done:
-    env->DeleteLocalRef(background);
     env->DeleteLocalRef(target);
 
     return dialog;
diff --git a/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.cpp b/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.cpp
index a9573e5..a24e337 100644
--- a/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.cpp
+++ b/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -107,6 +107,9 @@
             }
             break;
         }
+        case WM_SETICON: {
+            return 0;
+        }
     }
 
     WNDPROC lpfnWndProc = (WNDPROC)(::GetProp(hWnd, NativeDialogWndProcProp));
@@ -140,6 +143,11 @@
                 ::SendMessage(parent, WM_SETICON, (WPARAM)ICON_BIG,
                               (LPARAM)AwtToolkit::GetInstance().GetAwtIcon());
             } else {
+                AwtWindow *awtWindow = (AwtWindow *)JNI_GET_PDATA(awtParent);
+                ::SendMessage(parent, WM_SETICON, (WPARAM)ICON_BIG,
+                                               (LPARAM)(awtWindow->GetHIcon()));
+                ::SendMessage(parent, WM_SETICON, (WPARAM)ICON_SMALL,
+                                             (LPARAM)(awtWindow->GetHIconSm()));
                 env->DeleteLocalRef(awtParent);
             }
 
@@ -644,4 +652,72 @@
     CATCH_BAD_ALLOC;
 }
 
+int ScaleDownX(int x, HWND hwnd) {
+    int screen = AwtWin32GraphicsDevice::DeviceIndexForWindow(hwnd);
+    Devices::InstanceAccess devices;
+    AwtWin32GraphicsDevice* device = devices->GetDevice(screen);
+    return device == NULL ? x : device->ScaleDownX(x);
+}
+
+int ScaleDownY(int y, HWND hwnd) {
+    int screen = AwtWin32GraphicsDevice::DeviceIndexForWindow(hwnd);
+    Devices::InstanceAccess devices;
+    AwtWin32GraphicsDevice* device = devices->GetDevice(screen);
+    return device == NULL ? y : device->ScaleDownY(y);
+}
+
+jobject AwtFileDialog::_GetLocationOnScreen(void *param)
+{
+    JNIEnv *env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2);
+
+    jobject result = NULL;
+    HWND hwnd = (HWND)env->GetLongField((jobject)param, AwtComponent::hwndID);
+
+    if (::IsWindow(hwnd))
+    {
+        RECT rect;
+        VERIFY(::GetWindowRect(hwnd, &rect));
+        result = JNU_NewObjectByName(env, "java/awt/Point", "(II)V",
+                       ScaleDownX(rect.left, hwnd), ScaleDownY(rect.top, hwnd));
+    }
+
+    if (result != NULL)
+    {
+        jobject resultRef = env->NewGlobalRef(result);
+        env->DeleteLocalRef(result);
+        return resultRef;
+    }
+    else
+    {
+        return NULL;
+    }
+}
+
+/*
+ * Class:     sun_awt_windows_WFileDialogPeer
+ * Method:    getLocationOnScreen
+ * Signature: ()Ljava/awt/Point;
+ */
+JNIEXPORT jobject JNICALL
+Java_sun_awt_windows_WFileDialogPeer_getLocationOnScreen(JNIEnv *env,
+                                                                 jobject peer) {
+    TRY;
+
+    jobject peerRef = env->NewGlobalRef(peer);
+    jobject resultRef = (jobject)AwtToolkit::GetInstance().SyncCall(
+        (void*(*)(void*))AwtFileDialog::_GetLocationOnScreen, (void *)peerRef);
+    env->DeleteLocalRef(peerRef);
+
+    if (resultRef != NULL)
+    {
+        jobject result = env->NewLocalRef(resultRef);
+        env->DeleteGlobalRef(resultRef);
+        return result;
+    }
+
+    return NULL;
+
+    CATCH_BAD_ALLOC_RET(NULL);
+}
+
 } /* extern "C" */
diff --git a/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.h b/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.h
index a71ba6a..ee5bea3 100644
--- a/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.h
+++ b/jdk/src/java.desktop/windows/native/libawt/windows/awt_FileDialog.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -69,6 +69,7 @@
     static void _DisposeOrHide(void *param);
     static void _ToFront(void *param);
     static void _ToBack(void *param);
+    static jobject _GetLocationOnScreen(void *param);
 
 private:
     static UINT GetBufferLength(LPTSTR buffer, UINT limit);
diff --git a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsDevice.cpp b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsDevice.cpp
index 970f061..c5fd2df 100644
--- a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsDevice.cpp
+++ b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsDevice.cpp
@@ -929,6 +929,9 @@
     // Only want to call this once per session
     make_uns_ordered_dither_array(img_oda_alpha, 256);
 
+    // workaround JDK-6477756, ignore return value to keep dll in memory
+    JDK_LoadSystemLibrary("opengl32.dll");
+
     CATCH_BAD_ALLOC;
 }
 
diff --git a/jdk/src/java.httpclient/share/classes/java/net/http/SSLConnection.java b/jdk/src/java.httpclient/share/classes/java/net/http/SSLConnection.java
index 932c5b1..926afd2 100644
--- a/jdk/src/java.httpclient/share/classes/java/net/http/SSLConnection.java
+++ b/jdk/src/java.httpclient/share/classes/java/net/http/SSLConnection.java
@@ -142,6 +142,9 @@
         // TODO: check for closure
         String s = "Receive) ";
         //debugPrint(s, r.buf);
+        if (r.result.bytesProduced() > 0) {
+            assert buf == r.buf;
+        }
         return r.result.bytesProduced();
     }
 
diff --git a/jdk/src/java.httpclient/share/classes/java/net/http/SSLDelegate.java b/jdk/src/java.httpclient/share/classes/java/net/http/SSLDelegate.java
index cf4203b..80c378e 100644
--- a/jdk/src/java.httpclient/share/classes/java/net/http/SSLDelegate.java
+++ b/jdk/src/java.httpclient/share/classes/java/net/http/SSLDelegate.java
@@ -344,8 +344,8 @@
         /* we wait until some user data arrives */
         int mark = dst.position();
         WrapperResult r = null;
-        assert dst.position() == 0;
-        while (dst.position() == 0) {
+        int pos = dst.position();
+        while (dst.position() == pos) {
             r = wrapper.recvAndUnwrap (dst);
             dst = (r.buf != dst) ? r.buf: dst;
             Status status = r.result.getStatus();
diff --git a/jdk/src/java.httpclient/share/classes/java/net/http/SSLTunnelConnection.java b/jdk/src/java.httpclient/share/classes/java/net/http/SSLTunnelConnection.java
index fe8e766..3b33d46 100644
--- a/jdk/src/java.httpclient/share/classes/java/net/http/SSLTunnelConnection.java
+++ b/jdk/src/java.httpclient/share/classes/java/net/http/SSLTunnelConnection.java
@@ -150,6 +150,10 @@
         // TODO: check for closure
         String s = "Receive) ";
         //debugPrint(s, r.buf);
+        if (r.result.bytesProduced() > 0) {
+            assert buf == r.buf;
+        }
+
         return r.result.bytesProduced();
     }
 
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_de.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_de.properties
index c6248fc..94195cb 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_de.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_de.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = Fehler
 agent.err.exception                = Ausnahme von Agent ausgel\u00F6st 
 agent.err.warning		   = Warnung
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = premain(String) ist in Agent-Klasse nicht vorhanden
 agent.err.agentclass.access.denied = Zugriff auf premain(String) wurde abgelehnt
 agent.err.invalid.agentclass       = Ung\u00FCltiger Eigenschaftswert f\u00FCr com.sun.management.agent.class
-agent.err.invalid.state            = Ung\u00FCltiger Agent-Zustand
+agent.err.invalid.state            = Ung\u00FCltiger Agent-Zustand: {0}
 agent.err.invalid.jmxremote.port   = Ung\u00FCltige Nummer f\u00FCr com.sun.management.jmxremote.port
 agent.err.invalid.jmxremote.rmi.port = Ung\u00FCltige Nummer f\u00FCr com.sun.management.jmxremote.rmi.port
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = Fehler bei JMX-Connector-Serverkommunikation
 
 agent.err.invalid.option	   = Ung\u00FCltige Option angegeben
-agent.err.invalid.snmp.port        = Ung\u00FCltige Nummer f\u00FCr com.sun.management.snmp.port
-agent.err.invalid.snmp.trap.port   = Ung\u00FCltige Nummer f\u00FCr com.sun.management.snmp.trap
-agent.err.unknown.snmp.interface   = Unbekannte SNMP-Schnittstelle
-agent.err.acl.file.notset          = Es wurde keine SNMP-ACL-Datei angegeben, obwohl com.sun.management.snmp.acl auf "true" gesetzt ist
-agent.err.acl.file.notfound        = SNMP-ACL-Datei konnte nicht gefunden werden
-agent.err.acl.file.not.readable    = SNMP-ACL-Datei kann nicht gelesen werden
-agent.err.acl.file.read.failed     = SNMP-ACL-Datei konnte nicht gelesen werden
-agent.err.acl.file.access.notrestricted = Lesezugriff auf Kennwortdatei muss eingeschr\u00E4nkt werden
-
-agent.err.snmp.adaptor.start.failed = Fehler beim Starten des SNMP-Adaptors mit Adresse
-agent.err.snmp.mib.init.failed     = Initialisierung von SNMP-MIB nicht erfolgreich mit Fehler
 
 jmxremote.ConnectorBootstrap.starting = JMX-Connector-Server starten:
 jmxremote.ConnectorBootstrap.noAuthentication = Keine Authentifizierung
 jmxremote.ConnectorBootstrap.ready = JMX-Connector bereit unter: {0}
 jmxremote.ConnectorBootstrap.password.readonly = Lesezugriff auf Kennwortdatei muss eingeschr\u00E4nkt werden: {0}
 jmxremote.ConnectorBootstrap.file.readonly = Lesezugriff auf Datei muss eingeschr\u00E4nkt werden: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = ACL wird verarbeitet
-jmxremote.AdaptorBootstrap.getTargetList.adding = Ziel hinzuf\u00FCgen: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = Adaptor-Server starten:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = Adaptor bereit.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = SNMP-Adaptor bereit unter: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = {0} beenden
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_es.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_es.properties
index c91a3b3..474fc1d 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_es.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_es.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = Error
 agent.err.exception                = Excepci\u00F3n devuelta por el agente 
 agent.err.warning		   = Advertencia
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = premain(String) no existe en la clase del agente
 agent.err.agentclass.access.denied = Acceso denegado a premain(String)
 agent.err.invalid.agentclass       = Valor de propiedad com.sun.management.agent.class no v\u00E1lido
-agent.err.invalid.state            = Estado del agente no v\u00E1lido
+agent.err.invalid.state            = Estado de agente no v\u00E1lido: {0}
 agent.err.invalid.jmxremote.port   = N\u00FAmero com.sun.management.jmxremote.port no v\u00E1lido
 agent.err.invalid.jmxremote.rmi.port = N\u00FAmero com.sun.management.jmxremote.rmi.port no v\u00E1lido
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = Error de comunicaci\u00F3n con el servidor de conector JMX
 
 agent.err.invalid.option	   = Opci\u00F3n especificada no v\u00E1lida
-agent.err.invalid.snmp.port        = N\u00FAmero de com.sun.management.snmp.port no v\u00E1lido
-agent.err.invalid.snmp.trap.port   = N\u00FAmero de com.sun.management.snmp.trap no v\u00E1lido
-agent.err.unknown.snmp.interface   = Interfaz SNMP desconocida
-agent.err.acl.file.notset          = No se ha especificado ning\u00FAn archivo ACL de SNMP, pero com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = Archivo ACL de SNMP no encontrado
-agent.err.acl.file.not.readable    = No se puede leer el archivo ACL de SNMP
-agent.err.acl.file.read.failed     = Fallo al leer el archivo ACL de SNMP
-agent.err.acl.file.access.notrestricted = Se debe restringir el acceso de lectura al archivo de contrase\u00F1as
-
-agent.err.snmp.adaptor.start.failed = Fallo al iniciar el adaptador de SNMP con la direcci\u00F3n
-agent.err.snmp.mib.init.failed     = Fallo al inicializar el MIB de SNMP con error
 
 jmxremote.ConnectorBootstrap.starting = Iniciando servidor de conector JMX:
 jmxremote.ConnectorBootstrap.noAuthentication = Sin autenticaci\u00F3n
 jmxremote.ConnectorBootstrap.ready = Conector JMX listo en: {0}
 jmxremote.ConnectorBootstrap.password.readonly = Se debe restringir el acceso de lectura al archivo de contrase\u00F1as: {0}
 jmxremote.ConnectorBootstrap.file.readonly = El acceso de lectura al archivo debe ser restringido: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = Procesando ACL
-jmxremote.AdaptorBootstrap.getTargetList.adding = Agregando destino: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = Iniciando servidor de adaptador:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = Adaptador listo.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = Adaptador SNMP listo en: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = terminar {0}
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_fr.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_fr.properties
index 651ac8a..6705bd0 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_fr.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_fr.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = Erreur
 agent.err.exception                = Exception envoy\u00E9e par l'agent 
 agent.err.warning		   = Avertissement
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = premain(String) n'existe pas dans la classe d'agents
 agent.err.agentclass.access.denied = Acc\u00E8s \u00E0 premain(String) refus\u00E9
 agent.err.invalid.agentclass       = Valeur de propri\u00E9t\u00E9 com.sun.management.agent.class incorrecte
-agent.err.invalid.state            = Etat de l'agent non valide
+agent.err.invalid.state            = Etat de l''agent non valide : {0}
 agent.err.invalid.jmxremote.port   = Num\u00E9ro com.sun.management.jmxremote.port incorrect
 agent.err.invalid.jmxremote.rmi.port = Num\u00E9ro com.sun.management.jmxremote.rmi.port non valide
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = Erreur de communication avec le serveur du connecteur JMX
 
 agent.err.invalid.option	   = Option sp\u00E9cifi\u00E9e non valide
-agent.err.invalid.snmp.port        = Num\u00E9ro com.sun.management.snmp.port incorrect
-agent.err.invalid.snmp.trap.port   = Num\u00E9ro com.sun.management.snmp.trap incorrect
-agent.err.unknown.snmp.interface   = Interface SNMP inconnue
-agent.err.acl.file.notset          = Aucun fichier de liste de contr\u00F4le d'acc\u00E8s (ACL) SNMP n'est sp\u00E9cifi\u00E9 mais com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = Fichier de liste de contr\u00F4le d'acc\u00E8s (ACL) SNMP introuvable
-agent.err.acl.file.not.readable    = Fichier de liste de contr\u00F4le d'acc\u00E8s (ACL) SNMP illisible
-agent.err.acl.file.read.failed     = Impossible de lire le fichier de liste de contr\u00F4le d'acc\u00E8s (ACL) SNMP
-agent.err.acl.file.access.notrestricted = L'acc\u00E8s en lecture au fichier de mots de passe doit \u00EAtre limit\u00E9
-
-agent.err.snmp.adaptor.start.failed = Impossible de d\u00E9marrer l'adaptateur SNMP avec l'adresse
-agent.err.snmp.mib.init.failed     = Impossible d'initialiser SNMP MIB avec l'erreur
 
 jmxremote.ConnectorBootstrap.starting = D\u00E9marrage du serveur du connecteur JMX :
 jmxremote.ConnectorBootstrap.noAuthentication = Pas d'authentification
 jmxremote.ConnectorBootstrap.ready = Connecteur JMX pr\u00EAt \u00E0 : {0}
 jmxremote.ConnectorBootstrap.password.readonly = L''acc\u00E8s en lecture au fichier de mots de passe doit \u00EAtre limit\u00E9 : {0}
 jmxremote.ConnectorBootstrap.file.readonly = L''acc\u00E8s en lecture au fichier doit \u00EAtre limit\u00E9 : {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = Traitement de la liste de contr\u00F4le d'acc\u00E8s (ACL)
-jmxremote.AdaptorBootstrap.getTargetList.adding = Ajout de la cible : {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = D\u00E9marrage du serveur de l'adaptateur :
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = Adaptateur pr\u00EAt.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = Adaptateur SNMP pr\u00EAt sur : {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = terminer {0}
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_it.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_it.properties
index 2f1b608..606edac 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_it.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_it.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = Errore
 agent.err.exception                = Eccezione dell'agente 
 agent.err.warning		   = Avvertenza
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = premain(String) non esiste nella classe agente
 agent.err.agentclass.access.denied = Accesso negato a premain(String)
 agent.err.invalid.agentclass       = Valore propriet\u00E0 com.sun.management.agent.class non valido
-agent.err.invalid.state            = Stato agente non valido
+agent.err.invalid.state            = Stato agente non valido: {0}
 agent.err.invalid.jmxremote.port   = Numero com.sun.management.jmxremote.port non valido
 agent.err.invalid.jmxremote.rmi.port = Numero com.sun.management.jmxremote.rmi.port non valido
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = Errore di comunicazione server del connettore JMX
 
 agent.err.invalid.option	   = Specificata opzione non valida
-agent.err.invalid.snmp.port        = Numero com.sun.management.snmp.port non valido
-agent.err.invalid.snmp.trap.port   = Numero com.sun.management.snmp.trap non valido
-agent.err.unknown.snmp.interface   = Interfaccia SNMP sconosciuta
-agent.err.acl.file.notset          = Nessun file SNMP ACL specificato ma com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = File SNMP ACL non trovato
-agent.err.acl.file.not.readable    = File SNMP ACL non leggibile
-agent.err.acl.file.read.failed     = Errore di lettura file SNMP ACL
-agent.err.acl.file.access.notrestricted = Limitare l'accesso in lettura al password file
-
-agent.err.snmp.adaptor.start.failed = Impossibile avviare l'adattatore SNMP con indirizzo
-agent.err.snmp.mib.init.failed     = Impossibile inizializzare MIB SNMP con errore
 
 jmxremote.ConnectorBootstrap.starting = Avvio del server connettore JMX:
 jmxremote.ConnectorBootstrap.noAuthentication = Nessuna autenticazione
 jmxremote.ConnectorBootstrap.ready = Connettore JMX pronto in: {0}
 jmxremote.ConnectorBootstrap.password.readonly = Limitare l''accesso in lettura al password file: {0}
 jmxremote.ConnectorBootstrap.file.readonly = Limitare l''accesso in lettura al file: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = Elaborazione ACL
-jmxremote.AdaptorBootstrap.getTargetList.adding = Aggiunta destinazione: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = Avvio del server adattatore:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = Adattatore pronto.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = Adattatore SNMP pronto in: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = interrompere {0}
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_ja.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_ja.properties
index ef7a46b..eb8dd2c 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_ja.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_ja.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = \u30A8\u30E9\u30FC
 agent.err.exception                = \u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u304C\u4F8B\u5916\u3092\u30B9\u30ED\u30FC\u3057\u307E\u3057\u305F 
 agent.err.warning		   = \u8B66\u544A
@@ -36,14 +32,14 @@
 agent.err.configfile.closed.failed = \u69CB\u6210\u30D5\u30A1\u30A4\u30EB\u3092\u9589\u3058\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
 agent.err.configfile.access.denied = \u69CB\u6210\u30D5\u30A1\u30A4\u30EB\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u304C\u62D2\u5426\u3055\u308C\u307E\u3057\u305F
 
-agent.err.exportaddress.failed	   = JMX\u30B3\u30CD\u30AF\u30BF\u30FB\u30A2\u30C9\u30EC\u30B9\u306E\u8A08\u6E2C\u30D0\u30C3\u30D5\u30A1\u3078\u306E\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u306B\u5931\u6557\u3057\u307E\u3057\u305F
+agent.err.exportaddress.failed	   = JMX\u30B3\u30CD\u30AF\u30BF\u30FB\u30A2\u30C9\u30EC\u30B9\u306E\u8A08\u6E2C\u30D0\u30C3\u30D5\u30A1\u3078\u306E\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u304C\u5931\u6557\u3057\u307E\u3057\u305F
 
 agent.err.agentclass.notfound      = \u7BA1\u7406\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
 agent.err.agentclass.failed        = \u7BA1\u7406\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30AF\u30E9\u30B9\u304C\u5931\u6557\u3057\u307E\u3057\u305F 
 agent.err.premain.notfound         = premain(String)\u304C\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30FB\u30AF\u30E9\u30B9\u306B\u5B58\u5728\u3057\u307E\u305B\u3093
 agent.err.agentclass.access.denied = premain(String)\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u304C\u62D2\u5426\u3055\u308C\u307E\u3057\u305F
 agent.err.invalid.agentclass       = com.sun.management.agent.class\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u5024\u304C\u7121\u52B9\u3067\u3059
-agent.err.invalid.state            = \u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u306E\u72B6\u614B\u304C\u7121\u52B9\u3067\u3059
+agent.err.invalid.state            = \u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u306E\u72B6\u614B\u304C\u7121\u52B9\u3067\u3059: {0}
 agent.err.invalid.jmxremote.port   = com.sun.management.jmxremote.port\u306E\u756A\u53F7\u304C\u7121\u52B9\u3067\u3059
 agent.err.invalid.jmxremote.rmi.port = com.sun.management.jmxremote.rmi.port\u306E\u756A\u53F7\u304C\u7121\u52B9\u3067\u3059
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = JMX\u30B3\u30CD\u30AF\u30BF\u30FB\u30B5\u30FC\u30D0\u30FC\u306E\u901A\u4FE1\u30A8\u30E9\u30FC
 
 agent.err.invalid.option	   = \u7121\u52B9\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u307E\u3057\u305F
-agent.err.invalid.snmp.port        = com.sun.management.snmp.port\u306E\u756A\u53F7\u304C\u7121\u52B9\u3067\u3059
-agent.err.invalid.snmp.trap.port   = com.sun.management.snmp.trap\u306E\u756A\u53F7\u304C\u7121\u52B9\u3067\u3059
-agent.err.unknown.snmp.interface   = \u4E0D\u660E\u306ASNMP\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3067\u3059
-agent.err.acl.file.notset          = SNMP ACL\u30D5\u30A1\u30A4\u30EB\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u304C\u3001com.sun.management.snmp.acl=true\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059
-agent.err.acl.file.notfound        = SNMP ACL\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
-agent.err.acl.file.not.readable    = SNMP ACL\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u53D6\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093
-agent.err.acl.file.read.failed     = SNMP ACL\u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u53D6\u308A\u306B\u5931\u6557\u3057\u307E\u3057\u305F
-agent.err.acl.file.access.notrestricted = \u30D1\u30B9\u30EF\u30FC\u30C9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u53D6\u308A\u30A2\u30AF\u30BB\u30B9\u306F\u5236\u9650\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
-
-agent.err.snmp.adaptor.start.failed = \u3053\u306E\u30A2\u30C9\u30EC\u30B9\u3067SNMP\u30A2\u30C0\u30D7\u30BF\u3092\u958B\u59CB\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
-agent.err.snmp.mib.init.failed     = \u30A8\u30E9\u30FC\u3067SNMP MIB\u3092\u521D\u671F\u5316\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
 
 jmxremote.ConnectorBootstrap.starting = JMX\u30B3\u30CD\u30AF\u30BF\u30FB\u30B5\u30FC\u30D0\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059:
 jmxremote.ConnectorBootstrap.noAuthentication = \u8A8D\u8A3C\u306A\u3057
 jmxremote.ConnectorBootstrap.ready = JMX\u30B3\u30CD\u30AF\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F: {0}
 jmxremote.ConnectorBootstrap.password.readonly = \u30D1\u30B9\u30EF\u30FC\u30C9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u53D6\u308A\u30A2\u30AF\u30BB\u30B9\u306F\u5236\u9650\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}
 jmxremote.ConnectorBootstrap.file.readonly = \u30D5\u30A1\u30A4\u30EB\u306E\u8AAD\u53D6\u308A\u30A2\u30AF\u30BB\u30B9\u306F\u5236\u9650\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = ACL\u3092\u51E6\u7406\u3057\u3066\u3044\u307E\u3059
-jmxremote.AdaptorBootstrap.getTargetList.adding = \u30BF\u30FC\u30B2\u30C3\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = \u30A2\u30C0\u30D7\u30BF\u30FB\u30B5\u30FC\u30D0\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = \u30A2\u30C0\u30D7\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = SNMP\u30A2\u30C0\u30D7\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = {0}\u3092\u7D42\u4E86\u3057\u307E\u3059
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_ko.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_ko.properties
index d180fd4..71dfa05 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_ko.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_ko.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,11 +23,8 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = \uC624\uB958
-agent.err.exception                = \uC5D0\uC774\uC804\uD2B8\uC5D0 \uC608\uC678 \uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. 
+agent.err.exception                = \uC5D0\uC774\uC804\uD2B8\uC5D0 \uC608\uC678\uC0AC\uD56D\uC774 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4. 
 agent.err.warning		   = \uACBD\uACE0
 
 agent.err.configfile.notfound      = \uAD6C\uC131 \uD30C\uC77C\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = \uC5D0\uC774\uC804\uD2B8 \uD074\uB798\uC2A4\uC5D0 premain(\uBB38\uC790\uC5F4)\uC774 \uC874\uC7AC\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
 agent.err.agentclass.access.denied = premain(\uBB38\uC790\uC5F4)\uC5D0 \uB300\uD55C \uC561\uC138\uC2A4\uAC00 \uAC70\uBD80\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
 agent.err.invalid.agentclass       = com.sun.management.agent.class \uC18D\uC131 \uAC12\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
-agent.err.invalid.state            = \uBD80\uC801\uD569\uD55C \uC5D0\uC774\uC804\uD2B8 \uC0C1\uD0DC
+agent.err.invalid.state            = \uBD80\uC801\uD569\uD55C \uC5D0\uC774\uC804\uD2B8 \uC0C1\uD0DC: {0}
 agent.err.invalid.jmxremote.port   = com.sun.management.jmxremote.port \uBC88\uD638\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
 agent.err.invalid.jmxremote.rmi.port = \uBD80\uC801\uD569\uD55C com.sun.management.jmxremote.rmi.port \uBC88\uD638
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = JMX \uCEE4\uB125\uD130 \uC11C\uBC84 \uD1B5\uC2E0 \uC624\uB958
 
 agent.err.invalid.option	   = \uBD80\uC801\uD569\uD55C \uC635\uC158\uC774 \uC9C0\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
-agent.err.invalid.snmp.port        = com.sun.management.snmp.port \uBC88\uD638\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
-agent.err.invalid.snmp.trap.port   = com.sun.management.snmp.trap \uBC88\uD638\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
-agent.err.unknown.snmp.interface   = \uC54C \uC218 \uC5C6\uB294 SNMP \uC778\uD130\uD398\uC774\uC2A4
-agent.err.acl.file.notset          = SNMP ACL \uD30C\uC77C\uC774 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC558\uC9C0\uB9CC com.sun.management.snmp.acl=true\uC785\uB2C8\uB2E4.
-agent.err.acl.file.notfound        = SNMP ACL \uD30C\uC77C\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-agent.err.acl.file.not.readable    = SNMP ACL \uD30C\uC77C\uC744 \uC77D\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
-agent.err.acl.file.read.failed     = SNMP ACL \uD30C\uC77C \uC77D\uAE30\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
-agent.err.acl.file.access.notrestricted = \uBE44\uBC00\uBC88\uD638 \uD30C\uC77C \uC77D\uAE30 \uC561\uC138\uC2A4\uB294 \uC81C\uD55C\uB418\uC5B4\uC57C \uD569\uB2C8\uB2E4.
-
-agent.err.snmp.adaptor.start.failed = \uC8FC\uC18C\uAC00 \uC788\uB294 SNMP \uC5B4\uB311\uD130 \uC2DC\uC791\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
-agent.err.snmp.mib.init.failed     = \uC624\uB958\uB85C \uC778\uD574 SNMP MIB \uCD08\uAE30\uD654\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
 
 jmxremote.ConnectorBootstrap.starting = JMX \uCEE4\uB125\uD130 \uC11C\uBC84\uB97C \uC2DC\uC791\uD558\uB294 \uC911:
 jmxremote.ConnectorBootstrap.noAuthentication = \uC778\uC99D \uC5C6\uC74C
 jmxremote.ConnectorBootstrap.ready = {0}\uC5D0\uC11C JMX \uCEE4\uB125\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
 jmxremote.ConnectorBootstrap.password.readonly = \uBE44\uBC00\uBC88\uD638 \uD30C\uC77C \uC77D\uAE30 \uC561\uC138\uC2A4\uB294 \uC81C\uD55C\uB418\uC5B4\uC57C \uD568: {0}
 jmxremote.ConnectorBootstrap.file.readonly = \uD30C\uC77C \uC77D\uAE30 \uC561\uC138\uC2A4\uB294 \uC81C\uD55C\uB418\uC5B4\uC57C \uD568: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = ACL\uC744 \uCC98\uB9AC\uD558\uB294 \uC911
-jmxremote.AdaptorBootstrap.getTargetList.adding = \uB300\uC0C1\uC744 \uCD94\uAC00\uD558\uB294 \uC911: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = \uC5B4\uB311\uD130 \uC11C\uBC84\uB97C \uC2DC\uC791\uD558\uB294 \uC911:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = \uC5B4\uB311\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = {0}:{1}\uC5D0\uC11C SNMP \uC5B4\uB311\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
-jmxremote.AdaptorBootstrap.getTargetList.terminate = {0} \uC885\uB8CC
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_pt_BR.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_pt_BR.properties
index 65fa5bf..209eb35 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_pt_BR.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_pt_BR.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = Erro
 agent.err.exception                = Exce\u00E7\u00E3o gerada pelo agente 
 agent.err.warning		   = Advert\u00EAncia
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = premain(String) n\u00E3o existe na classe do agente
 agent.err.agentclass.access.denied = Acesso negado a premain(String)
 agent.err.invalid.agentclass       = Valor inv\u00E1lido da propriedade com.sun.management.agent.class
-agent.err.invalid.state            = Estado de agente inv\u00E1lido
+agent.err.invalid.state            = Estado inv\u00E1lido do agente: {0}
 agent.err.invalid.jmxremote.port   = N\u00FAmero inv\u00E1lido de com.sun.management.jmxremote.port
 agent.err.invalid.jmxremote.rmi.port = N\u00FAmero inv\u00E1lido do com.sun.management.jmxremote.rmi.port
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = Erro de comunica\u00E7\u00E3o do servidor do conector JMX
 
 agent.err.invalid.option	   = Op\u00E7\u00E3o especificada inv\u00E1lida
-agent.err.invalid.snmp.port        = N\u00FAmero inv\u00E1lido de com.sun.management.snmp.port
-agent.err.invalid.snmp.trap.port   = N\u00FAmero inv\u00E1lido de com.sun.management.snmp.trap
-agent.err.unknown.snmp.interface   = Interface SNMP desconhecida
-agent.err.acl.file.notset          = N\u00E3o h\u00E1 um arquivo ACL SNMP especificado, mas com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = Arquivo ACL SNMP n\u00E3o encontrado
-agent.err.acl.file.not.readable    = Arquivo ACL SNMP ileg\u00EDvel
-agent.err.acl.file.read.failed     = Falha ao ler o arquivo ACL SNMP
-agent.err.acl.file.access.notrestricted = O acesso de leitura do arquivo de senha deve ser limitado
-
-agent.err.snmp.adaptor.start.failed = Falha ao iniciar o adaptador SNMP com endere\u00E7o
-agent.err.snmp.mib.init.failed     = Falha ao inicializar o MIB SNMP com erro
 
 jmxremote.ConnectorBootstrap.starting = Iniciando o Servidor do Conector JMX:
 jmxremote.ConnectorBootstrap.noAuthentication = Sem autentica\u00E7\u00E3o
 jmxremote.ConnectorBootstrap.ready = Conector JMX pronto em: {0}
 jmxremote.ConnectorBootstrap.password.readonly = O acesso de leitura do arquivo de senha deve ser limitado: {0}
 jmxremote.ConnectorBootstrap.file.readonly = O acesso de leitura do arquivo deve ser limitado: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = Processando ACL
-jmxremote.AdaptorBootstrap.getTargetList.adding = Adicionando destino: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = Iniciando o Servidor do Adaptador:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = Adaptador pronto.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = Adaptador SNMP pronto em: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = encerrar {0}
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_sv.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_sv.properties
index 746ec33..d9882be 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_sv.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_sv.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = Fel
 agent.err.exception                = Agenten orsakade ett undantag 
 agent.err.warning		   = Varning
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = premain(String) finns inte i agentklassen
 agent.err.agentclass.access.denied = \u00C5tkomst till premain(String) nekad
 agent.err.invalid.agentclass       = Ogiltigt egenskapsv\u00E4rde f\u00F6r com.sun.management.agent.class
-agent.err.invalid.state            = Ogiltig agentstatus
+agent.err.invalid.state            = Ogiltig agentstatus: {0}
 agent.err.invalid.jmxremote.port   = Ogiltigt com.sun.management.jmxremote.port-nummer
 agent.err.invalid.jmxremote.rmi.port = Ogiltigt com.sun.management.jmxremote.rmi.port-nummer
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = Serverkommunikationsfel f\u00F6r JMX-anslutning
 
 agent.err.invalid.option	   = Det angivna alternativet \u00E4r ogiltigt
-agent.err.invalid.snmp.port        = Ogiltigt com.sun.management.snmp.port-nummer
-agent.err.invalid.snmp.trap.port   = Ogiltigt com.sun.management.snmp.trap-nummer
-agent.err.unknown.snmp.interface   = Ok\u00E4nt SNMP-gr\u00E4nssnitt
-agent.err.acl.file.notset          = Ingen SNMP ACL-fil har angetts, men com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = SNMP ACL-filen hittades inte
-agent.err.acl.file.not.readable    = SNMP ACL-filen \u00E4r inte l\u00E4sbar
-agent.err.acl.file.read.failed     = Kunde inte l\u00E4sa filen SNMP ACL
-agent.err.acl.file.access.notrestricted = L\u00E4sbeh\u00F6righeten f\u00F6r filen m\u00E5ste begr\u00E4nsas
-
-agent.err.snmp.adaptor.start.failed = Kunde inte starta SNMP-adaptern med adressen
-agent.err.snmp.mib.init.failed     = Kunde inte initiera SNMP MIB. Returnerade felet
 
 jmxremote.ConnectorBootstrap.starting = Startar server f\u00F6r JMX-anslutning:
 jmxremote.ConnectorBootstrap.noAuthentication = Ingen autentisering
 jmxremote.ConnectorBootstrap.ready = JMX-anslutning redo p\u00E5: {0}
 jmxremote.ConnectorBootstrap.password.readonly = L\u00E4sbeh\u00F6righeten f\u00F6r l\u00F6senordsfilen m\u00E5ste begr\u00E4nsas: {0}
 jmxremote.ConnectorBootstrap.file.readonly = Fill\u00E4snings\u00E5tkomst m\u00E5ste begr\u00E4nsas {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = ACL bearbetas
-jmxremote.AdaptorBootstrap.getTargetList.adding = M\u00E5l l\u00E4ggs till: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = Adapterservern startas:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = Adaptern redo.
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = SNMP-adaptern redo p\u00E5: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = avsluta {0}
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_CN.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_CN.properties
index 31c540e..0123ebc 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_CN.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_CN.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,9 +23,6 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = \u9519\u8BEF
 agent.err.exception                = \u4EE3\u7406\u629B\u51FA\u5F02\u5E38\u9519\u8BEF
 agent.err.warning		   = \u8B66\u544A
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = \u4EE3\u7406\u7C7B\u4E2D\u4E0D\u5B58\u5728 premain(String)
 agent.err.agentclass.access.denied = \u62D2\u7EDD\u8BBF\u95EE premain(String)
 agent.err.invalid.agentclass       = com.sun.management.agent.class \u5C5E\u6027\u503C\u65E0\u6548
-agent.err.invalid.state            = \u4EE3\u7406\u72B6\u6001\u65E0\u6548
+agent.err.invalid.state            = \u65E0\u6548\u7684\u4EE3\u7406\u72B6\u6001: {0}
 agent.err.invalid.jmxremote.port   = com.sun.management.jmxremote.port \u7F16\u53F7\u65E0\u6548
 agent.err.invalid.jmxremote.rmi.port = com.sun.management.jmxremote.rmi.port \u7F16\u53F7\u65E0\u6548
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = JMX \u8FDE\u63A5\u5668\u670D\u52A1\u5668\u901A\u4FE1\u9519\u8BEF
 
 agent.err.invalid.option	   = \u6307\u5B9A\u7684\u9009\u9879\u65E0\u6548
-agent.err.invalid.snmp.port        = com.sun.management.snmp.port number \u65E0\u6548
-agent.err.invalid.snmp.trap.port   = com.sun.management.snmp.trap number \u65E0\u6548
-agent.err.unknown.snmp.interface   = \u672A\u77E5 SNMP \u63A5\u53E3
-agent.err.acl.file.notset          = \u672A\u6307\u5B9A SNMP ACL \u6587\u4EF6, \u4F46 com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = \u627E\u4E0D\u5230 SNMP ACL \u6587\u4EF6
-agent.err.acl.file.not.readable    = SNMP ACL \u6587\u4EF6\u4E0D\u53EF\u8BFB\u53D6
-agent.err.acl.file.read.failed     = \u672A\u80FD\u8BFB\u53D6 SNMP ACL \u6587\u4EF6
-agent.err.acl.file.access.notrestricted = \u5FC5\u987B\u9650\u5236\u53E3\u4EE4\u6587\u4EF6\u8BFB\u53D6\u8BBF\u95EE\u6743\u9650
-
-agent.err.snmp.adaptor.start.failed = \u65E0\u6CD5\u542F\u52A8\u5E26\u6709\u5730\u5740\u7684 SNMP \u9002\u914D\u5668
-agent.err.snmp.mib.init.failed     = \u65E0\u6CD5\u521D\u59CB\u5316\u5E26\u6709\u9519\u8BEF\u7684 SNMP MIB
 
 jmxremote.ConnectorBootstrap.starting = \u6B63\u5728\u542F\u52A8 JMX \u8FDE\u63A5\u5668\u670D\u52A1\u5668: 
 jmxremote.ConnectorBootstrap.noAuthentication = \u65E0\u9A8C\u8BC1
 jmxremote.ConnectorBootstrap.ready = \u4F4D\u4E8E{0}\u7684 JMX \u8FDE\u63A5\u5668\u5DF2\u5C31\u7EEA
 jmxremote.ConnectorBootstrap.password.readonly = \u5FC5\u987B\u9650\u5236\u53E3\u4EE4\u6587\u4EF6\u8BFB\u53D6\u8BBF\u95EE\u6743\u9650: {0}
 jmxremote.ConnectorBootstrap.file.readonly = \u5FC5\u987B\u9650\u5236\u6587\u4EF6\u8BFB\u53D6\u8BBF\u95EE\u6743\u9650: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = \u6B63\u5728\u5904\u7406 ACL
-jmxremote.AdaptorBootstrap.getTargetList.adding = \u6B63\u5728\u6DFB\u52A0\u76EE\u6807: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = \u6B63\u5728\u542F\u52A8\u9002\u914D\u5668\u670D\u52A1\u5668: 
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = \u9002\u914D\u5668\u5C31\u7EEA\u3002
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = \u4F4D\u4E8E {0}:{1} \u7684 SNMP \u9002\u914D\u5668\u5C31\u7EEA
-jmxremote.AdaptorBootstrap.getTargetList.terminate = \u7EC8\u6B62{0}
diff --git a/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_TW.properties b/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_TW.properties
index e75cb6d..b8b5d8c 100644
--- a/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_TW.properties
+++ b/jdk/src/java.management/share/classes/sun/management/resources/agent_zh_TW.properties
@@ -1,6 +1,5 @@
 #
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -24,17 +23,14 @@
 # questions.
 #
 
-# Localizations for Level names.  For the US locale
-# these are the same as the non-localized level name.
-
 agent.err.error			   = \u932F\u8AA4
 agent.err.exception                = \u4EE3\u7406\u7A0B\u5F0F\u767C\u751F\u7570\u5E38 
 agent.err.warning		   = \u8B66\u544A
 
-agent.err.configfile.notfound      = \u627E\u4E0D\u5230\u914D\u7F6E\u6A94\u6848
-agent.err.configfile.failed        = \u7121\u6CD5\u8B80\u53D6\u914D\u7F6E\u6A94\u6848
-agent.err.configfile.closed.failed = \u7121\u6CD5\u95DC\u9589\u914D\u7F6E\u6A94\u6848
-agent.err.configfile.access.denied = \u5B58\u53D6\u914D\u7F6E\u6A94\u6848\u906D\u5230\u62D2\u7D55
+agent.err.configfile.notfound      = \u627E\u4E0D\u5230\u8A2D\u5B9A\u6A94\u6848
+agent.err.configfile.failed        = \u7121\u6CD5\u8B80\u53D6\u8A2D\u5B9A\u6A94\u6848
+agent.err.configfile.closed.failed = \u7121\u6CD5\u95DC\u9589\u8A2D\u5B9A\u6A94\u6848
+agent.err.configfile.access.denied = \u5B58\u53D6\u8A2D\u5B9A\u6A94\u6848\u906D\u5230\u62D2\u7D55
 
 agent.err.exportaddress.failed	   = \u5C07 JMX \u9023\u63A5\u5668\u4F4D\u5740\u532F\u51FA\u81F3\u8A2D\u5099\u7DE9\u885D\u5340\u5931\u6557
 
@@ -43,7 +39,7 @@
 agent.err.premain.notfound         = \u4EE3\u7406\u7A0B\u5F0F\u985E\u5225\u4E2D\u4E0D\u5B58\u5728 premain(String)
 agent.err.agentclass.access.denied = \u5B58\u53D6 premain(String) \u906D\u5230\u62D2\u7D55
 agent.err.invalid.agentclass       = com.sun.management.agent.class \u5C6C\u6027\u503C\u7121\u6548
-agent.err.invalid.state            = \u7121\u6548\u7684\u4EE3\u7406\u7A0B\u5F0F\u72C0\u614B
+agent.err.invalid.state            = \u7121\u6548\u7684\u4EE3\u7406\u7A0B\u5F0F\u72C0\u614B: {0}
 agent.err.invalid.jmxremote.port   = com.sun.management.jmxremote.port \u865F\u78BC\u7121\u6548
 agent.err.invalid.jmxremote.rmi.port = com.sun.management.jmxremote.rmi.port \u865F\u78BC\u7121\u6548
 
@@ -67,27 +63,9 @@
 agent.err.connector.server.io.error = JMX \u9023\u63A5\u5668\u4F3A\u670D\u5668\u901A\u8A0A\u932F\u8AA4
 
 agent.err.invalid.option	   = \u6307\u5B9A\u7684\u9078\u9805\u7121\u6548
-agent.err.invalid.snmp.port        = com.sun.management.snmp.port \u865F\u78BC\u7121\u6548
-agent.err.invalid.snmp.trap.port   = com.sun.management.snmp.trap \u7DE8\u865F\u7121\u6548
-agent.err.unknown.snmp.interface   = \u4E0D\u660E\u7684 SNMP \u4ECB\u9762
-agent.err.acl.file.notset          = \u672A\u6307\u5B9A SNMP ACL \u6A94\u6848\uFF0C\u4F46 com.sun.management.snmp.acl=true
-agent.err.acl.file.notfound        = \u627E\u4E0D\u5230 SNMP ACL \u6A94\u6848
-agent.err.acl.file.not.readable    = SNMP ACL \u6A94\u6848\u7121\u6CD5\u8B80\u53D6
-agent.err.acl.file.read.failed     = \u7121\u6CD5\u8B80\u53D6 SNMP ACL \u6A94\u6848
-agent.err.acl.file.access.notrestricted = \u5FC5\u9808\u9650\u5236\u5BC6\u78BC\u6A94\u6848\u8B80\u53D6\u5B58\u53D6
-
-agent.err.snmp.adaptor.start.failed = \u7121\u6CD5\u4F7F\u7528\u4F4D\u5740\u555F\u52D5 SNMP \u914D\u63A5\u5361
-agent.err.snmp.mib.init.failed     = \u7121\u6CD5\u521D\u59CB\u5316 SNMP MIB\uFF0C\u51FA\u73FE\u932F\u8AA4
 
 jmxremote.ConnectorBootstrap.starting = \u6B63\u5728\u555F\u52D5 JMX \u9023\u63A5\u5668\u4F3A\u670D\u5668:
 jmxremote.ConnectorBootstrap.noAuthentication = \u7121\u8A8D\u8B49
 jmxremote.ConnectorBootstrap.ready = JMX \u9023\u63A5\u5668\u5C31\u7DD2\uFF0C\u4F4D\u65BC: {0}
 jmxremote.ConnectorBootstrap.password.readonly = \u5FC5\u9808\u9650\u5236\u5BC6\u78BC\u6A94\u6848\u8B80\u53D6\u5B58\u53D6: {0}
 jmxremote.ConnectorBootstrap.file.readonly = \u5FC5\u9808\u9650\u5236\u6A94\u6848\u8B80\u53D6\u5B58\u53D6\u6B0A: {0}
-
-jmxremote.AdaptorBootstrap.getTargetList.processing = \u6B63\u5728\u8655\u7406 ACL
-jmxremote.AdaptorBootstrap.getTargetList.adding = \u6B63\u5728\u65B0\u589E\u76EE\u6A19: {0}
-jmxremote.AdaptorBootstrap.getTargetList.starting = \u6B63\u5728\u555F\u52D5\u914D\u63A5\u5361\u4F3A\u670D\u5668:
-jmxremote.AdaptorBootstrap.getTargetList.initialize1 = \u914D\u63A5\u5361\u5C31\u7DD2\u3002
-jmxremote.AdaptorBootstrap.getTargetList.initialize2 = SNMP \u914D\u63A5\u5361\u5C31\u7DD2\uFF0C\u4F4D\u65BC: {0}:{1}
-jmxremote.AdaptorBootstrap.getTargetList.terminate = \u7D42\u6B62 {0}
diff --git a/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_ko.properties b/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_ko.properties
index f8c2c05..1fd81e8 100644
--- a/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_ko.properties
+++ b/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_ko.properties
@@ -1,6 +1,6 @@
 #
 #
-# Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -47,7 +47,7 @@
 
 # {0} = the (string) reason text that came with a thrown exception
 # "Activation.main" should not be translated, because it's a codepoint
-rmid.unexpected.exception=Activation.main: \uC608\uC678 \uC0AC\uD56D \uBC1C\uC0DD: {0}
+rmid.unexpected.exception=Activation.main: \uC608\uC678\uC0AC\uD56D \uBC1C\uC0DD: {0}
 
 # "java.home" should not be translated, because it's a property name
 # "ActivatorImpl" should not be translated, because it's a codepoint
@@ -60,7 +60,7 @@
 rmid.exec.policy.invalid=Activation.main: \uC2E4\uD589 \uC815\uCC45 \uD074\uB798\uC2A4\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
 
 # "rmid" should not be translated
-rmid.exec.policy.exception=rmid: \uC2E4\uD589 \uC815\uCC45\uC744 \uAC00\uC838\uC624\uB824\uB294 \uC2DC\uB3C4\uB85C \uBC1C\uC0DD\uD55C \uC608\uC678 \uC0AC\uD56D:
+rmid.exec.policy.exception=rmid: \uC2E4\uD589 \uC815\uCC45\uC744 \uAC00\uC838\uC624\uB824\uB294 \uC2DC\uB3C4\uB85C \uBC1C\uC0DD\uD55C \uC608\uC678\uC0AC\uD56D:
 
 # "rmid" should not be translated
 rmid.exec.command=rmid: debugExec: "{0}" \uC2E4\uD589 \uC911
diff --git a/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_zh_TW.properties b/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_zh_TW.properties
index 2905dc4..1a32abc 100644
--- a/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_zh_TW.properties
+++ b/jdk/src/java.rmi/share/classes/sun/rmi/server/resources/rmid_zh_TW.properties
@@ -1,6 +1,6 @@
 #
 #
-# Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -71,7 +71,7 @@
 # "Activation.main", "sun.rmi.activation.execPolicy", "ExecPermission" and 
 # "ExecOptionPermission" should not be translated, since they refer to
 # class/permission names.
-rmid.exec.perms.inadequate=Activation.main: \u8B66\u544A: sun.rmi.activation.execPolicy \u7CFB\u7D71\n\u5C6C\u6027\u672A\u6307\u5B9A\uFF0C\u4E26\u4E14\u672A\u6388\u4E88 ExecPermissions/ExecOptionPermissions; \n\u5F8C\u7E8C\u7684\u555F\u52D5\u5617\u8A66\u53EF\u80FD\u6703\u56E0\u70BA\u672A\u6210\u529F\u7684\nExecPermission/ExecOptionPermission \u6B0A\u9650\u6AA2\u67E5\u800C\u5931\u6557\u3002\u5982\u9700\n\u95DC\u65BC\u5982\u4F55\u914D\u7F6E rmid \u5B89\u5168\u7684\u8AAA\u660E\u6587\u4EF6\uFF0C\u8ACB\u53C3\u8003:\n\nhttp://java.sun.com/j2se/1.4/docs/tooldocs/solaris/rmid.html\nhttp://java.sun.com/j2se/1.4/docs/tooldocs/win32/rmid.html\n
+rmid.exec.perms.inadequate=Activation.main: \u8B66\u544A: sun.rmi.activation.execPolicy \u7CFB\u7D71\n\u5C6C\u6027\u672A\u6307\u5B9A\uFF0C\u4E26\u4E14\u672A\u6388\u4E88 ExecPermissions/ExecOptionPermissions; \n\u5F8C\u7E8C\u7684\u555F\u52D5\u5617\u8A66\u53EF\u80FD\u6703\u56E0\u70BA\u672A\u6210\u529F\u7684\nExecPermission/ExecOptionPermission \u6B0A\u9650\u6AA2\u67E5\u800C\u5931\u6557\u3002\u5982\u9700\n\u95DC\u65BC\u5982\u4F55\u8A2D\u5B9A rmid \u5B89\u5168\u7684\u8AAA\u660E\u6587\u4EF6\uFF0C\u8ACB\u53C3\u8003:\n\nhttp://java.sun.com/j2se/1.4/docs/tooldocs/solaris/rmid.html\nhttp://java.sun.com/j2se/1.4/docs/tooldocs/win32/rmid.html\n
 
 # "rmid", "-port", "-log", "-stop", "-C" and "-J" should not be translated,
 # because they are syntax
diff --git a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_de.properties b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_de.properties
index 75daa75..fe9d172 100644
--- a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_de.properties
+++ b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -31,7 +31,7 @@
 cachedrowsetimpl.accfailed = acceptChanges nicht erfolgreich
 cachedrowsetimpl.invalidcp = Ung\u00FCltige Cursorposition
 cachedrowsetimpl.illegalop = Ung\u00FCltiger Vorgang bei nicht eingef\u00FCgter Zeile
-cachedrowsetimpl.clonefail = Clonen nicht erfolgreich: {0}
+cachedrowsetimpl.clonefail = Klonen nicht erfolgreich: {0}
 cachedrowsetimpl.invalidcol = Ung\u00FCltiger Spaltenindex
 cachedrowsetimpl.invalcolnm = Ung\u00FCltiger Spaltenname
 cachedrowsetimpl.boolfail = getBoolen bei Wert ( {0} ) in Spalte {1} nicht erfolgreich
@@ -140,7 +140,7 @@
 #WebRowSetXmlReader exception
 wrsxmlreader.invalidcp = Ende von RowSet wurde erreicht. Ung\u00FCltige Cursorposition
 wrsxmlreader.readxml = readXML: {0}
-wrsxmlreader.parseerr = ** Parsing-Fehler: {0}, Zeile: {1} , URI: {2}
+wrsxmlreader.parseerr = ** Parsingfehler: {0}, Zeile: {1} , URI: {2}
 
 #WebRowSetXmlWriter exceptions
 wrsxmlwriter.ioex = IOException: {0}
diff --git a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ja.properties b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ja.properties
index 17e6901..3192a22 100644
--- a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ja.properties
+++ b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -51,8 +51,8 @@
 cachedrowsetimpl.last = last: TYPE_FORWARD_ONLY
 cachedrowsetimpl.absolute = absolute: \u7121\u52B9\u306A\u30AB\u30FC\u30BD\u30EB\u4F4D\u7F6E
 cachedrowsetimpl.relative = relative: \u7121\u52B9\u306A\u30AB\u30FC\u30BD\u30EB\u4F4D\u7F6E
-cachedrowsetimpl.asciistream = ascii\u30B9\u30C8\u30EA\u30FC\u30E0\u306E\u8AAD\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F
-cachedrowsetimpl.binstream = \u30D0\u30A4\u30CA\u30EA\u30FB\u30B9\u30C8\u30EA\u30FC\u30E0\u306E\u8AAD\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F
+cachedrowsetimpl.asciistream = ascii\u30B9\u30C8\u30EA\u30FC\u30E0\u306E\u8AAD\u8FBC\u307F\u304C\u5931\u6557\u3057\u307E\u3057\u305F
+cachedrowsetimpl.binstream = \u30D0\u30A4\u30CA\u30EA\u30FB\u30B9\u30C8\u30EA\u30FC\u30E0\u306E\u8AAD\u8FBC\u307F\u304C\u5931\u6557\u3057\u307E\u3057\u305F
 cachedrowsetimpl.failedins = \u884C\u306E\u633F\u5165\u306B\u5931\u6557
 cachedrowsetimpl.updateins = \u633F\u5165\u884C\u306B\u304A\u3044\u3066updateRow\u304C\u547C\u3073\u51FA\u3055\u308C\u307E\u3057\u305F
 cachedrowsetimpl.movetoins = moveToInsertRow: CONCUR_READ_ONLY
@@ -101,7 +101,7 @@
 
 #JdbcRowSetImpl exceptions
 jdbcrowsetimpl.invalstate = \u7121\u52B9\u306A\u72B6\u614B
-jdbcrowsetimpl.connect = JdbcRowSet(connect): JNDI\u304C\u63A5\u7D9A\u3067\u304D\u307E\u305B\u3093
+jdbcrowsetimpl.connect = JdbcRowSet (connect): JNDI\u304C\u63A5\u7D9A\u3067\u304D\u307E\u305B\u3093
 jdbcrowsetimpl.paramtype = \u30D1\u30E9\u30E1\u30FC\u30BF\u30FB\u30BF\u30A4\u30D7\u3092\u63A8\u5B9A\u3067\u304D\u307E\u305B\u3093
 jdbcrowsetimpl.matchcols = \u4E00\u81F4\u5217\u304C\u5217\u306E\u30BB\u30C3\u30C8\u3068\u540C\u3058\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 jdbcrowsetimpl.setmatchcols = \u4E00\u81F4\u5217\u3092\u53D6\u5F97\u3059\u308B\u524D\u306B\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044
diff --git a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ko.properties b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ko.properties
index f8553dc..ea62cb2 100644
--- a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ko.properties
+++ b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_ko.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -52,11 +52,11 @@
 cachedrowsetimpl.absolute = \uC808\uB300: \uCEE4\uC11C \uC704\uCE58\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
 cachedrowsetimpl.relative = \uC0C1\uB300: \uCEE4\uC11C \uC704\uCE58\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
 cachedrowsetimpl.asciistream = ASCII \uC2A4\uD2B8\uB9BC\uC5D0 \uB300\uD55C \uC77D\uAE30\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
-cachedrowsetimpl.binstream = \uC774\uC9C4 \uC2A4\uD2B8\uB9BC\uC5D0\uC11C \uC77D\uAE30\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
+cachedrowsetimpl.binstream = \uBC14\uC774\uB108\uB9AC \uC2A4\uD2B8\uB9BC\uC5D0\uC11C \uC77D\uAE30\uB97C \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
 cachedrowsetimpl.failedins = \uD589 \uC0BD\uC785\uC744 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4.
 cachedrowsetimpl.updateins = \uD589\uC744 \uC0BD\uC785\uD558\uB294 \uC911 updateRow\uAC00 \uD638\uCD9C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.
 cachedrowsetimpl.movetoins = moveToInsertRow: CONCUR_READ_ONLY
-cachedrowsetimpl.movetoins1 = moveToInsertRow: \uBA54\uD0C0 \uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.
+cachedrowsetimpl.movetoins1 = moveToInsertRow: \uBA54\uD0C0\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.
 cachedrowsetimpl.movetoins2 = moveToInsertRow: \uC5F4 \uC218\uAC00 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
 cachedrowsetimpl.tablename = \uD14C\uC774\uBE14 \uC774\uB984\uC740 \uB110\uC77C \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
 cachedrowsetimpl.keycols = \uD0A4 \uC5F4\uC774 \uBD80\uC801\uD569\uD569\uB2C8\uB2E4.
@@ -150,7 +150,7 @@
 
 #XmlReaderContentHandler exceptions
 xmlrch.errmap = \uB9F5\uC744 \uC124\uC815\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
-xmlrch.errmetadata = \uBA54\uD0C0 \uB370\uC774\uD130\uB97C \uC124\uC815\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
+xmlrch.errmetadata = \uBA54\uD0C0\uB370\uC774\uD130\uB97C \uC124\uC815\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
 xmlrch.errinsertval = \uAC12\uC744 \uC0BD\uC785\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
 xmlrch.errconstr = \uD589\uC744 \uC0DD\uC131\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
 xmlrch.errdel = \uD589\uC744 \uC0AD\uC81C\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
@@ -160,7 +160,7 @@
 xmlrch.errupdrow = \uD589\uC744 \uC5C5\uB370\uC774\uD2B8\uD558\uB294 \uC911 \uC624\uB958 \uBC1C\uC0DD: {0}
 xmlrch.chars = \uBB38\uC790:
 xmlrch.badvalue = \uC798\uBABB\uB41C \uAC12: \uB110\uC77C \uC218 \uC5C6\uB294 \uC18D\uC131\uC785\uB2C8\uB2E4.
-xmlrch.badvalue1 = \uC798\uBABB\uB41C \uAC12: \uB110\uC77C \uC218 \uC5C6\uB294 \uBA54\uD0C0 \uB370\uC774\uD130\uC785\uB2C8\uB2E4.
+xmlrch.badvalue1 = \uC798\uBABB\uB41C \uAC12: \uB110\uC77C \uC218 \uC5C6\uB294 \uBA54\uD0C0\uB370\uC774\uD130\uC785\uB2C8\uB2E4.
 xmlrch.warning =  ** \uACBD\uACE0: {0}, \uD589: {1}, URI: {2}
 
 #RIOptimisticProvider Exceptions
diff --git a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_pt_BR.properties b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_pt_BR.properties
index 5f17c81..6a2ebe4 100644
--- a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_pt_BR.properties
+++ b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -153,7 +153,7 @@
 xmlrch.errmetadata = Erro ao definir metadados : {0}
 xmlrch.errinsertval = Erro ao inserir valores : {0}
 xmlrch.errconstr = Erro ao construir a linha : {0}
-xmlrch.errdel = Erro ao deletar a linha : {0}
+xmlrch.errdel = Erro ao excluir a linha : {0}
 xmlrch.errinsert = Erro ao construir a linha de inser\u00E7\u00E3o : {0}
 xmlrch.errinsdel = Erro ao construir a linha insdel : {0}
 xmlrch.errupdate = Erro ao construir a linha de atualiza\u00E7\u00E3o : {0}
diff --git a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties
index 7122a87..1ee2e9a 100644
--- a/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties
+++ b/jdk/src/java.sql.rowset/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -29,11 +29,11 @@
 cachedrowsetimpl.nullhash = Kan inte instansiera CachedRowSetImpl. Null-hashtabell skickades till konstruktor
 cachedrowsetimpl.invalidop = En ogiltig \u00E5tg\u00E4rd utf\u00F6rdes p\u00E5 infogad rad
 cachedrowsetimpl.accfailed = acceptChanges utf\u00F6rdes inte
-cachedrowsetimpl.invalidcp = Mark\u00F6rpositionen \u00E4r ogiltig
+cachedrowsetimpl.invalidcp = Ogiltigt mark\u00F6rl\u00E4ge
 cachedrowsetimpl.illegalop = En otill\u00E5ten \u00E5tg\u00E4rd utf\u00F6rdes p\u00E5 en icke infogad rad
 cachedrowsetimpl.clonefail = Kloningen utf\u00F6rdes inte: {0}
-cachedrowsetimpl.invalidcol = Kolumnindexet \u00E4r ogiltigt
-cachedrowsetimpl.invalcolnm = Kolumnnamnet \u00E4r ogiltigt
+cachedrowsetimpl.invalidcol = Ogiltigt kolumnindex
+cachedrowsetimpl.invalcolnm = Ogiltigt kolumnnamn
 cachedrowsetimpl.boolfail = getBoolen utf\u00F6rdes inte f\u00F6r v\u00E4rdet ({0}) i kolumnen {1}
 cachedrowsetimpl.bytefail = getByte utf\u00F6rdes inte f\u00F6r v\u00E4rdet ({0}) i kolumnen {1}
 cachedrowsetimpl.shortfail = getShort utf\u00F6rdes inte f\u00F6r v\u00E4rdet ({0}) i kolumnen {1}
@@ -60,7 +60,7 @@
 cachedrowsetimpl.movetoins2 = moveToInsertRow: ogiltigt antal kolumner
 cachedrowsetimpl.tablename = Tabellnamnet kan inte vara null
 cachedrowsetimpl.keycols = Ogiltiga nyckelkolumner
-cachedrowsetimpl.invalidcol = Kolumnindexet \u00E4r ogiltigt
+cachedrowsetimpl.invalidcol = Ogiltigt kolumnindex
 cachedrowsetimpl.opnotsupp = Databasen har inte st\u00F6d f\u00F6r denna \u00E5tg\u00E4rd
 cachedrowsetimpl.matchcols = Matchningskolumnerna \u00E4r inte samma som de som st\u00E4llts in
 cachedrowsetimpl.setmatchcols = St\u00E4ll in matchningskolumnerna innan du h\u00E4mtar dem
@@ -77,11 +77,11 @@
 cachedrowsetimpl.fwdonly = ResultSet kan endast g\u00E5 fram\u00E5t
 cachedrowsetimpl.type = Typ: {0}
 cachedrowsetimpl.opnotysupp = Det finns \u00E4nnu inget st\u00F6d f\u00F6r denna \u00E5tg\u00E4rd
-cachedrowsetimpl.featnotsupp = Det finns inget st\u00F6d f\u00F6r denna funktion
+cachedrowsetimpl.featnotsupp = Funktionen st\u00F6ds inte
 
 # WebRowSetImpl exceptions
 webrowsetimpl.nullhash = Kan inte instansiera WebRowSetImpl. Null-hashtabell skickades till konstruktor.
-webrowsetimpl.invalidwr = Ogiltig f\u00F6rfattare
+webrowsetimpl.invalidwr = Ogiltig skrivfunktion
 webrowsetimpl.invalidrd = Ogiltig l\u00E4sare
 
 #FilteredRowSetImpl exceptions
@@ -100,7 +100,7 @@
 joinrowsetimpl.emptyrowset = Tomma radupps\u00E4ttningar kan inte l\u00E4ggas till i denna JoinRowSet
 
 #JdbcRowSetImpl exceptions
-jdbcrowsetimpl.invalstate = Ogiltig status
+jdbcrowsetimpl.invalstate = Ogiltigt tillst\u00E5nd
 jdbcrowsetimpl.connect = JdbcRowSet (anslut) JNDI kan inte anslutas
 jdbcrowsetimpl.paramtype = Kan inte h\u00E4rleda parametertypen
 jdbcrowsetimpl.matchcols = Matchningskolumnerna \u00E4r inte samma som de som st\u00E4llts in
@@ -112,7 +112,7 @@
 jdbcrowsetimpl.usecolid = Anv\u00E4nd kolumn-id som argument f\u00F6r unsetMatchColumn
 jdbcrowsetimpl.resnotupd = ResultSet \u00E4r inte uppdateringsbart
 jdbcrowsetimpl.opnotysupp = Det finns \u00E4nnu inget st\u00F6d f\u00F6r denna \u00E5tg\u00E4rd
-jdbcrowsetimpl.featnotsupp = Det finns inget st\u00F6d f\u00F6r denna funktion
+jdbcrowsetimpl.featnotsupp = Funktionen st\u00F6ds inte
 
 #CachedRowSetReader exceptions
 crsreader.connect = (JNDI) kan inte anslutas
@@ -149,15 +149,15 @@
 wsrxmlwriter.notproper = Ingen riktig typ
 
 #XmlReaderContentHandler exceptions
-xmlrch.errmap = Fel uppstod vid inst\u00E4llning av mappning: {0}
-xmlrch.errmetadata = Fel uppstod vid inst\u00E4llning av metadata: {0}
-xmlrch.errinsertval = Fel uppstod vid infogning av v\u00E4rden: {0}
-xmlrch.errconstr = Fel uppstod vid konstruktion av rad: {0}
-xmlrch.errdel = Fel uppstod vid borttagning av rad: {0}
-xmlrch.errinsert = Fel uppstod vid konstruktion av infogad rad: {0}
-xmlrch.errinsdel = Fel uppstod vid konstruktion av insdel-rad: {0}
-xmlrch.errupdate = Fel uppstod vid konstruktion av uppdateringsrad: {0}
-xmlrch.errupdrow = Fel uppstod vid uppdatering av rad: {0}
+xmlrch.errmap = Ett fel intr\u00E4ffade vid inst\u00E4llning av mappning: {0}
+xmlrch.errmetadata = Ett fel intr\u00E4ffade vid inst\u00E4llning av metadata: {0}
+xmlrch.errinsertval = Ett fel intr\u00E4ffade vid infogning av v\u00E4rden: {0}
+xmlrch.errconstr = Ett fel intr\u00E4ffade vid konstruktion av rad: {0}
+xmlrch.errdel = Ett fel intr\u00E4ffade vid borttagning av rad: {0}
+xmlrch.errinsert = Ett fel intr\u00E4ffade vid konstruktion av infogad rad: {0}
+xmlrch.errinsdel = Ett fel intr\u00E4ffade vid konstruktion av insdel-rad: {0}
+xmlrch.errupdate = Ett fel intr\u00E4ffade vid konstruktion av uppdateringsrad: {0}
+xmlrch.errupdrow = Ett fel intr\u00E4ffade vid uppdatering av rad: {0}
 xmlrch.chars = tecken:
 xmlrch.badvalue = Felaktigt v\u00E4rde; egenskapen kan inte ha ett tomt v\u00E4rde
 xmlrch.badvalue1 = Felaktigt v\u00E4rde; metadatan kan inte ha ett tomt v\u00E4rde
diff --git a/jdk/src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver_zh_CN.properties b/jdk/src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver_zh_CN.properties
index 87a6eb7..9095115 100644
--- a/jdk/src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver_zh_CN.properties
+++ b/jdk/src/jdk.compiler/share/classes/sun/tools/serialver/resources/serialver_zh_CN.properties
@@ -1,6 +1,6 @@
 NotSerializable=\u7C7B{0}\u65E0\u6CD5\u5E8F\u5217\u5316\u3002
 ClassNotFound=\u627E\u4E0D\u5230\u7C7B{0}\u3002
-error.parsing.classpath=\u89E3\u6790\u7C7B\u8DEF\u5F84 {0} \u65F6\u51FA\u9519\u3002
+error.parsing.classpath=\u5BF9\u7C7B\u8DEF\u5F84 {0} \u8FDB\u884C\u89E3\u6790\u65F6\u51FA\u9519\u3002
 error.missing.classpath=\u7F3A\u5C11 -classpath \u9009\u9879\u7684\u53C2\u6570
 invalid.flag=\u65E0\u6548\u6807\u8BB0{0}\u3002
-usage=\u7528\u6CD5: serialver [-classpath \u7C7B\u8DEF\u5F84] [\u7C7B\u540D\u79F0...]
+usage=\u7528\u6CD5: serialver [-classpath classpath] [classname...]
diff --git a/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources.java b/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources.java
index ad7bebf..87c72f2 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources.java
+++ b/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources.java
@@ -249,7 +249,7 @@
         {"no.timestamp.signing",
                 "No -tsa or -tsacert is provided and this jar is not timestamped. Without a timestamp, users may not be able to validate this jar after the signer certificate's expiration date (%1$tY-%1$tm-%1$td)."},
         {"no.timestamp.verifying",
-                "This jar contains signatures that does not include a timestamp. Without a timestamp, users may not be able to validate this jar after the signer certificate's expiration date (%1$tY-%1$tm-%1$td)."},
+                "This jar contains signatures that do not include a timestamp. Without a timestamp, users may not be able to validate this jar after any of the signer certificates expire (as early as %1$tY-%1$tm-%1$td)."},
         {"Unknown.password.type.", "Unknown password type: "},
         {"Cannot.find.environment.variable.",
                 "Cannot find environment variable: "},
diff --git a/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_ja.java b/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_ja.java
index cf89e9a..cdb1bc2 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_ja.java
+++ b/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,6 +44,7 @@
         {"signerClass.is.not.a.signing.mechanism", "{0}\u306F\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u3067\u306F\u3042\u308A\u307E\u305B\u3093"},
         {"jarsigner.error.", "jarsigner\u30A8\u30E9\u30FC: "},
         {"Illegal.option.", "\u4E0D\u6B63\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: "},
+        {"This.option.is.deprecated", "\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u975E\u63A8\u5968\u3067\u3059: "},
         {".keystore.must.be.NONE.if.storetype.is.{0}",
                 "-storetype\u304C{0}\u306E\u5834\u5408\u3001-keystore\u306FNONE\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059"},
         {".keypass.can.not.be.specified.if.storetype.is.{0}",
@@ -73,7 +74,7 @@
         {".digestalg.algorithm.name.of.digest.algorithm",
                 "[-digestalg <algorithm>]    \u30C0\u30A4\u30B8\u30A7\u30B9\u30C8\u30FB\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u306E\u540D\u524D"},
         {".sigalg.algorithm.name.of.signature.algorithm",
-                "[-sigalg <algorithm>]       \u30B7\u30B0\u30CD\u30C1\u30E3\u30FB\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u306E\u540D\u524D"},
+                "[-sigalg <algorithm>]       \u7F72\u540D\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u306E\u540D\u524D"},
         {".verify.verify.a.signed.JAR.file",
                 "[-verify]                   \u7F72\u540D\u4ED8\u304DJAR\u30D5\u30A1\u30A4\u30EB\u306E\u691C\u8A3C"},
         {".verbose.suboptions.verbose.output.when.signing.verifying.",
@@ -88,12 +89,14 @@
                 "[-tsacert <alias>]          \u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u5C40\u306E\u516C\u958B\u9375\u8A3C\u660E\u66F8"},
         {".tsapolicyid.tsapolicyid.for.Timestamping.Authority",
                 "[-tsapolicyid <oid>]        \u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u5C40\u306ETSAPolicyID"},
+        {".tsadigestalg.algorithm.of.digest.data.in.timestamping.request",
+                "[-tsadigestalg <algorithm>] \u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u30FB\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u30C0\u30A4\u30B8\u30A7\u30B9\u30C8\u30FB\u30C7\u30FC\u30BF\u306E\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0"},
         {".altsigner.class.class.name.of.an.alternative.signing.mechanism",
-                "[-altsigner <class>]        \u4EE3\u66FF\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u306E\u30AF\u30E9\u30B9\u540D"},
+                "[-altsigner <class>]        \u4EE3\u66FF\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u306E\u30AF\u30E9\u30B9\u540D\n                            (\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u975E\u63A8\u5968\u306B\u306A\u308A\u307E\u3057\u305F\u3002)"},
         {".altsignerpath.pathlist.location.of.an.alternative.signing.mechanism",
-                "[-altsignerpath <pathlist>] \u4EE3\u66FF\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u306E\u5834\u6240"},
+                "[-altsignerpath <pathlist>] \u4EE3\u66FF\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u306E\u5834\u6240\n                            (\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u975E\u63A8\u5968\u306B\u306A\u308A\u307E\u3057\u305F\u3002)"},
         {".internalsf.include.the.SF.file.inside.the.signature.block",
-                "[-internalsf]               \u30B7\u30B0\u30CD\u30C1\u30E3\u30FB\u30D6\u30ED\u30C3\u30AF\u306B.SF\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3081\u308B"},
+                "[-internalsf]               \u7F72\u540D\u30D6\u30ED\u30C3\u30AF\u306B.SF\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3081\u308B"},
         {".sectionsonly.don.t.compute.hash.of.entire.manifest",
                 "[-sectionsonly]             \u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u5168\u4F53\u306E\u30CF\u30C3\u30B7\u30E5\u306F\u8A08\u7B97\u3057\u306A\u3044"},
         {".protected.keystore.has.protected.authentication.path",
@@ -106,6 +109,8 @@
                 "  [-providerArg <arg>]] ... \u30DE\u30B9\u30BF\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3068\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u5F15\u6570"},
         {".strict.treat.warnings.as.errors",
                 "[-strict]                   \u8B66\u544A\u3092\u30A8\u30E9\u30FC\u3068\u3057\u3066\u51E6\u7406"},
+        {".conf.url.specify.a.pre.configured.options.file",
+                "[-conf <url>]               \u4E8B\u524D\u69CB\u6210\u6E08\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u6307\u5B9A\u3059\u308B"},
         {"Option.lacks.argument", "\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u5F15\u6570\u304C\u3042\u308A\u307E\u305B\u3093"},
         {"Please.type.jarsigner.help.for.usage", "\u4F7F\u7528\u65B9\u6CD5\u306B\u3064\u3044\u3066\u306Fjarsigner -help\u3068\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},
         {"Please.specify.jarfile.name", "jarfile\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044"},
@@ -121,7 +126,7 @@
         {"i", "i"},
         {".and.d.more.", "(\u4ED6\u306B\u3082%d\u500B)"},
         {".s.signature.was.verified.",
-                "  s=\u30B7\u30B0\u30CD\u30C1\u30E3\u304C\u691C\u8A3C\u3055\u308C\u307E\u3057\u305F "},
+                "  s=\u7F72\u540D\u304C\u691C\u8A3C\u3055\u308C\u307E\u3057\u305F "},
         {".m.entry.is.listed.in.manifest",
                 "  m=\u30A8\u30F3\u30C8\u30EA\u304C\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u5185\u306B\u30EA\u30B9\u30C8\u3055\u308C\u307E\u3059"},
         {".k.at.least.one.certificate.was.found.in.keystore",
@@ -131,14 +136,17 @@
         {".X.not.signed.by.specified.alias.es.",
                 "  X =\u6307\u5B9A\u3057\u305F\u5225\u540D\u3067\u7F72\u540D\u3055\u308C\u3066\u3044\u307E\u305B\u3093"},
         {"no.manifest.", "\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3002"},
-        {".Signature.related.entries.","(\u30B7\u30B0\u30CD\u30C1\u30E3\u95A2\u9023\u30A8\u30F3\u30C8\u30EA)"},
+        {".Signature.related.entries.","(\u7F72\u540D\u95A2\u9023\u30A8\u30F3\u30C8\u30EA)"},
         {".Unsigned.entries.", "(\u672A\u7F72\u540D\u306E\u30A8\u30F3\u30C8\u30EA)"},
         {"jar.is.unsigned.signatures.missing.or.not.parsable.",
-                "jar\u306F\u7F72\u540D\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002(\u30B7\u30B0\u30CD\u30C1\u30E3\u304C\u898B\u3064\u304B\u3089\u306A\u3044\u304B\u3001\u69CB\u6587\u89E3\u6790\u3067\u304D\u307E\u305B\u3093)"},
+                "jar\u306F\u7F72\u540D\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002(\u7F72\u540D\u304C\u898B\u3064\u304B\u3089\u306A\u3044\u304B\u3001\u69CB\u6587\u89E3\u6790\u3067\u304D\u307E\u305B\u3093)"},
+        {"jar.signed.", "jar\u306F\u7F72\u540D\u3055\u308C\u307E\u3057\u305F\u3002"},
+        {"jar.signed.with.signer.errors.", "jar\u306F\u7F72\u540D\u3055\u308C\u307E\u3057\u305F - \u7F72\u540D\u8005\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3059\u3002"},
         {"jar.verified.", "jar\u304C\u691C\u8A3C\u3055\u308C\u307E\u3057\u305F\u3002"},
+        {"jar.verified.with.signer.errors.", "jar\u306F\u691C\u8A3C\u3055\u308C\u307E\u3057\u305F - \u7F72\u540D\u8005\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3059\u3002"},
         {"jarsigner.", "jarsigner: "},
         {"signature.filename.must.consist.of.the.following.characters.A.Z.0.9.or.",
-                "\u30B7\u30B0\u30CD\u30C1\u30E3\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u306B\u4F7F\u7528\u3067\u304D\u308B\u6587\u5B57\u306F\u3001A-Z\u30010-9\u3001_\u3001- \u306E\u307F\u3067\u3059\u3002"},
+                "\u7F72\u540D\u306E\u30D5\u30A1\u30A4\u30EB\u540D\u306B\u4F7F\u7528\u3067\u304D\u308B\u6587\u5B57\u306F\u3001A-Z\u30010-9\u3001_\u3001- \u306E\u307F\u3067\u3059\u3002"},
         {"unable.to.open.jar.file.", "\u6B21\u306Ejar\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093: "},
         {"unable.to.create.", "\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093: "},
         {".adding.", "   \u8FFD\u52A0\u4E2D: "},
@@ -179,7 +187,7 @@
         {"certificate.will.expire.on", "\u8A3C\u660E\u66F8\u306F{0}\u306B\u5931\u52B9\u3057\u307E\u3059"},
         {".CertPath.not.validated.", "[CertPath\u304C\u691C\u8A3C\u3055\u308C\u3066\u3044\u307E\u305B\u3093: "},
         {"requesting.a.signature.timestamp",
-                "\u30B7\u30B0\u30CD\u30C1\u30E3\u30FB\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u306E\u30EA\u30AF\u30A8\u30B9\u30C8"},
+                "\u7F72\u540D\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u306E\u30EA\u30AF\u30A8\u30B9\u30C8"},
         {"TSA.location.", "TSA\u306E\u5834\u6240: "},
         {"TSA.certificate.", "TSA\u8A3C\u660E\u66F8: "},
         {"no.response.from.the.Timestamping.Authority.",
@@ -191,6 +199,7 @@
                 "\u4EE3\u66FF\u7F72\u540D\u30E1\u30AB\u30CB\u30BA\u30E0\u306E\u4F7F\u7528"},
         {"entry.was.signed.on", "\u30A8\u30F3\u30C8\u30EA\u306F{0}\u306B\u7F72\u540D\u3055\u308C\u307E\u3057\u305F"},
         {"Warning.", "\u8B66\u544A: "},
+        {"Error.", "\u30A8\u30E9\u30FC: "},
         {"This.jar.contains.unsigned.entries.which.have.not.been.integrity.checked.",
                 "\u3053\u306Ejar\u306B\u306F\u3001\u6574\u5408\u6027\u30C1\u30A7\u30C3\u30AF\u3092\u3057\u3066\u3044\u306A\u3044\u672A\u7F72\u540D\u306E\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002 "},
         {"This.jar.contains.entries.whose.signer.certificate.has.expired.",
@@ -199,6 +208,8 @@
                 "\u3053\u306Ejar\u306B\u306F\u3001\u7F72\u540D\u8005\u306E\u8A3C\u660E\u66F8\u304C6\u304B\u6708\u4EE5\u5185\u306B\u671F\u9650\u5207\u308C\u3068\u306A\u308B\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002 "},
         {"This.jar.contains.entries.whose.signer.certificate.is.not.yet.valid.",
                 "\u3053\u306Ejar\u306B\u306F\u3001\u7F72\u540D\u8005\u306E\u8A3C\u660E\u66F8\u304C\u307E\u3060\u6709\u52B9\u306B\u306A\u3063\u3066\u3044\u306A\u3044\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002 "},
+        {"This.jar.contains.entries.whose.signer.certificate.is.self.signed.",
+                "\u3053\u306Ejar\u306B\u306F\u3001\u7F72\u540D\u8005\u306E\u8A3C\u660E\u66F8\u304C\u81EA\u5DF1\u7F72\u540D\u3055\u308C\u3066\u3044\u308B\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002 "},
         {"Re.run.with.the.verbose.option.for.more.details.",
                 "\u8A73\u7D30\u306F\u3001-verbose\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u3066\u518D\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002"},
         {"Re.run.with.the.verbose.and.certs.options.for.more.details.",
@@ -223,10 +234,18 @@
                  "\u3053\u306Ejar\u306B\u306F\u3001\u7F72\u540D\u8005\u8A3C\u660E\u66F8\u306ENetscapeCertType\u62E1\u5F35\u6A5F\u80FD\u304C\u30B3\u30FC\u30C9\u7F72\u540D\u3092\u8A31\u53EF\u3057\u306A\u3044\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002"},
         {".{0}.extension.does.not.support.code.signing.",
                  "[{0}\u62E1\u5F35\u6A5F\u80FD\u306F\u30B3\u30FC\u30C9\u7F72\u540D\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093]"},
-        {"The.signer.s.certificate.chain.is.not.validated.",
-                "\u7F72\u540D\u8005\u306E\u8A3C\u660E\u66F8\u30C1\u30A7\u30FC\u30F3\u304C\u307E\u3060\u691C\u8A3C\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
-        {"This.jar.contains.entries.whose.certificate.chain.is.not.validated.",
-                 "\u3053\u306Ejar\u306B\u306F\u3001\u8A3C\u660E\u66F8\u30C1\u30A7\u30FC\u30F3\u304C\u307E\u3060\u691C\u8A3C\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002"},
+        {"The.signer.s.certificate.chain.is.not.validated.reason.1",
+                "\u7F72\u540D\u8005\u306E\u8A3C\u660E\u66F8\u30C1\u30A7\u30FC\u30F3\u304C\u307E\u3060\u691C\u8A3C\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u7406\u7531: %s"},
+        {"The.signer.s.certificate.is.self.signed.",
+                "\u7F72\u540D\u8005\u306E\u8A3C\u660E\u66F8\u306F\u81EA\u5DF1\u7F72\u540D\u3055\u308C\u3066\u3044\u307E\u3059\u3002"},
+        {"The.1.algorithm.specified.for.the.2.option.is.considered.a.security.risk.",
+                "%1$s\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0(%2$s\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u6307\u5B9A)\u306F\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u30FB\u30EA\u30B9\u30AF\u3068\u307F\u306A\u3055\u308C\u307E\u3059\u3002"},
+        {"This.jar.contains.entries.whose.certificate.chain.is.not.validated.reason.1",
+                 "\u3053\u306Ejar\u306B\u306F\u3001\u8A3C\u660E\u66F8\u30C1\u30A7\u30FC\u30F3\u304C\u307E\u3060\u691C\u8A3C\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30F3\u30C8\u30EA\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u7406\u7531: %s"},
+        {"no.timestamp.signing",
+                "-tsa\u307E\u305F\u306F-tsacert\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u306A\u3044\u305F\u3081\u3001\u3053\u306Ejar\u306B\u306F\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u4ED8\u52A0\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u306A\u3044\u3068\u3001\u7F72\u540D\u8005\u8A3C\u660E\u66F8\u306E\u6709\u52B9\u671F\u9650(%1$tY-%1$tm-%1$td)\u5F8C\u307E\u305F\u306F\u5C06\u6765\u306E\u5931\u52B9\u65E5\u5F8C\u306B\u3001\u30E6\u30FC\u30B6\u30FC\u306F\u3053\u306Ejar\u3092\u691C\u8A3C\u3067\u304D\u306A\u3044\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002"},
+        {"no.timestamp.verifying",
+                "\u3053\u306Ejar\u306B\u306F\u3001\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u306A\u3044\u7F72\u540D\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059\u3002\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u306A\u3044\u3068\u3001\u7F72\u540D\u8005\u8A3C\u660E\u66F8\u306E\u6709\u52B9\u671F\u9650(%1$tY-%1$tm-%1$td)\u5F8C\u307E\u305F\u306F\u5C06\u6765\u306E\u5931\u52B9\u65E5\u5F8C\u306B\u3001\u30E6\u30FC\u30B6\u30FC\u306F\u3053\u306Ejar\u3092\u691C\u8A3C\u3067\u304D\u306A\u3044\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002"},
         {"Unknown.password.type.", "\u4E0D\u660E\u306A\u30D1\u30B9\u30EF\u30FC\u30C9\u30FB\u30BF\u30A4\u30D7: "},
         {"Cannot.find.environment.variable.",
                 "\u74B0\u5883\u5909\u6570\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: "},
diff --git a/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_zh_CN.java b/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_zh_CN.java
index 0beb62a..de484f0 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_zh_CN.java
+++ b/jdk/src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Resources_zh_CN.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,6 +44,7 @@
         {"signerClass.is.not.a.signing.mechanism", "{0}\u4E0D\u662F\u7B7E\u540D\u673A\u5236"},
         {"jarsigner.error.", "jarsigner \u9519\u8BEF: "},
         {"Illegal.option.", "\u975E\u6CD5\u9009\u9879: "},
+        {"This.option.is.deprecated", "\u6B64\u9009\u9879\u5DF2\u8FC7\u65F6: "},
         {".keystore.must.be.NONE.if.storetype.is.{0}",
                 "\u5982\u679C -storetype \u4E3A {0}, \u5219 -keystore \u5FC5\u987B\u4E3A NONE"},
         {".keypass.can.not.be.specified.if.storetype.is.{0}",
@@ -65,7 +66,7 @@
         {".keypass.password.password.for.private.key.if.different.",
                 "[-keypass <\u53E3\u4EE4>]           \u79C1\u6709\u5BC6\u94A5\u7684\u53E3\u4EE4 (\u5982\u679C\u4E0D\u540C)"},
         {".certchain.file.name.of.alternative.certchain.file",
-                "[-certchain <\u6587\u4EF6>]         \u66FF\u4EE3 certchain \u6587\u4EF6\u7684\u540D\u79F0"},
+                "[-certchain <\u6587\u4EF6>]         \u66FF\u4EE3\u8BC1\u4E66\u94FE\u6587\u4EF6\u7684\u540D\u79F0"},
         {".sigfile.file.name.of.SF.DSA.file",
                 "[-sigfile <\u6587\u4EF6>]           .SF/.DSA \u6587\u4EF6\u7684\u540D\u79F0"},
         {".signedjar.file.name.of.signed.JAR.file",
@@ -88,10 +89,12 @@
                 "[-tsacert <\u522B\u540D>]           \u65F6\u95F4\u6233\u9881\u53D1\u673A\u6784\u7684\u516C\u5171\u5BC6\u94A5\u8BC1\u4E66"},
         {".tsapolicyid.tsapolicyid.for.Timestamping.Authority",
                 "[-tsapolicyid <oid>]        \u65F6\u95F4\u6233\u9881\u53D1\u673A\u6784\u7684 TSAPolicyID"},
+        {".tsadigestalg.algorithm.of.digest.data.in.timestamping.request",
+                "[-tsadigestalg <\u7B97\u6CD5>]      \u65F6\u95F4\u6233\u8BF7\u6C42\u4E2D\u7684\u6458\u8981\u6570\u636E\u7684\u7B97\u6CD5"},
         {".altsigner.class.class.name.of.an.alternative.signing.mechanism",
-                "[-altsigner <\u7C7B>]           \u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236\u7684\u7C7B\u540D"},
+                "[-altsigner <\u7C7B>]           \u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236\u7684\u7C7B\u540D\n                            (\u6B64\u9009\u9879\u5DF2\u8FC7\u65F6\u3002)"},
         {".altsignerpath.pathlist.location.of.an.alternative.signing.mechanism",
-                "[-altsignerpath <\u8DEF\u5F84\u5217\u8868>] \u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236\u7684\u4F4D\u7F6E"},
+                "[-altsignerpath <\u8DEF\u5F84\u5217\u8868>] \u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236\u7684\u4F4D\u7F6E\n                            (\u6B64\u9009\u9879\u5DF2\u8FC7\u65F6\u3002)"},
         {".internalsf.include.the.SF.file.inside.the.signature.block",
                 "[-internalsf]               \u5728\u7B7E\u540D\u5757\u5185\u5305\u542B .SF \u6587\u4EF6"},
         {".sectionsonly.don.t.compute.hash.of.entire.manifest",
@@ -106,6 +109,8 @@
                 "  [-providerArg <\u53C2\u6570>]]... \u4E3B\u7C7B\u6587\u4EF6\u548C\u6784\u9020\u5668\u53C2\u6570"},
         {".strict.treat.warnings.as.errors",
                 "[-strict]                   \u5C06\u8B66\u544A\u89C6\u4E3A\u9519\u8BEF"},
+        {".conf.url.specify.a.pre.configured.options.file",
+                "[-conf <url>]               \u6307\u5B9A\u9884\u914D\u7F6E\u7684\u9009\u9879\u6587\u4EF6"},
         {"Option.lacks.argument", "\u9009\u9879\u7F3A\u5C11\u53C2\u6570"},
         {"Please.type.jarsigner.help.for.usage", "\u8BF7\u952E\u5165 jarsigner -help \u4EE5\u4E86\u89E3\u7528\u6CD5"},
         {"Please.specify.jarfile.name", "\u8BF7\u6307\u5B9A jarfile \u540D\u79F0"},
@@ -134,8 +139,11 @@
         {".Signature.related.entries.","(\u4E0E\u7B7E\u540D\u76F8\u5173\u7684\u6761\u76EE)"},
         {".Unsigned.entries.", "(\u672A\u7B7E\u540D\u6761\u76EE)"},
         {"jar.is.unsigned.signatures.missing.or.not.parsable.",
-                "jar \u672A\u7B7E\u540D\u3002(\u7F3A\u5C11\u7B7E\u540D\u6216\u65E0\u6CD5\u89E3\u6790\u7B7E\u540D)"},
+                "jar \u672A\u7B7E\u540D\u3002(\u7F3A\u5C11\u7B7E\u540D\u6216\u65E0\u6CD5\u5BF9\u7B7E\u540D\u8FDB\u884C\u89E3\u6790)"},
+        {"jar.signed.", "jar \u5DF2\u7B7E\u540D\u3002"},
+        {"jar.signed.with.signer.errors.", "jar \u5DF2\u7B7E\u540D, \u4F46\u51FA\u73B0\u7B7E\u540D\u8005\u9519\u8BEF\u3002"},
         {"jar.verified.", "jar \u5DF2\u9A8C\u8BC1\u3002"},
+        {"jar.verified.with.signer.errors.", "jar \u5DF2\u9A8C\u8BC1, \u4F46\u51FA\u73B0\u7B7E\u540D\u8005\u9519\u8BEF\u3002"},
         {"jarsigner.", "jarsigner: "},
         {"signature.filename.must.consist.of.the.following.characters.A.Z.0.9.or.",
                 "\u7B7E\u540D\u6587\u4EF6\u540D\u5FC5\u987B\u5305\u542B\u4EE5\u4E0B\u5B57\u7B26: A-Z, 0-9, _ \u6216 -"},
@@ -191,6 +199,7 @@
                 "\u6B63\u5728\u4F7F\u7528\u66FF\u4EE3\u7684\u7B7E\u540D\u673A\u5236"},
         {"entry.was.signed.on", "\u6761\u76EE\u7684\u7B7E\u540D\u65E5\u671F\u4E3A {0}"},
         {"Warning.", "\u8B66\u544A: "},
+        {"Error.", "\u9519\u8BEF: "},
         {"This.jar.contains.unsigned.entries.which.have.not.been.integrity.checked.",
                 "\u6B64 jar \u5305\u542B\u5C1A\u672A\u8FDB\u884C\u5B8C\u6574\u6027\u68C0\u67E5\u7684\u672A\u7B7E\u540D\u6761\u76EE\u3002 "},
         {"This.jar.contains.entries.whose.signer.certificate.has.expired.",
@@ -199,6 +208,8 @@
                 "\u6B64 jar \u5305\u542B\u7B7E\u540D\u8005\u8BC1\u4E66\u5C06\u5728\u516D\u4E2A\u6708\u5185\u8FC7\u671F\u7684\u6761\u76EE\u3002 "},
         {"This.jar.contains.entries.whose.signer.certificate.is.not.yet.valid.",
                 "\u6B64 jar \u5305\u542B\u7B7E\u540D\u8005\u8BC1\u4E66\u4ECD\u65E0\u6548\u7684\u6761\u76EE\u3002 "},
+        {"This.jar.contains.entries.whose.signer.certificate.is.self.signed.",
+                "\u6B64 jar \u5305\u542B\u5176\u7B7E\u540D\u8005\u8BC1\u4E66\u4E3A\u81EA\u7B7E\u540D\u8BC1\u4E66\u7684\u6761\u76EE\u3002"},
         {"Re.run.with.the.verbose.option.for.more.details.",
                 "\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u4F7F\u7528 -verbose \u9009\u9879\u91CD\u65B0\u8FD0\u884C\u3002"},
         {"Re.run.with.the.verbose.and.certs.options.for.more.details.",
@@ -223,10 +234,18 @@
                  "\u6B64 jar \u5305\u542B\u7531\u4E8E\u7B7E\u540D\u8005\u8BC1\u4E66\u7684 NetscapeCertType \u6269\u5C55\u800C\u65E0\u6CD5\u8FDB\u884C\u4EE3\u7801\u7B7E\u540D\u7684\u6761\u76EE\u3002"},
         {".{0}.extension.does.not.support.code.signing.",
                  "[{0} \u6269\u5C55\u4E0D\u652F\u6301\u4EE3\u7801\u7B7E\u540D]"},
-        {"The.signer.s.certificate.chain.is.not.validated.",
-                "\u7B7E\u540D\u8005\u7684\u8BC1\u4E66\u94FE\u672A\u9A8C\u8BC1\u3002"},
-        {"This.jar.contains.entries.whose.certificate.chain.is.not.validated.",
-                 "\u6B64 jar \u5305\u542B\u8BC1\u4E66\u94FE\u672A\u9A8C\u8BC1\u7684\u6761\u76EE\u3002"},
+        {"The.signer.s.certificate.chain.is.not.validated.reason.1",
+                "\u7B7E\u540D\u8005\u8BC1\u4E66\u94FE\u672A\u7ECF\u8FC7\u9A8C\u8BC1\u3002\u539F\u56E0: %s"},
+        {"The.signer.s.certificate.is.self.signed.",
+                "\u7B7E\u540D\u8005\u8BC1\u4E66\u4E3A\u81EA\u7B7E\u540D\u8BC1\u4E66\u3002"},
+        {"The.1.algorithm.specified.for.the.2.option.is.considered.a.security.risk.",
+                "\u4E3A %2$s \u9009\u9879\u6307\u5B9A\u7684 %1$s \u7B97\u6CD5\u88AB\u89C6\u4E3A\u5B58\u5728\u5B89\u5168\u98CE\u9669\u3002"},
+        {"This.jar.contains.entries.whose.certificate.chain.is.not.validated.reason.1",
+                 "\u6B64 jar \u5305\u542B\u5176\u8BC1\u4E66\u94FE\u672A\u7ECF\u8FC7\u9A8C\u8BC1\u7684\u6761\u76EE\u3002\u539F\u56E0: %s"},
+        {"no.timestamp.signing",
+                "\u672A\u63D0\u4F9B -tsa \u6216 -tsacert, \u6B64 jar \u6CA1\u6709\u65F6\u95F4\u6233\u3002\u5982\u679C\u6CA1\u6709\u65F6\u95F4\u6233, \u5219\u5728\u7B7E\u540D\u8005\u8BC1\u4E66\u7684\u5230\u671F\u65E5\u671F (%1$tY-%1$tm-%1$td) \u6216\u4EE5\u540E\u7684\u4EFB\u4F55\u64A4\u9500\u65E5\u671F\u4E4B\u540E, \u7528\u6237\u53EF\u80FD\u65E0\u6CD5\u9A8C\u8BC1\u6B64 jar\u3002"},
+        {"no.timestamp.verifying",
+                "\u6B64 jar \u5305\u542B\u7684\u7B7E\u540D\u6CA1\u6709\u65F6\u95F4\u6233\u3002\u5982\u679C\u6CA1\u6709\u65F6\u95F4\u6233, \u5219\u5728\u7B7E\u540D\u8005\u8BC1\u4E66\u7684\u5230\u671F\u65E5\u671F (%1$tY-%1$tm-%1$td) \u6216\u4EE5\u540E\u7684\u4EFB\u4F55\u64A4\u9500\u65E5\u671F\u4E4B\u540E, \u7528\u6237\u53EF\u80FD\u65E0\u6CD5\u9A8C\u8BC1\u6B64 jar\u3002"},
         {"Unknown.password.type.", "\u672A\u77E5\u53E3\u4EE4\u7C7B\u578B: "},
         {"Cannot.find.environment.variable.",
                 "\u627E\u4E0D\u5230\u73AF\u5883\u53D8\u91CF: "},
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_de.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_de.properties
index ab85b0d..e850da1 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_de.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_de.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=\u00D6ffnen nicht m\u00F6glich: {0} 
+error.multiple.main.operations=Sie k\u00F6nnen nicht mehrere "-cuxti"-Optionen angeben
+error.cant.open=\u00D6ffnen nicht m\u00F6glich: {0}
 error.illegal.option=Ung\u00FCltige Option: {0}
+error.unrecognized.option=Unbekannte Option: {0}
+error.missing.arg=F\u00FCr die Option {0} ist ein Argument erforderlich
+error.bad.file.arg=Fehler beim Parsen der Dateiargumente
 error.bad.option=Eine der Optionen -{ctxu} muss angegeben werden.
 error.bad.cflag=Kennzeichen "c" erfordert Angabe von Manifest oder Eingabedateien.
 error.bad.uflag=Kennzeichen "u" erfordert Angabe von Manifest, Kennzeichen "e" oder Eingabedateien.
@@ -34,8 +38,15 @@
 error.create.dir={0}: Verzeichnis konnte nicht erstellt werden
 error.incorrect.length=Falsche L\u00E4nge bei der Verarbeitung: {0}
 error.create.tempfile=Es konnte keine tempor\u00E4re Datei erstellt werden
+error.hash.dep=Abh\u00E4ngigkeiten bei Hashing-Modul {0}. Modul {1} kann nicht im Modulpfad gefunden werden
+error.module.options.without.info=--module-version oder --hash-dependencies ohne module-info.class
+error.unexpected.module-info=Unerwarteter Moduldeskriptor {0}
+error.module.descriptor.not.found=Moduldeskriptor nicht gefunden
+error.missing.provider=Serviceprovider nicht gefunden: {0}
 out.added.manifest=Manifest wurde hinzugef\u00FCgt
+out.added.module-info=module-info.class hinzugef\u00FCgt
 out.update.manifest=Manifest wurde aktualisiert
+out.update.module-info=module-info.class aktualisiert
 out.ignore.entry=Eintrag {0} wird ignoriert
 out.adding={0} wird hinzugef\u00FCgt
 out.deflated=({0} % verkleinert)
@@ -45,4 +56,33 @@
 out.inflated=\ vergr\u00F6\u00DFert: {0}
 out.size=(ein = {0}) (aus = {1})
 
-usage=Verwendung: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] Dateien ...\nOptionen:\n    -c  Neues Archiv erstellen\n    -t  Inhaltsverzeichnis f\u00FCr Archiv anzeigen\n    -x  Benannte (oder alle) Dateien aus dem Archiv extrahieren\n    -u  Vorhandenes Archiv aktualisieren\n    -v  Ausgabe im Verbose-Modus aus Standard-Ausgabe generieren\n    -f  Dateinamen f\u00FCr Archiv angeben\n    -m  Manifest-Informationen aus angegebener Manifest-Datei einschlie\u00DFen\n    -n  Pack200-Normalisierung nach Erstellung eines neuen Archivs ausf\u00FChren\n    -e  Anwendungs-Einstiegspunkt f\u00FCr alleinstehende Anwendung angeben\n        in einer ausf\u00FChrbaren JAR-Datei geb\u00FCndelt\n    -0  nur speichern; keine ZIP-Komprimierung verwenden\n    -M  keine Manifest-Datei f\u00FCr die Eintr\u00E4ge erstellen\n    -i  Index-Informationen f\u00FCr die angegebenen JAR-Dateien generieren\n    -C  zu angegebenem Verzeichnis wechseln und die folgende Datei einschlie\u00DFen\nDateien, die Verzeichnisse sind, werden rekursiv verarbeitet.\nDie Namen der Manifest-Datei, der Archiv-Datei und des Einstiegspunkts sind\nin derselben Reihenfolge wie die Kennzeichen f\u00FCr "m", "f" und "e" angegeben.\n\nBeispiel 1: Archivieren von zwei Klassendateien in einem Archiv mit dem Namen "classes.jar": \n       jar cvf classes.jar Foo.class Bar.class \nBeispiel 2: Verwenden einer vorhandenen Manifest-Datei mit dem Namen "mymanifest" und Archivieren aller\n           Dateien im Verzeichnis mit dem Namen "foo/" in die Archiv-Datei "classes.jar": \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=Kompatibilit\u00E4tsschnittstelle:\nVerwendung: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] Dateien...\nOptionen:\n    -c  Neues Archiv erstellen\n    -t  Inhaltsverzeichnis f\u00FCr Archiv anzeigen\n    -x  Benannte (oder alle) Dateien aus Archiv extrahieren\n    -u  Vorhandenes Archiv aktualisieren\n    -v  Ausgabe im Verbose-Modus aus Standardausgabe generieren\n    -f  Dateinamen f\u00FCr Archiv angeben\n    -m  Manifestinformationen aus angegebener Manifestdatei einschlie\u00DFen\n    -n  Pack200-Normalisierung nach Erstellung eines neuen Archivs ausf\u00FChren\n    -e  Anwendungseinstiegspunkt f\u00FCr Standalone-Anwendung angeben, \n        die in einer ausf\u00FChrbaren JAR-Datei geb\u00FCndelt ist\n    -0  Nur speichern; keine ZIP-Komprimierung verwenden\n    -P  Komponenten mit vorangestelltem "/" (absoluter Pfad) und ".." (\u00FCbergeordnetes Verzeichnis) aus Dateinamen beibehalten\n    -M  Keine Manifestdatei f\u00FCr die Eintr\u00E4ge erstellen\n    -i  Indexinformationen f\u00FCr die angegebenen JAR-Dateien erstellen\n    -C  Zum angegebenen Verzeichnis wechseln und folgende Datei einschlie\u00DFen\nFalls eine Datei ein Verzeichnis ist, wird dieses rekursiv verarbeitet.\nDer Name der Manifestdatei, der Name der Archivdatei und der Name des Einstiegspunkts werden\nin derselben Reihenfolge wie die Kennzeichen "m", "f" und "e" angegeben.\n\nBeispiel 1: Archivieren Sie zwei Klassendateien in ein Archiv mit Namen "classes.jar": \n       jar cvf classes.jar Foo.class Bar.class \nBeispiel 2: Verwenden Sie die vorhandene Manifestdatei "mymanifest", und archivieren Sie alle\n           Dateien im Verzeichnis foo/ in "classes.jar": \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: Sie m\u00FCssen eine -ctxui-Option angeben.
+main.usage.summary.try=Verwenden Sie "jar --help", um weitere Informationen anzuzeigen.
+
+main.help.preopt=Verwendung: jar [OPTION...] [-C dir] files ...\njar erstellt ein Archiv f\u00FCr Klassen und Ressourcen und kann individuelle\nKlassen oder Ressourcen aus einem Archiv bearbeiten oder wiederherstellen.\n\n Beispiele:\n # Ein Archiv namens classes.jar mit zwei Klassendateien erstellen:\n jar --create --file classes.jar Foo.class Bar.class\n # Ein Archiv mit einem vorhandenen Manifest mit allen Dateien in foo/ erstellen:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # Ein modulares JAR-Archiv erstellen, dessen Moduldeskriptor sich in\n # classes/module-info.class befindet:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # Ein vorhandenes nicht modulares JAR-Archiv in ein modulares JAR-Archiv aktualisieren:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ Hauptvorgangsmodus:\n
+main.help.opt.main.create=\  -c, --create               Archiv erstellen
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  Indexinformationen f\u00FCr die angegebenen JAR-\n                             Archive generieren
+main.help.opt.main.list=\  -t, --list                 Das Inhaltsverzeichnis f\u00FCr das Archiv auflisten
+main.help.opt.main.update=\  -u, --update               Ein vorhandenes JAR-Archiv aktualisieren
+main.help.opt.main.extract=\  -x, --extract              Benannte (oder alle) Dateien aus dem Archiv extrahieren
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  Moduldeskriptor drucken
+main.help.opt.any=\ In jedem Modus g\u00FCltige Vorgangsmodifikatoren:\n\n  -C DIR                     Zum angegebenen Verzeichnis wechseln und die folgende\n                             Datei aufnehmen
+main.help.opt.any.file=\  -f, --file=FILE            Der Archivdateiname
+main.help.opt.any.verbose=\  -v, --verbose              Verbose-Ausgabe bei Standardausgabe generieren
+main.help.opt.create.update=\ Vorgangsmodifikatoren, die nur im Erstellungs- und Aktualisierungsmodus g\u00FCltig sind:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME Der Anwendungseinstiegspunkt f\u00FCr Standalone-\n                             Anwendungen, die in einem modularen oder ausf\u00FChrbaren\n                             JAR-Archiv geb\u00FCndelt sind
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        Die Manifestinformationen aus der angegebenen\n                             Manifestdatei aufnehmen
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          Keine Manifestdatei f\u00FCr die Eintr\u00E4ge erstellen
+main.help.opt.create.update.module-version=\      --module-version=VERSION    Die Modulversion beim Erstellen eines modularen\n                             JAR-Archivs oder Aktualisieren eines nicht modularen JAR-Archivs
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  Die Hashes von Modulabh\u00E4ngigkeiten\n                             entsprechend dem angegebenen Muster beim Erstellen eines\n                             modularen JAR-Archivs oder Aktualisieren eines nicht modularen\n                             JAR-Archivs berechnen und aufzeichnen
+main.help.opt.create.update.modulepath=\      --modulepath           Ort von Modulabh\u00E4ngigkeit zum Generieren
+\                             des Hash
+main.help.opt.create.update.index=\ Vorgangsmodifikatoren, die nur im Erstellungs-, Aktualisierungs- und Indexgenerierungsmodus g\u00FCltig sind:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          Nur speichern, keine ZIP-Komprimierung verwenden
+main.help.opt.other=\ Weitere Optionen:\n
+main.help.opt.other.help=\  -?, --help[:compat]        Diese Meldung oder optional die Kompatibilit\u00E4t, Hilfe angeben
+main.help.opt.other.version=\      --version              Programmversion ausgeben
+main.help.postopt=\ Ein Archiv ist ein modulares JAR-Archiv, wenn der Moduldeskriptor "module-info.class"\n in der Root der angegebenen Verzeichnisse oder in der Root des JAR-Archivs selbst\n vorhanden ist. Die folgenden Vorg\u00E4nge sind nur g\u00FCltig, wenn Sie ein modulares JAR-Archiv\n erstellen oder ein vorhandenes nicht modulares JAR-Archiv aktualisieren: "--module-version",\n "--hash-dependencies" und "--modulepath".\n\n Obligatorische oder optionale Argumente zu langen Optionen sind auch f\u00FCr die jeweils\n zugeh\u00F6rigen kurzen Optionen obligatorisch oder optional.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_es.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_es.properties
index 94b46d7..6032df4 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_es.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_es.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=no se puede abrir: {0} 
+error.multiple.main.operations=No se puede especificar m\u00E1s de una opci\u00F3n '-cuxti'
+error.cant.open=no se puede abrir: {0}
 error.illegal.option=Opci\u00F3n no permitida: {0}
+error.unrecognized.option=opci\u00F3n no reconocida: {0}
+error.missing.arg=la opci\u00F3n {0} necesita un argumento
+error.bad.file.arg=Error al analizar los argumentos de archivo
 error.bad.option=Se debe especificar una de las opciones -{ctxu}.
 error.bad.cflag=El indicador 'c' necesita la especificaci\u00F3n de archivos de manifiesto o de entrada.
 error.bad.uflag=El indicador 'u' necesita la especificaci\u00F3n de archivos de manifiesto, de entrada o indicador 'e'.
@@ -34,8 +38,15 @@
 error.create.dir={0} : no se ha podido crear el directorio
 error.incorrect.length=longitud incorrecta al procesar: {0}
 error.create.tempfile=No se ha podido crear el archivo temporal
+error.hash.dep=Aplicando hash a las dependencias del m\u00F3dulo {0}, no se ha encontrado el m\u00F3dulo {1} en la ruta del m\u00F3dulo
+error.module.options.without.info=Una de las dependencias --module-version o --hash-dependencies sin module-info.class
+error.unexpected.module-info=Descriptor de m\u00F3dulo inesperado {0}
+error.module.descriptor.not.found=No se ha encontrado el descriptor de m\u00F3dulo
+error.missing.provider=No se ha encontrado el proveedor de servicios: {0}
 out.added.manifest=manifiesto agregado
+out.added.module-info=module-info.class agregado
 out.update.manifest=manifiesto actualizado
+out.update.module-info=module-info.class actualizado
 out.ignore.entry=ignorando entrada {0}
 out.adding=agregando: {0}
 out.deflated=(desinflado {0}%)
@@ -45,4 +56,33 @@
 out.inflated=\ inflado: {0}
 out.size=(entrada = {0}) (salida = {1})
 
-usage=Sintaxis: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] archivos...\nOpciones:\n    -c  crear nuevo archivo\n    -t  crear la tabla de contenido del archivo\n    -x  extraer el archive mencionado (o todos) del archivo\n    -u  actualizar archive existente\n    -v  generar salida detallada de los datos de salida est\u00E1ndar\n    -f  especificar nombre de archive de almacenamiento\n    -m  incluir informaci\u00F3n de manifiesto del archive de manifiesto especificado\n    -n  realizar normalizaci\u00F3n de Pack200 despu\u00E9s de crear un nuevo archivo\n    -e  especificar punto de entrada de la aplicaci\u00F3n para la aplicaci\u00F3n aut\u00F3noma \n        que se incluye dentro de un archive jar ejecutable\n    -0  s\u00F3lo almacenar; no utilizar compresi\u00F3n ZIP\n    -M  no crear un archive de manifiesto para las entradas\n    -i  generar informaci\u00F3n de \u00EDndice para los archives jar especificados\n    -C  cambiar al directorio especificado e incluir el archivo siguiente\nSi alg\u00FAn archivo es un directorio, se procesar\u00E1 de forma recurrente.\nEl nombre del archivo de manifiesto, el nombre del archivo de almacenamiento y el nombre del punto de entrada se\nespecifican en el mismo orden que los indicadores 'm', 'f' y 'e'.\n\nEjemplo 1: para archivar archivos de dos clases en un archivo llamado classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nEjemplo 2: utilice un archivo de manifiesto existente 'mymanifest' y archive todos los\n           archivos del directorio foo/ en 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=Interfaz de compatibilidad:\nSintaxis: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\nOpciones:\n    -c  crear nuevo archivo\n    -t  crear la tabla de contenido del archivo\n    -x   extraer el archivo mencionado (o todos) del archivo\n    -u  actualizar archivo existente\n    -v  generar salida detallada de los datos de salida est\u00E1ndar\n    -f  especificar nombre de archivo de almacenamiento\n    -m  incluir informaci\u00F3n de manifiesto del archivo de manifiesto especificado\n    -e  especificar punto de entrada de la aplicaci\u00F3n para la aplicaci\u00F3n aut\u00F3noma \n        que se incluye dentro de un archivo jar ejecutable\n    -0  s\u00F3lo almacenar; no utilizar compresi\u00F3n ZIP\n    -P  conservar componentes iniciales '/' (ruta absoluta) y ".." (directorio principal) en los nombres de archivo\n    -M  no crear un archivo de manifiesto para las entradas\n    -i  generar informaci\u00F3n de \u00EDndice para los archivos jar especificados\n    -C  cambiar al directorio especificado e incluir el archivo siguiente\nSi alg\u00FAn archivo es un directorio, se procesar\u00E1 de forma recurrente.\nEl nombre del archivo de manifiesto, el nombre del archivo de almacenamiento y el nombre del punto de entrada se\nespecifican en el mismo orden que los indicadores 'm', 'f' y 'e'.\n\nEjemplo 1: para archivar archivos de dos clases en un archivo llamado classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nEjemplo 2: utilice un archivo de manifiesto existente 'mymanifest' y archive todos los\n           archivos del directorio foo/ en 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: Debe especificar una de las opciones -ctxui.
+main.usage.summary.try=Intente `jar --help' para obtener m\u00E1s informaci\u00F3n.
+
+main.help.preopt=Sintaxis: archivos jar [OPTION...] [-C dir] ...\njar crea un archivo para las clases y recursos y puede manipular o\nrestaurar clases individuales o recursos de un archivo.\n\n Ejemplos:\n # Crear un archivo denominado classes.jar con dos archivos de clase:\n jar --create --file classes.jar Foo.class Bar.class\n # Crear un archivo con un manifiesto existente, con todos los archivos en foo/:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # Crear un archivo jar modular, donde el descriptor de m\u00F3dulo est\u00E1 en\n # classes/module-info.class:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # actualizar un jar no modular en un jar modular:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ Modo de operaci\u00F3n principal:\n
+main.help.opt.main.create=\  -c, --create               Crear el archivo
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  Generar informaci\u00F3n de \u00EDndice para los archivos jar\n                             especificados
+main.help.opt.main.list=\  -t, --list                 Mostrar la tabla de contenido del archivo
+main.help.opt.main.update=\  -u, --update               Actualizar un archivo jar existente
+main.help.opt.main.extract=\  -x, --extract              Extraer determinados (o todos) los archivos del archivo
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  Imprimir el descriptor de m\u00F3dulo
+main.help.opt.any=\ Modificadores de operaci\u00F3n v\u00E1lidos en cualquier modo:\n\n  -C DIR                     Cambiar al directorio especificado e incluir el\n                             siguiente archivo
+main.help.opt.any.file=\  -f, --file=FILE            Nombre del archivo
+main.help.opt.any.verbose=\  -v, --verbose              Generar salida verbose en salida est\u00E1ndar
+main.help.opt.create.update=\ Modificadores de operaci\u00F3n v\u00E1lidos solo en el modo de creaci\u00F3n y de actualizaci\u00F3n:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME Punto de entrada de la aplicaci\u00F3n para aplicaciones\n                             aut\u00F3nomas agrupadas en un archivo jar modular o\n                             ejecutable
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        Incluir la informaci\u00F3n de manifiesto del archivo\n                             de manifiesto proporcionado
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          No crear ning\u00FAn archivo de manifiesto para las entradas
+main.help.opt.create.update.module-version=\      --module-version=VERSION    Versi\u00F3n del m\u00F3dulo, si se va a crear un archivo jar modular\n                             o actualizar un archivo jar no modular
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  Calcular y registrar los hash de dependencias\n                             de m\u00F3dulo que coinciden con el patr\u00F3n proporcionado, si se va a crear\n                             un archivo jar modular o actualizar un archivo jar no\n                             modular
+main.help.opt.create.update.modulepath=\      --modulepath           Ubicaci\u00F3n de la dependencia de m\u00F3dulo para generaci\u00F3n
+\                             hash
+main.help.opt.create.update.index=\ Modificadores de operaci\u00F3n v\u00E1lidos solo en el modo de creaci\u00F3n, actualizaci\u00F3n y generaci\u00F3n de \u00EDndice:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          Solo almacenar; no usar compresi\u00F3n ZIP
+main.help.opt.other=\ Otras opciones:\n
+main.help.opt.other.help=\  -?, --help[:compat]        Utilice este valor, u opcionalmente la compatibilidad, ayuda
+main.help.opt.other.version=\      --version              Imprimir versi\u00F3n del programa
+main.help.postopt=\ Un archivo es un jar modular si el descriptor de m\u00F3dulo, 'module-info.class', est\u00E1\n en la ra\u00EDz de los directorios proporcionados o en la ra\u00EDz del archivo jar.\n Las siguientes operaciones solo son v\u00E1lidas si se va a crear un jar modular\n o se va a actualizar un jar existente no modular: '--module-version',\n '--hash-dependencies', y '--modulepath'.\n\n Los argumentos obligatorios u opcionales en las opciones largas tambi\u00E9n son obligatorios u opcionales\n en cualquiera de las opciones cortas.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_fr.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_fr.properties
index 9d05de5..014aec7 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_fr.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_fr.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=impossible d''ouvrir : {0} 
+error.multiple.main.operations=Vous ne pouvez pas sp\u00E9cifier plus d'une option '-cuxti'
+error.cant.open=impossible d''ouvrir : {0}
 error.illegal.option=Option non admise : {0}
+error.unrecognized.option=option non reconnue : {0}
+error.missing.arg=l''option {0} exige un argument
+error.bad.file.arg=Erreur lors de l'analyse des arguments de fichier
 error.bad.option=Une des options -{ctxu} doit \u00EAtre sp\u00E9cifi\u00E9e.
 error.bad.cflag=L'indicateur c requiert la sp\u00E9cification d'un fichier manifeste ou d'un fichier d'entr\u00E9e.
 error.bad.uflag=L'indicateur u requiert la sp\u00E9cification d'un fichier manifeste, d'un fichier d'entr\u00E9e ou d'un indicateur e.
@@ -34,8 +38,15 @@
 error.create.dir={0} : impossible de cr\u00E9er le r\u00E9pertoire
 error.incorrect.length=longueur incorrecte lors du traitement de : {0}
 error.create.tempfile=Impossible de cr\u00E9er un fichier temporaire
+error.hash.dep=Hachage des d\u00E9pendances du module {0}, module {1} introuvable sur le chemin de module
+error.module.options.without.info=Une des options --module-version ou --hash-dependencies sans module-info.class
+error.unexpected.module-info=Descripteur de module {0} inattendu
+error.module.descriptor.not.found=Descripteur de module introuvable
+error.missing.provider=Fournisseur de services introuvable : {0}
 out.added.manifest=manifeste ajout\u00E9
+out.added.module-info=module-info.class ajout\u00E9
 out.update.manifest=manifeste mis \u00E0 jour
+out.update.module-info=module-info.class mis \u00E0 jour
 out.ignore.entry=entr\u00E9e {0} ignor\u00E9e
 out.adding=ajout : {0}
 out.deflated=(compression : {0} %)
@@ -45,4 +56,33 @@
 out.inflated=\ d\u00E9compress\u00E9 : {0}
 out.size=(entr\u00E9e = {0}) (sortie = {1})
 
-usage=Syntaxe : jar {ctxui}[vfmn0Me] [fichier-jar] [fichier-manifeste] [point-entr\u00E9e] [-C r\u00E9p] fichiers...\nOptions :\n    -c  cr\u00E9e une archive\n    -t  affiche la table des mati\u00E8res de l'archive\n    -x  extrait les fichiers nomm\u00E9s (ou tous les fichiers) de l'archive\n    -u  met \u00E0 jour l'archive existante\n    -v  g\u00E9n\u00E8re une version d\u00E9taill\u00E9e d'une sortie standard\n    -f  sp\u00E9cifie le nom du fichier archive\n    -m  inclut les informations de manifeste \u00E0 partir du fichier manifeste sp\u00E9cifi\u00E9\n    -n  effectue une normalisation Pack200 apr\u00E8s la cr\u00E9ation d'une archive\n    -e  sp\u00E9cifie le point d'entr\u00E9e d'une application en mode autonome \n        int\u00E9gr\u00E9e \u00E0 un fichier JAR ex\u00E9cutable\n    -0  stockage uniquement, pas de compression ZIP\n    -M  ne cr\u00E9e pas de fichier manifeste pour les entr\u00E9es\n    -i  g\u00E9n\u00E8re les informations d'index des fichiers JAR sp\u00E9cifi\u00E9s\n    -C  passe au r\u00E9pertoire sp\u00E9cifi\u00E9 et inclut le fichier suivant\nSi l'un des fichiers est un r\u00E9pertoire, celui-ci est trait\u00E9 r\u00E9cursivement.\nLes noms du fichier manifeste, du fichier d'archive et du point d'entr\u00E9e sont\nsp\u00E9cifi\u00E9s dans le m\u00EAme ordre que celui des indicateurs m, f et e.\n\nExemple 1 : pour archiver deux fichiers de classe dans une archive intitul\u00E9e classes.jar : \n       jar cvf classes.jar Foo.class Bar.class \nExemple 2 : pour utiliser un fichier manifeste existant 'monmanifeste', puis archiver tous les\n           fichiers du r\u00E9pertoire foo/ dans 'classes.jar' : \n       jar cvfm classes.jar monmanifeste -C foo/ .\n
+usage.compat=Interface de compatibilit\u00E9 :\nSyntaxe : jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\nOptions :\n    -c  cr\u00E9e une archive\n    -t  affiche la table des mati\u00E8res de l'archive\n    -x  extrait des fichiers nomm\u00E9s (ou tous les fichiers) de l'archive\n    -u  met \u00E0 jour l'archive existante\n    -v  g\u00E9n\u00E8re une sortie en mode verbose d'une sortie standard\n    -f  sp\u00E9cifie le nom de fichier d'archive\n    -m  inclut les informations de manifeste \u00E0 partir du fichier manifeste sp\u00E9cifi\u00E9\n    -n  effectue une normalisation Pack200 apr\u00E8s la cr\u00E9ation d'une archive\n    -e  sp\u00E9cifie le point d'entr\u00E9e d'une application en mode autonome \n        int\u00E9gr\u00E9e \u00E0 un fichier JAR ex\u00E9cutable\n    -0  stockage uniquement, pas de compression ZIP\n    -P  pr\u00E9serve les signes de d\u00E9but '/' (chemin absolu) et ".." (r\u00E9pertoire parent) dans les noms de fichier\n    -M  ne cr\u00E9e pas de fichier manifeste pour les entr\u00E9es\n    -i  g\u00E9n\u00E8re les informations d'index des fichiers JAR sp\u00E9cifi\u00E9s\n    -C  passe au r\u00E9pertoire sp\u00E9cifi\u00E9 et inclut le fichier suivant\nSi l'un des fichiers est un r\u00E9pertoire, celui-ci est trait\u00E9 r\u00E9cursivement.\nLes noms du fichier manifeste, du fichier d'archive et du point d'entr\u00E9e sont\nsp\u00E9cifi\u00E9s dans le m\u00EAme ordre que celui des indicateurs m, f et e.\n\nExemple 1 : pour archiver deux fichiers de classe dans une archive intitul\u00E9e classes.jar : \n       jar cvf classes.jar Foo.class Bar.class \nExemple 2 : pour utiliser un fichier manifeste existant 'mymanifest', puis archiver tous les\n           fichiers du r\u00E9pertoire foo/ dans 'classes.jar' : \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar : vous devez sp\u00E9cifier l'une des options -ctxui.
+main.usage.summary.try=Pour plus d'informations, essayez 'jar --help'.
+
+main.help.preopt=Syntaxe : jar [OPTION...] [-C dir] files ...\njar cr\u00E9e une archive pour les classes et les ressources, et peut manipuler ou\nrestaurer les classes ou ressources individuelles \u00E0 partir d'une archive.\n\n Exemples :\n # Cr\u00E9ation d'une archive nomm\u00E9e classes.jar compos\u00E9e de deux fichiers de classe :\n jar --create --file classes.jar Foo.class Bar.class\n # Cr\u00E9ation d'une archive \u00E0 l'aide d'un manifeste existant, avec tous les fichiers dans foo/ :\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # Cr\u00E9ation d'une archive JAR modulaire, o\u00F9 le descripteur de module est situ\u00E9 dans\n # classes/module-info.class :\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # Mise \u00E0 jour d'un fichier JAR non modulaire existant vers un fichier JAR modulaire :\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ Mode d'exploitation principal :\n
+main.help.opt.main.create=\  -c, --create               Cr\u00E9e l'archive
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  G\u00E9n\u00E8re des informations d'index pour les archives JAR\n                             indiqu\u00E9es
+main.help.opt.main.list=\  -t, --list                 Affiche la table des mati\u00E8res de l'archive
+main.help.opt.main.update=\  -u, --update               Met \u00E0 jour une archive JAR existante
+main.help.opt.main.extract=\  -x, --extract              Extrait des fichiers nomm\u00E9s (ou tous les fichiers) de l'archive
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  Imprime le descripteur de module
+main.help.opt.any=\ Modificateurs d'op\u00E9ration valides pour tous les modes :\n\n  -C DIR                     Passe au r\u00E9pertoire sp\u00E9cifi\u00E9 et inclut le\n                             fichier suivant
+main.help.opt.any.file=\  -f, --file=FILE            Nom de fichier d'archive
+main.help.opt.any.verbose=\  -v, --verbose              G\u00E9n\u00E8re une sortie en mode verbose d'une sortie standard
+main.help.opt.create.update=\ Modificateurs d'op\u00E9ration valides uniquement en modes create et update :\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME Point d'entr\u00E9e d'une application en mode autonome\n                             int\u00E9gr\u00E9e \u00E0 une archive JAR modulaire\n                             ou ex\u00E9cutable
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        Inclut les informations de manifeste du fichier\n                             manifeste donn\u00E9
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          Ne cr\u00E9e pas de fichier manifeste pour les entr\u00E9es
+main.help.opt.create.update.module-version=\      --module-version=VERSION    Version de module lors de la cr\u00E9ation d'un fichier JAR\n                             modulaire ou de la mise \u00E0 jour d'un fichier JAR non modulaire
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  Calcule et enregistre les hachages des d\u00E9pendances\n                             de module mises en correspondance d'apr\u00E8s le mod\u00E8le donn\u00E9, lors\n                             de la cr\u00E9ation d'un JAR modulaire ou de la mise \u00E0 jour d'un JAR\n                             non modulaire
+main.help.opt.create.update.modulepath=\      --modulepath           Emplacement d'une d\u00E9pendance de module pour la g\u00E9n\u00E9ration
+\                             du hachage
+main.help.opt.create.update.index=\ Modificateurs d'op\u00E9ration valides uniquement en modes create, update et generate-index :\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          Stocke uniquement ; n'utilise pas de compression ZIP
+main.help.opt.other=\ Autres options :\n
+main.help.opt.other.help=\  -?, --help[:compat]        Affiche l'aide ou \u00E9ventuellement la compatibilit\u00E9
+main.help.opt.other.version=\      --version              Imprime la version de programme
+main.help.postopt=\ Une archive est un fichier JAR modulaire si un descripteur de module, 'module-info.class', se\n trouve dans la racine des r\u00E9pertoires donn\u00E9s ou dans la racine de l'archive JAR\n elle-m\u00EAme. Les op\u00E9rations suivantes sont valides uniquement lors de la cr\u00E9ation d'un fichier JAR modulaire\n ou de la mise \u00E0 jour d'un fichier JAR non modulaire existant : '--module-version',\n '--hash-dependencies' et '--modulepath'.\n\n Les arguments obligatoires ou facultatifs pour les options longues sont \u00E9galement obligatoires ou facultatifs\n pour toute option courte correspondante.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_it.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_it.properties
index 5445efa..7860954 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_it.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_it.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=impossibile aprire: {0} 
+error.multiple.main.operations=Impossibile specificare pi\u00F9 di un'opzione '-cuxti'
+error.cant.open=impossibile aprire: {0}
 error.illegal.option=Opzione non valida: {0}
+error.unrecognized.option=opzione non riconosciuta: {0}
+error.missing.arg=l''opzione {0} richiede un argomento
+error.bad.file.arg=Errore durante l'analisi degli argomenti del file
 error.bad.option=\u00C8 necessario specificare una delle opzioni -{ctxu}.
 error.bad.cflag=Per il flag 'c' \u00E8 necessario specificare file manifest o di input.
 error.bad.uflag=Per il flag 'u' \u00E8 necessario specificare il flag 'e' oppure file manifest o di input.
@@ -34,8 +38,15 @@
 error.create.dir={0} : impossibile creare la directory
 error.incorrect.length=lunghezza non valida durante l''elaborazione: {0}
 error.create.tempfile=Impossibile creare il file temporaneo.
+error.hash.dep={0} dipendenze del modulo di hashing. Impossibile trovare il modulo {1} nel percorso del modulo
+error.module.options.without.info=Una delle opzioni --module-version o --hash-dependencies non contiene module-info.class
+error.unexpected.module-info=Descrittore di modulo {0} imprevisto
+error.module.descriptor.not.found=Descrittore di modulo non trovato
+error.missing.provider=Provider di servizi non trovato: {0}
 out.added.manifest=aggiunto manifest
+out.added.module-info=module-info.class aggiunto
 out.update.manifest=aggiornato manifest
+out.update.module-info=module-info.class aggiornato
 out.ignore.entry=la voce {0} sar\u00E0 ignorata
 out.adding=aggiunta in corso di: {0}
 out.deflated=(compresso {0}%)
@@ -45,4 +56,33 @@
 out.inflated=\ decompresso: {0}
 out.size=(in = {0}) (out = {1})
 
-usage=Uso: jar {ctxui}[vfmn0Me] [file-jar] [file-manifest] [punto di ingresso] [-C dir] file ...\nOpzioni:\n    -c  crea un nuovo archivio\n    -t  visualizza l'indice dell'archivio\n    -x  estrae i file con nome (o tutti i file) dall'archivio\n    -u  aggiorna l'archivio esistente\n    -v  genera output commentato dall'output standard\n    -f  specifica il nome file dell'archivio\n    -m  include informazioni manifest dal file manifest specificato\n    -n  esegue la normalizzazione Pack200 dopo la creazione di un nuovo archivio\n    -e  specifica il punto di ingresso per l'applicazione standalone \n        inclusa nel file jar eseguibile\n    -0  solo memorizzazione; senza compressione ZIP\n    -M  consente di non creare un file manifest per le voci\n    -i  genera informazioni sull'indice per i file jar specificati\n    -C  imposta la directory specificata e include il file seguente\nSe un file \u00E8 una directory, verr\u00E0 elaborato in modo ricorsivo.\nIl nome del file manifest, del file di archivio e del punto di ingresso devono\nessere specificati nello stesso ordine dei flag 'm', 'f' ed 'e'.\n\nEsempio 1: archiviazione di due file di classe in un archivio con il nome classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nEsempio 2: utilizzo del file manifest esistente 'mymanifest' e archiviazione di tutti i\n           file della directory foo/ in 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=Interfaccia di compatibilit\u00E0:\nUso: jar {ctxui}[vfmn0PMe] [file-jar] [file-manifest] [punto di ingresso] [-C dir] file ...\nOpzioni:\n    -c  crea un nuovo archivio\n    -t  visualizza l'indice dell'archivio\n    -x  estrae i file con nome (o tutti i file) dall'archivio\n    -u  aggiorna l'archivio esistente\n    -v  genera output commentato dall'output standard\n    -f  specifica il nome file dell'archivio\n    -m  include informazioni manifest dal file manifest specificato\n    -n  esegue la normalizzazione Pack200 dopo la creazione di un nuovo archivio\n    -e  specifica il punto di ingresso per l'applicazione stand-alone \n        inclusa nel file jar eseguibile\n    -0  solo memorizzazione; senza compressione ZIP\n    -P  conserva i componenti iniziali '/' (percorso assoluto) e \\"..\\" (directory padre) dai nomi file\n    -M  consente di non creare un file manifest per le voci\n    -i  genera informazioni sull'indice per i file jar specificati\n    -C  imposta la directory specificata e include il file seguente\nSe un file \u00E8 una directory, verr\u00E0 elaborato in modo ricorsivo.\nIl nome del file manifest, del file di archivio e del punto di ingresso devono\nessere specificati nello stesso ordine dei flag 'm', 'f' ed 'e'.\n\nEsempio 1: archiviazione di due file di classe in un archivio con il nome classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nEsempio 2: utilizzo del file manifest esistente 'mymanifest' e archiviazione di tutti i\n           file della directory foo/ in 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: \u00E8 necessario specificare una delle opzioni -ctxui.
+main.usage.summary.try=Utilizzare 'jar --help' per ulteriori informazioni.
+
+main.help.preopt=Uso: jar [OPTION...] [-C dir] file ...\nil file jar crea un archivio per le classi e le risorse e pu\u00F2 manipolare o\nripristinare le singole classi o risorse da un archivio.\n\n Esempi:\n # Crea un archivio denominato classes.jar con due file di classe:\n jar --create --file classes.jar Foo.class Bar.class\n # Crea un archivio mediante un file manifest esistente, con tutti i file in foo/:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # Crea un archivio jar modulare, in cui il descrittore di modulo si trova in\n # classes/module-info.class:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # Aggiorna un file jar non modulare esistente in un file jar modulare:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ Modalit\u00E0 di funzionamento principale:\n
+main.help.opt.main.create=\  -c, --create               Crea l'archivio
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  Genera le informazioni sull'indice per gli archivi\n                             jar specificati
+main.help.opt.main.list=\  -t, --list                 Visualizza l'indice dell'archivio
+main.help.opt.main.update=\  -u, --update               Aggiorna un archivio jar esistente
+main.help.opt.main.extract=\  -x, --extract              Estrae i file con nome (o tutti i file) dall'archivio
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  Stampa il descrittore del modulo
+main.help.opt.any=\ Modificatori di funzionamento validi in qualsiasi modalit\u00E0:\n\n  -C DIR                     Passa alla directory specificata e include il\n                              file seguente
+main.help.opt.any.file=\  -f, --file=FILE            Nome del file di archivio
+main.help.opt.any.verbose=\  -v, --verbose              Genera l'output descrittivo nell'output standard
+main.help.opt.create.update=\ Modificatori di funzionamento validi solo nella modalit\u00E0 di creazione e aggiornamento:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME Punto di ingresso per le applicazioni\n                             stand-alone incluse nell'archivio jar modulare o\n                             eseguibile
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        Include le informazioni sul file manifest dal file\n                             manifest specificato
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          Non crea un file manifest per le voci
+main.help.opt.create.update.module-version=\      --module-version=VERSION    Versione del modulo utilizzata durante la creazione di un file\n                             jar modulare o l'aggiornamento di un file jar non modulare
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  Calcola e registra gli hash delle dipendenze\n                             del modulo corrispondenti in base al pattern specificato durante\n                             la creazione di un file jar modulare o l'aggiornamento di\n                             un file jar non modulare
+main.help.opt.create.update.modulepath=\      --modulepath           Posizione della dipendenza del modulo per la generazione
+\                             dell'hash
+main.help.opt.create.update.index=\ Modificatori di funzionamento validi solo nella modalit\u00E0 di creazione, aggiornamento e di generazione dell'indice:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          Solo per la memorizzazione. Non utilizza alcuna compressione ZIP
+main.help.opt.other=\ Altre opzioni:\n
+main.help.opt.other.help=\  -?, --help[:compat]        Fornisce questa Guida o facoltativamente la Guida sulla compatibilit\u00E0
+main.help.opt.other.version=\      --version              Stampa la versione del programma
+main.help.postopt=\ Un archivio \u00E8 un file jar modulare se un descrittore di modulo, 'module-info.class', si trova\n nella directory radice delle directory specificate o nella radice dell'archivio jar\n stesso. Le operazioni seguenti sono valide solo durante la creazione di un jar modulare\n o l'aggiornamento di un file jar non modulare esistente: '--module-version',\n '--hash-dependencies' e '--modulepath'.\n\n Gli argomenti obbligatori o facoltativi per le opzioni lunghe sono obbligatori\n  o facoltativi anche per le opzioni brevi corrispondenti.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ja.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ja.properties
index 2db5b85..27d3da0 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ja.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open={0}\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093 
+error.multiple.main.operations=\u8907\u6570\u306E'-cuxti'\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093
+error.cant.open={0}\u3092\u958B\u304F\u3053\u3068\u304C\u3067\u304D\u307E\u305B\u3093
 error.illegal.option=\u4E0D\u6B63\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
+error.unrecognized.option=\u8A8D\u8B58\u3055\u308C\u306A\u3044\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
+error.missing.arg=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306B\u306F\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059\u3002
+error.bad.file.arg=\u30D5\u30A1\u30A4\u30EB\u5F15\u6570\u306E\u89E3\u6790\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
 error.bad.option=\u30AA\u30D7\u30B7\u30E7\u30F3-{ctxu}\u306E\u3046\u3061\u306E1\u3064\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
 error.bad.cflag=\u30D5\u30E9\u30B0'c'\u3067\u306F\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u307E\u305F\u306F\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u6307\u5B9A\u304C\u5FC5\u8981\u3067\u3059\u3002
 error.bad.uflag=\u30D5\u30E9\u30B0'u'\u3067\u306F\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u304B'e'\u30D5\u30E9\u30B0\u3001\u307E\u305F\u306F\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u6307\u5B9A\u304C\u5FC5\u8981\u3067\u3059\u3002
@@ -34,8 +38,15 @@
 error.create.dir=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
 error.incorrect.length={0}\u306E\u51E6\u7406\u4E2D\u306B\u4E0D\u6B63\u306A\u9577\u3055\u304C\u3042\u308A\u307E\u3057\u305F
 error.create.tempfile=\u4E00\u6642\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
+error.hash.dep=\u30E2\u30B8\u30E5\u30FC\u30EB{0}\u4F9D\u5B58\u6027\u306E\u30CF\u30C3\u30B7\u30E5\u3067\u30E2\u30B8\u30E5\u30FC\u30EB{1}\u304C\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9\u306B\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+error.module.options.without.info=--module-version\u307E\u305F\u306F--hash-dependencies\u306E\u3044\u305A\u308C\u304B\u3067module-info.class\u304C\u3042\u308A\u307E\u305B\u3093
+error.unexpected.module-info=\u4E88\u671F\u3057\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF{0}
+error.module.descriptor.not.found=\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+error.missing.provider=\u30B5\u30FC\u30D3\u30B9\u30FB\u30D7\u30ED\u30D0\u30A4\u30C0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
 out.added.manifest=\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F
+out.added.module-info=module-info.class\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F
 out.update.manifest=\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F
+out.update.module-info=module-info.class\u304C\u66F4\u65B0\u3055\u308C\u307E\u3057\u305F
 out.ignore.entry=\u30A8\u30F3\u30C8\u30EA{0}\u3092\u7121\u8996\u3057\u307E\u3059
 out.adding={0}\u3092\u8FFD\u52A0\u4E2D\u3067\u3059
 out.deflated=({0}%\u53CE\u7E2E\u3055\u308C\u307E\u3057\u305F)
@@ -45,4 +56,33 @@
 out.inflated=\ {0}\u304C\u5C55\u958B\u3055\u308C\u307E\u3057\u305F
 out.size=(\u5165={0})(\u51FA={1})
 
-usage=\u4F7F\u7528\u65B9\u6CD5: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\n\u30AA\u30D7\u30B7\u30E7\u30F3:\n    -c  \u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u65B0\u898F\u4F5C\u6210\u3059\u308B\n    -t  \u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u5185\u5BB9\u3092\u4E00\u89A7\u8868\u793A\u3059\u308B\n    -x  \u6307\u5B9A\u306E(\u307E\u305F\u306F\u3059\u3079\u3066\u306E)\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6\u304B\u3089\u62BD\u51FA\u3059\u308B\n    -u  \u65E2\u5B58\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u66F4\u65B0\u3059\u308B\n    -v  \u6A19\u6E96\u51FA\u529B\u306B\u8A73\u7D30\u306A\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n    -f  \u30A2\u30FC\u30AB\u30A4\u30D6\u30FB\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u6307\u5B9A\u3059\u308B\n    -m  \u6307\u5B9A\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u60C5\u5831\u3092\u53D6\u308A\u8FBC\u3080\n    -n  \u65B0\u898F\u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u4F5C\u6210\u5F8C\u306BPack200\u6B63\u898F\u5316\u3092\u5B9F\u884C\u3059\u308B\n    -e  \u5B9F\u884C\u53EF\u80FDjar\u30D5\u30A1\u30A4\u30EB\u306B\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B9\u30BF\u30F3\u30C9\u30A2\u30ED\u30F3\u30FB\n        \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30A8\u30F3\u30C8\u30EA\u30FB\u30DD\u30A4\u30F3\u30C8\u3092\u6307\u5B9A\u3059\u308B\n    -0  \u683C\u7D0D\u306E\u307F\u3002ZIP\u5727\u7E2E\u3092\u4F7F\u7528\u3057\u306A\u3044\n    -M  \u30A8\u30F3\u30C8\u30EA\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3057\u306A\u3044\n    -i  \u6307\u5B9A\u306Ejar\u30D5\u30A1\u30A4\u30EB\u306E\u7D22\u5F15\u60C5\u5831\u3092\u751F\u6210\u3059\u308B\n    -C  \u6307\u5B9A\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u5909\u66F4\u3057\u3001\u6B21\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u308A\u8FBC\u3080\n\u30D5\u30A1\u30A4\u30EB\u304C\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u5834\u5408\u306F\u518D\u5E30\u7684\u306B\u51E6\u7406\u3055\u308C\u307E\u3059\u3002\n\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u540D\u3001\u30A2\u30FC\u30AB\u30A4\u30D6\u30FB\u30D5\u30A1\u30A4\u30EB\u540D\u304A\u3088\u3073\u30A8\u30F3\u30C8\u30EA\u30FB\u30DD\u30A4\u30F3\u30C8\u540D\u306F\u3001\n\u30D5\u30E9\u30B0'm'\u3001'f'\u3001'e'\u306E\u6307\u5B9A\u3068\u540C\u3058\u9806\u756A\u3067\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\n\u4F8B1: 2\u3064\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6classes.jar\u306B\u4FDD\u5B58\u3059\u308B: \n       jar cvf classes.jar Foo.class Bar.class \n\u4F8B2: \u65E2\u5B58\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB'mymanifest'\u3092\u4F7F\u7528\u3057\u3001foo/\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\n           \u5168\u30D5\u30A1\u30A4\u30EB\u3092'classes.jar'\u306B\u30A2\u30FC\u30AB\u30A4\u30D6\u3059\u308B: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=\u4E92\u63DB\u6027\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:\n\u4F7F\u7528\u65B9\u6CD5: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\n\u30AA\u30D7\u30B7\u30E7\u30F3:\n    -c  \u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u65B0\u898F\u4F5C\u6210\u3059\u308B\n    -t  \u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u5185\u5BB9\u3092\u4E00\u89A7\u8868\u793A\u3059\u308B\n    -x  \u6307\u5B9A\u306E(\u307E\u305F\u306F\u3059\u3079\u3066\u306E)\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6\u304B\u3089\u62BD\u51FA\u3059\u308B\n    -u  \u65E2\u5B58\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u66F4\u65B0\u3059\u308B\n    -v  \u6A19\u6E96\u51FA\u529B\u306B\u8A73\u7D30\u306A\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n    -f  \u30A2\u30FC\u30AB\u30A4\u30D6\u30FB\u30D5\u30A1\u30A4\u30EB\u540D\u3092\u6307\u5B9A\u3059\u308B\n    -m  \u6307\u5B9A\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u60C5\u5831\u3092\u53D6\u308A\u8FBC\u3080\n    -n  \u65B0\u898F\u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u4F5C\u6210\u5F8C\u306BPack200\u6B63\u898F\u5316\u3092\u5B9F\u884C\u3059\u308B\n    -e  \u5B9F\u884C\u53EF\u80FDjar\u30D5\u30A1\u30A4\u30EB\u306B\u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B9\u30BF\u30F3\u30C9\u30A2\u30ED\u30F3\u30FB\n        \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30A8\u30F3\u30C8\u30EA\u30FB\u30DD\u30A4\u30F3\u30C8\u3092\u6307\u5B9A\u3059\u308B\n    -0  \u683C\u7D0D\u306E\u307F\u3002ZIP\u5727\u7E2E\u3092\u4F7F\u7528\u3057\u306A\u3044\n    -P  \u30D5\u30A1\u30A4\u30EB\u540D\u306E\u5148\u982D\u306E'/' (\u7D76\u5BFE\u30D1\u30B9)\u304A\u3088\u3073\\"..\\" (\u89AA\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA)\u30B3\u30F3\u30DD\u30FC\u30CD\u30F3\u30C8\u3092\u4FDD\u6301\u3059\u308B\n    -M  \u30A8\u30F3\u30C8\u30EA\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3057\u306A\u3044\n    -i  \u6307\u5B9A\u306Ejar\u30D5\u30A1\u30A4\u30EB\u306E\u7D22\u5F15\u60C5\u5831\u3092\u751F\u6210\u3059\u308B\n    -C  \u6307\u5B9A\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u5909\u66F4\u3057\u3001\u6B21\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u53D6\u308A\u8FBC\u3080\n\u30D5\u30A1\u30A4\u30EB\u304C\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u5834\u5408\u306F\u518D\u5E30\u7684\u306B\u51E6\u7406\u3055\u308C\u307E\u3059\u3002\n\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u540D\u3001\u30A2\u30FC\u30AB\u30A4\u30D6\u30FB\u30D5\u30A1\u30A4\u30EB\u540D\u304A\u3088\u3073\u30A8\u30F3\u30C8\u30EA\u30FB\u30DD\u30A4\u30F3\u30C8\u540D\u306F\u3001\n\u30D5\u30E9\u30B0'm'\u3001'f'\u3001'e'\u306E\u6307\u5B9A\u3068\u540C\u3058\u9806\u756A\u3067\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\n\u4F8B1: 2\u3064\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6classes.jar\u306B\u4FDD\u5B58\u3059\u308B: \n       jar cvf classes.jar Foo.class Bar.class \n\u4F8B2: \u65E2\u5B58\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB'mymanifest'\u3092\u4F7F\u7528\u3057\u3001foo/\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\n           \u5168\u30D5\u30A1\u30A4\u30EB\u3092'classes.jar'\u306B\u30A2\u30FC\u30AB\u30A4\u30D6\u3059\u308B: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: \u3044\u305A\u308C\u304B\u306E-ctxui\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
+main.usage.summary.try=\u8A73\u7D30\u306F\u3001`jar --help'\u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+
+main.help.preopt=\u4F7F\u7528\u65B9\u6CD5: jar [OPTION...] [-C dir] files ...\njar\u306F\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30EA\u30BD\u30FC\u30B9\u306E\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u4F5C\u6210\u3057\u3001\u30A2\u30FC\u30AB\u30A4\u30D6\u304B\u3089\u500B\u3005\u306E\u30AF\u30E9\u30B9\u307E\u305F\u306F\n\u30EA\u30BD\u30FC\u30B9\u3092\u64CD\u4F5C\u307E\u305F\u306F\u5FA9\u5143\u3067\u304D\u307E\u3059\u3002\n\n \u4F8B:\n # 2\u3064\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3080classes.jar\u3068\u3044\u3046\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u4F5C\u6210\u3059\u308B:\n jar --create --file classes.jar Foo.class Bar.class\n # foo/\u306E\u3059\u3079\u3066\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3080\u3001\u65E2\u5B58\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u3092\u4F7F\u7528\u3057\u305F\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u4F5C\u6210\u3059\u308B:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # \u30E2\u30B8\u30E5\u30E9jar\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u4F5C\u6210\u3059\u308B\u3002\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF\u306Fclasses/module-info.class\u306B\n # \u3042\u308B:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # \u65E2\u5B58\u306E\u975E\u30E2\u30B8\u30E5\u30E9jar\u3092\u30E2\u30B8\u30E5\u30E9jar\u306B\u66F4\u65B0\u3059\u308B:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ \u30E1\u30A4\u30F3\u64CD\u4F5C\u30E2\u30FC\u30C9:\n
+main.help.opt.main.create=\  -c\u3001--create               \u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u4F5C\u6210\u3057\u307E\u3059
+main.help.opt.main.generate-index=\  -i,\u3001--generate-index=FILE  \u6307\u5B9A\u306Ejar\u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u7D22\u5F15\u60C5\u5831\u3092\n                             \u751F\u6210\u3057\u307E\u3059
+main.help.opt.main.list=\  -t\u3001--list                 \u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u5185\u5BB9\u3092\u4E00\u89A7\u8868\u793A\u3057\u307E\u3059
+main.help.opt.main.update=\  -u\u3001--update               \u65E2\u5B58\u306Ejar\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u66F4\u65B0\u3057\u307E\u3059
+main.help.opt.main.extract=\  -x\u3001--extract              \u6307\u5B9A\u306E(\u307E\u305F\u306F\u3059\u3079\u3066\u306E)\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6\u304B\u3089\u62BD\u51FA\u3057\u307E\u3059
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  \u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF\u3092\u51FA\u529B\u3057\u307E\u3059
+main.help.opt.any=\ \u3069\u306E\u30E2\u30FC\u30C9\u3067\u3082\u6709\u52B9\u306A\u64CD\u4F5C\u4FEE\u98FE\u5B50:\n\n  -C DIR                     \u6307\u5B9A\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u5909\u66F4\u3057\u3001\u6B21\u306E\u30D5\u30A1\u30A4\u30EB\u3092\n                             \u53D6\u308A\u8FBC\u307F\u307E\u3059
+main.help.opt.any.file=\  -f\u3001--file=FILE            \u30A2\u30FC\u30AB\u30A4\u30D6\u30FB\u30D5\u30A1\u30A4\u30EB\u540D
+main.help.opt.any.verbose=\  -v\u3001--verbose              \u6A19\u6E96\u51FA\u529B\u306B\u8A73\u7D30\u306A\u51FA\u529B\u3092\u751F\u6210\u3057\u307E\u3059
+main.help.opt.create.update=\ \u4F5C\u6210\u307E\u305F\u306F\u66F4\u65B0\u30E2\u30FC\u30C9\u3067\u306E\u307F\u6709\u52B9\u306A\u64CD\u4F5C\u4FEE\u98FE\u5B50:\n
+main.help.opt.create.update.main-class=\  -e\u3001--main-class=CLASSNAME \u30E2\u30B8\u30E5\u30E9\u307E\u305F\u306F\u5B9F\u884C\u53EF\u80FD\u306Ajar\u30A2\u30FC\u30AB\u30A4\u30D6\u306B\n                             \u30D0\u30F3\u30C9\u30EB\u3055\u308C\u305F\u30B9\u30BF\u30F3\u30C9\u30A2\u30ED\u30F3\u30FB\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\n                             \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30FB\u30A8\u30F3\u30C8\u30EA\u30FB\u30DD\u30A4\u30F3\u30C8
+main.help.opt.create.update.manifest=\  -m\u3001--manifest=FILE        \u6307\u5B9A\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u60C5\u5831\u3092\n                             \u53D6\u308A\u8FBC\u307F\u307E\u3059
+main.help.opt.create.update.no-manifest=\  -M\u3001--no-manifest          \u30A8\u30F3\u30C8\u30EA\u306E\u30DE\u30CB\u30D5\u30A7\u30B9\u30C8\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u3057\u307E\u305B\u3093
+main.help.opt.create.update.module-version=\      --module-version=VERSION    \u30E2\u30B8\u30E5\u30E9jar\u306E\u4F5C\u6210\u6642\u307E\u305F\u306F\u975E\u30E2\u30B8\u30E5\u30E9jar\u306E\u66F4\u65B0\u6642\u306E\n                             \u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  \u30E2\u30B8\u30E5\u30E9jar\u306E\u4F5C\u6210\u6642\u307E\u305F\u306F\n                             \u975E\u30E2\u30B8\u30E5\u30E9jar\u306E\u66F4\u65B0\u6642\u306B\u3001\u6307\u5B9A\u306E\u30D1\u30BF\u30FC\u30F3\u3067\n                             \u4E00\u81F4\u3057\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u4F9D\u5B58\u6027\u306E\u30CF\u30C3\u30B7\u30E5\u3092\n                             \u8A08\u7B97\u304A\u3088\u3073\u8A18\u9332\u3057\u307E\u3059
+main.help.opt.create.update.modulepath=\      --modulepath           \u751F\u6210\u3059\u308B\u30E2\u30B8\u30E5\u30FC\u30EB\u4F9D\u5B58\u6027\u306E\u5834\u6240
+\                             \u30CF\u30C3\u30B7\u30E5
+main.help.opt.create.update.index=\ \u4F5C\u6210\u3001\u66F4\u65B0\u304A\u3088\u3073\u7D22\u5F15\u751F\u6210\u30E2\u30FC\u30C9\u3067\u306E\u307F\u6709\u52B9\u306A\u64CD\u4F5C\u4FEE\u98FE\u5B50:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          \u683C\u7D0D\u306E\u307F\u3002ZIP\u5727\u7E2E\u3092\u4F7F\u7528\u3057\u307E\u305B\u3093
+main.help.opt.other=\ \u305D\u306E\u4ED6\u306E\u30AA\u30D7\u30B7\u30E7\u30F3:\n
+main.help.opt.other.help=\  -?, --help[:compat]        \u3053\u308C(\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u4E92\u63DB\u6027)\u3092help\u306B\u6307\u5B9A\u3057\u307E\u3059
+main.help.opt.other.version=\      --version              \u30D7\u30ED\u30B0\u30E9\u30E0\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3057\u307E\u3059
+main.help.postopt=\ \u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF'module-info.class'\u304C\u6307\u5B9A\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u30EB\u30FC\u30C8\u307E\u305F\u306F\n jar\u30A2\u30FC\u30AB\u30A4\u30D6\u81EA\u4F53\u306E\u30EB\u30FC\u30C8\u306B\u3042\u308B\u5834\u5408\u3001\u30A2\u30FC\u30AB\u30A4\u30D6\u306F\u30E2\u30B8\u30E5\u30E9jar\u3067\u3059\u3002\n \u6B21\u306E\u64CD\u4F5C\u306F\u3001\u30E2\u30B8\u30E5\u30E9jar\u306E\u4F5C\u6210\u6642\u307E\u305F\u306F\u65E2\u5B58\u306E\u975E\u30E2\u30B8\u30E5\u30E9jar\u306E\u66F4\u65B0\u6642\u306B\n \u306E\u307F\u6709\u52B9\u3067\u3059:  '--module-version'\u3001\n '--hash-dependencies'\u304A\u3088\u3073'--modulepath'\u3002\n\n \u30ED\u30F3\u30B0\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3\u3078\u306E\u5FC5\u9808\u307E\u305F\u306F\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u306F\u3001\u5BFE\u5FDC\u3059\u308B\u30B7\u30E7\u30FC\u30C8\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3\n \u306B\u5BFE\u3057\u3066\u3082\u5FC5\u9808\u307E\u305F\u306F\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u306A\u308A\u307E\u3059\u3002
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ko.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ko.properties
index f370386..a80cca4 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ko.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_ko.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=\uC5F4 \uC218 \uC5C6\uC74C: {0} 
+error.multiple.main.operations='-cuxti' \uC635\uC158\uC744 \uC5EC\uB7EC \uAC1C \uC9C0\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+error.cant.open=\uC5F4 \uC218 \uC5C6\uC74C: {0}
 error.illegal.option=\uC798\uBABB\uB41C \uC635\uC158: {0}
+error.unrecognized.option=\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uC635\uC158: {0}
+error.missing.arg={0} \uC635\uC158\uC5D0 \uC778\uC218\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4.
+error.bad.file.arg=\uD30C\uC77C \uC778\uC218 \uAD6C\uBB38\uC744 \uBD84\uC11D\uD558\uB294 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4.
 error.bad.option=\uC635\uC158 -{ctxu} \uC911 \uD558\uB098\uB97C \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4.
 error.bad.cflag='c' \uD50C\uB798\uADF8\uB97C \uC0AC\uC6A9\uD558\uB824\uBA74 Manifest \uB610\uB294 \uC785\uB825 \uD30C\uC77C\uC744 \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4!
 error.bad.uflag='u' \uD50C\uB798\uADF8\uB97C \uC0AC\uC6A9\uD558\uB824\uBA74 Manifest, 'e' \uD50C\uB798\uADF8 \uB610\uB294 \uC785\uB825 \uD30C\uC77C\uC744 \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4!
@@ -34,8 +38,15 @@
 error.create.dir={0}: \uB514\uB809\uD1A0\uB9AC\uB97C \uC0DD\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
 error.incorrect.length=\uCC98\uB9AC \uC911 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC740 \uAE38\uC774\uAC00 \uBC1C\uACAC\uB428: {0}
 error.create.tempfile=\uC784\uC2DC \uD30C\uC77C\uC744 \uC0DD\uC131\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+error.hash.dep=\uBAA8\uB4C8 {0} \uC885\uC18D\uC131\uC744 \uD574\uC2DC\uD558\uB294 \uC911 \uBAA8\uB4C8 \uACBD\uB85C\uC5D0\uC11C {1} \uBAA8\uB4C8\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.
+error.module.options.without.info=module-info.class \uC5C6\uC774 --module-version \uB610\uB294 --hash-dependencies \uC911 \uD558\uB098
+error.unexpected.module-info=\uC608\uC0C1\uCE58 \uC54A\uC740 \uBAA8\uB4C8 \uAE30\uC220\uC790 {0}
+error.module.descriptor.not.found=\uBAA8\uB4C8 \uAE30\uC220\uC790\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC74C
+error.missing.provider=\uC11C\uBE44\uC2A4 \uC81C\uACF5\uC790\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC74C: {0}
 out.added.manifest=Manifest\uB97C \uCD94\uAC00\uD568
+out.added.module-info=module-info.class\uB97C \uCD94\uAC00\uD568
 out.update.manifest=Manifest\uB97C \uC5C5\uB370\uC774\uD2B8\uD568
+out.update.module-info=module-info.class\uB97C \uC5C5\uB370\uC774\uD2B8\uD568
 out.ignore.entry={0} \uD56D\uBAA9\uC744 \uBB34\uC2DC\uD558\uB294 \uC911
 out.adding=\uCD94\uAC00\uD558\uB294 \uC911: {0}
 out.deflated=({0}%\uB97C \uAC10\uC18C\uD568)
@@ -45,4 +56,33 @@
 out.inflated=\ \uC99D\uAC00\uB428: {0}
 out.size=(\uC785\uB825 = {0}) (\uCD9C\uB825 = {1})
 
-usage=\uC0AC\uC6A9\uBC95: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\n\uC635\uC158:\n    -c  \uC0C8 \uC544\uCE74\uC774\uBE0C\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4.\n    -t  \uC544\uCE74\uC774\uBE0C\uC5D0 \uB300\uD55C \uBAA9\uCC28\uB97C \uB098\uC5F4\uD569\uB2C8\uB2E4.\n    -x  \uBA85\uBA85\uB41C(\uB610\uB294 \uBAA8\uB4E0) \uD30C\uC77C\uC744 \uC544\uCE74\uC774\uBE0C\uC5D0\uC11C \uCD94\uCD9C\uD569\uB2C8\uB2E4.\n    -u  \uAE30\uC874 \uC544\uCE74\uC774\uBE0C\uB97C \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n    -v  \uD45C\uC900 \uCD9C\uB825\uC5D0 \uC0C1\uC138 \uC815\uBCF4 \uCD9C\uB825\uC744 \uC0DD\uC131\uD569\uB2C8\uB2E4.\n    -f  \uC544\uCE74\uC774\uBE0C \uD30C\uC77C \uC774\uB984\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4.\n    -m  \uC9C0\uC815\uB41C Manifest \uD30C\uC77C\uC758 Manifest \uC815\uBCF4\uB97C \uD3EC\uD568\uD569\uB2C8\uB2E4.\n    -n  \uC0C8 \uC544\uCE74\uC774\uBE0C\uB97C \uC0DD\uC131\uD55C \uD6C4 Pack200 \uC815\uADDC\uD654\uB97C \uC218\uD589\uD569\uB2C8\uB2E4.\n    -e  jar \uC2E4\uD589 \uD30C\uC77C\uC5D0 \uBC88\uB4E4\uB85C \uC81C\uACF5\uB41C \uB3C5\uB9BD\uD615 \uC751\uC6A9 \uD504\uB85C\uADF8\uB7A8\uC758 \n        \uC751\uC6A9 \uD504\uB85C\uADF8\uB7A8 \uC2DC\uC791 \uC9C0\uC810\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4.\n    -0  \uC800\uC7A5 \uC804\uC6A9: ZIP \uC555\uCD95\uC744 \uC0AC\uC6A9\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -M  \uD56D\uBAA9\uC5D0 \uB300\uD574 Manifest \uD30C\uC77C\uC744 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -i  \uC9C0\uC815\uB41C jar \uD30C\uC77C\uC5D0 \uB300\uD55C \uC778\uB371\uC2A4 \uC815\uBCF4\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4.\n    -C  \uC9C0\uC815\uB41C \uB514\uB809\uD1A0\uB9AC\uB85C \uBCC0\uACBD\uD558\uACE0 \uB2E4\uC74C \uD30C\uC77C\uC744 \uD3EC\uD568\uD569\uB2C8\uB2E4.\n\uD2B9\uC815 \uD30C\uC77C\uC774 \uB514\uB809\uD1A0\uB9AC\uC77C \uACBD\uC6B0 \uC21C\uD658\uC801\uC73C\uB85C \uCC98\uB9AC\uB429\uB2C8\uB2E4.\nManifest \uD30C\uC77C \uC774\uB984, \uC544\uCE74\uC774\uBE0C \uD30C\uC77C \uC774\uB984 \uBC0F \uC2DC\uC791 \uC9C0\uC810 \uC774\uB984\uC740\n'm', 'f' \uBC0F 'e' \uD50C\uB798\uADF8\uC640 \uB3D9\uC77C\uD55C \uC21C\uC11C\uB85C \uC9C0\uC815\uB429\uB2C8\uB2E4.\n\n\uC608 1: classes.jar\uB77C\uB294 \uC544\uCE74\uC774\uBE0C\uC5D0 \uB450 \uD074\uB798\uC2A4 \uD30C\uC77C\uC744 \uC544\uCE74\uC774\uBE0C\uD558\uB294 \uBC29\uBC95: \n       jar cvf classes.jar Foo.class Bar.class \n\uC608 2: \uAE30\uC874 Manifest \uD30C\uC77C 'mymanifest'\uB97C \uC0AC\uC6A9\uD558\uC5EC\n           foo/ \uB514\uB809\uD1A0\uB9AC\uC758 \uBAA8\uB4E0 \uD30C\uC77C\uC744 'classes.jar'\uB85C \uC544\uCE74\uC774\uBE0C\uD558\uB294 \uBC29\uBC95: \n       jar cvfm classes.jar mymanifest -C foo/ .
+usage.compat=\uD638\uD658\uC131 \uC778\uD130\uD398\uC774\uC2A4:\n\uC0AC\uC6A9\uBC95: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\n\uC635\uC158:\n    -c  \uC0C8 \uC544\uCE74\uC774\uBE0C\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4.\n    -t  \uC544\uCE74\uC774\uBE0C\uC5D0 \uB300\uD55C \uBAA9\uCC28\uB97C \uB098\uC5F4\uD569\uB2C8\uB2E4.\n    -x  \uBA85\uBA85\uB41C(\uB610\uB294 \uBAA8\uB4E0) \uD30C\uC77C\uC744 \uC544\uCE74\uC774\uBE0C\uC5D0\uC11C \uCD94\uCD9C\uD569\uB2C8\uB2E4.\n    -u  \uAE30\uC874 \uC544\uCE74\uC774\uBE0C\uB97C \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n    -v  \uD45C\uC900 \uCD9C\uB825\uC5D0 \uC0C1\uC138 \uC815\uBCF4 \uCD9C\uB825\uC744 \uC0DD\uC131\uD569\uB2C8\uB2E4.\n    -f  \uC544\uCE74\uC774\uBE0C \uD30C\uC77C \uC774\uB984\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4.\n    -m  \uC9C0\uC815\uB41C Manifest \uD30C\uC77C\uC758 Manifest \uC815\uBCF4\uB97C \uD3EC\uD568\uD569\uB2C8\uB2E4.\n    -n  \uC0C8 \uC544\uCE74\uC774\uBE0C\uB97C \uC0DD\uC131\uD55C \uD6C4 Pack200 \uC815\uADDC\uD654\uB97C \uC218\uD589\uD569\uB2C8\uB2E4.\n    -e  jar \uC2E4\uD589 \uD30C\uC77C\uC5D0 \uBC88\uB4E4\uB85C \uC81C\uACF5\uB41C \uB3C5\uB9BD\uD615 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC758 \n        \uC560\uD50C\uB9AC\uCF00\uC774\uC158 \uC2DC\uC791 \uC9C0\uC810\uC744 \uC9C0\uC815\uD569\uB2C8\uB2E4.\n    -0  \uC800\uC7A5 \uC804\uC6A9\uC774\uBA70 ZIP \uC555\uCD95\uC744 \uC0AC\uC6A9\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -P  \uD30C\uC77C \uC774\uB984\uC5D0\uC11C \uC120\uD589 '/'(\uC808\uB300 \uACBD\uB85C) \uBC0F ".."(\uC0C1\uC704 \uB514\uB809\uD1A0\uB9AC) \uAD6C\uC131 \uC694\uC18C\uB97C \uC720\uC9C0\uD569\uB2C8\uB2E4.\n    -M  \uD56D\uBAA9\uC5D0 \uB300\uD574 Manifest \uD30C\uC77C\uC744 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -i  \uC9C0\uC815\uB41C jar \uD30C\uC77C\uC5D0 \uB300\uD55C \uC778\uB371\uC2A4 \uC815\uBCF4\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4.\n    -C  \uC9C0\uC815\uB41C \uB514\uB809\uD1A0\uB9AC\uB85C \uBCC0\uACBD\uD558\uACE0 \uB2E4\uC74C \uD30C\uC77C\uC744 \uD3EC\uD568\uD569\uB2C8\uB2E4.\n\uD2B9\uC815 \uD30C\uC77C\uC774 \uB514\uB809\uD1A0\uB9AC\uC77C \uACBD\uC6B0 \uC21C\uD658\uC801\uC73C\uB85C \uCC98\uB9AC\uB429\uB2C8\uB2E4.\nManifest \uD30C\uC77C \uC774\uB984, \uC544\uCE74\uC774\uBE0C \uD30C\uC77C \uC774\uB984 \uBC0F \uC2DC\uC791 \uC9C0\uC810 \uC774\uB984\uC740\n'm', 'f' \uBC0F 'e' \uD50C\uB798\uADF8\uC640 \uB3D9\uC77C\uD55C \uC21C\uC11C\uB85C \uC9C0\uC815\uB429\uB2C8\uB2E4.\n\n\uC608 1: classes.jar\uB77C\uB294 \uC544\uCE74\uC774\uBE0C\uC5D0 \uB450 \uD074\uB798\uC2A4 \uD30C\uC77C\uC744 \uC544\uCE74\uC774\uBE0C\uD558\uB294 \uBC29\uBC95: \n       jar cvf classes.jar Foo.class Bar.class \n\uC608 2: \uAE30\uC874 Manifest \uD30C\uC77C 'mymanifest'\uB97C \uC0AC\uC6A9\uD558\uC5EC\n           foo/ \uB514\uB809\uD1A0\uB9AC\uC758 \uBAA8\uB4E0 \uD30C\uC77C\uC744 'classes.jar'\uB85C \uC544\uCE74\uC774\uBE0C\uD558\uB294 \uBC29\uBC95: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: -ctxui \uC635\uC158 \uC911 \uD558\uB098\uB97C \uC9C0\uC815\uD574\uC57C \uD569\uB2C8\uB2E4.
+main.usage.summary.try=\uC790\uC138\uD55C \uB0B4\uC6A9\uC744 \uBCF4\uB824\uBA74 'jar --help'\uB97C \uC2E4\uD589\uD558\uC2ED\uC2DC\uC624.
+
+main.help.preopt=\uC0AC\uC6A9\uBC95: jar [OPTION...] [-C dir] files ...\njar\uB294 \uD074\uB798\uC2A4 \uBC0F \uB9AC\uC18C\uC2A4\uC5D0 \uB300\uD55C \uC544\uCE74\uC774\uBE0C\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4. \uC544\uCE74\uC774\uBE0C\uC5D0\uC11C\n\uAC1C\uBCC4 \uD074\uB798\uC2A4\uB098 \uB9AC\uC18C\uC2A4\uB97C \uC870\uC791\uD558\uAC70\uB098 \uBCF5\uC6D0\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n\n \uC608\uC81C:\n # \uB450 \uD074\uB798\uC2A4 \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD558\uC5EC classes.jar\uB77C\uB294 \uC544\uCE74\uC774\uBE0C \uC0DD\uC131:\n jar --create --file classes.jar Foo.class Bar.class\n # \uAE30\uC874 Manifest\uB97C \uC0AC\uC6A9\uD558\uC5EC \uBAA8\uB4E0 \uD30C\uC77C\uC774 foo/\uC5D0 \uD3EC\uD568\uB41C \uC544\uCE74\uC774\uBE0C \uC0DD\uC131:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # \uBAA8\uB4C8 \uAE30\uC220\uC790\uAC00 classes/module-info.class\uC5D0 \uC704\uCE58\uD55C\n # \uBAA8\uB4C8\uD615 jar \uC544\uCE74\uC774\uBE0C \uC0DD\uC131:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # \uAE30\uC874 \uBE44\uBAA8\uB4C8 jar\uB97C \uBAA8\uB4C8\uD615 jar\uB85C \uC5C5\uB370\uC774\uD2B8:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ \uAE30\uBCF8 \uC791\uC5C5 \uBAA8\uB4DC:\n
+main.help.opt.main.create=\  -c, --create               \uC544\uCE74\uC774\uBE0C\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4.
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  \uC9C0\uC815\uB41C jar \uC544\uCE74\uC774\uBE0C\uC5D0 \uB300\uD55C \uC778\uB371\uC2A4 \uC815\uBCF4\uB97C\n                             \uC0DD\uC131\uD569\uB2C8\uB2E4.
+main.help.opt.main.list=\  -t, --list                 \uC544\uCE74\uC774\uBE0C\uC5D0 \uB300\uD55C \uBAA9\uCC28\uB97C \uB098\uC5F4\uD569\uB2C8\uB2E4.
+main.help.opt.main.update=\  -u, --update               \uAE30\uC874 jar \uC544\uCE74\uC774\uBE0C\uB97C \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.
+main.help.opt.main.extract=\  -x, --extract              \uBA85\uBA85\uB41C(\uB610\uB294 \uBAA8\uB4E0) \uD30C\uC77C\uC744 \uC544\uCE74\uC774\uBE0C\uC5D0\uC11C \uCD94\uCD9C\uD569\uB2C8\uB2E4.
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  \uBAA8\uB4C8 \uAE30\uC220\uC790\uB97C \uC778\uC1C4\uD569\uB2C8\uB2E4.
+main.help.opt.any=\ \uBAA8\uB4E0 \uBAA8\uB4DC\uC5D0\uC11C \uC801\uD569\uD55C \uC791\uC5C5 \uC218\uC815\uC790:\n\n  -C DIR                     \uC9C0\uC815\uB41C \uB514\uB809\uD1A0\uB9AC\uB85C \uBCC0\uACBD\uD558\uACE0 \uB2E4\uC74C \uD30C\uC77C\uC744\n                             \uD3EC\uD568\uD569\uB2C8\uB2E4.
+main.help.opt.any.file=\  -f, --file=FILE            \uC544\uCE74\uC774\uBE0C \uD30C\uC77C \uC774\uB984\uC785\uB2C8\uB2E4.
+main.help.opt.any.verbose=\  -v, --verbose              \uD45C\uC900 \uCD9C\uB825\uC5D0 \uC0C1\uC138 \uC815\uBCF4 \uCD9C\uB825\uC744 \uC0DD\uC131\uD569\uB2C8\uB2E4.
+main.help.opt.create.update=\ \uC0DD\uC131 \uBC0F \uC5C5\uB370\uC774\uD2B8 \uBAA8\uB4DC\uC5D0\uC11C\uB9CC \uC801\uD569\uD55C \uC791\uC5C5 \uC218\uC815\uC790:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME \uBAA8\uB4C8\uD615 \uB610\uB294 \uC2E4\uD589\uD615 jar \uC544\uCE74\uC774\uBE0C\uC5D0 \uBC88\uB4E4\uB85C\n                             \uC81C\uACF5\uB41C \uB3C5\uB9BD\uD615 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\uC758 \uC560\uD50C\uB9AC\uCF00\uC774\uC158\n                             \uC2DC\uC791 \uC9C0\uC810\uC785\uB2C8\uB2E4.
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        \uC9C0\uC815\uB41C Manifest \uD30C\uC77C\uC758 Manifest \uC815\uBCF4\uB97C\n                             \uD3EC\uD568\uD569\uB2C8\uB2E4.
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          \uD56D\uBAA9\uC5D0 \uB300\uD574 Manifest \uD30C\uC77C\uC744 \uC0DD\uC131\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+main.help.opt.create.update.module-version=\      --module-version=VERSION    \uBAA8\uB4C8\uD615 jar\uB97C \uC0DD\uC131\uD558\uAC70\uB098 \uBE44\uBAA8\uB4C8 jar\uB97C\n                             \uC5C5\uB370\uC774\uD2B8\uD560 \uB54C \uBAA8\uB4C8 \uBC84\uC804\uC785\uB2C8\uB2E4.
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  \uBAA8\uB4C8\uD615 jar\uB97C \uC0DD\uC131\uD558\uAC70\uB098 \uBE44\uBAA8\uB4C8 jar\uB97C\n                             \uC5C5\uB370\uC774\uD2B8\uD560 \uB54C \uC8FC\uC5B4\uC9C4 \uD328\uD134\uACFC \uC77C\uCE58\uD558\uB294\n                             \uBAA8\uB4C8 \uC885\uC18D\uC131\uC758 \uD574\uC2DC\uB97C \uCEF4\uD4E8\uD2B8\uD558\uACE0\n                             \uAE30\uB85D\uD569\uB2C8\uB2E4.
+main.help.opt.create.update.modulepath=\      --modulepath           \uD574\uC2DC\uB97C \uC0DD\uC131\uD558\uAE30 \uC704\uD55C \uBAA8\uB4C8 \uC885\uC18D\uC131\uC758
+\                             \uC704\uCE58\uC785\uB2C8\uB2E4.
+main.help.opt.create.update.index=\ \uC0DD\uC131, \uC5C5\uB370\uC774\uD2B8 \uBC0F generate-index \uBAA8\uB4DC\uC5D0\uC11C\uB9CC \uC801\uD569\uD55C \uC791\uC5C5 \uC218\uC815\uC790:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          \uC800\uC7A5 \uC804\uC6A9\uC774\uBA70 ZIP \uC555\uCD95\uC744 \uC0AC\uC6A9\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.
+main.help.opt.other=\ \uAE30\uD0C0 \uC635\uC158:\n
+main.help.opt.other.help=\  -?, --help[:compat]        \uC774 \uB3C4\uC6C0\uB9D0(\uB610\uB294 \uC120\uD0DD\uC801\uC73C\uB85C \uD638\uD658\uC131)\uC744 \uC81C\uACF5\uD569\uB2C8\uB2E4.
+main.help.opt.other.version=\      --version              \uD504\uB85C\uADF8\uB7A8 \uBC84\uC804\uC744 \uC778\uC1C4\uD569\uB2C8\uB2E4.
+main.help.postopt=\ \uC544\uCE74\uC774\uBE0C\uB294 \uBAA8\uB4C8 \uAE30\uC220\uC790 'module-info.class'\uAC00 \uC8FC\uC5B4\uC9C4 \uB514\uB809\uD1A0\uB9AC\uC758\n \uB8E8\uD2B8 \uB610\uB294 jar \uC544\uCE74\uC774\uBE0C \uC790\uCCB4\uC758 \uB8E8\uD2B8\uC5D0 \uC704\uCE58\uD55C \uACBD\uC6B0 \uBAA8\uB4C8\uD615 jar\uC785\uB2C8\uB2E4.\n \uB2E4\uC74C \uC791\uC5C5\uC740 \uBAA8\uB4C8\uD615 jar\uB97C \uC0DD\uC131\uD558\uAC70\uB098 \uAE30\uC874 \uBE44\uBAA8\uB4C8 jar\uB97C\n \uC5C5\uB370\uC774\uD2B8\uD560 \uB54C\uB9CC \uC801\uD569\uD569\uB2C8\uB2E4. '--module-version',\n '--hash-dependencies', '--modulepath'.\n\n long \uC635\uC158\uC758 \uD544\uC218 \uB610\uB294 \uC120\uD0DD\uC801 \uC778\uC218\uB294 \uD574\uB2F9\uD558\uB294 short \uC635\uC158\uC5D0 \uB300\uD574\uC11C\uB3C4\n \uD544\uC218 \uB610\uB294 \uC120\uD0DD\uC801\uC785\uB2C8\uB2E4.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_pt_BR.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_pt_BR.properties
index 24cd297..67bd08b 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_pt_BR.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_pt_BR.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=n\u00E3o \u00E9 poss\u00EDvel abrir: {0} 
+error.multiple.main.operations=Voc\u00EA n\u00E3o pode especificar mais de uma das op\u00E7\u00F5es '-cuxti'
+error.cant.open=n\u00E3o \u00E9 poss\u00EDvel abrir: {0}
 error.illegal.option=Op\u00E7\u00E3o inv\u00E1lida: {0}
+error.unrecognized.option=op\u00E7\u00E3o n\u00E3o reconhecida : {0}
+error.missing.arg=a op\u00E7\u00E3o {0}  exige um argumento
+error.bad.file.arg=Erro ao fazer parsing dos argumentos de arquivo
 error.bad.option=Uma das op\u00E7\u00F5es -{ctxu} deve ser especificada.
 error.bad.cflag=flag 'c' requer que os arquivos de manifesto ou entrada sejam especificados!
 error.bad.uflag=o flag 'u' requer que arquivos de manifesto, o flag 'e' ou arquivos de entrada sejam especificados!
@@ -34,8 +38,15 @@
 error.create.dir={0} : n\u00E3o foi poss\u00EDvel criar o diret\u00F3rio
 error.incorrect.length=largura incorreta durante o processamento: {0}
 error.create.tempfile=N\u00E3o foi poss\u00EDvel criar um arquivo tempor\u00E1rio
+error.hash.dep=M\u00F3dulo de hashing com {0} depend\u00EAncias. N\u00E3o \u00E9 poss\u00EDvel localizar o m\u00F3dulo {1} no caminho do m\u00F3dulo
+error.module.options.without.info=Um dentre --module-version ou --hash-dependencies est\u00E1 sem module-info.class
+error.unexpected.module-info=Descritor de m\u00F3dulo inesperado {0}
+error.module.descriptor.not.found=Descritor de m\u00F3dulo n\u00E3o encontrado
+error.missing.provider=Prestador de servi\u00E7os  n\u00E3o encontrado: {0}
 out.added.manifest=manifesto adicionado
+out.added.module-info=module-info.class adicionado
 out.update.manifest=manifesto atualizado
+out.update.module-info=module-info.class atualizado
 out.ignore.entry=ignorando entrada {0}
 out.adding=adicionando: {0}
 out.deflated=(compactado {0}%)
@@ -45,4 +56,33 @@
 out.inflated=\ inflado: {0}
 out.size=(entrada = {0}) (sa\u00EDda= {1})
 
-usage=Uso: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] arquivos ...\nOp\u00E7\u00F5es:\n    -c  cria novo arquivo compactado\n    -t  lista o sum\u00E1rio do arquivo compactado\n    -x  extrai arquivos com o nome (ou todos) do arquivo compactado\n    -u  atualiza o arquivo compactado existente\n    -v  gera sa\u00EDda detalhada na sa\u00EDda padr\u00E3o\n    -f  especifica o nome do arquivo do arquivo compactado\n    -m  inclui as informa\u00E7\u00F5es do manifesto do arquivo de manifesto especificado\n    -n   executa a normaliza\u00E7\u00E3o Pack200 ap\u00F3s a cria\u00E7\u00E3o de um novo arquivo compactado\n    -e  especifica o ponto de entrada da aplica\u00E7\u00E3o para aplica\u00E7\u00E3o stand-alone \n        empacotada em um arquivo jar execut\u00E1vel\n    -0  armazena somente; n\u00E3o usa compacta\u00E7\u00E3o ZIP\n    -M  n\u00E3o cria um arquivo de manifesto para as entradas\n    -i  gera informa\u00E7\u00F5es de \u00EDndice para os arquivos especificados\n    -C  passa para o diret\u00F3rio especificado e inclui o arquivo a seguir\nSe um arquivo tamb\u00E9m for um diret\u00F3rio, ele ser\u00E1 processado repetidamente.\nO nome do arquivo de manifesto, o nome do arquivo compactado e o nome do ponto de entrada s\u00E3o\nespecificados na mesma ordem dos flags 'm', 'f' e 'e'.\n\nExemplo 1: para arquivar dois arquivos de classe em um arquivo compactado denominado classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nExemplo 2: use um arquivo de manifesto existente 'mymanifest' e arquive todos os\n           arquivos no diret\u00F3rio foo/ na 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=Interface de Compatibilidade:\nUso: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] arquivos ...\nOp\u00E7\u00F5es:\n    -c  cria novo arquivo compactado\n    -t  lista o sum\u00E1rio do arquivo compactado\n    -x  extrai arquivos com o nome (ou todos) do arquivo compactado\n    -u  atualiza o arquivo compactado existente\n    -v  gera sa\u00EDda detalhada na sa\u00EDda padr\u00E3o\n    -f  especifica o nome do arquivo do arquivo compactado\n    -m  inclui as informa\u00E7\u00F5es do manifesto do arquivo de manifesto especificado\n    -n   executa a normaliza\u00E7\u00E3o Pack200 ap\u00F3s a cria\u00E7\u00E3o de um novo arquivo compactado\n    -e  especifica o ponto de entrada da aplicativo para aplicativo stand-alone \n        empacotada em um arquivo jar execut\u00E1vel\n    -0  armazena somente; n\u00E3o usa compacta\u00E7\u00E3o ZIP\n    -P  preserva os componentes '/' inicial (caminho absoluto) e ".." (diret\u00F3rio pai) nos nomes dos arquivos\n    -M  n\u00E3o cria um arquivo de manifesto para as entradas\n    -i  gera informa\u00E7\u00F5es de \u00EDndice para os arquivos especificados\n    -C  passa para o diret\u00F3rio especificado e inclui o arquivo a seguir\nSe um arquivo tamb\u00E9m for um diret\u00F3rio, ele ser\u00E1 processado repetidamente.\nO nome do arquivo de manifesto, o nome do arquivo compactado e o nome do ponto de entrada s\u00E3o\nespecificados na mesma ordem dos flags 'm', 'f' e 'e'.\n\nExemplo 1: para arquivar dois arquivos de classe em um arquivo compactado denominado classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nExemplo 2: use um arquivo de manifesto existente 'mymanifest' e arquive todos os\n           arquivos no diret\u00F3rio foo/ na 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: Voc\u00EA deve especificar uma das op\u00E7\u00F5es -ctxui.
+main.usage.summary.try=Tente `jar --ajuda' para obter mais informa\u00E7\u00F5es.
+
+main.help.preopt=Uso: jar [OPTION...] [-C dir] arquivos...\njar cria um arquivo compactado para classes e recursos, e pode manipular ou\nrestaurar classes ou recursos individuais de um arquivo compactado.\n\n Exemplos:\n # Cria um arquivo compactado chamado classes.jar com dois arquivos de classe:\n jar --create --file classes.jar Foo.class Bar.class\n # Cria um arquivo compactado usando um manifesto existente, com todos os arquivos em foo/:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # Cria um arquivo compactado jar modular, em que o descritor do m\u00F3dulo se localize em\n # classes/module-info.class:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # Atualiza um arquivo jar n\u00E3o modular existente para um jar modular:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ Modo de opera\u00E7\u00E3o principal:\n
+main.help.opt.main.create=\  -c, --create               Cria o arquivo compactado
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  Gera informa\u00E7\u00F5es de \u00EDndice para os arquivos compactados jar \n                             especificados
+main.help.opt.main.list=\  -t, --list                 Lista o conte\u00FAdo do arquivo compactado
+main.help.opt.main.update=\  -u, --update               Atualiza um arquivo compactado jar existente
+main.help.opt.main.extract=\  -x, --extract              Extrai arquivos nomeados (ou todos) do arquivo compactado
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  Imprime o descritor do m\u00F3dulo
+main.help.opt.any=\ Modificadores de opera\u00E7\u00E3o v\u00E1lidos em qualquer modo:\n\n  -C DIR                     Altera para o diret\u00F3rio especificado e inclui o\n                             seguinte arquivo:
+main.help.opt.any.file=\  -f, --file=FILE            O nome do arquivo compactado
+main.help.opt.any.verbose=\  -v, --verbose              Gera sa\u00EDda detalhada na sa\u00EDda padr\u00E3o
+main.help.opt.create.update=\ Modificadores de opera\u00E7\u00E3o v\u00E1lidos somente no modo de cria\u00E7\u00E3o e atualiza\u00E7\u00E3o:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME O ponto de entrada do aplicativo para aplicativos\n                             stand-alone empacotados em um arquivo compactado jar modular\n                             ou execut\u00E1vel
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        Inclui as informa\u00E7\u00F5es de manifesto provenientes do arquivo de\n                             manifesto em quest\u00E3o
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          N\u00E3o cria um arquivo de manifesto para as entradas
+main.help.opt.create.update.module-version=\      --module-version=VERSION    A vers\u00E3o do m\u00F3dulo, ao criar um arquivo jar\n                             modular, ou atualizar um arquivo jar n\u00E3o modular
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  Calcula e registra os hashes das depend\u00EAncias do\n                             m\u00F3dulo correlacionadas pelo padr\u00E3o fornecido, ao\n                             criar um arquivo jar modular ou atualizar um arquivo jar n\u00E3o\n                             modular
+main.help.opt.create.update.modulepath=\      --modulepath           Localiza\u00E7\u00E3o da depend\u00EAncia de m\u00F3dulo para gerar
+\                             o hash
+main.help.opt.create.update.index=\ Modificadores de opera\u00E7\u00E3o v\u00E1lidos somente no modo de cria\u00E7\u00E3o, atualiza\u00E7\u00E3o e gera\u00E7\u00E3o de \u00EDndice:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          Somente armazenamento; n\u00E3o use compacta\u00E7\u00E3o ZIP
+main.help.opt.other=\ Outras op\u00E7\u00F5es:\n
+main.help.opt.other.help=\  -?, --help[:compat]        Fornece esta ajuda ou, opcionalmente, a ajuda de compatibilidade
+main.help.opt.other.version=\      --version              Imprime a vers\u00E3o do programa
+main.help.postopt=\ Um arquivo compactado \u00E9 um arquivo jar modular se um descritor de m\u00F3dulo, 'module-info.class', estiver\n localizado na raiz dos diret\u00F3rios fornecidos, ou na raiz do arquivo compactado jar\n propriamente dito. As seguintes opera\u00E7\u00F5es s\u00F3 s\u00E3o v\u00E1lidas ao criar um arquivo jar modular,\n ou atualizar um arquivo jar n\u00E3o modular existente: '--module-version',\n '--hash-dependencies', e '--modulepath'.\n\n Argumentos obrigat\u00F3rios ou opcionais para op\u00E7\u00F5es longas tamb\u00E9m s\u00E3o obrigat\u00F3rios ou opcionais\n para quaisquer op\u00E7\u00F5es curtas correspondentes.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_sv.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_sv.properties
index 25e6183..d3c2fcb 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_sv.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_sv.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=kan inte \u00F6ppna: {0} 
+error.multiple.main.operations=Du kan inte ange flera -cuxti-alternativ
+error.cant.open=kan inte \u00F6ppna: {0}
 error.illegal.option=Otill\u00E5tet alternativ: {0}
+error.unrecognized.option=ok\u00E4nt alternativ: {0}
+error.missing.arg=alternativet {0} kr\u00E4ver ett argument
+error.bad.file.arg=Fel vid tolkning av filargument
 error.bad.option=Ett av alternativen -{ctxu} m\u00E5ste anges.
 error.bad.cflag=f\u00F6r c-flaggan m\u00E5ste manifest- eller indatafiler anges.
 error.bad.uflag=f\u00F6r u-flaggan m\u00E5ste manifest-, e-flagg- eller indatafiler anges.
@@ -34,8 +38,15 @@
 error.create.dir={0} : kunde inte skapa n\u00E5gon katalog
 error.incorrect.length=ogiltig l\u00E4ngd vid bearbetning: {0}
 error.create.tempfile=Kunde inte skapa en tillf\u00E4llig fil
+error.hash.dep={0}-beroenden f\u00F6r hashningsmodulen, kan inte hitta modulen {1} p\u00E5 moduls\u00F6kv\u00E4gen
+error.module.options.without.info=--module-version eller --hash-dependencies utan module-info.class
+error.unexpected.module-info=Ov\u00E4ntad moduldeskriptor, {0}
+error.module.descriptor.not.found=Moduldeskriptorn hittades inte
+error.missing.provider=Tj\u00E4nsteleverant\u00F6ren hittades inte: {0}
 out.added.manifest=tillagt manifestfil
+out.added.module-info=lade till module-info.class
 out.update.manifest=uppdaterat manifest
+out.update.module-info=uppdaterade module-info.class
 out.ignore.entry=ignorerar posten {0}
 out.adding=l\u00E4gger till: {0}
 out.deflated=({0}% packat)
@@ -45,4 +56,33 @@
 out.inflated=\ uppackat: {0}
 out.size=(in = {0}) (ut = {1})
 
-usage=Syntax: jar {ctxui}[vfmn0Me] [jar-fil] [manifestfil] [startpunkt] [-C katalog] filer ...\nAlternativ:\n    -c  skapa nytt arkiv\n    -t  lista inneh\u00E5llsf\u00F6rteckning f\u00F6r arkiv\n    -x  extrahera namngivna (eller alla) filer fr\u00E5n arkiv\n    -u  uppdatera befintligt arkiv\n    -v  generera utf\u00F6rliga utdata vid standardutmatning\n    -f  ange arkivfilens namn\n    -m  inkludera manifestinformation fr\u00E5n angivet manifest\n    -n  utf\u00F6r Pack200-normalisering efter att ha skapat ett nytt arkiv\n    -e  ange programstartpunkt f\u00F6r frist\u00E5ende applikation \n        som medf\u00F6ljer i en jar-programfil\n    -0  endast lagra  (ingen zip-komprimering)\n    -M  skapa inte n\u00E5gon manifestfil f\u00F6r posterna\n    -i  generera indexinformation f\u00F6r de angivna jar-filerna\n    -C  \u00E4ndra till den angivna katalogen och inkludera f\u00F6ljande fil\nOm en fil \u00E4r en katalog bearbetas den rekursivt.\nNamnen p\u00E5 manifestfilen, arkivfilen och startpunkten anges\ni samma ordning som m-, f- och e-flaggorna.\n\nExempel 1: S\u00E5 h\u00E4r arkiverar du tv\u00E5 klassfiler i ett arkiv med namnet classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nExempel 2: Anv\u00E4nd en befintlig manifestfil (mymanifest) och arkivera alla\n           filer fr\u00E5n katalogen foo/ i classes.jar: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=Kompatibilitetsgr\u00E4nssnitt:\nSyntax: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\nAlternativ:\n    -c  skapa nytt arkiv\n    -t  lista inneh\u00E5llsf\u00F6rteckning f\u00F6r arkiv\n    -x  extrahera namngivna (eller alla) filer fr\u00E5n arkivet\n    -u  uppdatera befintligt arkiv\n    -v  generera utf\u00F6rliga utdata till standardutdata\n    -f  ange namnet p\u00E5 arkivfilen\n    -m  inkludera manifestinformation fr\u00E5n den angivna manifestfilen\n    -n  utf\u00F6r Pack200-normalisering n\u00E4r ett nytt arkiv har skapats\n    -e  ange applikationsing\u00E5ngspunkt f\u00F6r frist\u00E5ende applikation \n        som medf\u00F6ljer i en jar-programfil\n    -0  lagra endast, anv\u00E4nd inte ZIP-komprimering\n    -P  beh\u00E5ll komponenter f\u00F6r inledande '/' (absolut s\u00F6kv\u00E4g) och ".." (\u00F6verordnad  katalog) fr\u00E5n filnamn\n    -M  skapa inte en manifestfil f\u00F6r posterna\n    -i  generera indexinformation f\u00F6r de angivna jar-filerna\n    -C  \u00E4ndra till den angivna katalogen och inkludera f\u00F6ljande fil\nOm en fil \u00E4r en katalog bearbetas den rekursivt.\nNamnen p\u00E5 manifestfilen, arkivfilen och ing\u00E5ngspunkten anges med samma\nordning som flaggorna 'm', 'f' och 'e'.\n\nExempel 1: arkivera tv\u00E5 klassfiler i ett arkiv med namnet classes.jar: \n       jar cvf classes.jar Foo.class Bar.class \nExempel 2: anv\u00E4nd den befintliga manifestfilen 'mymanifest' och arkivera alla\n           filer i katalogen 'foo/' till 'classes.jar': \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: du m\u00E5ste ange ett av -ctxui-alternativen.
+main.usage.summary.try=F\u00F6rs\u00F6k med 'jar --help' f\u00F6r mer information.
+
+main.help.preopt=Syntax: jar [OPTION...] [-C dir] files ...\njar skapar ett arkiv f\u00F6r klasser och resurser och kan \u00E4ndra eller \n\u00E5terst\u00E4lla enskilda klasser och resurser i/fr\u00E5n ett arkiv.\n\n Exempel:\n # Skapa ett arkiv med namnet classes.jar med tv\u00E5 klassfiler:\n jar --create --file classes.jar Foo.class Bar.class\n # Skapa ett arkiv med ett befintligt manifest med alla filerna i foo/:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # Skapa ett modul\u00E4rt jar-arkiv d\u00E4r moduldeskriptorn finns i\n # classes/module-info.class:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # Uppdatera ett befintligt icke-modul\u00E4rt jar-arkiv till ett modul\u00E4rt jar-arkiv:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ Huvudfunktionsl\u00E4ge:\n
+main.help.opt.main.create=\  -c, --create               Skapa arkivet
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  Generera indexinformation f\u00F6r de angivna jar-\n                             arkiven
+main.help.opt.main.list=\  -t, --list                 Listar inneh\u00E5llsf\u00F6rteckningen f\u00F6r arkivet
+main.help.opt.main.update=\  -u, --update               Uppdatera ett befintligt jar-arkiv
+main.help.opt.main.extract=\  -x, --extract              Extrahera namngivna (eller alla) filer fr\u00E5n arkivet
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  Skriv ut moduldeskriptorn
+main.help.opt.any=\ \u00C5tg\u00E4rdsmodifierare som \u00E4r giltiga i alla l\u00E4gen:\n\n  -C DIR                     \u00C4ndra till den angivna katalogen och inkludera\n                             f\u00F6ljande fil
+main.help.opt.any.file=\  -f, --file=FILE            Arkivfilnamnet
+main.help.opt.any.verbose=\  -v, --verbose              Generera utf\u00F6rliga utdata till standardutdata
+main.help.opt.create.update=\ \u00C5tg\u00E4rdsmodifierare som endast \u00E4r giltiga i l\u00E4gena create och update:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME Applikationsing\u00E5ngspunkten f\u00F6r frist\u00E5ende\n                             applikationer paketerad i ett modul\u00E4rt, eller k\u00F6rbart,\n                             jar-arkiv
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        Inkludera manifestinformationen fr\u00E5n den angivna\n                             manifestfilen
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          Skapa inte en manifestfil f\u00F6r posterna
+main.help.opt.create.update.module-version=\      --module-version=VERSION    Modulversionen vid skapande av ett modul\u00E4rt\n                             jar-arkiv eller vid uppdatering av ett icke-modul\u00E4rt jar-arkiv
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  Ber\u00E4kna och registrera hashningarna f\u00F6r\n                             modulberoenden som matchar det angivna m\u00F6nstret vid skapande\n                             att ett modul\u00E4rt jar-arkiv eller vid uppdatering av ett\n                             icke-modul\u00E4rt jar-arkiv
+main.help.opt.create.update.modulepath=\      --modulepath           Plats f\u00F6r modulberoende f\u00F6r att generera
+\                             hashningen
+main.help.opt.create.update.index=\ \u00C5tg\u00E4rdsmodifierare som endast \u00E4r giltiga i l\u00E4gena create, update och generate-index:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          Endast lagring, anv\u00E4nd ingen ZIP-komprimering
+main.help.opt.other=\ \u00D6vriga alternativ:\n
+main.help.opt.other.help=\  -?, --help[:compat]        Visa den h\u00E4r hj\u00E4lpen eller kompatibilitetshj\u00E4lpen (valfritt)
+main.help.opt.other.version=\      --version              Skriv ut programversion
+main.help.postopt=\ Ett arkiv \u00E4r ett modul\u00E4rt jar-arkiv om en moduldeskriptor, 'module-info.class',\n finns i roten av de angivna katalogerna eller det angivna jar-arkivet.\n F\u00F6ljande \u00E5tg\u00E4rder \u00E4r endast giltiga vid skapande av ett modul\u00E4rt jar-arkiv och\n vid uppdatering av ett befintligt icke-modul\u00E4rt jar-arkiv: '--module-version',\n '--hash-dependencies' och '--modulepath'.\n\n Obligatoriska och valfria alternativ f\u00F6r l\u00E5nga alternativ \u00E4r \u00E4ven obligatoriska\n respektive valfria f\u00F6r alla motsvarande korta alternativ.
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_CN.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_CN.properties
index 699127f..ceea013 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_CN.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=\u65E0\u6CD5\u6253\u5F00: {0} 
+error.multiple.main.operations=\u4E0D\u80FD\u6307\u5B9A\u591A\u4E2A '-cuxti' \u9009\u9879
+error.cant.open=\u65E0\u6CD5\u6253\u5F00: {0}
 error.illegal.option=\u975E\u6CD5\u9009\u9879: {0}
+error.unrecognized.option=\u65E0\u6CD5\u8BC6\u522B\u7684\u9009\u9879: {0}
+error.missing.arg=\u9009\u9879{0}\u9700\u8981\u53C2\u6570
+error.bad.file.arg=\u89E3\u6790\u6587\u4EF6\u53C2\u6570\u65F6\u51FA\u9519
 error.bad.option=\u5FC5\u987B\u6307\u5B9A {ctxu} \u4E2D\u7684\u4EFB\u4E00\u9009\u9879\u3002
 error.bad.cflag='c' \u6807\u8BB0\u8981\u6C42\u6307\u5B9A\u6E05\u5355\u6216\u8F93\u5165\u6587\u4EF6!
 error.bad.uflag='u' \u6807\u8BB0\u8981\u6C42\u6307\u5B9A\u6E05\u5355, 'e' \u6807\u8BB0\u6216\u8F93\u5165\u6587\u4EF6!
@@ -34,8 +38,15 @@
 error.create.dir={0}: \u65E0\u6CD5\u521B\u5EFA\u76EE\u5F55
 error.incorrect.length=\u5904\u7406\u65F6\u9047\u5230\u4E0D\u6B63\u786E\u7684\u957F\u5EA6: {0}
 error.create.tempfile=\u65E0\u6CD5\u521B\u5EFA\u4E34\u65F6\u6587\u4EF6
+error.hash.dep=\u6B63\u5728\u5BF9\u6A21\u5757 {0} \u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\u6267\u884C\u6563\u5217\u5904\u7406, \u5728\u6A21\u5757\u8DEF\u5F84\u4E2D\u627E\u4E0D\u5230\u6A21\u5757 {1}
+error.module.options.without.info=--module-version \u6216 --hash-dependencies \u4E4B\u4E00\u6CA1\u6709 module-info.class
+error.unexpected.module-info=\u610F\u5916\u7684\u6A21\u5757\u63CF\u8FF0\u7B26 {0}
+error.module.descriptor.not.found=\u627E\u4E0D\u5230\u6A21\u5757\u63CF\u8FF0\u7B26
+error.missing.provider=\u672A\u627E\u5230\u670D\u52A1\u63D0\u4F9B\u65B9: {0}
 out.added.manifest=\u5DF2\u6DFB\u52A0\u6E05\u5355
+out.added.module-info=\u5DF2\u6DFB\u52A0 module-info.class
 out.update.manifest=\u5DF2\u66F4\u65B0\u6E05\u5355
+out.update.module-info=\u5DF2\u66F4\u65B0 module-info.class
 out.ignore.entry=\u6B63\u5728\u5FFD\u7565\u6761\u76EE{0}
 out.adding=\u6B63\u5728\u6DFB\u52A0: {0}
 out.deflated=(\u538B\u7F29\u4E86 {0}%)
@@ -45,4 +56,33 @@
 out.inflated=\  \u5DF2\u89E3\u538B: {0}
 out.size=(\u8F93\u5165 = {0}) (\u8F93\u51FA = {1})
 
-usage=\u7528\u6CD5: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\n\u9009\u9879:\n    -c  \u521B\u5EFA\u65B0\u6863\u6848\n    -t  \u5217\u51FA\u6863\u6848\u76EE\u5F55\n    -x  \u4ECE\u6863\u6848\u4E2D\u63D0\u53D6\u6307\u5B9A\u7684 (\u6216\u6240\u6709) \u6587\u4EF6\n    -u  \u66F4\u65B0\u73B0\u6709\u6863\u6848\n    -v  \u5728\u6807\u51C6\u8F93\u51FA\u4E2D\u751F\u6210\u8BE6\u7EC6\u8F93\u51FA\n    -f  \u6307\u5B9A\u6863\u6848\u6587\u4EF6\u540D\n    -m  \u5305\u542B\u6307\u5B9A\u6E05\u5355\u6587\u4EF6\u4E2D\u7684\u6E05\u5355\u4FE1\u606F\n    -n  \u521B\u5EFA\u65B0\u6863\u6848\u540E\u6267\u884C Pack200 \u89C4\u8303\u5316\n    -e  \u4E3A\u7ED1\u5B9A\u5230\u53EF\u6267\u884C jar \u6587\u4EF6\u7684\u72EC\u7ACB\u5E94\u7528\u7A0B\u5E8F\n        \u6307\u5B9A\u5E94\u7528\u7A0B\u5E8F\u5165\u53E3\u70B9\n    -0  \u4EC5\u5B58\u50A8; \u4E0D\u4F7F\u7528\u4EFB\u4F55 ZIP \u538B\u7F29\n    -M  \u4E0D\u521B\u5EFA\u6761\u76EE\u7684\u6E05\u5355\u6587\u4EF6\n    -i  \u4E3A\u6307\u5B9A\u7684 jar \u6587\u4EF6\u751F\u6210\u7D22\u5F15\u4FE1\u606F\n    -C  \u66F4\u6539\u4E3A\u6307\u5B9A\u7684\u76EE\u5F55\u5E76\u5305\u542B\u4EE5\u4E0B\u6587\u4EF6\n\u5982\u679C\u4EFB\u4F55\u6587\u4EF6\u4E3A\u76EE\u5F55, \u5219\u5BF9\u5176\u8FDB\u884C\u9012\u5F52\u5904\u7406\u3002\n\u6E05\u5355\u6587\u4EF6\u540D, \u6863\u6848\u6587\u4EF6\u540D\u548C\u5165\u53E3\u70B9\u540D\u79F0\u7684\u6307\u5B9A\u987A\u5E8F\n\u4E0E 'm', 'f' \u548C 'e' \u6807\u8BB0\u7684\u6307\u5B9A\u987A\u5E8F\u76F8\u540C\u3002\n\n\u793A\u4F8B 1: \u5C06\u4E24\u4E2A\u7C7B\u6587\u4EF6\u5F52\u6863\u5230\u4E00\u4E2A\u540D\u4E3A classes.jar \u7684\u6863\u6848\u4E2D: \n       jar cvf classes.jar Foo.class Bar.class \n\u793A\u4F8B 2: \u4F7F\u7528\u73B0\u6709\u7684\u6E05\u5355\u6587\u4EF6 'mymanifest' \u5E76\n           \u5C06 foo/ \u76EE\u5F55\u4E2D\u7684\u6240\u6709\u6587\u4EF6\u5F52\u6863\u5230 'classes.jar' \u4E2D: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=\u517C\u5BB9\u6027\u63A5\u53E3:\n\u7528\u6CD5: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...\n\u9009\u9879:\n    -c  \u521B\u5EFA\u65B0\u6863\u6848\n    -t  \u5217\u51FA\u6863\u6848\u76EE\u5F55\n    -x  \u4ECE\u6863\u6848\u4E2D\u63D0\u53D6\u6307\u5B9A\u7684 (\u6216\u6240\u6709) \u6587\u4EF6\n    -u  \u66F4\u65B0\u73B0\u6709\u6863\u6848\n    -v  \u5728\u6807\u51C6\u8F93\u51FA\u4E2D\u751F\u6210\u8BE6\u7EC6\u8F93\u51FA\n    -f  \u6307\u5B9A\u6863\u6848\u6587\u4EF6\u540D\n    -m  \u5305\u542B\u6307\u5B9A\u6E05\u5355\u6587\u4EF6\u4E2D\u7684\u6E05\u5355\u4FE1\u606F\n    -n  \u521B\u5EFA\u65B0\u6863\u6848\u540E\u6267\u884C Pack200 \u89C4\u8303\u5316\n    -e  \u4E3A\u6346\u7ED1\u5230\u53EF\u6267\u884C jar \u6587\u4EF6\u7684\u72EC\u7ACB\u5E94\u7528\u7A0B\u5E8F\n        \u6307\u5B9A\u5E94\u7528\u7A0B\u5E8F\u5165\u53E3\u70B9\n    -0  \u4EC5\u5B58\u50A8; \u4E0D\u4F7F\u7528 ZIP \u538B\u7F29\n    -P  \u4FDD\u7559\u6587\u4EF6\u540D\u4E2D\u7684\u524D\u5BFC '/' (\u7EDD\u5BF9\u8DEF\u5F84) \u548C ".." (\u7236\u76EE\u5F55) \u7EC4\u4EF6\n    -M  \u4E0D\u521B\u5EFA\u6761\u76EE\u7684\u6E05\u5355\u6587\u4EF6\n    -i  \u4E3A\u6307\u5B9A\u7684 jar \u6587\u4EF6\u751F\u6210\u7D22\u5F15\u4FE1\u606F\n    -C  \u66F4\u6539\u4E3A\u6307\u5B9A\u7684\u76EE\u5F55\u5E76\u5305\u542B\u4EE5\u4E0B\u6587\u4EF6\n\u5982\u679C\u4EFB\u4F55\u6587\u4EF6\u4E3A\u76EE\u5F55, \u5219\u5BF9\u5176\u8FDB\u884C\u9012\u5F52\u5904\u7406\u3002\n\u6E05\u5355\u6587\u4EF6\u540D, \u6863\u6848\u6587\u4EF6\u540D\u548C\u5165\u53E3\u70B9\u540D\u79F0\u7684\u6307\u5B9A\u987A\u5E8F\n\u4E0E 'm', 'f' \u548C 'e' \u6807\u8BB0\u7684\u6307\u5B9A\u987A\u5E8F\u76F8\u540C\u3002\n\n\u793A\u4F8B 1: \u5C06\u4E24\u4E2A\u7C7B\u6587\u4EF6\u5F52\u6863\u5230\u4E00\u4E2A\u540D\u4E3A classes.jar \u7684\u6863\u6848\u4E2D: \n       jar cvf classes.jar Foo.class Bar.class \n\u793A\u4F8B 2: \u4F7F\u7528\u73B0\u6709\u7684\u6E05\u5355\u6587\u4EF6 'mymanifest' \u5E76\n           \u5C06 foo/ \u76EE\u5F55\u4E2D\u7684\u6240\u6709\u6587\u4EF6\u5F52\u6863\u5230 'classes.jar' \u4E2D: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+
+main.usage.summary=jar: \u5FC5\u987B\u6307\u5B9A\u5176\u4E2D\u4E00\u4E2A -ctxui \u9009\u9879\u3002
+main.usage.summary.try=\u5C1D\u8BD5\u4F7F\u7528 `jar --help' \u83B7\u53D6\u8BE6\u7EC6\u4FE1\u606F\u3002
+
+main.help.preopt=\u7528\u6CD5: jar [OPTION...] [-C dir] files ...\njar \u521B\u5EFA\u7C7B\u548C\u8D44\u6E90\u7684\u6863\u6848, \u5E76\u4E14\u53EF\u4EE5\u5904\u7406\u6863\u6848\u4E2D\u7684\n\u5355\u4E2A\u7C7B\u6216\u8D44\u6E90\u6216\u8005\u4ECE\u6863\u6848\u4E2D\u8FD8\u539F\u5355\u4E2A\u7C7B\u6216\u8D44\u6E90\u3002\n\n \u793A\u4F8B:\n # \u521B\u5EFA\u5305\u542B\u4E24\u4E2A\u7C7B\u6587\u4EF6\u7684\u540D\u4E3A classes.jar \u7684\u6863\u6848:\n jar --create --file classes.jar Foo.class Bar.class\n # \u4F7F\u7528\u73B0\u6709\u7684\u6E05\u5355\u521B\u5EFA\u6863\u6848, \u5176\u4E2D\u5305\u542B foo/ \u4E2D\u7684\u6240\u6709\u6587\u4EF6:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # \u521B\u5EFA\u6A21\u5757\u5316 jar \u6863\u6848, \u5176\u4E2D\u6A21\u5757\u63CF\u8FF0\u7B26\u4F4D\u4E8E\n # classes/module-info.class:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # \u5C06\u73B0\u6709\u7684\u975E\u6A21\u5757\u5316 jar \u66F4\u65B0\u4E3A\u6A21\u5757\u5316 jar:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ \u4E3B\u64CD\u4F5C\u6A21\u5F0F:\n
+main.help.opt.main.create=\  -c, --create               \u521B\u5EFA\u6863\u6848
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  \u4E3A\u6307\u5B9A\u7684 jar \u6863\u6848\u751F\u6210\n                             \u7D22\u5F15\u4FE1\u606F
+main.help.opt.main.list=\  -t, --list                 \u5217\u51FA\u6863\u6848\u7684\u76EE\u5F55
+main.help.opt.main.update=\  -u, --update               \u66F4\u65B0\u73B0\u6709 jar \u6863\u6848
+main.help.opt.main.extract=\  -x, --extract              \u4ECE\u6863\u6848\u4E2D\u63D0\u53D6\u6307\u5B9A\u7684 (\u6216\u5168\u90E8) \u6587\u4EF6
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  \u8F93\u51FA\u6A21\u5757\u63CF\u8FF0\u7B26
+main.help.opt.any=\ \u5728\u4EFB\u610F\u6A21\u5F0F\u4E0B\u6709\u6548\u7684\u64CD\u4F5C\u4FEE\u9970\u7B26:\n\n  -C DIR                     \u66F4\u6539\u4E3A\u6307\u5B9A\u7684\u76EE\u5F55\u5E76\u5305\u542B\n                             \u4EE5\u4E0B\u6587\u4EF6
+main.help.opt.any.file=\  -f, --file=FILE            \u6863\u6848\u6587\u4EF6\u540D
+main.help.opt.any.verbose=\  -v, --verbose              \u5728\u6807\u51C6\u8F93\u51FA\u4E2D\u751F\u6210\u8BE6\u7EC6\u8F93\u51FA
+main.help.opt.create.update=\ \u5728\u521B\u5EFA\u548C\u66F4\u65B0\u6A21\u5F0F\u4E0B\u6709\u6548\u7684\u64CD\u4F5C\u4FEE\u9970\u7B26:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME \u6346\u7ED1\u5230\u6A21\u5757\u5316\u6216\u53EF\u6267\u884C \n                             jar \u6863\u6848\u7684\u72EC\u7ACB\u5E94\u7528\u7A0B\u5E8F\n                             \u7684\u5E94\u7528\u7A0B\u5E8F\u5165\u53E3\u70B9
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        \u5305\u542B\u6307\u5B9A\u6E05\u5355\u6587\u4EF6\u4E2D\u7684\n                             \u6E05\u5355\u4FE1\u606F
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          \u4E0D\u4E3A\u6761\u76EE\u521B\u5EFA\u6E05\u5355\u6587\u4EF6
+main.help.opt.create.update.module-version=\      --module-version=VERSION    \u521B\u5EFA\u6A21\u5757\u5316 jar \u6216\u66F4\u65B0\n                             \u975E\u6A21\u5757\u5316 jar \u65F6\u7684\u6A21\u5757\u7248\u672C
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  \u521B\u5EFA\u6A21\u5757\u5316 jar \u6216\u66F4\u65B0\n                             \u975E\u6A21\u5757\u5316 jar \u65F6\u8BA1\u7B97\u548C\u8BB0\u5F55\n                             \u6309\u6307\u5B9A\u6A21\u5F0F\u5339\u914D\u7684\u6A21\u5757\u88AB\u4F9D\u8D56\n                             \u5BF9\u8C61\u7684\u6563\u5217
+main.help.opt.create.update.modulepath=\      --modulepath           \u6A21\u5757\u88AB\u4F9D\u8D56\u5BF9\u8C61\u7684\u4F4D\u7F6E, \u7528\u4E8E\u751F\u6210
+\                             \u6563\u5217
+main.help.opt.create.update.index=\ \u53EA\u5728\u521B\u5EFA, \u66F4\u65B0\u548C\u751F\u6210\u7D22\u5F15\u6A21\u5F0F\u4E0B\u6709\u6548\u7684\u64CD\u4F5C\u4FEE\u9970\u7B26:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          \u4EC5\u5B58\u50A8; \u4E0D\u4F7F\u7528 ZIP \u538B\u7F29
+main.help.opt.other=\ \u5176\u4ED6\u9009\u9879:\n
+main.help.opt.other.help=\  -?, --help[:compat]        \u63D0\u4F9B\u6B64\u5E2E\u52A9, \u4E5F\u53EF\u4EE5\u9009\u62E9\u6027\u5730\u63D0\u4F9B\u517C\u5BB9\u6027\u5E2E\u52A9
+main.help.opt.other.version=\      --version              \u8F93\u51FA\u7A0B\u5E8F\u7248\u672C
+main.help.postopt=\ \u5982\u679C\u6A21\u5757\u63CF\u8FF0\u7B26 'module-info.class' \u4F4D\u4E8E\u6307\u5B9A\u76EE\u5F55\u7684\n \u6839\u76EE\u5F55\u4E2D, \u6216\u8005\u4F4D\u4E8E jar \u6863\u6848\u672C\u8EAB\u7684\u6839\u76EE\u5F55\u4E2D, \u5219\n \u8BE5\u6863\u6848\u662F\u4E00\u4E2A\u6A21\u5757\u5316 jar\u3002\u4EE5\u4E0B\u64CD\u4F5C\u53EA\u5728\u521B\u5EFA\u6A21\u5757\u5316 jar\n \u6216\u66F4\u65B0\u73B0\u6709\u7684\u975E\u6A21\u5757\u5316 jar \u65F6\u6709\u6548: '--module-version',\n '--hash-dependencies' \u548C '--modulepath'\u3002\n\n \u5982\u679C\u4E3A\u957F\u9009\u9879\u63D0\u4F9B\u4E86\u5FC5\u9700\u53C2\u6570\u6216\u53EF\u9009\u53C2\u6570, \u5219\u5B83\u4EEC\u5BF9\u4E8E\n \u4EFB\u4F55\u5BF9\u5E94\u7684\u77ED\u9009\u9879\u4E5F\u662F\u5FC5\u9700\u6216\u53EF\u9009\u7684\u3002
diff --git a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_TW.properties b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_TW.properties
index 72a0a92..48d9f73 100644
--- a/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_TW.properties
+++ b/jdk/src/jdk.jartool/share/classes/sun/tools/jar/resources/jar_zh_TW.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,8 +23,12 @@
 # questions.
 #
 
-error.cant.open=\u7121\u6CD5\u958B\u555F: {0} 
+error.multiple.main.operations=\u60A8\u4E0D\u80FD\u6307\u5B9A\u591A\u500B '-cuxti' \u9078\u9805
+error.cant.open=\u7121\u6CD5\u958B\u555F: {0}
 error.illegal.option=\u7121\u6548\u7684\u9078\u9805: {0}
+error.unrecognized.option=\u7121\u6CD5\u8FA8\u8B58\u7684\u9078\u9805 : {0}
+error.missing.arg=\u9078\u9805 {0} \u9700\u8981\u4E00\u500B\u5F15\u6578
+error.bad.file.arg=\u5256\u6790\u6A94\u6848\u5F15\u6578\u6642\u767C\u751F\u932F\u8AA4
 error.bad.option=\u5176\u4E2D\u4E00\u500B\u9078\u9805 -{ctxu} \u5FC5\u9808\u52A0\u4EE5\u6307\u5B9A\u3002
 error.bad.cflag='c' \u65D7\u6A19\u8981\u6C42\u6307\u5B9A\u8CC7\u8A0A\u6E05\u55AE\u6216\u8F38\u5165\u6A94\u6848\uFF01
 error.bad.uflag='u' \u65D7\u6A19\u8981\u6C42\u6307\u5B9A\u8CC7\u8A0A\u6E05\u55AE\u3001'e' \u65D7\u6A19\u6216\u8F38\u5165\u6A94\u6848\uFF01
@@ -34,8 +38,15 @@
 error.create.dir={0} : \u7121\u6CD5\u5EFA\u7ACB\u76EE\u9304
 error.incorrect.length=\u8655\u7406 {0} \u6642\u9577\u5EA6\u4E0D\u6B63\u78BA
 error.create.tempfile=\u7121\u6CD5\u5EFA\u7ACB\u66AB\u5B58\u6A94\u6848
+error.hash.dep=\u96DC\u6E4A\u6A21\u7D44 {0} \u76F8\u4F9D\u6027\uFF0C\u5728\u6A21\u7D44\u8DEF\u5F91\u4E0A\u627E\u4E0D\u5230\u6A21\u7D44 {1}
+error.module.options.without.info=--module-version \u6216 --hash-dependencies \u5176\u4E2D\u4E00\u500B\u6C92\u6709 module-info.class
+error.unexpected.module-info=\u672A\u9810\u671F\u7684\u6A21\u7D44\u63CF\u8FF0\u5340 {0}
+error.module.descriptor.not.found=\u627E\u4E0D\u5230\u6A21\u7D44\u63CF\u8FF0\u5340
+error.missing.provider=\u627E\u4E0D\u5230\u670D\u52D9\u63D0\u4F9B\u8005: {0}
 out.added.manifest=\u5DF2\u65B0\u589E\u8CC7\u8A0A\u6E05\u55AE
+out.added.module-info=\u5DF2\u65B0\u589E module-info.class
 out.update.manifest=\u5DF2\u66F4\u65B0\u8CC7\u8A0A\u6E05\u55AE
+out.update.module-info=\u5DF2\u66F4\u65B0 module-info.class
 out.ignore.entry=\u5FFD\u7565\u9805\u76EE {0}
 out.adding=\u65B0\u589E: {0}
 out.deflated=(\u58D3\u7E2E {0}%)
@@ -45,4 +56,33 @@
 out.inflated=\ \u64F4\u5C55: {0}
 out.size=\ (\u8B80={0})(\u5BEB={1})
 
-usage=\u7528\u6CD5: jar {ctxui}[vfmn0Me] [jar-file] [manifest-file] [entry-point] [-C dir] \u6A94\u6848 ...\n\u9078\u9805:\n    -c  \u5EFA\u7ACB\u65B0\u7684\u6B78\u6A94\n    -t  \u5217\u51FA\u6B78\u6A94\u7684\u76EE\u9304\n    -x  \u5F9E\u6B78\u6A94\u4E2D\u64F7\u53D6\u5DF2\u547D\u540D\u7684 (\u6216\u6240\u6709) \u6A94\u6848\n    -u  \u66F4\u65B0\u73FE\u6709\u6B78\u6A94\n    -v  \u5728\u6A19\u6E96\u8F38\u51FA\u4E2D\u7522\u751F\u8A73\u7D30\u8F38\u51FA\n    -f  \u6307\u5B9A\u6B78\u6A94\u6A94\u6848\u540D\u7A31\n    -m  \u5305\u542B\u6307\u5B9A\u8CC7\u8A0A\u6E05\u55AE\u4E2D\u7684\u8CC7\u8A0A\u6E05\u55AE\u8CC7\u8A0A\n    -n  \u5728\u5EFA\u7ACB\u65B0\u6B78\u6A94\u4E4B\u5F8C\u57F7\u884C Pack200 \u6B63\u898F\u5316\n    -e  \u70BA\u5DF2\u96A8\u9644\u65BC\u53EF\u57F7\u884C jar \u6A94\u6848\u4E2D\u7684\u7368\u7ACB\u61C9\u7528\u7A0B\u5F0F\n        \u6307\u5B9A\u61C9\u7528\u7A0B\u5F0F\u9032\u5165\u9EDE\n    -0  \u50C5\u5132\u5B58; \u4E0D\u4F7F\u7528 ZIP \u58D3\u7E2E\u65B9\u5F0F\n    -M  \u4E0D\u70BA\u9805\u76EE\u5EFA\u7ACB\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848\n    -i  \u70BA\u6307\u5B9A\u7684 jar \u6A94\u6848\u7522\u751F\u7D22\u5F15\u8CC7\u8A0A\n    -C  \u8B8A\u66F4\u81F3\u6307\u5B9A\u76EE\u9304\u4E26\u5305\u542B\u5F8C\u9762\u6240\u5217\u7684\u6A94\u6848\n\u5982\u679C\u6709\u4EFB\u4F55\u6A94\u6848\u662F\u76EE\u9304\uFF0C\u5247\u6703\u5C0D\u5176\u9032\u884C\u905E\u8FF4\u8655\u7406\u3002\n\u6E05\u55AE\u6A94\u6848\u540D\u7A31\u3001\u6B78\u6A94\u6A94\u6848\u540D\u7A31\u548C\u9032\u5165\u9EDE\u540D\u7A31\n\u7684\u6307\u5B9A\u9806\u5E8F\u8207\u6307\u5B9A 'm' \u65D7\u6A19\u3001'f' \u65D7\u6A19\u548C 'e' \u65D7\u6A19\u7684\u9806\u5E8F\u76F8\u540C\u3002\n\n\u7BC4\u4F8B 1: \u5C07\u5169\u500B\u985E\u5225\u6A94\u6848\u6B78\u6A94\u81F3\u540D\u70BA classes.jar \u7684\u6B78\u6A94\u4E2D: \n       jar cvf classes.jar Foo.class Bar.class\n\u7BC4\u4F8B 2: \u4F7F\u7528\u73FE\u6709\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848 'mymanifest' \u4E26\u5C07\n           foo/ \u76EE\u9304\u4E2D\u7684\u6240\u6709\u6A94\u6848\u6B78\u6A94\u81F3 'classes.jar' \u4E2D: \n       jar cvfm classes.jar mymanifest -C foo/ .\n
+usage.compat=\u76F8\u5BB9\u6027\u4ECB\u9762:\n\u7528\u6CD5: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] \u6A94\u6848 ...\n\u9078\u9805:\n    -c  \u5EFA\u7ACB\u65B0\u5B58\u6A94\n    -t  \u5217\u51FA\u5B58\u6A94\u7684\u76EE\u9304\n    -x  \u5F9E\u5B58\u6A94\u4E2D\u64F7\u53D6\u6307\u5B9A (\u6216\u6240\u6709) \u6A94\u6848\n    -u  \u66F4\u65B0\u73FE\u6709\u5B58\u6A94\n    -v  \u5728\u6A19\u6E96\u8F38\u51FA\u4E2D\u7522\u751F\u8A73\u7D30\u8F38\u51FA\n    -f  \u6307\u5B9A\u5B58\u6A94\u6A94\u6848\u540D\u7A31\n    -m  \u5305\u542B\u6307\u5B9A\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848\u4E2D\u7684\u8CC7\u8A0A\u6E05\u55AE\u8CC7\u8A0A\n    -n  \u5728\u5EFA\u7ACB\u65B0\u5B58\u6A94\u4E4B\u5F8C\u57F7\u884C Pack200 \u6B63\u898F\u5316\n    -e  \u70BA\u5DF2\u96A8\u9644\u65BC\u53EF\u57F7\u884C jar \u6A94\u6848\u4E2D\u7684\u7368\u7ACB\u61C9\u7528\u7A0B\u5F0F \n        \u6307\u5B9A\u61C9\u7528\u7A0B\u5F0F\u9032\u5165\u9EDE\n    -0  \u50C5\u5132\u5B58; \u4E0D\u4F7F\u7528 ZIP \u58D3\u7E2E\u65B9\u5F0F\n    -P  \u4FDD\u7559\u6A94\u6848\u540D\u7A31\u524D\u9762\u7684 '/' (\u7D55\u5C0D\u8DEF\u5F91) \u548C ".." (\u4E0A\u5C64\u76EE\u9304) \u5143\u4EF6\n    -M  \u4E0D\u70BA\u9805\u76EE\u5EFA\u7ACB\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848\n    -i  \u70BA\u6307\u5B9A\u7684 jar \u6A94\u6848\u7522\u751F\u7D22\u5F15\u8CC7\u8A0A\n    -C  \u8B8A\u66F4\u81F3\u6307\u5B9A\u76EE\u9304\u4E26\u5305\u542B\u5F8C\u9762\u6240\u5217\u7684\u6A94\u6848\n\u5982\u679C\u6709\u4EFB\u4F55\u6A94\u6848\u662F\u76EE\u9304\uFF0C\u5247\u6703\u5C0D\u5176\u9032\u884C\u905E\u8FF4\u8655\u7406\u3002\n\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848\u540D\u7A31\u3001\u5B58\u6A94\u6A94\u6848\u540D\u7A31\u548C\u9032\u5165\u9EDE\u540D\u7A31\n\u7684\u6307\u5B9A\u9806\u5E8F\u8207\u6307\u5B9A 'm' \u65D7\u6A19\u3001'f' \u65D7\u6A19\u548C 'e' \u65D7\u6A19\u7684\u9806\u5E8F\u76F8\u540C\u3002\n\n\u7BC4\u4F8B 1:  \u5C07\u5169\u500B\u985E\u5225\u6A94\u6848\u5B58\u6A94\u81F3\u540D\u70BA classes.jar \u7684\u5B58\u6A94\u4E2D: \n       jar cvf classes.jar Foo.class Bar.class \n\u7BC4\u4F8B 2: \u4F7F\u7528\u73FE\u6709\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848 'mymanifest' \u4E26\u5C07\n           foo/ \u76EE\u9304\u4E2D\u7684\u6240\u6709\u6A94\u6848\u5B58\u6A94\u81F3 'classes.jar' \u4E2D: \n       jar cvfm classes.jar mymanifest -C foo/\u3002\n
+
+main.usage.summary=jar: \u60A8\u5FC5\u9808\u6307\u5B9A\u5176\u4E2D\u4E00\u500B -ctxui \u9078\u9805\u3002
+main.usage.summary.try=\u8ACB\u4F7F\u7528 'jar --help' \u4EE5\u53D6\u5F97\u66F4\u591A\u7684\u8CC7\u8A0A\u3002
+
+main.help.preopt=\u7528\u6CD5: jar [OPTION...] [-C dir] \u6A94\u6848 ...\njar \u6703\u5EFA\u7ACB\u985E\u5225\u548C\u8CC7\u6E90\u7684\u5B58\u6A94\uFF0C\u4E26\u53EF\u64CD\u63A7\u6216\n\u56DE\u5FA9\u5B58\u6A94\u4E2D\u7684\u500B\u5225\u985E\u5225\u6216\u8CC7\u6E90\u3002\n\n \u7BC4\u4F8B:\n # \u4F7F\u7528\u5169\u500B\u985E\u5225\u6A94\u6848\u5EFA\u7ACB\u540D\u70BA classes.jar \u7684\u5B58\u6A94:\n jar --create --file classes.jar Foo.class Bar.class\n # \u4F7F\u7528\u73FE\u6709\u7684\u8CC7\u8A0A\u6E05\u55AE\u548C foo/ \u4E2D\u7684\u6240\u6709\u6A94\u6848\u5EFA\u7ACB\u5B58\u6A94:\n jar --create --file classes.jar --manifest mymanifest -C foo/ .\n # \u5EFA\u7ACB\u6A21\u7D44\u5316 jar \u5B58\u6A94\uFF0C\u5176\u4E2D\u7684\u6A21\u7D44\u6558\u8FF0\u5340\u4F4D\u65BC\n # classes/module-info.class:\n jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ classes resources\n # \u5C07\u73FE\u6709\u7684\u975E\u6A21\u7D44\u5316 jar \u66F4\u65B0\u70BA\u6A21\u7D44\u5316 jar:\n jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0\n     -C foo/ module-info.class
+main.help.opt.main=\ \u4E3B\u8981\u4F5C\u696D\u6A21\u5F0F:\n
+main.help.opt.main.create=\  -c, --create               \u5EFA\u7ACB\u5B58\u6A94
+main.help.opt.main.generate-index=\  -i, --generate-index=FILE  \u70BA\u6307\u5B9A\u7684 jar \u5B58\u6A94\u7522\u751F\u7D22\u5F15\n                             \u8CC7\u8A0A
+main.help.opt.main.list=\  -t, --list                 \u5217\u51FA\u5B58\u6A94\u7684\u76EE\u9304
+main.help.opt.main.update=\  -u, --update               \u66F4\u65B0\u73FE\u6709\u7684 jar \u5B58\u6A94
+main.help.opt.main.extract=\  -x, --extract              \u5F9E\u5B58\u6A94\u4E2D\u64F7\u53D6\u6307\u5B9A (\u6216\u6240\u6709) \u6A94\u6848
+main.help.opt.main.print-module-descriptor=\  -p, --print-module-descriptor  \u5217\u5370\u6A21\u7D44\u63CF\u8FF0\u5340
+main.help.opt.any=\ \u53EF\u5728\u4EFB\u4F55\u6A21\u5F0F\u4E0B\u4F7F\u7528\u7684\u4F5C\u696D\u4FEE\u98FE\u689D\u4EF6:\n\n  -C DIR                     \u8B8A\u66F4\u70BA\u6307\u5B9A\u76EE\u9304\u4E26\u5305\u542B\n                             \u4E0B\u5217\u6A94\u6848
+main.help.opt.any.file=\  -f, --file=FILE            \u5B58\u6A94\u6A94\u6848\u540D\u7A31
+main.help.opt.any.verbose=\  -v, --verbose              \u5728\u6A19\u6E96\u8F38\u51FA\u4E2D\u7522\u751F\u8A73\u7D30\u8F38\u51FA
+main.help.opt.create.update=\ \u53EA\u80FD\u5728\u5EFA\u7ACB\u548C\u66F4\u65B0\u6A21\u5F0F\u4E0B\u4F7F\u7528\u7684\u4F5C\u696D\u4FEE\u98FE\u689D\u4EF6:\n
+main.help.opt.create.update.main-class=\  -e, --main-class=CLASSNAME \u96A8\u9644\u65BC\u6A21\u7D44\u5316\u6216\u53EF\u57F7\u884C\n                             jar \u5B58\u6A94\u4E2D\u7368\u7ACB\u61C9\u7528\u7A0B\u5F0F\u7684\n                             \u61C9\u7528\u7A0B\u5F0F\u9032\u5165\u9EDE
+main.help.opt.create.update.manifest=\  -m, --manifest=FILE        \u5305\u542B\u6307\u5B9A\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848\u4E2D\u7684\u8CC7\u8A0A\u6E05\u55AE\n                             \u8CC7\u8A0A
+main.help.opt.create.update.no-manifest=\  -M, --no-manifest          \u4E0D\u70BA\u9805\u76EE\u5EFA\u7ACB\u8CC7\u8A0A\u6E05\u55AE\u6A94\u6848
+main.help.opt.create.update.module-version=\      --module-version=VERSION    \u5EFA\u7ACB\u6A21\u7D44\u5316 jar \u6216\u66F4\u65B0\u975E\u6A21\u7D44\u5316 jar \u6642\n                             \u4F7F\u7528\u7684\u6A21\u7D44\u7248\u672C
+main.help.opt.create.update.hash-dependencies=\      --hash-dependencies=PATTERN  \u5EFA\u7ACB\u6A21\u7D44\u5316 jar \u6216\u66F4\u65B0\n                             \u975E\u6A21\u7D44\u5316 jar \u6642\uFF0C\u904B\u7B97\u53CA\u8A18\u9304\n                             \u8207\u6307\u5B9A\u6A23\u5F0F\u76F8\u7B26\u7684\u6A21\u7D44\u76F8\u4F9D\u6027\n                             \u96DC\u6E4A
+main.help.opt.create.update.modulepath=\      --modulepath           \u6A21\u7D44\u76F8\u4F9D\u6027\u7684\u4F4D\u7F6E\uFF0C\u7528\u65BC\u7522\u751F
+\                             \u96DC\u6E4A
+main.help.opt.create.update.index=\ \u53EA\u80FD\u5728\u5EFA\u7ACB\u3001\u66F4\u65B0\u53CA\u7522\u751F\u7D22\u5F15\u6A21\u5F0F\u4E0B\u4F7F\u7528\u7684\u4F5C\u696D\u4FEE\u98FE\u689D\u4EF6:\n
+main.help.opt.create.update.index.no-compress=\  -0, --no-compress          \u50C5\u5132\u5B58; \u4E0D\u4F7F\u7528 ZIP \u58D3\u7E2E\u65B9\u5F0F
+main.help.opt.other=\ \u5176\u4ED6\u9078\u9805:\n
+main.help.opt.other.help=\  -?, --help[:compat]        \u63D0\u4F9B\u6B64\u8AAA\u660E\u6216\u9078\u64C7\u6027\u986F\u793A\u76F8\u5BB9\u6027\u8AAA\u660E
+main.help.opt.other.version=\      --version              \u5217\u5370\u7A0B\u5F0F\u7248\u672C
+main.help.postopt=\ \u5982\u679C\u6A21\u7D44\u63CF\u8FF0\u5340 ('module-info.class') \u4F4D\u65BC\u6307\u5B9A\u76EE\u9304\u7684\u6839\n \u6216 jar \u5B58\u6A94\u672C\u8EAB\u7684\u6839\uFF0C\u5247\u5B58\u6A94\u6703\u662F\n \u6A21\u7D44\u5316\u7684 jar\u3002\u4E0B\u5217\u4F5C\u696D\u53EA\u80FD\u5728\u5EFA\u7ACB\u6A21\u7D44\u5316 jar \u6216\u66F4\u65B0\n \u73FE\u6709\u975E\u6A21\u7D44\u5316 jar \u6642\u9032\u884C: '--module-version'\u3001\n '--hash-dependencies' \u548C '--modulepath'\u3002\n\n \u9577\u9078\u9805\u7684\u5F37\u5236\u6027\u6216\u9078\u64C7\u6027\u5F15\u6578\u4E5F\u6703\u662F\u4EFB\u4F55\u5C0D\u61C9\u77ED\u9078\u9805\u7684\n \u5F37\u5236\u6027\u6216\u9078\u64C7\u6027\u5F15\u6578\u3002
diff --git a/jdk/src/jdk.jcmd/share/classes/sun/tools/common/ProcessArgumentMatcher.java b/jdk/src/jdk.jcmd/share/classes/sun/tools/common/ProcessArgumentMatcher.java
index e08b11d..8dab8e0 100644
--- a/jdk/src/jdk.jcmd/share/classes/sun/tools/common/ProcessArgumentMatcher.java
+++ b/jdk/src/jdk.jcmd/share/classes/sun/tools/common/ProcessArgumentMatcher.java
@@ -25,6 +25,7 @@
 
 package sun.tools.common;
 
+import java.lang.reflect.Module;
 import java.net.URISyntaxException;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -45,13 +46,10 @@
  * the process identifiers.
  */
 public class ProcessArgumentMatcher {
-    private String excludeCls;
-    private String matchClass = null;
-    private String singlePid = null;
-    private boolean matchAll = false;
+    private String matchClass;
+    private String singlePid;
 
-    public ProcessArgumentMatcher(String pidArg, Class<?> excludeClass) {
-        excludeCls = excludeClass.getName();
+    public ProcessArgumentMatcher(String pidArg) {
         if (pidArg == null || pidArg.isEmpty()) {
             throw new IllegalArgumentException("Pid string is invalid");
         }
@@ -60,9 +58,7 @@
         }
         try {
             long pid = Long.parseLong(pidArg);
-            if (pid == 0) {
-                matchAll = true;
-            } else {
+            if (pid != 0) {
                 singlePid = String.valueOf(pid);
             }
         } catch (NumberFormatException nfe) {
@@ -70,7 +66,18 @@
         }
     }
 
-    private boolean check(VirtualMachineDescriptor vmd) {
+    private static String getExcludeStringFrom(Class<?> excludeClass) {
+        if (excludeClass == null) {
+            return "";
+        }
+        Module m = excludeClass.getModule();
+        if (m.isNamed()) {
+            return m.getName() + "/" + excludeClass.getName();
+        }
+        return excludeClass.getName();
+    }
+
+    private static boolean check(VirtualMachineDescriptor vmd, String excludeClass, String partialMatch) {
         String mainClass = null;
         try {
             VmIdentifier vmId = new VmIdentifier(vmd.id());
@@ -87,42 +94,55 @@
             // Handle this gracefully....
             return false;
         } catch (MonitorException | URISyntaxException e) {
-            if (e.getMessage() != null) {
-                System.err.println(e.getMessage());
-            } else {
-                Throwable cause = e.getCause();
-                if ((cause != null) && (cause.getMessage() != null)) {
-                    System.err.println(cause.getMessage());
-                } else {
-                    e.printStackTrace();
-                }
-            }
             return false;
         }
 
-        if (mainClass.equals(excludeCls)) {
+        if (excludeClass != null && mainClass.equals(excludeClass)) {
             return false;
         }
 
-        if (matchAll || mainClass.indexOf(matchClass) != -1) {
-            return true;
+        if (partialMatch != null && mainClass.indexOf(partialMatch) == -1) {
+            return false;
         }
 
-        return false;
+        return true;
     }
 
-    public Collection<String> getPids() {
-        Collection<String> pids = new ArrayList<>();
-        if (singlePid != null) {
-            pids.add(singlePid);
-            return pids;
-        }
+    private static Collection<VirtualMachineDescriptor> getSingleVMD(String pid) {
+        Collection<VirtualMachineDescriptor> vids = new ArrayList<>();
         List<VirtualMachineDescriptor> vmds = VirtualMachine.list();
         for (VirtualMachineDescriptor vmd : vmds) {
-            if (check(vmd)) {
-                pids.add(vmd.id());
+            if (check(vmd, null, null)) {
+                if (pid.equals(vmd.id())) {
+                    vids.add(vmd);
+                }
             }
         }
-        return pids;
+        return vids;
     }
+
+    private static Collection<VirtualMachineDescriptor> getVMDs(Class<?> excludeClass, String partialMatch) {
+        String excludeCls = getExcludeStringFrom(excludeClass);
+        Collection<VirtualMachineDescriptor> vids = new ArrayList<>();
+        List<VirtualMachineDescriptor> vmds = VirtualMachine.list();
+        for (VirtualMachineDescriptor vmd : vmds) {
+            if (check(vmd, excludeCls, partialMatch)) {
+                vids.add(vmd);
+            }
+        }
+        return vids;
+    }
+
+    public Collection<VirtualMachineDescriptor> getVirtualMachineDescriptors(Class<?> excludeClass) {
+        if (singlePid != null) {
+            return getSingleVMD(singlePid);
+        } else {
+            return getVMDs(excludeClass, matchClass);
+        }
+    }
+
+    public Collection<VirtualMachineDescriptor> getVirtualMachineDescriptors() {
+        return this.getVirtualMachineDescriptors(null);
+    }
+
 }
diff --git a/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/Arguments.java b/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/Arguments.java
index 80708f5..d76b6f4 100644
--- a/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/Arguments.java
+++ b/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/Arguments.java
@@ -45,6 +45,8 @@
     public Arguments(String[] args) {
         if (args.length == 0 || args[0].equals("-l")) {
             listProcesses = true;
+            /* list all processes */
+            processString = "0";
             return;
         }
 
diff --git a/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/JCmd.java b/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/JCmd.java
index ab77547..8a77c95 100644
--- a/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/JCmd.java
+++ b/jdk/src/jdk.jcmd/share/classes/sun/tools/jcmd/JCmd.java
@@ -65,36 +65,37 @@
             System.exit(1);
         }
 
+        ProcessArgumentMatcher ap = null;
+        try {
+            ap = new ProcessArgumentMatcher(arg.getProcessString());
+        } catch (IllegalArgumentException iae) {
+            System.err.println("Invalid pid '" + arg.getProcessString()  + "' specified");
+            System.exit(1);
+        }
+
         if (arg.isListProcesses()) {
-            List<VirtualMachineDescriptor> vmds = VirtualMachine.list();
-            for (VirtualMachineDescriptor vmd : vmds) {
+            for (VirtualMachineDescriptor vmd : ap.getVirtualMachineDescriptors(/* include jcmd in listing */)) {
                 System.out.println(vmd.id() + " " + vmd.displayName());
             }
             System.exit(0);
         }
 
-        Collection<String> pids = Collections.emptyList();
-        try {
-            ProcessArgumentMatcher ap = new ProcessArgumentMatcher(arg.getProcessString(), JCmd.class);
-            pids = ap.getPids();
-        } catch (IllegalArgumentException iae) {
-            System.err.println("Invalid pid specified");
-            System.exit(1);
-        }
-        if (pids.isEmpty()) {
+        Collection<VirtualMachineDescriptor> vids = ap.getVirtualMachineDescriptors(JCmd.class);
+
+        if (vids.isEmpty()) {
             System.err.println("Could not find any processes matching : '"
                                + arg.getProcessString() + "'");
             System.exit(1);
         }
 
         boolean success = true;
-        for (String pid : pids) {
-            System.out.println(pid + ":");
+        for (VirtualMachineDescriptor vid : vids) {
+            System.out.println(vid.id() + ":");
             if (arg.isListCounters()) {
-                listCounters(pid);
+                listCounters(vid.id());
             } else {
                 try {
-                    executeCommandForPid(pid, arg.getCommand());
+                    executeCommandForPid(vid.id(), arg.getCommand());
                 } catch(AttachOperationFailedException ex) {
                     System.err.println(ex.getMessage());
                     success = false;
diff --git a/jdk/src/jdk.jcmd/share/classes/sun/tools/jinfo/JInfo.java b/jdk/src/jdk.jcmd/share/classes/sun/tools/jinfo/JInfo.java
index ca77412..2c955af 100644
--- a/jdk/src/jdk.jcmd/share/classes/sun/tools/jinfo/JInfo.java
+++ b/jdk/src/jdk.jcmd/share/classes/sun/tools/jinfo/JInfo.java
@@ -30,6 +30,7 @@
 import java.util.Collection;
 
 import com.sun.tools.attach.VirtualMachine;
+import com.sun.tools.attach.VirtualMachineDescriptor;
 
 import sun.tools.attach.HotSpotVirtualMachine;
 import sun.tools.common.ProcessArgumentMatcher;
@@ -50,6 +51,7 @@
         boolean doFlag = false;
         boolean doFlags = false;
         boolean doSysprops = false;
+        int flag = -1;
 
         // Parse the options (arguments starting with "-" )
         int optionCount = 0;
@@ -67,65 +69,64 @@
 
             if (arg.equals("-flag")) {
                 doFlag = true;
-                continue;
+                // Consume the flag
+                if (optionCount < args.length) {
+                    flag = optionCount++;
+                    break;
+                }
+                usage(1);
             }
 
             if (arg.equals("-flags")) {
                 doFlags = true;
-                continue;
+                break;
             }
 
             if (arg.equals("-sysprops")) {
                 doSysprops = true;
-                continue;
+                break;
             }
         }
 
-        // Next we check the parameter count. -flag allows extra parameters
         int paramCount = args.length - optionCount;
-        if ((doFlag && paramCount != 2) || ((!doFlag && paramCount != 1))) {
+        if (paramCount != 1) {
             usage(1);
         }
 
-        if (!doFlag && !doFlags && !doSysprops) {
-            // Print flags and sysporps if no options given
-            ProcessArgumentMatcher ap = new ProcessArgumentMatcher(args[optionCount], JInfo.class);
-            Collection<String> pids = ap.getPids();
-            for (String pid : pids) {
-                if (pids.size() > 1) {
-                    System.out.println("Pid:" + pid);
-                }
-                sysprops(pid);
-                System.out.println();
-                flags(pid);
-                System.out.println();
-                commandLine(pid);
-            }
+        String parg = args[optionCount];
+
+        ProcessArgumentMatcher ap = new ProcessArgumentMatcher(parg);
+        Collection<VirtualMachineDescriptor> vids = ap.getVirtualMachineDescriptors(JInfo.class);
+
+        if (vids.isEmpty()) {
+            System.err.println("Could not find any processes matching : '" + parg + "'");
+            System.exit(1);
         }
 
-        if (doFlag) {
-            ProcessArgumentMatcher ap = new ProcessArgumentMatcher(args[optionCount+1], JInfo.class);
-            Collection<String> pids = ap.getPids();
-            for (String pid : pids) {
-                if (pids.size() > 1) {
-                    System.out.println("Pid:" + pid);
-                }
-                flag(pid, args[optionCount]);
+        for (VirtualMachineDescriptor vid : vids) {
+            if (vids.size() > 1) {
+                System.out.println("Pid:" + vid.id());
             }
-        }
-        else if (doFlags || doSysprops) {
-            ProcessArgumentMatcher ap = new ProcessArgumentMatcher(args[optionCount], JInfo.class);
-            Collection<String> pids = ap.getPids();
-            for (String pid : pids) {
-                if (pids.size() > 1) {
-                    System.out.println("Pid:" + pid);
+            if (!doFlag && !doFlags && !doSysprops) {
+                // Print flags and sysporps if no options given
+                sysprops(vid.id());
+                System.out.println();
+                flags(vid.id());
+                System.out.println();
+                commandLine(vid.id());
+            }
+            if (doFlag) {
+                if (flag < 0) {
+                    System.err.println("Missing flag");
+                    usage(1);
                 }
-                if (doFlags) {
-                    flags(pid);
-                }
-                else if (doSysprops) {
-                    sysprops(pid);
-                }
+                flag(vid.id(), args[flag]);
+            }
+            if (doFlags) {
+                flags(vid.id());
+            }
+            if (doSysprops) {
+                sysprops(vid.id());
             }
         }
     }
diff --git a/jdk/src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java b/jdk/src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java
index 810a44e..178d0a4 100644
--- a/jdk/src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java
+++ b/jdk/src/jdk.jcmd/share/classes/sun/tools/jmap/JMap.java
@@ -32,6 +32,7 @@
 import java.util.Collection;
 
 import com.sun.tools.attach.VirtualMachine;
+import com.sun.tools.attach.VirtualMachineDescriptor;
 import com.sun.tools.attach.AttachNotSupportedException;
 import sun.tools.attach.HotSpotVirtualMachine;
 import sun.tools.common.ProcessArgumentMatcher;
@@ -89,10 +90,17 @@
         // Here we handle the built-in options
         // As more options are added we should create an abstract tool class and
         // have a table to map the options
-        ProcessArgumentMatcher ap = new ProcessArgumentMatcher(pidArg, JMap.class);
-        Collection<String> pids = ap.getPids();
-        for (String pid : pids) {
-            if (pids.size() > 1) {
+        ProcessArgumentMatcher ap = new ProcessArgumentMatcher(pidArg);
+        Collection<VirtualMachineDescriptor> vids = ap.getVirtualMachineDescriptors(JMap.class);
+
+        if (vids.isEmpty()) {
+            System.err.println("Could not find any processes matching : '" + pidArg + "'");
+            System.exit(1);
+        }
+
+        for (VirtualMachineDescriptor vid : vids) {
+            String pid = vid.id();
+            if (vids.size() > 1) {
                 System.out.println("Pid:" + pid);
             }
             if (option.equals("-histo")) {
diff --git a/jdk/src/jdk.jcmd/share/classes/sun/tools/jstack/JStack.java b/jdk/src/jdk.jcmd/share/classes/sun/tools/jstack/JStack.java
index 7d629e3..5e861ce 100644
--- a/jdk/src/jdk.jcmd/share/classes/sun/tools/jstack/JStack.java
+++ b/jdk/src/jdk.jcmd/share/classes/sun/tools/jstack/JStack.java
@@ -29,6 +29,7 @@
 import java.util.Collection;
 
 import com.sun.tools.attach.VirtualMachine;
+import com.sun.tools.attach.VirtualMachineDescriptor;
 import sun.tools.attach.HotSpotVirtualMachine;
 import sun.tools.common.ProcessArgumentMatcher;
 
@@ -82,13 +83,19 @@
         } else {
             params = new String[0];
         }
-        ProcessArgumentMatcher ap = new ProcessArgumentMatcher(pidArg, JStack.class);
-        Collection<String> pids = ap.getPids();
-        for (String pid : pids) {
-            if (pids.size() > 1) {
-                System.out.println("Pid:" + pid);
+        ProcessArgumentMatcher ap = new ProcessArgumentMatcher(pidArg);
+        Collection<VirtualMachineDescriptor> vids = ap.getVirtualMachineDescriptors(JStack.class);
+
+        if (vids.isEmpty()) {
+            System.err.println("Could not find any processes matching : '" + pidArg + "'");
+            System.exit(1);
+        }
+
+        for (VirtualMachineDescriptor vid : vids) {
+            if (vids.size() > 1) {
+                System.out.println("Pid:" + vid.id());
             }
-            runThreadDump(pid, params);
+            runThreadDump(vid.id(), params);
         }
     }
 
diff --git a/jdk/src/jdk.jconsole/share/classes/sun/tools/jconsole/resources/messages_ja.properties b/jdk/src/jdk.jconsole/share/classes/sun/tools/jconsole/resources/messages_ja.properties
index 36cda09..ee0edb4 100644
--- a/jdk/src/jdk.jconsole/share/classes/sun/tools/jconsole/resources/messages_ja.properties
+++ b/jdk/src/jdk.jconsole/share/classes/sun/tools/jconsole/resources/messages_ja.properties
@@ -250,7 +250,7 @@
 UNREGISTER=\u767B\u9332\u89E3\u9664
 UPTIME=\u7A3C\u50CD\u6642\u9593
 USAGE_THRESHOLD=\u4F7F\u7528\u3057\u304D\u3044\u5024
-REMOTE_TF_USAGE=<b>\u4F7F\u7528\u65B9\u6CD5</b>: &&lt;hostname&&gt;:&&lt;port&&gt;\u307E\u305F\u306Fservice:jmx:&&lt;protocol&&gt;:&&lt;sap&&gt;
+REMOTE_TF_USAGE=<b>\u4F7F\u7528\u65B9\u6CD5</b>: &&lt;hostname&&gt;:&&lt;port&&gt; OR service:jmx:&&lt;protocol&&gt;:&&lt;sap&&gt;
 USED=\u4F7F\u7528\u6E08
 USERNAME_COLON_=\u30E6\u30FC\u30B6\u30FC\u540D(&U):
 USERNAME_ACCESSIBLE_NAME=\u30E6\u30FC\u30B6\u30FC\u540D
@@ -268,7 +268,7 @@
 WRITABLE=\u66F8\u8FBC\u307F\u53EF\u80FD
 CONNECTION_FAILED1=\u63A5\u7D9A\u306B\u5931\u6557\u3057\u307E\u3057\u305F: \u518D\u8A66\u884C\u3057\u307E\u3059\u304B\u3002
 CONNECTION_FAILED2={0}\u3078\u306E\u63A5\u7D9A\u304C\u6210\u529F\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002<br>\u3082\u3046\u4E00\u5EA6\u8A66\u3057\u307E\u3059\u304B\u3002
-CONNECTION_FAILED_SSL1=\u4FDD\u8B77\u3055\u308C\u305F\u63A5\u7D9A\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u4FDD\u8B77\u305B\u305A\u306B\u518D\u8A66\u884C\u3057\u307E\u3059\u304B\u3002
+CONNECTION_FAILED_SSL1=\u30BB\u30AD\u30E5\u30A2\u306A\u63A5\u7D9A\u304C\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u975E\u30BB\u30AD\u30E5\u30A2\u3067\u518D\u8A66\u884C\u3057\u307E\u3059\u304B\u3002
 CONNECTION_FAILED_SSL2=SSL\u3092\u4F7F\u7528\u3057\u3066{0}\u306B\u63A5\u7D9A\u3067\u304D\u307E\u305B\u3093\u3002<br>SSL\u306A\u3057\u3067\u63A5\u7D9A\u3057\u307E\u3059\u304B\u3002<br>(\u30E6\u30FC\u30B6\u30FC\u540D\u304A\u3088\u3073\u30D1\u30B9\u30EF\u30FC\u30C9\u306F\u30D7\u30EC\u30FC\u30F3\u30FB\u30C6\u30AD\u30B9\u30C8\u3067\u9001\u4FE1\u3055\u308C\u307E\u3059\u3002)
 CONNECTION_LOST1=\u63A5\u7D9A\u304C\u5931\u308F\u308C\u307E\u3057\u305F: \u518D\u63A5\u7D9A\u3057\u307E\u3059\u304B\u3002
 CONNECTING_TO1={0}\u306B\u63A5\u7D9A\u4E2D
@@ -279,4 +279,4 @@
 KBYTES={0} KB
 PLOT=\u30D7\u30ED\u30C3\u30C8
 VISUALIZE=\u8996\u899A\u5316
-ZZ_USAGE_TEXT=\u4F7F\u7528\u65B9\u6CD5: {0} [ -interval=n ] [ -notile ] [ -pluginpath <path> ] [ -version ] [ connection ... ]\n\n  -interval   \u66F4\u65B0\u9593\u9694\u3092n\u79D2\u306B\u8A2D\u5B9A\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8\u306F4\u79D2)\n  -notile     \u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u6700\u521D\u306B\u4E26\u3079\u3066\u8868\u793A\u3057\u306A\u3044(2\u3064\u4EE5\u4E0A\u306E\u63A5\u7D9A\u306B\u3064\u3044\u3066)\n  -pluginpath JConsole\u304C\u30D7\u30E9\u30B0\u30A4\u30F3\u3092\u53C2\u7167\u3059\u308B\u305F\u3081\u306B\u4F7F\u7528\u3059\u308B\u30D1\u30B9\u3092\u6307\u5B9A\u3059\u308B\n  -version    \u30D7\u30ED\u30B0\u30E9\u30E0\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u51FA\u529B\u3059\u308B\n\n  connection = pid || host:port || JMX URL (service:jmx:<protocol>://...)\n  pid         \u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30D7\u30ED\u30BB\u30B9\u306E\u30D7\u30ED\u30BB\u30B9ID\n  host        \u30EA\u30E2\u30FC\u30C8\u30FB\u30DB\u30B9\u30C8\u540D\u307E\u305F\u306FIP\u30A2\u30C9\u30EC\u30B9\n  port        \u30EA\u30E2\u30FC\u30C8\u63A5\u7D9A\u7528\u306E\u30DD\u30FC\u30C8\u756A\u53F7\n\n  -J          JConsole\u304C\u5B9F\u884C\u4E2D\u306EJava\u4EEE\u60F3\u30DE\u30B7\u30F3\u3078\u306E\n              \u5165\u529B\u5F15\u6570\u3092\u6307\u5B9A\u3059\u308B
+ZZ_USAGE_TEXT=\u4F7F\u7528\u65B9\u6CD5: {0} [ -interval=n ] [ -notile ] [ -pluginpath <path> ] [ -version ] [ connection ... ]\n\n  -interval   \u66F4\u65B0\u9593\u9694\u3092n\u79D2\u306B\u8A2D\u5B9A\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8\u306F4\u79D2)\n  -notile     \u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u6700\u521D\u306B\u4E26\u3079\u3066\u8868\u793A\u3057\u306A\u3044(2\u3064\u4EE5\u4E0A\u306E\u63A5\u7D9A\u306B\u3064\u3044\u3066)\n  -pluginpath JConsole\u304C\u30D7\u30E9\u30B0\u30A4\u30F3\u3092\u53C2\u7167\u3059\u308B\u305F\u3081\u306B\u4F7F\u7528\u3059\u308B\u30D1\u30B9\u3092\u6307\u5B9A\u3059\u308B\n  -version    \u30D7\u30ED\u30B0\u30E9\u30E0\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u5370\u5237\u3059\u308B\n\n  connection = pid || host:port || JMX URL (service:jmx:<protocol>://...)\n  pid         \u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30D7\u30ED\u30BB\u30B9\u306E\u30D7\u30ED\u30BB\u30B9ID\n  host        \u30EA\u30E2\u30FC\u30C8\u30FB\u30DB\u30B9\u30C8\u540D\u307E\u305F\u306FIP\u30A2\u30C9\u30EC\u30B9\n  port        \u30EA\u30E2\u30FC\u30C8\u63A5\u7D9A\u7528\u306E\u30DD\u30FC\u30C8\u756A\u53F7\n\n  -J          JConsole\u304C\u5B9F\u884C\u4E2D\u306EJava\u4EEE\u60F3\u30DE\u30B7\u30F3\u3078\u306E\n              \u5165\u529B\u5F15\u6570\u3092\u6307\u5B9A\u3059\u308B
diff --git a/jdk/src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java b/jdk/src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java
index b356222..e6c8828 100644
--- a/jdk/src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -129,8 +129,8 @@
         {"Fatal error", "\u81F4\u547D\u7684\u30A8\u30E9\u30FC:"},
         {"Field access encountered before after", "\u30D5\u30A3\u30FC\u30EB\u30C9({0})\u306F{1}\u3067\u3001{2}\u306B\u306A\u308A\u307E\u3059: "},
         {"Field access encountered", "\u30D5\u30A3\u30FC\u30EB\u30C9({0})\u306E\u30A2\u30AF\u30BB\u30B9\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F: "},
-        {"Field to unwatch not specified", "\u76E3\u8996\u3057\u306A\u3044\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
-        {"Field to watch not specified", "\u76E3\u8996\u3059\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
+        {"Field to unwatch not specified", "\u30A6\u30A9\u30C3\u30C1\u3057\u306A\u3044\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
+        {"Field to watch not specified", "\u30A6\u30A9\u30C3\u30C1\u3059\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
         {"GC Disabled for", "{0}\u306EGC\u304C\u7121\u52B9\u3067\u3059:"},
         {"GC Enabled for", "{0}\u306EGC\u304C\u6709\u52B9\u3067\u3059:"},
         {"grouping begin character", "{"},
@@ -200,7 +200,7 @@
         {"No class named", "\u540D\u524D''{0}''\u306E\u30AF\u30E9\u30B9\u304C\u3042\u308A\u307E\u305B\u3093"},
         {"No class specified.", "\u30AF\u30E9\u30B9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
         {"No classpath specified.", "\u30AF\u30E9\u30B9\u30D1\u30B9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
-        {"No code at line", "\u884C{0,number,integer} ({1}\u5185)\u306B\u30B3\u30FC\u30C9\u304C\u3042\u308A\u307E\u305B\u3093"},
+        {"No code at line", "{1}\u306E\u884C{0,number,integer}\u306B\u30B3\u30FC\u30C9\u304C\u3042\u308A\u307E\u305B\u3093"},
         {"No connect specification.", "\u63A5\u7D9A\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002"},
         {"No connector named:", "\u540D\u524D{0}\u306E\u30B3\u30CD\u30AF\u30BF\u304C\u3042\u308A\u307E\u305B\u3093"},
         {"No current thread", "\u73FE\u5728\u306E\u30B9\u30EC\u30C3\u30C9\u304C\u3042\u308A\u307E\u305B\u3093"},
@@ -321,10 +321,10 @@
         {"vmstartexception", "VM\u304C\u4F8B\u5916\u3092\u958B\u59CB\u3057\u307E\u3057\u305F: {0}"},
         {"Waiting for monitor:", "   \u30E2\u30CB\u30BF\u30FC\u306E\u5F85\u6A5F\u4E2D: {0}"},
         {"Waiting thread:", " \u30B9\u30EC\u30C3\u30C9\u3092\u5F85\u6A5F\u4E2D: {0}"},
-        {"watch accesses of", "{0}.{1}\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u76E3\u8996"},
-        {"watch modification of", "{0}.{1}\u306E\u5909\u66F4\u306E\u76E3\u8996"},
+        {"watch accesses of", "{0}.{1}\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u30A6\u30A9\u30C3\u30C1"},
+        {"watch modification of", "{0}.{1}\u306E\u5909\u66F4\u306E\u30A6\u30A9\u30C3\u30C1"},
         {"zz help text",
-             "** \u30B3\u30DE\u30F3\u30C9\u30FB\u30EA\u30B9\u30C8 **\nconnectors                -- \u3053\u306EVM\u5185\u306E\u4F7F\u7528\u53EF\u80FD\u306A\u30B3\u30CD\u30AF\u30BF\u3068\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\nrun [class [args]]        -- \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30E1\u30A4\u30F3\u30FB\u30AF\u30E9\u30B9\u306E\u5B9F\u884C\u3092\u958B\u59CB\u3057\u307E\u3059\n\nthreads [threadgroup]     -- \u30B9\u30EC\u30C3\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nthread <thread id>        -- \u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30B9\u30EC\u30C3\u30C9\u3092\u8A2D\u5B9A\u3057\u307E\u3059\nsuspend [thread id(s)]    -- \u30B9\u30EC\u30C3\u30C9\u3092\u4E2D\u65AD\u3057\u307E\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8: \u3059\u3079\u3066)\nresume [thread id(s)]     -- \u30B9\u30EC\u30C3\u30C9\u3092\u518D\u958B\u3057\u307E\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8: \u3059\u3079\u3066)\nwhere [<thread id> | all] -- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u30C0\u30F3\u30D7\u3057\u307E\u3059\nwherei [<thread id> | all]-- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092pc\u60C5\u5831\u3068\u3068\u3082\u306B\u30C0\u30F3\u30D7\u3057\u307E\u3059\nup [n frames]             -- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u4E0A\u306B\u79FB\u52D5\u3057\u307E\u3059\ndown [n frames]           -- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u4E0B\u306B\u79FB\u52D5\u3057\u307E\u3059\nkill <thread id> <expr>   -- \u6307\u5B9A\u3055\u308C\u305F\u4F8B\u5916\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u30B9\u30EC\u30C3\u30C9\u3092\u5F37\u5236\u7D42\u4E86\u3057\u307E\u3059\ninterrupt <thread id>     -- \u30B9\u30EC\u30C3\u30C9\u3092\u4E2D\u65AD\u3057\u307E\u3059\n\nprint <expr>              -- \u5F0F\u306E\u5024\u3092\u51FA\u529B\u3057\u307E\u3059\ndump <expr>               -- \u3059\u3079\u3066\u306E\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\neval <expr>               -- \u5F0F\u3092\u8A55\u4FA1\u3057\u307E\u3059(print\u3068\u540C\u3058)\nset <lvalue> = <expr>     -- \u65B0\u3057\u3044\u5024\u3092\u30D5\u30A3\u30FC\u30EB\u30C9/\u5909\u6570/\u914D\u5217\u8981\u7D20\u306B\u4EE3\u5165\u3057\u307E\u3059\nlocals                    -- \u73FE\u5728\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30D5\u30EC\u30FC\u30E0\u5185\u306E\u3059\u3079\u3066\u306E\u30ED\u30FC\u30AB\u30EB\u5909\u6570\u3092\u51FA\u529B\u3057\u307E\u3059\n\nclasses                   -- \u73FE\u5728\u65E2\u77E5\u306E\u30AF\u30E9\u30B9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nclass <class id>          -- \u6307\u5B9A\u3057\u305F\u30AF\u30E9\u30B9\u306E\u8A73\u7D30\u3092\u8868\u793A\u3057\u307E\u3059\nmethods <class id>        -- \u30AF\u30E9\u30B9\u306E\u30E1\u30BD\u30C3\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nfields <class id>         -- \u30AF\u30E9\u30B9\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\nthreadgroups              -- \u30B9\u30EC\u30C3\u30C9\u30B0\u30EB\u30FC\u30D7\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nthreadgroup <name>        -- \u73FE\u5728\u306E\u30B9\u30EC\u30C3\u30C9\u30B0\u30EB\u30FC\u30D7\u3092\u8A2D\u5B9A\u3057\u307E\u3059\n\nstop in <class id>.<method>[(argument_type,...)]\n                          -- \u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30E1\u30BD\u30C3\u30C9\u5185\u306B\u8A2D\u5B9A\u3057\u307E\u3059\nstop at <class id>:<line> -- \u884C\u306B\u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3059\nclear <class id>.<method>[(argument_type,...)]\n                          -- \u30E1\u30BD\u30C3\u30C9\u5185\u306E\u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\nclear <class id>:<line>   -- \u884C\u306E\u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\nclear                     -- \u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\ncatch [uncaught|caught|all] <class id>|<class pattern>\n                          -- \u6307\u5B9A\u3055\u308C\u305F\u4F8B\u5916\u304C\u767A\u751F\u3057\u305F\u3068\u304D\u306B\u30D6\u30EC\u30FC\u30AF\u3057\u307E\u3059\nignore [uncaught|caught|all] <class id>|<class pattern>\n                          -- \u6307\u5B9A\u3055\u308C\u305F\u4F8B\u5916\u306E'catch'\u3092\u53D6\u308A\u6D88\u3057\u307E\u3059\nwatch [access|all] <class id>.<field name>\n                          -- \u30D5\u30A3\u30FC\u30EB\u30C9\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u307E\u305F\u306F\u5909\u66F4\u3092\u76E3\u8996\u3057\u307E\u3059\nunwatch [access|all] <class id>.<field name>\n                          -- \u30D5\u30A3\u30FC\u30EB\u30C9\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u307E\u305F\u306F\u5909\u66F4\u306E\u76E3\u8996\u3092\u4E2D\u6B62\u3057\u307E\u3059\ntrace [go] methods [thread]\n                          -- \u30E1\u30BD\u30C3\u30C9\u306E\u5165\u308A\u53E3\u3068\u51FA\u53E3\u3092\u30C8\u30EC\u30FC\u30B9\u3057\u307E\u3059\u3002\n                          -- 'go'\u304C\u6307\u5B9A\u3055\u308C\u308B\u307E\u3067\u3059\u3079\u3066\u306E\u30B9\u30EC\u30C3\u30C9\u306F\u4E2D\u65AD\u3057\u307E\u3059\ntrace [go] method exit | exits [thread]\n                          -- \u73FE\u5728\u306E\u30E1\u30BD\u30C3\u30C9\u306E\u51FA\u53E3\u307E\u305F\u306F\u3059\u3079\u3066\u306E\u30E1\u30BD\u30C3\u30C9\u306E\u51FA\u53E3\u3092\u30C8\u30EC\u30FC\u30B9\u3057\u307E\u3059\n                          -- 'go'\u304C\u6307\u5B9A\u3055\u308C\u308B\u307E\u3067\u3059\u3079\u3066\u306E\u30B9\u30EC\u30C3\u30C9\u306F\u4E2D\u65AD\u3057\u307E\u3059\nuntrace [methods]         -- \u30E1\u30BD\u30C3\u30C9\u306E\u958B\u59CB\u307E\u305F\u306F\u7D42\u4E86\u306E\u30C8\u30EC\u30FC\u30B9\u3092\u505C\u6B62\u3057\u307E\u3059\nstep                      -- \u73FE\u5728\u306E\u884C\u3092\u5B9F\u884C\u3057\u307E\u3059\nstep up                   -- \u73FE\u5728\u306E\u30E1\u30BD\u30C3\u30C9\u304C\u30E1\u30BD\u30C3\u30C9\u306E\u547C\u51FA\u3057\u5143\u306B\u623B\u308B\u307E\u3067\u5B9F\u884C\u3057\u307E\u3059\nstepi                     -- \u73FE\u5728\u306E\u547D\u4EE4\u3092\u5B9F\u884C\u3057\u307E\u3059\nnext                      -- 1\u884C\u3092\u30B9\u30C6\u30C3\u30D7\u5B9F\u884C\u3057\u307E\u3059(\u547C\u51FA\u3057\u3092\u30B9\u30C6\u30C3\u30D7\u30AA\u30FC\u30D0\u30FC)\ncont                      -- \u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u304B\u3089\u5B9F\u884C\u3092\u7D9A\u884C\u3057\u307E\u3059\n\nlist [line number|method] -- \u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u3092\u51FA\u529B\u3057\u307E\u3059\nuse (or sourcepath) [source file path]\n                          -- \u30BD\u30FC\u30B9\u30FB\u30D1\u30B9\u3092\u8868\u793A\u307E\u305F\u306F\u5909\u66F4\u3057\u307E\u3059\nexclude [<class pattern>, ... | \"none\"]\n                          -- \u6307\u5B9A\u3057\u305F\u30AF\u30E9\u30B9\u306E\u30B9\u30C6\u30C3\u30D7\u3084\u30E1\u30BD\u30C3\u30C9\u30FB\u30A4\u30D9\u30F3\u30C8\u3092\u5831\u544A\u3057\u307E\u305B\u3093\nclasspath                 -- \u30BF\u30FC\u30B2\u30C3\u30C8VM\u304B\u3089\u30AF\u30E9\u30B9\u30D1\u30B9\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\n\nmonitor <command>         -- \u30D7\u30ED\u30B0\u30E9\u30E0\u304C\u505C\u6B62\u3059\u308B\u305F\u3073\u306B\u30B3\u30DE\u30F3\u30C9\u3092\u5B9F\u884C\u3057\u307E\u3059\nmonitor                   -- \u30E2\u30CB\u30BF\u30FC\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nunmonitor <monitor#>      -- \u30E2\u30CB\u30BF\u30FC\u3092\u524A\u9664\u3057\u307E\u3059\nread <filename>           -- \u30B3\u30DE\u30F3\u30C9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u53D6\u3063\u3066\u5B9F\u884C\u3057\u307E\u3059\n\nlock <expr>               -- \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30ED\u30C3\u30AF\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\nthreadlocks [thread id]   -- \u30B9\u30EC\u30C3\u30C9\u306E\u30ED\u30C3\u30AF\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\n\npop                       -- \u73FE\u5728\u306E\u30D5\u30EC\u30FC\u30E0\u307E\u3067\u306E\u3059\u3079\u3066\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u30DD\u30C3\u30D7\u3057\u307E\u3059\nreenter                   -- pop\u3068\u540C\u3058\u3067\u3059\u304C\u3001\u73FE\u5728\u306E\u30D5\u30EC\u30FC\u30E0\u304C\u518D\u5165\u529B\u3055\u308C\u307E\u3059\nredefine <class id> <class file name>\n                          -- \u30AF\u30E9\u30B9\u306E\u30B3\u30FC\u30C9\u3092\u518D\u5B9A\u7FA9\u3057\u307E\u3059\n\ndisablegc <expr>          -- \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u6291\u5236\u3057\u307E\u3059\nenablegc <expr>           -- \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u8A31\u53EF\u3057\u307E\u3059\n\n!!                        -- \u6700\u5F8C\u306E\u30B3\u30DE\u30F3\u30C9\u3092\u7E70\u308A\u8FD4\u3057\u307E\u3059\n<n> <command>             -- \u30B3\u30DE\u30F3\u30C9\u3092n\u56DE\u7E70\u308A\u8FD4\u3057\u307E\u3059\n# <command>               -- \u7834\u68C4\u3057\u307E\u3059(\u64CD\u4F5C\u306A\u3057)\nhelp (\u307E\u305F\u306F?)               -- \u30B3\u30DE\u30F3\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nversion                   -- \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\nexit (\u307E\u305F\u306Fquit)            -- \u30C7\u30D0\u30C3\u30AC\u3092\u7D42\u4E86\u3057\u307E\u3059\n\n<class id>: \u30D1\u30C3\u30B1\u30FC\u30B8\u4FEE\u98FE\u5B50\u3092\u542B\u3080\u5B8C\u5168\u30AF\u30E9\u30B9\u540D\n<class pattern>: \u5148\u982D\u307E\u305F\u306F\u672B\u5C3E\u306E\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9('*')\u3092\u542B\u3080\u30AF\u30E9\u30B9\u540D\n<thread id>: 'threads'\u30B3\u30DE\u30F3\u30C9\u3067\u5831\u544A\u3055\u308C\u308B\u30B9\u30EC\u30C3\u30C9\u756A\u53F7\n<expr>: Java(TM)\u30D7\u30ED\u30B0\u30E9\u30DF\u30F3\u30B0\u8A00\u8A9E\u306E\u5F0F\u3002\n\u307B\u3068\u3093\u3069\u306E\u4E00\u822C\u7684\u306A\u69CB\u6587\u304C\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\u3002\n\n\u8D77\u52D5\u30B3\u30DE\u30F3\u30C9\u306F\u3001\"jdb.ini\"\u307E\u305F\u306F\".jdbrc\"\u306B\u914D\u7F6E\u3067\u304D\u307E\u3059\n(user.home\u307E\u305F\u306Fuser.dir\u5185)"},
+             "** \u30B3\u30DE\u30F3\u30C9\u30FB\u30EA\u30B9\u30C8 **\nconnectors                -- \u3053\u306EVM\u5185\u306E\u4F7F\u7528\u53EF\u80FD\u306A\u30B3\u30CD\u30AF\u30BF\u3068\u30C8\u30E9\u30F3\u30B9\u30DD\u30FC\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\nrun [class [args]]        -- \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30E1\u30A4\u30F3\u30FB\u30AF\u30E9\u30B9\u306E\u5B9F\u884C\u3092\u958B\u59CB\u3057\u307E\u3059\n\nthreads [threadgroup]     -- \u30B9\u30EC\u30C3\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nthread <thread id>        -- \u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30B9\u30EC\u30C3\u30C9\u3092\u8A2D\u5B9A\u3057\u307E\u3059\nsuspend [thread id(s)]    -- \u30B9\u30EC\u30C3\u30C9\u3092\u4E2D\u65AD\u3057\u307E\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8: \u3059\u3079\u3066)\nresume [thread id(s)]     -- \u30B9\u30EC\u30C3\u30C9\u3092\u518D\u958B\u3057\u307E\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8: \u3059\u3079\u3066)\nwhere [<thread id> | all] -- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u30C0\u30F3\u30D7\u3057\u307E\u3059\nwherei [<thread id> | all]-- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092pc\u60C5\u5831\u3068\u3068\u3082\u306B\u30C0\u30F3\u30D7\u3057\u307E\u3059\nup [n frames]             -- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u4E0A\u306B\u79FB\u52D5\u3057\u307E\u3059\ndown [n frames]           -- \u30B9\u30EC\u30C3\u30C9\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u4E0B\u306B\u79FB\u52D5\u3057\u307E\u3059\nkill <thread id> <expr>   -- \u6307\u5B9A\u3055\u308C\u305F\u4F8B\u5916\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u30B9\u30EC\u30C3\u30C9\u3092\u5F37\u5236\u7D42\u4E86\u3057\u307E\u3059\ninterrupt <thread id>     -- \u30B9\u30EC\u30C3\u30C9\u3092\u4E2D\u65AD\u3057\u307E\u3059\n\nprint <expr>              -- \u5F0F\u306E\u5024\u3092\u51FA\u529B\u3057\u307E\u3059\ndump <expr>               -- \u3059\u3079\u3066\u306E\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\neval <expr>               -- \u5F0F\u3092\u8A55\u4FA1\u3057\u307E\u3059(print\u3068\u540C\u3058)\nset <lvalue> = <expr>     -- \u65B0\u3057\u3044\u5024\u3092\u30D5\u30A3\u30FC\u30EB\u30C9/\u5909\u6570/\u914D\u5217\u8981\u7D20\u306B\u4EE3\u5165\u3057\u307E\u3059\nlocals                    -- \u73FE\u5728\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30D5\u30EC\u30FC\u30E0\u5185\u306E\u3059\u3079\u3066\u306E\u30ED\u30FC\u30AB\u30EB\u5909\u6570\u3092\u51FA\u529B\u3057\u307E\u3059\n\nclasses                   -- \u73FE\u5728\u65E2\u77E5\u306E\u30AF\u30E9\u30B9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nclass <class id>          -- \u6307\u5B9A\u3057\u305F\u30AF\u30E9\u30B9\u306E\u8A73\u7D30\u3092\u8868\u793A\u3057\u307E\u3059\nmethods <class id>        -- \u30AF\u30E9\u30B9\u306E\u30E1\u30BD\u30C3\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nfields <class id>         -- \u30AF\u30E9\u30B9\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\nthreadgroups              -- \u30B9\u30EC\u30C3\u30C9\u30B0\u30EB\u30FC\u30D7\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nthreadgroup <name>        -- \u73FE\u5728\u306E\u30B9\u30EC\u30C3\u30C9\u30B0\u30EB\u30FC\u30D7\u3092\u8A2D\u5B9A\u3057\u307E\u3059\n\nstop in <class id>.<method>[(argument_type,...)]\n                          -- \u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30E1\u30BD\u30C3\u30C9\u5185\u306B\u8A2D\u5B9A\u3057\u307E\u3059\nstop at <class id>:<line> -- \u884C\u306B\u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3059\nclear <class id>.<method>[(argument_type,...)]\n                          -- \u30E1\u30BD\u30C3\u30C9\u5185\u306E\u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\nclear <class id>:<line>   -- \u884C\u306E\u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\nclear                     -- \u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\ncatch [uncaught|caught|all] <class id>|<class pattern>\n                          -- \u6307\u5B9A\u3055\u308C\u305F\u4F8B\u5916\u304C\u767A\u751F\u3057\u305F\u3068\u304D\u306B\u30D6\u30EC\u30FC\u30AF\u3057\u307E\u3059\nignore [uncaught|caught|all] <class id>|<class pattern>\n                          -- \u6307\u5B9A\u3055\u308C\u305F\u4F8B\u5916\u306E'catch'\u3092\u53D6\u308A\u6D88\u3057\u307E\u3059\nwatch [access|all] <class id>.<field name>\n                          -- \u30D5\u30A3\u30FC\u30EB\u30C9\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u307E\u305F\u306F\u5909\u66F4\u3092\u30A6\u30A9\u30C3\u30C1\u3057\u307E\u3059\nunwatch [access|all] <class id>.<field name>\n                          -- \u30D5\u30A3\u30FC\u30EB\u30C9\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u307E\u305F\u306F\u5909\u66F4\u306E\u30A6\u30A9\u30C3\u30C1\u3092\u4E2D\u6B62\u3057\u307E\u3059\ntrace [go] methods [thread]\n                          -- \u30E1\u30BD\u30C3\u30C9\u306E\u5165\u308A\u53E3\u3068\u51FA\u53E3\u3092\u30C8\u30EC\u30FC\u30B9\u3057\u307E\u3059\u3002\n                          -- 'go'\u304C\u6307\u5B9A\u3055\u308C\u308B\u307E\u3067\u3059\u3079\u3066\u306E\u30B9\u30EC\u30C3\u30C9\u306F\u4E2D\u65AD\u3057\u307E\u3059\ntrace [go] method exit | exits [thread]\n                          -- \u73FE\u5728\u306E\u30E1\u30BD\u30C3\u30C9\u306E\u51FA\u53E3\u307E\u305F\u306F\u3059\u3079\u3066\u306E\u30E1\u30BD\u30C3\u30C9\u306E\u51FA\u53E3\u3092\u30C8\u30EC\u30FC\u30B9\u3057\u307E\u3059\n                          -- 'go'\u304C\u6307\u5B9A\u3055\u308C\u308B\u307E\u3067\u3059\u3079\u3066\u306E\u30B9\u30EC\u30C3\u30C9\u306F\u4E2D\u65AD\u3057\u307E\u3059\nuntrace [methods]         -- \u30E1\u30BD\u30C3\u30C9\u306E\u958B\u59CB\u307E\u305F\u306F\u7D42\u4E86\u306E\u30C8\u30EC\u30FC\u30B9\u3092\u505C\u6B62\u3057\u307E\u3059\nstep                      -- \u73FE\u5728\u306E\u884C\u3092\u5B9F\u884C\u3057\u307E\u3059\nstep up                   -- \u73FE\u5728\u306E\u30E1\u30BD\u30C3\u30C9\u304C\u30E1\u30BD\u30C3\u30C9\u306E\u547C\u51FA\u3057\u5143\u306B\u623B\u308B\u307E\u3067\u5B9F\u884C\u3057\u307E\u3059\nstepi                     -- \u73FE\u5728\u306E\u547D\u4EE4\u3092\u5B9F\u884C\u3057\u307E\u3059\nnext                      -- 1\u884C\u3092\u30B9\u30C6\u30C3\u30D7\u5B9F\u884C\u3057\u307E\u3059(\u547C\u51FA\u3057\u3092\u30B9\u30C6\u30C3\u30D7\u30AA\u30FC\u30D0\u30FC)\ncont                      -- \u30D6\u30EC\u30FC\u30AF\u30DD\u30A4\u30F3\u30C8\u304B\u3089\u5B9F\u884C\u3092\u7D9A\u884C\u3057\u307E\u3059\n\nlist [line number|method] -- \u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u3092\u51FA\u529B\u3057\u307E\u3059\nuse (or sourcepath) [source file path]\n                          -- \u30BD\u30FC\u30B9\u30FB\u30D1\u30B9\u3092\u8868\u793A\u307E\u305F\u306F\u5909\u66F4\u3057\u307E\u3059\nexclude [<class pattern>, ... | \"none\"]\n                          -- \u6307\u5B9A\u3057\u305F\u30AF\u30E9\u30B9\u306E\u30B9\u30C6\u30C3\u30D7\u3084\u30E1\u30BD\u30C3\u30C9\u30FB\u30A4\u30D9\u30F3\u30C8\u3092\u5831\u544A\u3057\u307E\u305B\u3093\nclasspath                 -- \u30BF\u30FC\u30B2\u30C3\u30C8VM\u304B\u3089\u30AF\u30E9\u30B9\u30D1\u30B9\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\n\nmonitor <command>         -- \u30D7\u30ED\u30B0\u30E9\u30E0\u304C\u505C\u6B62\u3059\u308B\u305F\u3073\u306B\u30B3\u30DE\u30F3\u30C9\u3092\u5B9F\u884C\u3057\u307E\u3059\nmonitor                   -- \u30E2\u30CB\u30BF\u30FC\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nunmonitor <monitor#>      -- \u30E2\u30CB\u30BF\u30FC\u3092\u524A\u9664\u3057\u307E\u3059\nread <filename>           -- \u30B3\u30DE\u30F3\u30C9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u53D6\u3063\u3066\u5B9F\u884C\u3057\u307E\u3059\n\nlock <expr>               -- \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30ED\u30C3\u30AF\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\nthreadlocks [thread id]   -- \u30B9\u30EC\u30C3\u30C9\u306E\u30ED\u30C3\u30AF\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\n\npop                       -- \u73FE\u5728\u306E\u30D5\u30EC\u30FC\u30E0\u307E\u3067\u306E\u3059\u3079\u3066\u306E\u30B9\u30BF\u30C3\u30AF\u3092\u30DD\u30C3\u30D7\u3057\u307E\u3059\nreenter                   -- pop\u3068\u540C\u3058\u3067\u3059\u304C\u3001\u73FE\u5728\u306E\u30D5\u30EC\u30FC\u30E0\u304C\u518D\u5165\u529B\u3055\u308C\u307E\u3059\nredefine <class id> <class file name>\n                          -- \u30AF\u30E9\u30B9\u306E\u30B3\u30FC\u30C9\u3092\u518D\u5B9A\u7FA9\u3057\u307E\u3059\n\ndisablegc <expr>          -- \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u6291\u5236\u3057\u307E\u3059\nenablegc <expr>           -- \u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u8A31\u53EF\u3057\u307E\u3059\n\n!!                        -- \u6700\u5F8C\u306E\u30B3\u30DE\u30F3\u30C9\u3092\u7E70\u308A\u8FD4\u3057\u307E\u3059\n<n> <command>             -- \u30B3\u30DE\u30F3\u30C9\u3092n\u56DE\u7E70\u308A\u8FD4\u3057\u307E\u3059\n# <command>               -- \u7834\u68C4\u3057\u307E\u3059(\u64CD\u4F5C\u306A\u3057)\nhelp (\u307E\u305F\u306F?)               -- \u30B3\u30DE\u30F3\u30C9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\nversion                   -- \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\u51FA\u529B\u3057\u307E\u3059\nexit (\u307E\u305F\u306Fquit)            -- \u30C7\u30D0\u30C3\u30AC\u3092\u7D42\u4E86\u3057\u307E\u3059\n\n<class id>: \u30D1\u30C3\u30B1\u30FC\u30B8\u4FEE\u98FE\u5B50\u3092\u542B\u3080\u5B8C\u5168\u30AF\u30E9\u30B9\u540D\n<class pattern>: \u5148\u982D\u307E\u305F\u306F\u672B\u5C3E\u306E\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9('*')\u3092\u542B\u3080\u30AF\u30E9\u30B9\u540D\n<thread id>: 'threads'\u30B3\u30DE\u30F3\u30C9\u3067\u5831\u544A\u3055\u308C\u308B\u30B9\u30EC\u30C3\u30C9\u756A\u53F7\n<expr>: Java(TM)\u30D7\u30ED\u30B0\u30E9\u30DF\u30F3\u30B0\u8A00\u8A9E\u306E\u5F0F\u3002\n\u307B\u3068\u3093\u3069\u306E\u4E00\u822C\u7684\u306A\u69CB\u6587\u304C\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\u3002\n\n\u8D77\u52D5\u30B3\u30DE\u30F3\u30C9\u306F\u3001\"jdb.ini\"\u307E\u305F\u306F\".jdbrc\"\u306B\u914D\u7F6E\u3067\u304D\u307E\u3059\n(user.home\u307E\u305F\u306Fuser.dir\u5185)"},
         {"zz usage text",
              "\u4F7F\u7528\u65B9\u6CD5: {0} <options> <class> <arguments>\n\n\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n    -help             \u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3057\u3066\u7D42\u4E86\u3059\u308B\n    -sourcepath <directories separated by \"{1}\">\n                      \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n    -attach <address>\n                      \u6A19\u6E96\u30B3\u30CD\u30AF\u30BF\u3092\u4F7F\u7528\u3057\u3066\u3001\u6307\u5B9A\u3055\u308C\u305F\u30A2\u30C9\u30EC\u30B9\u3067\u5B9F\u884C\u4E2D\u306EVM\u306B\u63A5\u7D9A\u3059\u308B\n    -listen <address>\n                      \u6A19\u6E96\u30B3\u30CD\u30AF\u30BF\u3092\u4F7F\u7528\u3057\u3066\u3001\u6307\u5B9A\u3055\u308C\u305F\u30A2\u30C9\u30EC\u30B9\u3067\u5B9F\u884C\u4E2D\u306EVM\u306E\u63A5\u7D9A\u3092\u5F85\u6A5F\u3059\u308B\n    -listenany\n                      \u6A19\u6E96\u30B3\u30CD\u30AF\u30BF\u3092\u4F7F\u7528\u3057\u3066\u3001\u4F7F\u7528\u53EF\u80FD\u306A\u4EFB\u610F\u306E\u30A2\u30C9\u30EC\u30B9\u3067\u5B9F\u884C\u4E2D\u306EVM\u306E\u63A5\u7D9A\u3092\u5F85\u6A5F\u3059\u308B\n    -launch\n                      ''run''\u30B3\u30DE\u30F3\u30C9\u3092\u5F85\u6A5F\u305B\u305A\u306BVM\u3092\u5373\u6642\u306B\u8D77\u52D5\u3059\u308B\n    -listconnectors   \u3053\u306EVM\u3067\u4F7F\u7528\u53EF\u80FD\u306A\u30B3\u30CD\u30AF\u30BF\u3092\u30EA\u30B9\u30C8\u3059\u308B\n    -connect <connector-name>:<name1>=<value1>,...\n                      \u6307\u5B9A\u3055\u308C\u305F\u30B3\u30CD\u30AF\u30BF\u3092\u4F7F\u7528\u3057\u3066\u3001\u30EA\u30B9\u30C8\u3055\u308C\u305F\u5F15\u6570\u5024\u3067\u30BF\u30FC\u30B2\u30C3\u30C8VM\u306B\u63A5\u7D9A\u3059\u308B\n    -dbgtrace [flags] {0}\u306E\u30C7\u30D0\u30C3\u30B0\u306E\u60C5\u5831\u3092\u51FA\u529B\u3059\u308B\n    -tclient          \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092HotSpot(TM) Client Compiler\u3067\u5B9F\u884C\u3059\u308B\n    -tserver          \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092HotSpot(TM) Server Compiler\u3067\u5B9F\u884C\u3059\u308B\n\n\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u30C7\u30D0\u30C3\u30B0\u3059\u308B\u30D7\u30ED\u30BB\u30B9\u306B\u8EE2\u9001\u3055\u308C\u307E\u3059:\n    -v -verbose[:class|gc|jni]\n                      \u8A73\u7D30\u30E2\u30FC\u30C9\u3092\u30AA\u30F3\u306B\u3059\u308B\n    -D<name>=<value>  \u30B7\u30B9\u30C6\u30E0\u30FB\u30D7\u30ED\u30D1\u30C6\u30A3\u3092\u8A2D\u5B9A\u3059\u308B\n    -classpath <directories separated by \"{1}\">\n                      \u30AF\u30E9\u30B9\u3092\u691C\u7D22\u3059\u308B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u30EA\u30B9\u30C8\u3059\u308B\n    -X<option>        \u975E\u6A19\u6E96\u306E\u30BF\u30FC\u30B2\u30C3\u30C8VM\u30AA\u30D7\u30B7\u30E7\u30F3\n\n<class>\u306F\u30C7\u30D0\u30C3\u30B0\u3092\u958B\u59CB\u3059\u308B\u30AF\u30E9\u30B9\u306E\u540D\u524D\u3067\u3059\n<arguments>\u306F<class>\u306Emain()\u30E1\u30BD\u30C3\u30C9\u306B\u6E21\u3055\u308C\u308B\u5F15\u6570\u3067\u3059\n\n\u30B3\u30DE\u30F3\u30C9\u306E\u30D8\u30EB\u30D7\u306B\u3064\u3044\u3066\u306F{0}\u30D7\u30ED\u30F3\u30D7\u30C8\u3067''help''\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},
         // END OF MATERIAL TO LOCALIZE
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Utils.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Utils.java
index 62344ef..ae161b7 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Utils.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Utils.java
@@ -28,79 +28,87 @@
 import java.net.URI;
 import java.nio.file.FileSystem;
 import java.nio.file.FileSystems;
+import java.nio.file.Path;
 import java.nio.file.PathMatcher;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Comparator;
 import java.util.List;
-import java.util.function.Function;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
 import jdk.tools.jlink.plugin.Plugin;
+import jdk.tools.jlink.plugin.Plugin.Category;
 
 public class Utils {
 
     private Utils() {}
 
+    // jrt-fs file system
+    private static FileSystem JRT_FILE_SYSTEM;
+
     // current module
     private static final Module THIS_MODULE = Utils.class.getModule();
 
-    public static final Function<String, String[]> listParser = (argument) -> {
-        String[] arguments = null;
-        if (argument != null) {
-            arguments = argument.split(",");
-            for (int i = 0; i < arguments.length; i++) {
-                arguments[i] = arguments[i].trim();
-            }
-        }
-        return arguments;
-    };
-
-    public static boolean isPostProcessor(Plugin.Category category) {
-        return category.equals(Plugin.Category.VERIFIER)
-                || category.equals(Plugin.Category.PROCESSOR)
-                || category.equals(Plugin.Category.PACKAGER);
+    public static List<String> parseList(String arguments) {
+        return Arrays.stream(arguments.split(","))
+                     .map((p) -> p.trim())
+                     .filter((p) -> !p.isEmpty())
+                     .collect(Collectors.toList());
     }
 
-    public static boolean isPreProcessor(Plugin.Category category) {
-        return category.equals(Plugin.Category.COMPRESSOR)
-                || category.equals(Plugin.Category.FILTER)
-                || category.equals(Plugin.Category.MODULEINFO_TRANSFORMER)
-                || category.equals(Plugin.Category.SORTER)
-                || category.equals(Plugin.Category.TRANSFORMER)
-                || category.equals(Plugin.Category.METAINFO_ADDER);
+    public static boolean isPostProcessor(Category category) {
+        return category.equals(Category.VERIFIER)
+                || category.equals(Category.PROCESSOR)
+                || category.equals(Category.PACKAGER);
     }
 
-    public static boolean isPostProcessor(Plugin prov) {
-        if (prov.getType() != null) {
-            for (Plugin.Category pt : prov.getType()) {
-                if (pt instanceof Plugin.Category) {
-                    return isPostProcessor(pt);
-                }
-            }
+    public static boolean isPreProcessor(Category category) {
+        return category.equals(Category.COMPRESSOR)
+                || category.equals(Category.FILTER)
+                || category.equals(Category.MODULEINFO_TRANSFORMER)
+                || category.equals(Category.SORTER)
+                || category.equals(Category.TRANSFORMER)
+                || category.equals(Category.METAINFO_ADDER);
+    }
+
+    public static boolean isPostProcessor(Plugin provider) {
+        Set<Category> types = provider.getType();
+        Objects.requireNonNull(types);
+        for (Category pt : types) {
+            return isPostProcessor(pt);
         }
         return false;
     }
 
-    public static boolean isPreProcessor(Plugin prov) {
-        if (prov.getType() != null) {
-            for (Plugin.Category pt : prov.getType()) {
-                if (pt instanceof Plugin.Category) {
-                    return isPreProcessor(pt);
-                }
-            }
+    public static boolean isPreProcessor(Plugin provider) {
+        Set<Category> types = provider.getType();
+        Objects.requireNonNull(types);
+        for (Category pt : types) {
+            return isPreProcessor(pt);
         }
         return false;
     }
 
-    public static Plugin.Category getCategory(Plugin provider) {
-        if (provider.getType() != null) {
-            for (Plugin.Category t : provider.getType()) {
-                if (t instanceof Plugin.Category) {
-                    return t;
-                }
-            }
+    public static Category getCategory(Plugin provider) {
+        Set<Category> types = provider.getType();
+        Objects.requireNonNull(types);
+        for (Category t : types) {
+            return t;
         }
         return null;
     }
 
+    public static List<Plugin> getPreProcessors(List<Plugin> plugins) {
+        List<Plugin> res = new ArrayList<>();
+        for (Plugin p : plugins) {
+            if (isPreProcessor(p)) {
+                res.add(p);
+            }
+        }
+        return res;
+    }
+
     public static List<Plugin> getPostProcessors(List<Plugin> plugins) {
         List<Plugin> res = new ArrayList<>();
         for (Plugin p : plugins) {
@@ -133,16 +141,6 @@
         return res;
     }
 
-    public static List<Plugin> getPreProcessors(List<Plugin> plugins) {
-        List<Plugin> res = new ArrayList<>();
-        for (Plugin p : plugins) {
-            if (isPreProcessor(p)) {
-                res.add(p);
-            }
-        }
-        return res;
-    }
-
     public static boolean isFunctional(Plugin prov) {
         return prov.getState().contains(Plugin.State.FUNCTIONAL);
     }
@@ -161,7 +159,11 @@
     }
 
     public static FileSystem jrtFileSystem() {
-        return FileSystems.getFileSystem(URI.create("jrt:/"));
+        if (JRT_FILE_SYSTEM == null) {
+            JRT_FILE_SYSTEM = FileSystems.getFileSystem(URI.create("jrt:/"));
+        }
+
+        return JRT_FILE_SYSTEM;
     }
 
     public static PathMatcher getPathMatcher(FileSystem fs, String pattern) {
@@ -172,7 +174,11 @@
         return fs.getPathMatcher(pattern);
     }
 
-    public static PathMatcher getPathMatcher(String pattern) {
+    public static PathMatcher getJRTFSPathMatcher(String pattern) {
         return getPathMatcher(jrtFileSystem(), pattern);
     }
+
+    public static Path getJRTFSPath(String first, String... more) {
+        return jrtFileSystem().getPath(first, more);
+    }
 }
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/DefaultCompressPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/DefaultCompressPlugin.java
index 43eb6f2..c3cde26 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/DefaultCompressPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/DefaultCompressPlugin.java
@@ -24,8 +24,6 @@
  */
 package jdk.tools.jlink.internal.plugins;
 
-import java.io.IOException;
-import java.io.UncheckedIOException;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.Map;
@@ -37,7 +35,6 @@
 import jdk.tools.jlink.internal.ImagePluginStack;
 import jdk.tools.jlink.internal.ResourcePrevisitor;
 import jdk.tools.jlink.internal.StringTable;
-import jdk.tools.jlink.internal.Utils;
 
 /**
  *
@@ -103,33 +100,26 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        try {
-            String filter = config.get(FILTER);
-            String[] patterns = filter == null ? null
-                    : Utils.listParser.apply(filter);
-            ResourceFilter resFilter = new ResourceFilter(patterns);
-            String level = config.get(NAME);
-            if (level != null) {
-                switch (level) {
-                    case LEVEL_0:
-                        ss = new StringSharingPlugin(resFilter);
-                        break;
-                    case LEVEL_1:
-                        zip = new ZipPlugin(resFilter);
-                        break;
-                    case LEVEL_2:
-                        ss = new StringSharingPlugin(resFilter);
-                        zip = new ZipPlugin(resFilter);
-                        break;
-                    default:
-                        throw new IllegalArgumentException("Invalid compression level " + level);
-                }
-            } else {
-                ss = new StringSharingPlugin(resFilter);
-                zip = new ZipPlugin(resFilter);
+        ResourceFilter resFilter = ResourceFilter.includeFilter(config.get(FILTER));
+        String level = config.get(NAME);
+        if (level != null) {
+            switch (level) {
+                case LEVEL_0:
+                    ss = new StringSharingPlugin(resFilter);
+                    break;
+                case LEVEL_1:
+                    zip = new ZipPlugin(resFilter);
+                    break;
+                case LEVEL_2:
+                    ss = new StringSharingPlugin(resFilter);
+                    zip = new ZipPlugin(resFilter);
+                    break;
+                default:
+                    throw new IllegalArgumentException("Invalid compression level " + level);
             }
-        } catch (IOException ex) {
-            throw new UncheckedIOException(ex);
+        } else {
+            ss = new StringSharingPlugin(resFilter);
+            zip = new ZipPlugin(resFilter);
         }
     }
 }
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeFilesPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeFilesPlugin.java
index 628d8f6..0ccabeb 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeFilesPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeFilesPlugin.java
@@ -24,7 +24,6 @@
  */
 package jdk.tools.jlink.internal.plugins;
 
-import java.io.IOException;
 import java.io.UncheckedIOException;
 import java.util.Collections;
 import java.util.HashSet;
@@ -84,11 +83,6 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        try {
-            String value = config.get(NAME);
-            predicate = new ResourceFilter(Utils.listParser.apply(value), true);
-        } catch (IOException ex) {
-            throw new UncheckedIOException(ex);
-        }
+        predicate = ResourceFilter.excludeFilter(config.get(NAME));
     }
 }
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludePlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludePlugin.java
index 626087b..4f26bf4 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludePlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludePlugin.java
@@ -24,17 +24,14 @@
  */
 package jdk.tools.jlink.internal.plugins;
 
-import java.io.IOException;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 import java.util.function.Predicate;
-import jdk.tools.jlink.plugin.PluginException;
 import jdk.tools.jlink.plugin.TransformerPlugin;
 import jdk.tools.jlink.plugin.ModuleEntry;
 import jdk.tools.jlink.plugin.ModulePool;
-import jdk.tools.jlink.internal.Utils;
 
 /**
  *
@@ -84,11 +81,6 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        try {
-            String val = config.get(NAME);
-            predicate = new ResourceFilter(Utils.listParser.apply(val), true);
-        } catch (IOException ex) {
-            throw new PluginException(ex);
-        }
+        predicate = ResourceFilter.excludeFilter(config.get(NAME));
     }
 }
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeVMPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeVMPlugin.java
index 753d63e..3ddfabe 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeVMPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeVMPlugin.java
@@ -40,9 +40,7 @@
 import java.util.function.Predicate;
 import java.util.stream.Collectors;
 import jdk.tools.jlink.plugin.TransformerPlugin;
-import jdk.tools.jlink.plugin.ModuleEntry;
 import jdk.tools.jlink.plugin.ModulePool;
-import jdk.tools.jlink.internal.Utils;
 import jdk.tools.jlink.plugin.ModuleEntry;
 import jdk.tools.jlink.plugin.PluginException;
 
@@ -184,38 +182,34 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        try {
-            String value = config.get(NAME);
-            String exclude = "";
-            switch (value) {
-                case ALL: {
-                    // no filter.
-                    keepAll = true;
-                    break;
-                }
-                case CLIENT: {
-                    target = Jvm.CLIENT;
-                    exclude = "/java.base/native*server/*,/java.base/native*minimal/*";
-                    break;
-                }
-                case SERVER: {
-                    target = Jvm.SERVER;
-                    exclude = "/java.base/native*client/*,/java.base/native*minimal/*";
-                    break;
-                }
-                case MINIMAL: {
-                    target = Jvm.MINIMAL;
-                    exclude = "/java.base/native*server/*,/java.base/native*client/*";
-                    break;
-                }
-                default: {
-                    throw new IllegalArgumentException("Unknown exclude VM option: " + value);
-                }
+        String value = config.get(NAME);
+        String exclude = "";
+        switch (value) {
+            case ALL: {
+                // no filter.
+                keepAll = true;
+                break;
             }
-            predicate = new ResourceFilter(Utils.listParser.apply(exclude), true);
-        } catch (IOException ex) {
-            throw new UncheckedIOException(ex);
+            case CLIENT: {
+                target = Jvm.CLIENT;
+                exclude = "/java.base/native**server/**,/java.base/native**minimal/**";
+                break;
+            }
+            case SERVER: {
+                target = Jvm.SERVER;
+                exclude = "/java.base/native**client/**,/java.base/native**minimal/**";
+                break;
+            }
+            case MINIMAL: {
+                target = Jvm.MINIMAL;
+                exclude = "/java.base/native**server/**,/java.base/native**client/**";
+                break;
+            }
+            default: {
+                throw new IllegalArgumentException("Unknown exclude VM option: " + value);
+            }
         }
+        predicate = ResourceFilter.excludeFilter(exclude);
     }
 
     private ModuleEntry handleJvmCfgFile(ModuleEntry orig,
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/FileCopierPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/FileCopierPlugin.java
index 497d97e..d1839d3 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/FileCopierPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/FileCopierPlugin.java
@@ -196,14 +196,13 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        String val = config.get(NAME);
-        String[] argument = Utils.listParser.apply(val);
-        if (argument == null || argument.length == 0) {
+        List<String> arguments = Utils.parseList(config.get(NAME));
+        if (arguments.isEmpty()) {
             throw new RuntimeException("Invalid argument for " + NAME);
         }
 
         String javahome = System.getProperty("java.home");
-        for (String a : argument) {
+        for (String a : arguments) {
             int i = a.indexOf("=");
             CopiedFile cf = new CopiedFile();
             if (i == -1) {
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/IncludeLocalesPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/IncludeLocalesPlugin.java
index 3083c19..b5e7120 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/IncludeLocalesPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/IncludeLocalesPlugin.java
@@ -25,8 +25,6 @@
 package jdk.tools.jlink.internal.plugins;
 
 import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.UncheckedIOException;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
@@ -44,7 +42,6 @@
 import jdk.internal.org.objectweb.asm.ClassReader;
 import jdk.tools.jlink.internal.ResourcePrevisitor;
 import jdk.tools.jlink.internal.StringTable;
-import jdk.tools.jlink.internal.Utils;
 import jdk.tools.jlink.plugin.LinkModule;
 import jdk.tools.jlink.plugin.ModuleEntry;
 import jdk.tools.jlink.plugin.PluginException;
@@ -209,14 +206,10 @@
                 String.format(PluginsResourceBundle.getMessage(NAME + ".nomatchinglocales"), userParam));
         }
 
-        try {
-            String value = META_FILES + filtered.stream()
-                .map(s -> includeLocaleFilePatterns(s))
-                .collect(Collectors.joining(","));
-            predicate = new ResourceFilter(Utils.listParser.apply(value), false);
-        } catch (IOException ex) {
-            throw new UncheckedIOException(ex);
-        }
+        String value = META_FILES + filtered.stream()
+            .map(s -> includeLocaleFilePatterns(s))
+            .collect(Collectors.joining(","));
+        predicate = ResourceFilter.includeFilter(value);
     }
 
     private String includeLocaleFilePatterns(String tag) {
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/OrderResourcesPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/OrderResourcesPlugin.java
index c4ff910..47bb13d 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/OrderResourcesPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/OrderResourcesPlugin.java
@@ -167,8 +167,7 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        String val = config.get(NAME);
-        String[] patterns = Utils.listParser.apply(val);
+        List<String> patterns = Utils.parseList(config.get(NAME));
         int ordinal = 0;
 
         for (String pattern : patterns) {
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ReleaseInfoPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ReleaseInfoPlugin.java
index 579aace..8e676f6 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ReleaseInfoPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ReleaseInfoPlugin.java
@@ -97,10 +97,9 @@
 
             case "del": {
                 // --release-info del:keys=openjdk,java_version
-                String[] keys = Utils.listParser.apply(config.get(KEYS));
-                for (String k : keys) {
+                Utils.parseList(config.get(KEYS)).stream().forEach((k) -> {
                     release.remove(k);
-                }
+                });
             }
             break;
 
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ResourceFilter.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ResourceFilter.java
index 37287f1..349eefd 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ResourceFilter.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ResourceFilter.java
@@ -26,12 +26,13 @@
 
 import java.io.File;
 import java.io.IOException;
-import java.nio.file.FileSystem;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.PathMatcher;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
+import java.util.Objects;
 import java.util.function.Predicate;
 import jdk.tools.jlink.internal.Utils;
 import jdk.tools.jlink.plugin.PluginException;
@@ -41,17 +42,14 @@
  * Filter resource resources using path matcher.
  */
 public class ResourceFilter implements Predicate<String> {
-    private static final FileSystem JRT_FILE_SYSTEM = Utils.jrtFileSystem();
+    private final static List<String> EMPTY_LIST = Collections.emptyList();
 
-    final boolean negate;
-    final List<PathMatcher> matchers;
+    private final List<PathMatcher> matchers;
+    private final boolean include;
+    private final boolean otherwise;
 
-    public ResourceFilter(String[] patterns) throws IOException {
-        this(patterns, false);
-    }
-
-    public ResourceFilter(String[] patterns, boolean negate) throws IOException {
-        this.negate = negate;
+    private ResourceFilter(List<String> patterns, boolean exclude) {
+        Objects.requireNonNull(patterns);
         this.matchers = new ArrayList<>();
 
         for (String pattern : patterns) {
@@ -67,28 +65,59 @@
                         throw new PluginException(ex);
                     }
 
-                    for (String line : lines) {
-                        PathMatcher matcher = Utils.getPathMatcher(JRT_FILE_SYSTEM, line);
-                        matchers.add(matcher);
-                    }
+                    lines.stream().forEach((line) -> {
+                        matchers.add(Utils.getJRTFSPathMatcher(line.trim()));
+                    });
+                } else {
+                    System.err.println("warning - the filter file " + file +
+                                       " is empty or not present.");
                 }
             } else {
-                PathMatcher matcher = Utils.getPathMatcher(JRT_FILE_SYSTEM, pattern);
-                matchers.add(matcher);
+                matchers.add(Utils.getJRTFSPathMatcher(pattern));
             }
         }
+
+        this.include = !exclude;
+        this.otherwise = exclude || this.matchers.isEmpty();
+    }
+
+    public static ResourceFilter includeFilter(List<String> patterns) {
+        Objects.requireNonNull(patterns);
+        return new ResourceFilter(patterns, false);
+    }
+
+    public static ResourceFilter includeFilter(String patterns) {
+        if (patterns == null) {
+            return includeFilter(EMPTY_LIST);
+        }
+
+        return includeFilter(Utils.parseList(patterns));
+    }
+
+    public static ResourceFilter excludeFilter(List<String> patterns) {
+        Objects.requireNonNull(patterns);
+        return new ResourceFilter(patterns, true);
+    }
+
+    public static ResourceFilter excludeFilter(String patterns) {
+        if (patterns == null) {
+            return excludeFilter(EMPTY_LIST);
+        }
+
+        return excludeFilter(Utils.parseList(patterns));
     }
 
     @Override
     public boolean test(String name) {
-        Path path = JRT_FILE_SYSTEM.getPath(name);
+        Objects.requireNonNull(name);
+        Path path = Utils.getJRTFSPath(name);
 
         for (PathMatcher matcher : matchers) {
             if (matcher.matches(path)) {
-                return !negate;
+                return include;
             }
         }
 
-        return negate;
+        return otherwise;
     }
 }
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StringSharingPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StringSharingPlugin.java
index b3a1e7c..828cf10 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StringSharingPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StringSharingPlugin.java
@@ -63,7 +63,6 @@
 import jdk.tools.jlink.plugin.ModulePool;
 import jdk.tools.jlink.internal.ResourcePrevisitor;
 import jdk.tools.jlink.internal.StringTable;
-import jdk.tools.jlink.internal.Utils;
 
 /**
  *
@@ -335,12 +334,8 @@
 
     private Predicate<String> predicate;
 
-    public StringSharingPlugin() throws IOException {
-        this(new String[0]);
-    }
-
-    StringSharingPlugin(String[] patterns) throws IOException {
-        this(new ResourceFilter(patterns));
+    public StringSharingPlugin() {
+        this((path) -> true);
     }
 
     StringSharingPlugin(Predicate<String> predicate) {
@@ -396,12 +391,7 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        try {
-            String val = config.get(NAME);
-            predicate = new ResourceFilter(Utils.listParser.apply(val));
-        } catch (IOException ex) {
-            throw new PluginException(ex);
-        }
+        predicate = ResourceFilter.includeFilter(config.get(NAME));
     }
 
     @Override
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StripDebugPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StripDebugPlugin.java
index 4e7a036..42ba8d1 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StripDebugPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StripDebugPlugin.java
@@ -25,8 +25,7 @@
 package jdk.tools.jlink.internal.plugins;
 
 import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.UncheckedIOException;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
@@ -42,15 +41,15 @@
  * Strip debug attributes plugin
  */
 public final class StripDebugPlugin implements TransformerPlugin {
-    private static final String[] PATTERNS = {"*.diz"};
     public static final String NAME = "strip-debug";
     private final Predicate<String> predicate;
+
     public StripDebugPlugin() {
-        try {
-            predicate = new ResourceFilter(PATTERNS);
-        } catch (IOException ex) {
-            throw new UncheckedIOException(ex);
-        }
+        this((path) -> false);
+    }
+
+    StripDebugPlugin(Predicate<String> predicate) {
+        this.predicate = predicate;
     }
 
     @Override
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ZipPlugin.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ZipPlugin.java
index d3dd7bf..69645d0 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ZipPlugin.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ZipPlugin.java
@@ -27,18 +27,17 @@
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.nio.ByteBuffer;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 import java.util.function.Predicate;
 import java.util.zip.Deflater;
-import jdk.tools.jlink.plugin.PluginException;
 import jdk.tools.jlink.internal.ModulePoolImpl;
 import jdk.tools.jlink.plugin.ModuleEntry;
 import jdk.tools.jlink.plugin.ModulePool;
 import jdk.tools.jlink.plugin.TransformerPlugin;
-import jdk.tools.jlink.internal.Utils;
 
 /**
  *
@@ -53,8 +52,8 @@
 
     }
 
-    ZipPlugin(String[] patterns) throws IOException {
-        this(new ResourceFilter(patterns));
+    ZipPlugin(String[] patterns) {
+        this(ResourceFilter.includeFilter(Arrays.asList(patterns)));
     }
 
     ZipPlugin(Predicate<String> predicate) {
@@ -90,12 +89,7 @@
 
     @Override
     public void configure(Map<String, String> config) {
-        try {
-            String val = config.get(NAME);
-            predicate = new ResourceFilter(Utils.listParser.apply(val));
-        } catch (IOException ex) {
-            throw new PluginException(ex);
-        }
+        predicate = ResourceFilter.includeFilter(config.get(NAME));
     }
 
     static byte[] compress(byte[] bytesIn) {
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_ja.properties b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_ja.properties
new file mode 100644
index 0000000..955bb0a
--- /dev/null
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_ja.properties
@@ -0,0 +1,54 @@
+main.usage.summary=\u4F7F\u7528\u65B9\u6CD5: {0} <options> --modulepath <modulepath> --addmods <mods> --output <path>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30EA\u30B9\u30C8\u306B\u3064\u3044\u3066\u306F\u3001--help\u3092\u4F7F\u7528\u3057\u307E\u3059
+
+main.usage=\u4F7F\u7528\u65B9\u6CD5: {0} <options> --modulepath <modulepath> --addmods <mods> --output <path>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002
+
+error.prefix=\u30A8\u30E9\u30FC:
+warn.prefix=\u8B66\u544A:
+
+main.opt.help=\  --help                            \u3053\u306E\u30D8\u30EB\u30D7\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3057\u307E\u3059
+
+main.opt.version=\  --version                         \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831
+
+main.opt.modulepath=\  --modulepath <modulepath>         \u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9
+
+main.opt.addmods=\  --addmods <mod>[,<mod>...]        \u89E3\u6C7A\u3059\u308B\u30EB\u30FC\u30C8\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB
+
+main.opt.limitmods=\  --limitmods <mod>[,<mod>...]      \u76E3\u8996\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30E6\u30CB\u30D0\u30FC\u30B9\u3092\u5236\u9650\u3057\u307E\u3059
+
+main.opt.output=\  --output <path>                   \u51FA\u529B\u30D1\u30B9\u306E\u5834\u6240
+
+main.command.files=\  @<filename>                       \u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059
+
+main.opt.endian=\  --endian <little|big>             \u751F\u6210\u3055\u308C\u305Fjimage (default:native)\u306E\u30D0\u30A4\u30C8\u9806
+
+main.opt.genbom=\  --genbom                          jlink\u60C5\u5831\u3092\u542B\u3080bom\u30D5\u30A1\u30A4\u30EB\u3092\u751F\u6210\u3057\u307E\u3059
+
+main.opt.saveopts=\  --saveopts <filename>             \u6307\u5B9A\u306E\u30D5\u30A1\u30A4\u30EB\u306Bjlink\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4FDD\u5B58\u3057\u307E\u3059
+
+main.msg.bug=jlink\u3067\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3067\u91CD\u8907\u304C\u306A\u3044\u304B\u3092\u3054\u78BA\u8A8D\u306E\u3046\u3048\u3001Java Bug Database (http://bugreport.java.com/bugreport/)\u3067bug\u306E\u767B\u9332\u3092\u304A\u9858\u3044\u3044\u305F\u3057\u307E\u3059\u3002\u30EC\u30DD\u30FC\u30C8\u306B\u306F\u3001\u305D\u306E\u30D7\u30ED\u30B0\u30E9\u30E0\u3068\u6B21\u306E\u8A3A\u65AD\u5185\u5BB9\u3092\u542B\u3081\u3066\u304F\u3060\u3055\u3044\u3002\u3054\u5354\u529B\u3042\u308A\u304C\u3068\u3046\u3054\u3056\u3044\u307E\u3059\u3002
+
+main.extended.help=\u4F7F\u7528\u53EF\u80FD\u306A\u30D7\u30E9\u30B0\u30A4\u30F3\u306E\u30EA\u30B9\u30C8:
+
+err.unknown.byte.order:\u4E0D\u660E\u306A\u30D0\u30A4\u30C8\u9806{0}
+err.output.must.be.specified:--output\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.modulepath.must.be.specified:--modulepath\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.mods.must.be.specified:{0}\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+err.path.not.found=\u30D1\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+err.path.not.valid=\u7121\u52B9\u306A\u30D1\u30B9: {0}
+err.existing.image.must.exist=\u65E2\u5B58\u306E\u30A4\u30E1\u30FC\u30B8\u304C\u5B58\u5728\u3057\u306A\u3044\u304B\u3001\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u306F\u3042\u308A\u307E\u305B\u3093
+err.existing.image.invalid=\u65E2\u5B58\u306E\u30A4\u30E1\u30FC\u30B8\u304C\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093
+err.file.not.found=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+err.file.error=\u30D5\u30A1\u30A4\u30EB\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093: {0}
+err.dir.exists={0}\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u307E\u3059
+err.badpattern=\u4E0D\u6B63\u30D1\u30BF\u30FC\u30F3{0}
+err.unknown.option=\u4E0D\u660E\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
+err.missing.arg={0}\u306B\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+err.internal.error=\u5185\u90E8\u30A8\u30E9\u30FC: {0} {1} {2}
+err.invalid.arg.for.option=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059: {0}
+err.option.after.class=\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u30AF\u30E9\u30B9\u306E\u524D\u306B\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}
+err.option.unsupported={0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {1}
+err.config.defaults=\u30D7\u30ED\u30D1\u30C6\u30A3{0}\u304C\u69CB\u6210\u306B\u3042\u308A\u307E\u305B\u3093
+err.config.defaults.value=\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u5024\u304C\u9593\u9055\u3063\u3066\u3044\u307E\u3059: {0}
+err.bom.generation=bom\u30D5\u30A1\u30A4\u30EB\u306E\u751F\u6210\u306B\u5931\u6557\u3057\u307E\u3057\u305F: {0}
+warn.invalid.arg=\u7121\u52B9\u306A\u30AF\u30E9\u30B9\u540D\u307E\u305F\u306F\u30D1\u30B9\u540D\u304C\u5B58\u5728\u3057\u307E\u305B\u3093: {0}
+warn.split.package=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306F{1} {2}\u3067\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u3059
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_zh_CN.properties b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_zh_CN.properties
new file mode 100644
index 0000000..b609a6a
--- /dev/null
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink_zh_CN.properties
@@ -0,0 +1,54 @@
+main.usage.summary=\u7528\u6CD5: {0} <options> --modulepath <modulepath> --addmods <mods> --output <path>\n\u4F7F\u7528 --help \u53EF\u4EE5\u5217\u51FA\u53EF\u80FD\u7684\u9009\u9879
+
+main.usage=\u7528\u6CD5: {0} <options> --modulepath <modulepath> --addmods <mods> --output <path>\n\u53EF\u80FD\u7684\u9009\u9879\u5305\u62EC:
+
+error.prefix=\u9519\u8BEF:
+warn.prefix=\u8B66\u544A:
+
+main.opt.help=\  --help                            \u8F93\u51FA\u6B64\u5E2E\u52A9\u6D88\u606F
+
+main.opt.version=\  --version                         \u7248\u672C\u4FE1\u606F
+
+main.opt.modulepath=\  --modulepath <modulepath>         \u6A21\u5757\u8DEF\u5F84
+
+main.opt.addmods=\  --addmods <mod>[,<mod>...]        \u8981\u89E3\u6790\u7684\u6839\u6A21\u5757
+
+main.opt.limitmods=\  --limitmods <mod>[,<mod>...]      \u9650\u5236\u53EF\u89C2\u5BDF\u6A21\u5757\u7684\u9886\u57DF
+
+main.opt.output=\  --output <path>                   \u8F93\u51FA\u8DEF\u5F84\u7684\u4F4D\u7F6E
+
+main.command.files=\  @<filename>                       \u4ECE\u6587\u4EF6\u4E2D\u8BFB\u53D6\u9009\u9879
+
+main.opt.endian=\  --endian <little|big>             \u6240\u751F\u6210 jimage \u7684\u5B57\u8282\u987A\u5E8F (\u9ED8\u8BA4\u503C: native)
+
+main.opt.genbom=\  --genbom                          \u751F\u6210\u5305\u542B jlink \u4FE1\u606F\u7684 bom \u6587\u4EF6
+
+main.opt.saveopts=\  --saveopts <filename>             \u5C06 jlink \u9009\u9879\u4FDD\u5B58\u5728\u6307\u5B9A\u6587\u4EF6\u4E2D
+
+main.msg.bug=jlink \u4E2D\u51FA\u73B0\u5F02\u5E38\u9519\u8BEF\u3002\u5982\u679C\u5728 Java Bug Database (http://bugreport.java.com/bugreport/) \u4E2D\u6CA1\u6709\u627E\u5230\u8BE5\u9519\u8BEF, \u8BF7\u5728\u8BE5\u6570\u636E\u5E93\u4E2D\u5EFA\u7ACB Bug\u3002\u8BF7\u5728\u62A5\u544A\u4E2D\u9644\u4E0A\u60A8\u7684\u7A0B\u5E8F\u548C\u4EE5\u4E0B\u8BCA\u65AD\u4FE1\u606F\u3002\u8C22\u8C22\u3002
+
+main.extended.help=\u53EF\u7528\u63D2\u4EF6\u5217\u8868:
+
+err.unknown.byte.order:\u672A\u77E5\u7684\u5B57\u8282\u987A\u5E8F {0}
+err.output.must.be.specified:\u5FC5\u987B\u6307\u5B9A --output
+err.modulepath.must.be.specified:\u5FC5\u987B\u6307\u5B9A --modulepath
+err.mods.must.be.specified:\u6CA1\u6709\u5C06\u4EFB\u4F55\u6A21\u5757\u6307\u5B9A\u5230{0}
+err.path.not.found=\u627E\u4E0D\u5230\u8DEF\u5F84: {0}
+err.path.not.valid=\u65E0\u6548\u8DEF\u5F84: {0}
+err.existing.image.must.exist=\u73B0\u6709\u6620\u50CF\u4E0D\u5B58\u5728\u6216\u8005\u4E0D\u662F\u76EE\u5F55
+err.existing.image.invalid=\u73B0\u6709\u6620\u50CF\u65E0\u6548
+err.file.not.found=\u627E\u4E0D\u5230\u6587\u4EF6: {0}
+err.file.error=\u65E0\u6CD5\u8BBF\u95EE\u6587\u4EF6: {0}
+err.dir.exists={0} \u5DF2\u5B58\u5728
+err.badpattern=\u9519\u8BEF\u7684\u6A21\u5F0F {0}
+err.unknown.option=\u672A\u77E5\u9009\u9879: {0}
+err.missing.arg=\u6CA1\u6709\u4E3A{0}\u6307\u5B9A\u503C
+err.internal.error=\u5185\u90E8\u9519\u8BEF: {0} {1} {2}
+err.invalid.arg.for.option=\u9009\u9879\u7684\u53C2\u6570\u65E0\u6548: {0}
+err.option.after.class=\u5FC5\u987B\u5728\u7C7B\u4E4B\u524D\u6307\u5B9A\u9009\u9879: {0}
+err.option.unsupported=\u4E0D\u652F\u6301{0}: {1}
+err.config.defaults=\u914D\u7F6E\u4E2D\u7F3A\u5C11\u5C5E\u6027 {0}
+err.config.defaults.value=\u9ED8\u8BA4\u5C5E\u6027\u4E2D\u7684\u503C\u9519\u8BEF: {0}
+err.bom.generation=\u672A\u80FD\u751F\u6210 bom \u6587\u4EF6: {0}
+warn.invalid.arg=\u7C7B\u540D\u65E0\u6548\u6216\u8DEF\u5F84\u540D\u4E0D\u5B58\u5728: {0}
+warn.split.package=\u5DF2\u5728{1} {2}\u4E2D\u5B9A\u4E49\u7A0B\u5E8F\u5305{0}
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java b/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java
index e73d91b..121bd91 100644
--- a/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java
@@ -103,6 +103,7 @@
 import jdk.internal.module.ConfigurableModuleFinder.Phase;
 import jdk.internal.module.ModuleHashes;
 import jdk.internal.module.ModuleInfoExtender;
+import jdk.tools.jlink.internal.Utils;
 
 import static java.util.stream.Collectors.joining;
 
@@ -1091,13 +1092,7 @@
         @Override
         public PathMatcher convert(String pattern) {
             try {
-                if (!pattern.startsWith("glob:") &&
-                    !pattern.startsWith("regex:")) {
-                    pattern = "glob:" + pattern;
-                }
-
-                return FileSystems.getDefault()
-                                  .getPathMatcher("glob:" + pattern);
+                return Utils.getPathMatcher(FileSystems.getDefault(), pattern);
             } catch (PatternSyntaxException e) {
                 throw new CommandException("err.bad.pattern", pattern);
             }
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_ja.properties b/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_ja.properties
new file mode 100644
index 0000000..8555aca
--- /dev/null
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_ja.properties
@@ -0,0 +1,52 @@
+main.usage.summary=\u4F7F\u7528\u65B9\u6CD5: {0} (create|list|describe) <OPTIONS> <jmod-file>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30EA\u30B9\u30C8\u306B\u3064\u3044\u3066\u306F\u3001--help\u3092\u4F7F\u7528\u3057\u307E\u3059
+
+main.usage=\u4F7F\u7528\u65B9\u6CD5: {0} (create|list|describe) <OPTIONS> <jmod-file>
+
+error.prefix=\u30A8\u30E9\u30FC:
+warn.prefix=\u8B66\u544A:
+
+main.opt.mode.create=create    - \u65B0\u898F\u306Ejmod\u30A2\u30FC\u30AB\u30A4\u30D6\u3092\u4F5C\u6210\u3057\u307E\u3059
+main.opt.mode.list=list      - \u3059\u3079\u3066\u306E\u30A8\u30F3\u30C8\u30EA\u306E\u540D\u524D\u3092\u51FA\u529B\u3057\u307E\u3059
+main.opt.mode.describe=describe  - \u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u8A73\u7D30\u3092\u51FA\u529B\u3057\u307E\u3059
+
+main.opt.help=\u3053\u306E\u4F7F\u7528\u65B9\u6CD5\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3057\u307E\u3059
+main.opt.version=\u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831
+main.opt.class-path=\u30AF\u30E9\u30B9\u3092\u542B\u3080\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3jar\u30D5\u30A1\u30A4\u30EB|\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
+main.opt.libs=\u30CD\u30A4\u30C6\u30A3\u30D6\u30FB\u30E9\u30A4\u30D6\u30E9\u30EA\u306E\u5834\u6240
+main.opt.cmds=\u30CD\u30A4\u30C6\u30A3\u30D6\u30FB\u30B3\u30DE\u30F3\u30C9\u306E\u5834\u6240
+main.opt.config=\u30E6\u30FC\u30B6\u30FC\u304C\u7DE8\u96C6\u53EF\u80FD\u306A\u69CB\u6210\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240
+main.opt.exclude=PATTERN\u3068\u3057\u3066\u6307\u5B9A\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u9664\u5916\u3057\u307E\u3059
+main.opt.module-version= \u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3
+main.opt.modulepath=\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9
+main.opt.main-class=\u30E1\u30A4\u30F3\u30FB\u30AF\u30E9\u30B9
+main.opt.main-class.arg=class-name
+main.opt.os-name=\u30AA\u30DA\u30EC\u30FC\u30C6\u30A3\u30F3\u30B0\u30FB\u30B7\u30B9\u30C6\u30E0\u540D
+main.opt.os-name.arg=os-name
+main.opt.os-arch=\u30AA\u30DA\u30EC\u30FC\u30C6\u30A3\u30F3\u30B0\u30FB\u30B7\u30B9\u30C6\u30E0\u306E\u30A2\u30FC\u30AD\u30C6\u30AF\u30C1\u30E3
+main.opt.os-arch.arg=os-arch
+main.opt.os-version=\u30AA\u30DA\u30EC\u30FC\u30C6\u30A3\u30F3\u30B0\u30FB\u30B7\u30B9\u30C6\u30E0\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3
+main.opt.os-version.arg=os-version
+main.opt.hash-dependencies=\u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3057\u305F\u4F9D\u5B58\u6027\u306E\u30CF\u30C3\u30B7\u30E5\u3092\u8A08\u7B97\u304A\u3088\u3073\u8A18\u9332\u3057\u307E\u3059
+main.opt.cmdfile=\u6307\u5B9A\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059
+
+err.missing.mode=create\u3001list\u307E\u305F\u306Fdescribe\u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.invalid.mode=\u30E2\u30FC\u30C9\u306Fcreate\u3001list\u307E\u305F\u306Fdescribe\u306E\u3044\u305A\u308C\u304B\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}
+err.classpath.must.be.specified=--class-path\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.jmod.must.be.specified=jmod-file\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.invalid.version=\u7121\u52B9\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3{0}
+err.output.must.be.specified:--output\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.mods.must.be.specified:--mods\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.modulepath.must.be.specified:\u4F9D\u5B58\u6027\u306E\u30CF\u30C3\u30B7\u30E5\u6642\u306B\u306F--module-path\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+err.invalid.main-class:\u7121\u52B9\u306A\u30E1\u30A4\u30F3\u30AF\u30E9\u30B9\u540D: {0}
+err.path.not.found=\u30D1\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+err.path.not.valid=\u7121\u52B9\u306A\u30D1\u30B9: {0}
+err.path.not.a.dir=\u30D1\u30B9\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}
+err.invalid.class.path.entry=\u7121\u52B9\u306A\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u30FB\u30A8\u30F3\u30C8\u30EA: {0}
+err.file.already.exists=\u30D5\u30A1\u30A4\u30EB\u306F\u3059\u3067\u306B\u5B58\u5728\u3057\u307E\u3059: {0}
+err.jmod.not.found=jmod\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+err.bad.pattern=\u4E0D\u6B63\u30D1\u30BF\u30FC\u30F3{0}
+err.unknown.option=\u4E0D\u660E\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
+err.missing.arg={0}\u306B\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+err.internal.error=\u5185\u90E8\u30A8\u30E9\u30FC: {0} {1} {2}
+err.module.descriptor.not.found=\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+warn.invalid.arg=\u7121\u52B9\u306A\u30AF\u30E9\u30B9\u540D\u307E\u305F\u306F\u30D1\u30B9\u540D\u304C\u5B58\u5728\u3057\u307E\u305B\u3093: {0}
diff --git a/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_zh_CN.properties b/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_zh_CN.properties
new file mode 100644
index 0000000..adb8d63
--- /dev/null
+++ b/jdk/src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod_zh_CN.properties
@@ -0,0 +1,52 @@
+main.usage.summary=\u7528\u6CD5: {0} (create|list|describe) <OPTIONS> <jmod-file>\n\u4F7F\u7528 --help \u5217\u51FA\u53EF\u80FD\u7684\u9009\u9879
+
+main.usage=\u7528\u6CD5: {0} (create|list|describe) <OPTIONS> <jmod-file>
+
+error.prefix=\u9519\u8BEF:
+warn.prefix=\u8B66\u544A:
+
+main.opt.mode.create=create    - \u521B\u5EFA\u65B0\u7684 jmod \u6863\u6848
+main.opt.mode.list=list      - \u8F93\u51FA\u6240\u6709\u6761\u76EE\u7684\u540D\u79F0
+main.opt.mode.describe=describe  - \u8F93\u51FA\u6A21\u5757\u8BE6\u7EC6\u4FE1\u606F
+
+main.opt.help=\u8F93\u51FA\u6B64\u7528\u6CD5\u6D88\u606F
+main.opt.version=\u7248\u672C\u4FE1\u606F
+main.opt.class-path=\u5305\u542B\u7C7B\u7684\u5E94\u7528\u7A0B\u5E8F jar \u6587\u4EF6|\u76EE\u5F55
+main.opt.libs=\u672C\u673A\u5E93\u7684\u4F4D\u7F6E
+main.opt.cmds=\u672C\u673A\u547D\u4EE4\u7684\u4F4D\u7F6E
+main.opt.config=\u7528\u6237\u53EF\u7F16\u8F91\u914D\u7F6E\u6587\u4EF6\u7684\u4F4D\u7F6E
+main.opt.exclude=\u6392\u9664\u4EE5\u6A21\u5F0F\u6307\u5B9A\u7684\u6587\u4EF6
+main.opt.module-version= \u6A21\u5757\u7248\u672C
+main.opt.modulepath=\u6A21\u5757\u8DEF\u5F84
+main.opt.main-class=\u4E3B\u7C7B
+main.opt.main-class.arg=class-name
+main.opt.os-name=\u64CD\u4F5C\u7CFB\u7EDF\u540D\u79F0
+main.opt.os-name.arg=os-name
+main.opt.os-arch=\u64CD\u4F5C\u7CFB\u7EDF\u4F53\u7CFB\u7ED3\u6784
+main.opt.os-arch.arg=os-arch
+main.opt.os-version=\u64CD\u4F5C\u7CFB\u7EDF\u7248\u672C
+main.opt.os-version.arg=os-version
+main.opt.hash-dependencies=\u8BA1\u7B97\u548C\u8BB0\u5F55\u6309\u6A21\u5F0F\u5339\u914D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\u7684\u6563\u5217
+main.opt.cmdfile=\u4ECE\u6307\u5B9A\u6587\u4EF6\u8BFB\u53D6\u9009\u9879
+
+err.missing.mode=\u5FC5\u987B\u6307\u5B9A\u521B\u5EFA, \u5217\u51FA\u6216\u63CF\u8FF0\u4E4B\u4E00
+err.invalid.mode=\u6A21\u5F0F\u5FC5\u987B\u4E3A\u521B\u5EFA, \u5217\u51FA\u6216\u63CF\u8FF0\u4E4B\u4E00: {0}
+err.classpath.must.be.specified=\u5FC5\u987B\u6307\u5B9A --class-path
+err.jmod.must.be.specified=\u5FC5\u987B\u6307\u5B9A jmod-file
+err.invalid.version=\u65E0\u6548\u7684\u6A21\u5757\u7248\u672C {0}
+err.output.must.be.specified:\u5FC5\u987B\u6307\u5B9A --output
+err.mods.must.be.specified:\u5FC5\u987B\u6307\u5B9A --mods
+err.modulepath.must.be.specified:\u5BF9\u88AB\u4F9D\u8D56\u5BF9\u8C61\u8FDB\u884C\u6563\u5217\u5904\u7406\u65F6\u5FC5\u987B\u6307\u5B9A --module-path
+err.invalid.main-class:\u65E0\u6548\u7684\u4E3B\u7C7B\u540D\u79F0: {0}
+err.path.not.found=\u627E\u4E0D\u5230\u8DEF\u5F84: {0}
+err.path.not.valid=\u65E0\u6548\u8DEF\u5F84: {0}
+err.path.not.a.dir=\u8DEF\u5F84\u5FC5\u987B\u4E3A\u76EE\u5F55: {0}
+err.invalid.class.path.entry=\u65E0\u6548\u7684\u7C7B\u8DEF\u5F84\u6761\u76EE: {0}
+err.file.already.exists=\u6587\u4EF6\u5DF2\u5B58\u5728: {0}
+err.jmod.not.found=\u627E\u4E0D\u5230 jmod \u6587\u4EF6: {0}
+err.bad.pattern=\u9519\u8BEF\u7684\u6A21\u5F0F {0}
+err.unknown.option=\u672A\u77E5\u9009\u9879: {0}
+err.missing.arg=\u6CA1\u6709\u4E3A{0}\u6307\u5B9A\u503C
+err.internal.error=\u5185\u90E8\u9519\u8BEF: {0} {1} {2}
+err.module.descriptor.not.found=\u627E\u4E0D\u5230\u6A21\u5757\u63CF\u8FF0\u7B26
+warn.invalid.arg=\u7C7B\u540D\u65E0\u6548\u6216\u8DEF\u5F84\u540D\u4E0D\u5B58\u5728: {0}
diff --git a/jdk/src/jdk.jvmstat/share/classes/sun/jvmstat/monitor/MonitoredVmUtil.java b/jdk/src/jdk.jvmstat/share/classes/sun/jvmstat/monitor/MonitoredVmUtil.java
index f2b6cd1..7c1149b 100644
--- a/jdk/src/jdk.jvmstat/share/classes/sun/jvmstat/monitor/MonitoredVmUtil.java
+++ b/jdk/src/jdk.jvmstat/share/classes/sun/jvmstat/monitor/MonitoredVmUtil.java
@@ -102,35 +102,42 @@
      */
     public static String mainClass(MonitoredVm vm, boolean fullPath)
                          throws MonitorException {
-        String commandLine = commandLine(vm);
-        String arg0 = commandLine;
-
-        int firstSpace = commandLine.indexOf(' ');
+        String cmdLine = commandLine(vm);
+        int firstSpace = cmdLine.indexOf(' ');
         if (firstSpace > 0) {
-            arg0 = commandLine.substring(0, firstSpace);
+            cmdLine = cmdLine.substring(0, firstSpace);
         }
-        if (!fullPath) {
+        if (fullPath) {
+            return cmdLine;
+        }
+        /*
+         * Can't use File.separator() here because the separator for the target
+         * jvm may be different than the separator for the monitoring jvm.
+         * And we also strip embedded module e.g. "module/MainClass"
+         */
+        int lastSlash = cmdLine.lastIndexOf("/");
+        int lastBackslash = cmdLine.lastIndexOf("\\");
+        int lastSeparator = lastSlash > lastBackslash ? lastSlash : lastBackslash;
+        if (lastSeparator > 0) {
+            cmdLine = cmdLine.substring(lastSeparator + 1);
+        }
+
+        int lastPackageSeparator = cmdLine.lastIndexOf('.');
+        if (lastPackageSeparator > 0) {
+            String lastPart = cmdLine.substring(lastPackageSeparator + 1);
             /*
-             * can't use File.separator() here because the separator
-             * for the target jvm may be different than the separator
-             * for the monitoring jvm.
+             * We could have a relative path "my.module" or
+             * a module called "my.module" and a jar file called "my.jar" or
+             * class named "jar" in package "my", e.g. "my.jar".
+             * We can never be sure here, but we assume *.jar is a jar file
              */
-            int lastFileSeparator = arg0.lastIndexOf('/');
-            if (lastFileSeparator > 0) {
-                 return arg0.substring(lastFileSeparator + 1);
+            if (lastPart.equals("jar")) {
+                return cmdLine; /* presumably a file name without path */
             }
-
-            lastFileSeparator = arg0.lastIndexOf('\\');
-            if (lastFileSeparator > 0) {
-                 return arg0.substring(lastFileSeparator + 1);
-            }
-
-            int lastPackageSeparator = arg0.lastIndexOf('.');
-            if (lastPackageSeparator > 0) {
-                 return arg0.substring(lastPackageSeparator + 1);
-            }
+            return lastPart; /* presumably a class name without package */
         }
-        return arg0;
+
+        return cmdLine;
     }
 
     /**
diff --git a/jdk/src/jdk.pack200/share/native/unpack200/main.cpp b/jdk/src/jdk.pack200/share/native/unpack200/main.cpp
index 558a1ce..7e83697 100644
--- a/jdk/src/jdk.pack200/share/native/unpack200/main.cpp
+++ b/jdk/src/jdk.pack200/share/native/unpack200/main.cpp
@@ -146,14 +146,18 @@
 #define USAGE_OPTIONS \
     "\n" \
     "Unpacking Options\n" \
-    "  -H{h}, --deflate-hint={h}     override transmitted deflate hint: true, false, or keep (default)\n" \
+    "  -H{h}, --deflate-hint={h}     override transmitted deflate hint:\n" \
+    "                                true, false, or keep (default)\n" \
     "  -r, --remove-pack-file        remove input file after unpacking\n" \
     "  -v, --verbose                 increase program verbosity\n" \
     "  -q, --quiet                   set verbosity to lowest level\n" \
-    "  -l{F}, --log-file={F}         output to the given log file, or '-' for standard output (default)\n" \
+    "  -l{F}, --log-file={F}         output to the given log file,\n" \
+    "                                or '-' for standard output (default)\n" \
     "  -?, -h, --help                print this message\n" \
     "  -V, --version                 print program version\n" \
-    "  -J{X}                         Java VM argument (ignored)\n"
+    "\n" \
+    "Exit Status:\n" \
+    "  0 if successful, >0 if an error occurred\n"
 
 static void usage(unpacker* u, const char* progname, bool full = false) {
   // WinMain does not set argv[0] to the progrname
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_de.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_de.java
index 8484d92..c627ede 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_de.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_de.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "Verwendung: policytool [Optionen]"},
         {".file.file.policy.file.location",
                 " [-file <Datei>]    Policy-Dateiverzeichnis"},
-        {"New", "Neu"},
-        {"Open", "\u00D6ffnen"},
-        {"Save", "Speichern"},
-        {"Save.As", "Speichern unter"},
-        {"View.Warning.Log", "Warnungslog anzeigen"},
-        {"Exit", "Beenden"},
-        {"Add.Policy.Entry", "Policy-Eintrag hinzuf\u00FCgen"},
-        {"Edit.Policy.Entry", "Policy-Eintrag bearbeiten"},
-        {"Remove.Policy.Entry", "Policy-Eintrag entfernen"},
-        {"Edit", "Bearbeiten"},
+        {"New", "&Neu"},
+        {"Open", "&\u00D6ffnen..."},
+        {"Save", "&Speichern"},
+        {"Save.As", "Speichern &unter..."},
+        {"View.Warning.Log", "&Warnungslog anzeigen"},
+        {"Exit", "B&eenden"},
+        {"Add.Policy.Entry", "Policy-Eintrag &hinzuf\u00FCgen"},
+        {"Edit.Policy.Entry", "Policy-Eintrag &bearbeiten"},
+        {"Remove.Policy.Entry", "Policy-Eintrag &entfernen"},
+        {"Edit", "&Bearbeiten"},
         {"Retain", "Beibehalten"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "Public Key-Alias hinzuf\u00FCgen"},
         {"Remove.Public.Key.Alias", "Public Key-Alias entfernen"},
-        {"File", "Datei"},
-        {"KeyStore", "KeyStore"},
+        {"File", "&Datei"},
+        {"KeyStore", "&KeyStore"},
         {"Policy.File.", "Policy-Datei:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "Policy-Datei konnte nicht ge\u00F6ffnet werden: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "Vorhandene Datei {0} \u00FCberschreiben?"},
         {"Cancel", "Abbrechen"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "Principal hinzuf\u00FCgen"},
-        {"Edit.Principal", "Principal bearbeiten"},
-        {"Remove.Principal", "Principal entfernen"},
-        {"Principals.", "Principals:"},
-        {".Add.Permission", "  Berechtigung hinzuf\u00FCgen"},
-        {".Edit.Permission", "  Berechtigung bearbeiten"},
-        {"Remove.Permission", "Berechtigung entfernen"},
+        {"CodeBase.", "&CodeBase:"},
+        {"SignedBy.", "&SignedBy:"},
+        {"Add.Principal", "Principal &hinzuf\u00FCgen"},
+        {"Edit.Principal", "Principal &bearbeiten"},
+        {"Remove.Principal", "Principal ent&fernen"},
+        {"Principals.", "&Principals:"},
+        {".Add.Permission", "  B&erechtigung hinzuf\u00FCgen"},
+        {".Edit.Permission", "  Be&rechtigung bearbeiten"},
+        {"Remove.Permission", "Berec&htigung entfernen"},
         {"Done", "Fertig"},
-        {"KeyStore.URL.", "KeyStore-URL:"},
-        {"KeyStore.Type.", "KeyStore-Typ:"},
-        {"KeyStore.Provider.", "KeyStore-Provider:"},
-        {"KeyStore.Password.URL.", "KeyStore-Kennwort-URL:"},
+        {"KeyStore.URL.", "KeyStore-&URL:"},
+        {"KeyStore.Type.", "KeyStore-&Typ:"},
+        {"KeyStore.Provider.", "KeyStore-&Provider:"},
+        {"KeyStore.Password.URL.", "KeyStore-Kenn&wort-URL:"},
         {"Principals", "Principals"},
         {".Edit.Principal.", "  Principal bearbeiten:"},
         {".Add.New.Principal.", "  Neuen Principal hinzuf\u00FCgen:"},
@@ -117,8 +117,8 @@
                 "Policy erfolgreich in {0} geschrieben"},
         {"null.filename", "Null-Dateiname"},
         {"Save.changes.", "\u00C4nderungen speichern?"},
-        {"Yes", "Ja"},
-        {"No", "Nein"},
+        {"Yes", "&Ja"},
+        {"No", "&Nein"},
         {"Policy.Entry", "Policy-Eintrag"},
         {"Save.Changes", "\u00C4nderungen speichern"},
         {"No.Policy.Entry.selected", "Kein Policy-Eintrag ausgew\u00E4hlt"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_es.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_es.java
index cd6e6f3..7e1ec33 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_es.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_es.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "Sintaxis: policytool [opciones]"},
         {".file.file.policy.file.location",
                 "  [-file <archivo>]    ubicaci\u00F3n del archivo de normas"},
-        {"New", "Nuevo"},
-        {"Open", "Abrir"},
-        {"Save", "Guardar"},
-        {"Save.As", "Guardar como"},
-        {"View.Warning.Log", "Ver Log de Advertencias"},
-        {"Exit", "Salir"},
-        {"Add.Policy.Entry", "Agregar Entrada de Pol\u00EDtica"},
-        {"Edit.Policy.Entry", "Editar Entrada de Pol\u00EDtica"},
-        {"Remove.Policy.Entry", "Eliminar Entrada de Pol\u00EDtica"},
-        {"Edit", "Editar"},
+        {"New", "&Nueva"},
+        {"Open", "&Abrir..."},
+        {"Save", "&Guardar"},
+        {"Save.As", "Guardar &como..."},
+        {"View.Warning.Log", "Ver &log de advertencias"},
+        {"Exit", "&Salir"},
+        {"Add.Policy.Entry", "Agregar &entrada de pol\u00EDtica"},
+        {"Edit.Policy.Entry", "E&ditar entrada de pol\u00EDtica"},
+        {"Remove.Policy.Entry", "&Eliminar entrada de pol\u00EDtica"},
+        {"Edit", "&Editar"},
         {"Retain", "Mantener"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "Agregar Alias de Clave P\u00FAblico"},
         {"Remove.Public.Key.Alias", "Eliminar Alias de Clave P\u00FAblico"},
-        {"File", "Archivo"},
-        {"KeyStore", "Almac\u00E9n de Claves"},
+        {"File", "&Archivo"},
+        {"KeyStore", "Al&mac\u00E9n de claves"},
         {"Policy.File.", "Archivo de Pol\u00EDtica:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "No se ha podido abrir el archivo de pol\u00EDtica: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "\u00BFSobrescribir el archivo existente {0}?"},
         {"Cancel", "Cancelar"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "Agregar Principal"},
-        {"Edit.Principal", "Editar Principal"},
-        {"Remove.Principal", "Eliminar Principal"},
-        {"Principals.", "Principales:"},
-        {".Add.Permission", "  Agregar Permiso"},
-        {".Edit.Permission", "  Editar Permiso"},
-        {"Remove.Permission", "Eliminar Permiso"},
+        {"CodeBase.", "&CodeBase:"},
+        {"SignedBy.", "&SignedBy:"},
+        {"Add.Principal", "&Agregar principal"},
+        {"Edit.Principal", "&Editar principal"},
+        {"Remove.Principal", "Elimina&r principal"},
+        {"Principals.", "&Principales:"},
+        {".Add.Permission", "A&gregar permiso"},
+        {".Edit.Permission", "Ed&itar permiso"},
+        {"Remove.Permission", "Eli&minar permiso"},
         {"Done", "Listo"},
-        {"KeyStore.URL.", "URL de Almac\u00E9n de Claves:"},
-        {"KeyStore.Type.", "Tipo de Almac\u00E9n de Claves:"},
-        {"KeyStore.Provider.", "Proveedor de Almac\u00E9n de Claves:"},
-        {"KeyStore.Password.URL.", "URL de Contrase\u00F1a de Almac\u00E9n de Claves:"},
+        {"KeyStore.URL.", "&URL de almac\u00E9n de claves:"},
+        {"KeyStore.Type.", "&Tipo de almac\u00E9n de claves:"},
+        {"KeyStore.Provider.", "&Proveedor de almac\u00E9n de claves:"},
+        {"KeyStore.Password.URL.", "URL de Contra&se\u00F1a de almac\u00E9n de claves:"},
         {"Principals", "Principales"},
         {".Edit.Principal.", "  Editar Principal:"},
         {".Add.New.Principal.", "  Agregar Nuevo Principal:"},
@@ -117,8 +117,8 @@
                 "Pol\u00EDtica escrita correctamente en {0}"},
         {"null.filename", "nombre de archivo nulo"},
         {"Save.changes.", "\u00BFGuardar los cambios?"},
-        {"Yes", "S\u00ED"},
-        {"No", "No"},
+        {"Yes", "&S\u00ED"},
+        {"No", "&No"},
         {"Policy.Entry", "Entrada de Pol\u00EDtica"},
         {"Save.Changes", "Guardar Cambios"},
         {"No.Policy.Entry.selected", "No se ha seleccionado la entrada de pol\u00EDtica"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_fr.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_fr.java
index fd8087b..1730120 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_fr.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_fr.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,25 +44,25 @@
         {"Usage.policytool.options.", "Syntaxe : policytool [options]"},
         {".file.file.policy.file.location",
                 "  [-file <file>]    emplacement du fichier de r\u00E8gles"},
-        {"New", "Nouveau"},
-        {"Open", "Ouvrir"},
-        {"Save", "Enregistrer"},
-        {"Save.As", "Enregistrer sous"},
-        {"View.Warning.Log", "Afficher le journal des avertissements"},
-        {"Exit", "Quitter"},
-        {"Add.Policy.Entry", "Ajouter une r\u00E8gle"},
-        {"Edit.Policy.Entry", "Modifier une r\u00E8gle"},
-        {"Remove.Policy.Entry", "Enlever une r\u00E8gle"},
-        {"Edit", "Modifier"},
+        {"New", "&Nouveau"},
+        {"Open", "&Ouvrir..."},
+        {"Save", "Enregi&strer"},
+        {"Save.As", "Enregistrer so&us..."},
+        {"View.Warning.Log", "Affic&her le journal des avertissements"},
+        {"Exit", "&Quitter"},
+        {"Add.Policy.Entry", "&Ajouter une r\u00E8gle"},
+        {"Edit.Policy.Entry", "Modifi&er une r\u00E8gle"},
+        {"Remove.Policy.Entry", "Enlever une &r\u00E8gle"},
+        {"Edit", "Modifi&er"},
         {"Retain", "Conserver"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
-            "Avertissement : il se peut que le nom de fichier contienne des barres obliques inverses avec caract\u00E8re d'\u00E9chappement. Il n'est pas n\u00E9cessaire d'ajouter un caract\u00E8re d'\u00E9chappement aux barres obliques inverses. L'outil proc\u00E8de \u00E0 l'\u00E9chappement si n\u00E9cessaire lorsqu'il \u00E9crit le contenu des r\u00E8gles dans la zone de stockage persistant).\n\nCliquez sur Conserver pour garder le nom saisi ou sur Modifier pour le remplacer."},
+            "Avertissement : il se peut que le nom de fichier contienne des barres obliques inverses avec caract\u00E8re d'\u00E9chappement. Il n'est pas n\u00E9cessaire d'ajouter un caract\u00E8re d'\u00E9chappement aux barres obliques inverses. L'outil proc\u00E8de \u00E0 l'\u00E9chappement si n\u00E9cessaire lorsqu'il \u00E9crit le contenu des r\u00E8gles dans la zone de stockage persistant.\n\nCliquez sur Conserver pour garder le nom saisi ou sur Modifier pour le remplacer."},
 
         {"Add.Public.Key.Alias", "Ajouter un alias de cl\u00E9 publique"},
         {"Remove.Public.Key.Alias", "Enlever un alias de cl\u00E9 publique"},
-        {"File", "Fichier"},
-        {"KeyStore", "Fichier de cl\u00E9s"},
+        {"File", "&Fichier"},
+        {"KeyStore", "Fichier &de cl\u00E9s"},
         {"Policy.File.", "Fichier de r\u00E8gles :"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "Impossible d''ouvrir le fichier de r\u00E8gles\u00A0: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "Remplacer le fichier existant {0} ?"},
         {"Cancel", "Annuler"},
-        {"CodeBase.", "Base de code :"},
-        {"SignedBy.", "Sign\u00E9 par :"},
-        {"Add.Principal", "Ajouter un principal"},
-        {"Edit.Principal", "Modifier un principal"},
-        {"Remove.Principal", "Enlever un principal"},
-        {"Principals.", "Principaux :"},
-        {".Add.Permission", "  Ajouter un droit"},
-        {".Edit.Permission", "  Modifier un droit"},
-        {"Remove.Permission", "Enlever un droit"},
+        {"CodeBase.", "Base de &code :"},
+        {"SignedBy.", "&Sign\u00E9 par :"},
+        {"Add.Principal", "&Ajouter un principal"},
+        {"Edit.Principal", "Modifi&er un principal"},
+        {"Remove.Principal", "Enleve&r un principal"},
+        {"Principals.", "&Principaux :"},
+        {".Add.Permission", "  Ajouter un &droit"},
+        {".Edit.Permission", "  Mod&ifier un droit"},
+        {"Remove.Permission", "Enlever un dr&oit"},
         {"Done", "Termin\u00E9"},
-        {"KeyStore.URL.", "URL du fichier de cl\u00E9s :"},
-        {"KeyStore.Type.", "Type du fichier de cl\u00E9s :"},
-        {"KeyStore.Provider.", "Fournisseur du fichier de cl\u00E9s :"},
-        {"KeyStore.Password.URL.", "URL du mot de passe du fichier de cl\u00E9s :"},
+        {"KeyStore.URL.", "&URL du fichier de cl\u00E9s :"},
+        {"KeyStore.Type.", "&Type du fichier de cl\u00E9s :"},
+        {"KeyStore.Provider.", "Four&nisseur du fichier de cl\u00E9s :"},
+        {"KeyStore.Password.URL.", "UR&L du mot de passe du fichier de cl\u00E9s :"},
         {"Principals", "Principaux"},
         {".Edit.Principal.", "  Modifier un principal :"},
         {".Add.New.Principal.", "  Ajouter un principal :"},
@@ -117,8 +117,8 @@
                 "R\u00E8gle \u00E9crite dans {0}"},
         {"null.filename", "nom de fichier NULL"},
         {"Save.changes.", "Enregistrer les modifications ?"},
-        {"Yes", "Oui"},
-        {"No", "Non"},
+        {"Yes", "&Oui"},
+        {"No", "&Non"},
         {"Policy.Entry", "R\u00E8gle"},
         {"Save.Changes", "Enregistrer les modifications"},
         {"No.Policy.Entry.selected", "Aucune r\u00E8gle s\u00E9lectionn\u00E9e"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_it.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_it.java
index d989184..049b95a 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_it.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_it.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "Uso: policytool [opzioni]"},
         {".file.file.policy.file.location",
                 "  [-file <file>]    posizione del file dei criteri"},
-        {"New", "Nuovo"},
-        {"Open", "Apri"},
-        {"Save", "Salva"},
-        {"Save.As", "Salva con nome"},
-        {"View.Warning.Log", "Visualizza registro avvertenze"},
-        {"Exit", "Esci"},
-        {"Add.Policy.Entry", "Aggiungi voce dei criteri"},
-        {"Edit.Policy.Entry", "Modifica voce dei criteri"},
-        {"Remove.Policy.Entry", "Rimuovi voce dei criteri"},
-        {"Edit", "Modifica"},
+        {"New", "&Nuovo"},
+        {"Open", "&Apri..."},
+        {"Save", "&Salva"},
+        {"Save.As", "Sal&va con nome..."},
+        {"View.Warning.Log", "Visuali&zza registro avvertenze"},
+        {"Exit", "&Esci"},
+        {"Add.Policy.Entry", "Aggi&ungi voce criteri"},
+        {"Edit.Policy.Entry", "&Modifica voce criteri"},
+        {"Remove.Policy.Entry", "&Rimuovi voce criteri"},
+        {"Edit", "&Modifica"},
         {"Retain", "Mantieni"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "Aggiungi alias chiave pubblica"},
         {"Remove.Public.Key.Alias", "Rimuovi alias chiave pubblica"},
-        {"File", "File"},
-        {"KeyStore", "Keystore"},
+        {"File", "&File"},
+        {"KeyStore", "&Keystore"},
         {"Policy.File.", "File dei criteri:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "Impossibile aprire il file di criteri {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "OK per sovrascrivere il file {0}?"},
         {"Cancel", "Annulla"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "Aggiungi principal"},
-        {"Edit.Principal", "Modifica principal"},
-        {"Remove.Principal", "Rimuovi principal"},
-        {"Principals.", "Principal:"},
-        {".Add.Permission", "  Aggiungi autorizzazione"},
-        {".Edit.Permission", "  Modifica autorizzazione"},
-        {"Remove.Permission", "Rimuovi autorizzazione"},
+        {"CodeBase.", "&CodeBase:"},
+        {"SignedBy.", "&SignedBy:"},
+        {"Add.Principal", "&Aggiungi principal"},
+        {"Edit.Principal", "&Modifica principal"},
+        {"Remove.Principal", "&Rimuovi principal"},
+        {"Principals.", "&Principal:"},
+        {".Add.Permission", "  Aggiu&ngi autorizzazione"},
+        {".Edit.Permission", "  Mo&difica autorizzazione"},
+        {"Remove.Permission", "R&imuovi autorizzazione"},
         {"Done", "Fine"},
-        {"KeyStore.URL.", "URL keystore:"},
-        {"KeyStore.Type.", "Tipo keystore:"},
-        {"KeyStore.Provider.", "Provider keystore:"},
-        {"KeyStore.Password.URL.", "URL password keystore:"},
+        {"KeyStore.URL.", "&URL keystore:"},
+        {"KeyStore.Type.", "&Tipo keystore:"},
+        {"KeyStore.Provider.", "Pro&vider keystore:"},
+        {"KeyStore.Password.URL.", "URL pass&word keystore:"},
         {"Principals", "Principal:"},
         {".Edit.Principal.", "  Modifica principal:"},
         {".Add.New.Principal.", "  Aggiungi nuovo principal:"},
@@ -117,8 +117,8 @@
                 "I criteri sono stati scritti in {0}"},
         {"null.filename", "nome file nullo"},
         {"Save.changes.", "Salvare le modifiche?"},
-        {"Yes", "S\u00EC"},
-        {"No", "No"},
+        {"Yes", "&S\u00EC"},
+        {"No", "&No"},
         {"Policy.Entry", "Voce dei criteri"},
         {"Save.Changes", "Salva le modifiche"},
         {"No.Policy.Entry.selected", "Nessuna voce dei criteri selezionata"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ja.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ja.java
index ccd904e..665b696 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ja.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ja.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "\u4F7F\u7528\u65B9\u6CD5: policytool [options]"},
         {".file.file.policy.file.location",
                 "  [-file <file>]  \u30DD\u30EA\u30B7\u30FC\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240"},
-        {"New", "\u65B0\u898F"},
-        {"Open", "\u958B\u304F"},
-        {"Save", "\u4FDD\u5B58"},
-        {"Save.As", "\u5225\u540D\u4FDD\u5B58"},
-        {"View.Warning.Log", "\u8B66\u544A\u30ED\u30B0\u306E\u8868\u793A"},
-        {"Exit", "\u7D42\u4E86"},
-        {"Add.Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306E\u8FFD\u52A0"},
-        {"Edit.Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306E\u7DE8\u96C6"},
-        {"Remove.Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306E\u524A\u9664"},
-        {"Edit", "\u7DE8\u96C6"},
+        {"New", "\u65B0\u898F(&N)"},
+        {"Open", "\u958B\u304F(&O)..."},
+        {"Save", "\u4FDD\u5B58(&S)"},
+        {"Save.As", "\u5225\u540D\u4FDD\u5B58(&A)..."},
+        {"View.Warning.Log", "\u8B66\u544A\u30ED\u30B0\u306E\u8868\u793A(&W)"},
+        {"Exit", "\u7D42\u4E86(&X)"},
+        {"Add.Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306E\u8FFD\u52A0(&A)"},
+        {"Edit.Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306E\u7DE8\u96C6(&E)"},
+        {"Remove.Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306E\u524A\u9664(&R)"},
+        {"Edit", "\u7DE8\u96C6(&E)"},
         {"Retain", "\u4FDD\u6301"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "\u516C\u958B\u9375\u306E\u5225\u540D\u306E\u8FFD\u52A0"},
         {"Remove.Public.Key.Alias", "\u516C\u958B\u9375\u306E\u5225\u540D\u3092\u524A\u9664"},
-        {"File", "\u30D5\u30A1\u30A4\u30EB"},
-        {"KeyStore", "\u30AD\u30FC\u30B9\u30C8\u30A2"},
+        {"File", "\u30D5\u30A1\u30A4\u30EB(&F)"},
+        {"KeyStore", "\u30AD\u30FC\u30B9\u30C8\u30A2(&K)"},
         {"Policy.File.", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30D5\u30A1\u30A4\u30EB:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "\u30DD\u30EA\u30B7\u30FC\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u3051\u307E\u305B\u3093\u3067\u3057\u305F: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "\u65E2\u5B58\u306E\u30D5\u30A1\u30A4\u30EB{0}\u306B\u4E0A\u66F8\u304D\u3057\u307E\u3059\u304B\u3002"},
         {"Cancel", "\u53D6\u6D88"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u8FFD\u52A0"},
-        {"Edit.Principal", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u7DE8\u96C6"},
-        {"Remove.Principal", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u524A\u9664"},
-        {"Principals.", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB:"},
-        {".Add.Permission", "  \u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u8FFD\u52A0"},
-        {".Edit.Permission", "  \u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u7DE8\u96C6"},
-        {"Remove.Permission", "\u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u524A\u9664"},
+        {"CodeBase.", "CodeBase(&C):"},
+        {"SignedBy.", "SignedBy(&S):"},
+        {"Add.Principal", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u8FFD\u52A0(&A)"},
+        {"Edit.Principal", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u7DE8\u96C6(&E)"},
+        {"Remove.Principal", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u524A\u9664(&R)"},
+        {"Principals.", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB(&P):"},
+        {".Add.Permission", "  \u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u8FFD\u52A0(&D)"},
+        {".Edit.Permission", "  \u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u7DE8\u96C6(&I)"},
+        {"Remove.Permission", "\u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u524A\u9664(&M)"},
         {"Done", "\u5B8C\u4E86"},
-        {"KeyStore.URL.", "\u30AD\u30FC\u30B9\u30C8\u30A2URL:"},
-        {"KeyStore.Type.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30BF\u30A4\u30D7:"},
-        {"KeyStore.Provider.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30D7\u30ED\u30D0\u30A4\u30C0:"},
-        {"KeyStore.Password.URL.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30D1\u30B9\u30EF\u30FC\u30C9URL:"},
+        {"KeyStore.URL.", "\u30AD\u30FC\u30B9\u30C8\u30A2URL(&U):"},
+        {"KeyStore.Type.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u306E\u30BF\u30A4\u30D7(&T):"},
+        {"KeyStore.Provider.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30D7\u30ED\u30D0\u30A4\u30C0(&P):"},
+        {"KeyStore.Password.URL.", "\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30D1\u30B9\u30EF\u30FC\u30C9URL(&W):"},
         {"Principals", "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB"},
         {".Edit.Principal.", "  \u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u7DE8\u96C6:"},
         {".Add.New.Principal.", "  \u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u306E\u65B0\u898F\u8FFD\u52A0:"},
@@ -117,8 +117,8 @@
                 "\u30DD\u30EA\u30B7\u30FC\u306E{0}\u3078\u306E\u66F8\u8FBC\u307F\u306B\u6210\u529F\u3057\u307E\u3057\u305F"},
         {"null.filename", "\u30D5\u30A1\u30A4\u30EB\u540D\u304Cnull\u3067\u3059"},
         {"Save.changes.", "\u5909\u66F4\u3092\u4FDD\u5B58\u3057\u307E\u3059\u304B\u3002"},
-        {"Yes", "\u306F\u3044"},
-        {"No", "\u3044\u3044\u3048"},
+        {"Yes", "\u306F\u3044(&Y)"},
+        {"No", "\u3044\u3044\u3048(&N)"},
         {"Policy.Entry", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA"},
         {"Save.Changes", "\u5909\u66F4\u3092\u4FDD\u5B58\u3057\u307E\u3059"},
         {"No.Policy.Entry.selected", "\u30DD\u30EA\u30B7\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ko.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ko.java
index c5c457d..9a764d6 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ko.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_ko.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "\uC0AC\uC6A9\uBC95: policytool [options]"},
         {".file.file.policy.file.location",
                 "  [-file <file>]    \uC815\uCC45 \uD30C\uC77C \uC704\uCE58"},
-        {"New", "\uC0C8\uB85C \uB9CC\uB4E4\uAE30"},
-        {"Open", "\uC5F4\uAE30"},
-        {"Save", "\uC800\uC7A5"},
-        {"Save.As", "\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"},
-        {"View.Warning.Log", "\uACBD\uACE0 \uB85C\uADF8 \uBCF4\uAE30"},
-        {"Exit", "\uC885\uB8CC"},
-        {"Add.Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9 \uCD94\uAC00"},
-        {"Edit.Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9 \uD3B8\uC9D1"},
-        {"Remove.Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9 \uC81C\uAC70"},
-        {"Edit", "\uD3B8\uC9D1"},
+        {"New", "\uC0C8\uB85C \uB9CC\uB4E4\uAE30(&N)"},
+        {"Open", "\uC5F4\uAE30(&O)..."},
+        {"Save", "\uC800\uC7A5(&S)"},
+        {"Save.As", "\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5(&A)..."},
+        {"View.Warning.Log", "\uACBD\uACE0 \uB85C\uADF8 \uBCF4\uAE30(&W)"},
+        {"Exit", "\uC885\uB8CC(&X)"},
+        {"Add.Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9 \uCD94\uAC00(&A)"},
+        {"Edit.Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9 \uD3B8\uC9D1(&E)"},
+        {"Remove.Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9 \uC81C\uAC70(&R)"},
+        {"Edit", "\uD3B8\uC9D1(&E)"},
         {"Retain", "\uC720\uC9C0"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "\uACF5\uC6A9 \uD0A4 \uBCC4\uCE6D \uCD94\uAC00"},
         {"Remove.Public.Key.Alias", "\uACF5\uC6A9 \uD0A4 \uBCC4\uCE6D \uC81C\uAC70"},
-        {"File", "\uD30C\uC77C"},
-        {"KeyStore", "\uD0A4 \uC800\uC7A5\uC18C"},
+        {"File", "\uD30C\uC77C(&F)"},
+        {"KeyStore", "\uD0A4 \uC800\uC7A5\uC18C(&K)"},
         {"Policy.File.", "\uC815\uCC45 \uD30C\uC77C:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "\uC815\uCC45 \uD30C\uC77C\uC744 \uC5F4 \uC218 \uC5C6\uC74C: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "\uAE30\uC874 \uD30C\uC77C {0}\uC744(\uB97C) \uACB9\uCCD0 \uC4F0\uACA0\uC2B5\uB2C8\uAE4C?"},
         {"Cancel", "\uCDE8\uC18C"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "\uC8FC\uCCB4 \uCD94\uAC00"},
-        {"Edit.Principal", "\uC8FC\uCCB4 \uD3B8\uC9D1"},
-        {"Remove.Principal", "\uC8FC\uCCB4 \uC81C\uAC70"},
-        {"Principals.", "\uC8FC\uCCB4:"},
-        {".Add.Permission", "  \uAD8C\uD55C \uCD94\uAC00"},
-        {".Edit.Permission", "  \uAD8C\uD55C \uD3B8\uC9D1"},
-        {"Remove.Permission", "\uAD8C\uD55C \uC81C\uAC70"},
+        {"CodeBase.", "CodeBase(&C)"},
+        {"SignedBy.", "SignedBy(&S):"},
+        {"Add.Principal", "\uC8FC\uCCB4 \uCD94\uAC00(&A)"},
+        {"Edit.Principal", "\uC8FC\uCCB4 \uD3B8\uC9D1(&E)"},
+        {"Remove.Principal", "\uC8FC\uCCB4 \uC81C\uAC70(&R)"},
+        {"Principals.", "\uC8FC\uCCB4(&P):"},
+        {".Add.Permission", "  \uAD8C\uD55C \uCD94\uAC00(&D)"},
+        {".Edit.Permission", "  \uAD8C\uD55C \uD3B8\uC9D1(&I)"},
+        {"Remove.Permission", "\uAD8C\uD55C \uC81C\uAC70(&M)"},
         {"Done", "\uC644\uB8CC"},
-        {"KeyStore.URL.", "\uD0A4 \uC800\uC7A5\uC18C URL:"},
-        {"KeyStore.Type.", "\uD0A4 \uC800\uC7A5\uC18C \uC720\uD615:"},
-        {"KeyStore.Provider.", "\uD0A4 \uC800\uC7A5\uC18C \uC81C\uACF5\uC790:"},
-        {"KeyStore.Password.URL.", "\uD0A4 \uC800\uC7A5\uC18C \uBE44\uBC00\uBC88\uD638 URL:"},
+        {"KeyStore.URL.", "\uD0A4 \uC800\uC7A5\uC18C URL(&U):"},
+        {"KeyStore.Type.", "\uD0A4 \uC800\uC7A5\uC18C \uC720\uD615(&T):"},
+        {"KeyStore.Provider.", "\uD0A4 \uC800\uC7A5\uC18C \uC81C\uACF5\uC790(&P):"},
+        {"KeyStore.Password.URL.", "\uD0A4 \uC800\uC7A5\uC18C \uBE44\uBC00\uBC88\uD638 URL(&W):"},
         {"Principals", "\uC8FC\uCCB4"},
         {".Edit.Principal.", "  \uC8FC\uCCB4 \uD3B8\uC9D1:"},
         {".Add.New.Principal.", "  \uC0C8 \uC8FC\uCCB4 \uCD94\uAC00:"},
@@ -116,11 +116,11 @@
         {"Policy.successfully.written.to.filename",
                 "{0}\uC5D0 \uC131\uACF5\uC801\uC73C\uB85C \uC815\uCC45\uC744 \uC37C\uC2B5\uB2C8\uB2E4."},
         {"null.filename", "\uB110 \uD30C\uC77C \uC774\uB984"},
-        {"Save.changes.", "\uBCC0\uACBD \uC0AC\uD56D\uC744 \uC800\uC7A5\uD558\uACA0\uC2B5\uB2C8\uAE4C?"},
-        {"Yes", "\uC608"},
-        {"No", "\uC544\uB2C8\uC624"},
+        {"Save.changes.", "\uBCC0\uACBD\uC0AC\uD56D\uC744 \uC800\uC7A5\uD558\uACA0\uC2B5\uB2C8\uAE4C?"},
+        {"Yes", "\uC608(&Y)"},
+        {"No", "\uC544\uB2C8\uC624(&N)"},
         {"Policy.Entry", "\uC815\uCC45 \uD56D\uBAA9"},
-        {"Save.Changes", "\uBCC0\uACBD \uC0AC\uD56D \uC800\uC7A5"},
+        {"Save.Changes", "\uBCC0\uACBD\uC0AC\uD56D \uC800\uC7A5"},
         {"No.Policy.Entry.selected", "\uC120\uD0DD\uB41C \uC815\uCC45 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},
         {"Unable.to.open.KeyStore.ex.toString.",
                 "\uD0A4 \uC800\uC7A5\uC18C\uB97C \uC5F4 \uC218 \uC5C6\uC74C: {0}"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_pt_BR.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_pt_BR.java
index e92282e..f3864e3 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_pt_BR.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_pt_BR.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "Uso: policytool [op\u00E7\u00F5es]"},
         {".file.file.policy.file.location",
                 "  [-file <arquivo>]    localiza\u00E7\u00E3o do arquivo de pol\u00EDtica"},
-        {"New", "Novo"},
-        {"Open", "Abrir"},
-        {"Save", "Salvar"},
-        {"Save.As", "Salvar Como"},
-        {"View.Warning.Log", "Exibir Log de Advert\u00EAncias"},
-        {"Exit", "Sair"},
-        {"Add.Policy.Entry", "Adicionar Entrada de Pol\u00EDtica"},
-        {"Edit.Policy.Entry", "Editar Entrada de Pol\u00EDtica"},
-        {"Remove.Policy.Entry", "Remover Entrada de Pol\u00EDtica"},
-        {"Edit", "Editar"},
+        {"New", "&Novo"},
+        {"Open", "&Abrir..."},
+        {"Save", "&Salvar"},
+        {"Save.As", "Salvar c&omo..."},
+        {"View.Warning.Log", "E&xibir Log de Advert\u00EAncias"},
+        {"Exit", "S&air"},
+        {"Add.Policy.Entry", "&Adicionar Entrada de Pol\u00EDtica"},
+        {"Edit.Policy.Entry", "&Editar Entrada de Pol\u00EDtica"},
+        {"Remove.Policy.Entry", "&Remover Entrada de Pol\u00EDtica"},
+        {"Edit", "&Editar"},
         {"Retain", "Reter"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "Adicionar Alias de Chave P\u00FAblica"},
         {"Remove.Public.Key.Alias", "Remover Alias de Chave P\u00FAblica"},
-        {"File", "Arquivo"},
-        {"KeyStore", "KeyStore"},
+        {"File", "&Arquivo"},
+        {"KeyStore", "&KeyStore"},
         {"Policy.File.", "Arquivo de Pol\u00EDtica:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "N\u00E3o foi poss\u00EDvel abrir o arquivo de pol\u00EDtica: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "Est\u00E1 correto substituir o arquivo existente {0}?"},
         {"Cancel", "Cancelar"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "Adicionar Principal"},
-        {"Edit.Principal", "Editar Principal"},
-        {"Remove.Principal", "Remover Principal"},
-        {"Principals.", "Principais:"},
-        {".Add.Permission", "  Adicionar Permiss\u00E3o"},
-        {".Edit.Permission", "  Editar Permiss\u00E3o"},
-        {"Remove.Permission", "Remover Permiss\u00E3o"},
+        {"CodeBase.", "&CodeBase:"},
+        {"SignedBy.", "&SignedBy:"},
+        {"Add.Principal", "&Adicionar Principal"},
+        {"Edit.Principal", "&Editar Principal"},
+        {"Remove.Principal", "&Remover Principal"},
+        {"Principals.", "&Principais:"},
+        {".Add.Permission", "  A&dicionar Permiss\u00E3o"},
+        {".Edit.Permission", "  Ed&itar Permiss\u00E3o"},
+        {"Remove.Permission", "Re&mover Permiss\u00E3o"},
         {"Done", "Conclu\u00EDdo"},
-        {"KeyStore.URL.", "URL do KeyStore:"},
-        {"KeyStore.Type.", "Tipo de KeyStore:"},
-        {"KeyStore.Provider.", "Fornecedor de KeyStore:"},
-        {"KeyStore.Password.URL.", "URL da Senha do KeyStore:"},
+        {"KeyStore.URL.", "&URL do KeyStore:"},
+        {"KeyStore.Type.", "&Tipo de KeyStore:"},
+        {"KeyStore.Provider.", "&Fornecedor de KeyStore:"},
+        {"KeyStore.Password.URL.", "URL da Senha do Ke&yStore:"},
         {"Principals", "Principais"},
         {".Edit.Principal.", "  Editar Principal:"},
         {".Add.New.Principal.", "  Adicionar Novo Principal:"},
@@ -117,8 +117,8 @@
                 "Pol\u00EDtica gravada com \u00EAxito em {0}"},
         {"null.filename", "nome de arquivo nulo"},
         {"Save.changes.", "Salvar altera\u00E7\u00F5es?"},
-        {"Yes", "Sim"},
-        {"No", "N\u00E3o"},
+        {"Yes", "&Sim"},
+        {"No", "&N\u00E3o"},
         {"Policy.Entry", "Entrada de Pol\u00EDtica"},
         {"Save.Changes", "Salvar Altera\u00E7\u00F5es"},
         {"No.Policy.Entry.selected", "Nenhuma Entrada de Pol\u00EDtica Selecionada"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_sv.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_sv.java
index 858ec64..1a90020 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_sv.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_sv.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "Syntax: policytool [alternativ]"},
         {".file.file.policy.file.location",
                 "  [-file <fil>]    policyfilens plats"},
-        {"New", "Nytt"},
-        {"Open", "\u00D6ppna"},
-        {"Save", "Spara"},
-        {"Save.As", "Spara som"},
-        {"View.Warning.Log", "Visa varningslogg"},
-        {"Exit", "Avsluta"},
-        {"Add.Policy.Entry", "L\u00E4gg till policypost"},
-        {"Edit.Policy.Entry", "Redigera policypost"},
-        {"Remove.Policy.Entry", "Ta bort policypost"},
-        {"Edit", "Redigera"},
+        {"New", "&Nytt"},
+        {"Open", "&\u00D6ppna..."},
+        {"Save", "S&para"},
+        {"Save.As", "Spara &som..."},
+        {"View.Warning.Log", "Visa varningslo&gg"},
+        {"Exit", "A&vsluta"},
+        {"Add.Policy.Entry", "&L\u00E4gg till policypost"},
+        {"Edit.Policy.Entry", "&Redigera policypost"},
+        {"Remove.Policy.Entry", "&Ta bort policypost"},
+        {"Edit", "&Redigera"},
         {"Retain", "Beh\u00E5ll"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "L\u00E4gg till offentligt nyckelalias"},
         {"Remove.Public.Key.Alias", "Ta bort offentligt nyckelalias"},
-        {"File", "Fil"},
-        {"KeyStore", "Nyckellager"},
+        {"File", "&Arkiv"},
+        {"KeyStore", "&KeyStore"},
         {"Policy.File.", "Policyfil:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "Kan inte \u00F6ppna policyfilen: {0}: {1}"},
@@ -84,24 +84,24 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "Ska den befintliga filen {0} skrivas \u00F6ver?"},
         {"Cancel", "Avbryt"},
-        {"CodeBase.", "Kodbas:"},
-        {"SignedBy.", "Signerad av:"},
-        {"Add.Principal", "L\u00E4gg till identitetshavare"},
-        {"Edit.Principal", "Redigera identitetshavare"},
-        {"Remove.Principal", "Ta bort identitetshavare"},
+        {"CodeBase.", "&CodeBase:"},
+        {"SignedBy.", "&SignedBy:"},
+        {"Add.Principal", "&L\u00E4gg till identitetshavare"},
+        {"Edit.Principal", "&Redigera identitetshavare"},
+        {"Remove.Principal", "&Ta bort identitetshavare"},
         {"Principals.", "Identitetshavare:"},
-        {".Add.Permission", "  L\u00E4gg till beh\u00F6righet"},
-        {".Edit.Permission", "  Redigera beh\u00F6righet"},
-        {"Remove.Permission", "Ta bort beh\u00F6righet"},
+        {".Add.Permission", "  L&\u00E4gg till beh\u00F6righet"},
+        {".Edit.Permission", "  Re&digera beh\u00F6righet"},
+        {"Remove.Permission", "Ta &bort beh\u00F6righet"},
         {"Done", "Utf\u00F6rd"},
-        {"KeyStore.URL.", "URL f\u00F6r nyckellager:"},
-        {"KeyStore.Type.", "Nyckellagertyp:"},
-        {"KeyStore.Provider.", "Nyckellagerleverant\u00F6r:"},
-        {"KeyStore.Password.URL.", "URL f\u00F6r l\u00F6senord till nyckellager:"},
+        {"KeyStore.URL.", "KeyStore-&URL:"},
+        {"KeyStore.Type.", "KeyStore-&typ:"},
+        {"KeyStore.Provider.", "KeyStore-&leverant\u00F6r:"},
+        {"KeyStore.Password.URL.", "KeyStore-l\u00F6sen&ords-URL:"},
         {"Principals", "Identitetshavare"},
         {".Edit.Principal.", "  Redigera identitetshavare:"},
         {".Add.New.Principal.", "  L\u00E4gg till ny identitetshavare:"},
-        {"Permissions", "Beh\u00F6righet"},
+        {"Permissions", "Beh\u00F6righeter"},
         {".Edit.Permission.", "  Redigera beh\u00F6righet:"},
         {".Add.New.Permission.", "  L\u00E4gg till ny beh\u00F6righet:"},
         {"Signed.By.", "Signerad av:"},
@@ -117,8 +117,8 @@
                 "Policy har skrivits till {0}"},
         {"null.filename", "nullfilnamn"},
         {"Save.changes.", "Vill du spara \u00E4ndringarna?"},
-        {"Yes", "Ja"},
-        {"No", "Nej"},
+        {"Yes", "&Ja"},
+        {"No", "&Nej"},
         {"Policy.Entry", "Policyfel"},
         {"Save.Changes", "Spara \u00E4ndringar"},
         {"No.Policy.Entry.selected", "Ingen policypost har valts"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_CN.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_CN.java
index 5206c61..43f5b4f 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_CN.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_CN.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "\u7528\u6CD5: policytool [\u9009\u9879]"},
         {".file.file.policy.file.location",
                 "  [-file <file>]    \u7B56\u7565\u6587\u4EF6\u4F4D\u7F6E"},
-        {"New", "\u65B0\u5EFA"},
-        {"Open", "\u6253\u5F00"},
-        {"Save", "\u4FDD\u5B58"},
-        {"Save.As", "\u53E6\u5B58\u4E3A"},
-        {"View.Warning.Log", "\u67E5\u770B\u8B66\u544A\u65E5\u5FD7"},
-        {"Exit", "\u9000\u51FA"},
-        {"Add.Policy.Entry", "\u6DFB\u52A0\u7B56\u7565\u6761\u76EE"},
-        {"Edit.Policy.Entry", "\u7F16\u8F91\u7B56\u7565\u6761\u76EE"},
-        {"Remove.Policy.Entry", "\u5220\u9664\u7B56\u7565\u6761\u76EE"},
-        {"Edit", "\u7F16\u8F91"},
+        {"New", "\u65B0\u5EFA(&N)"},
+        {"Open", "\u6253\u5F00(&O)..."},
+        {"Save", "\u4FDD\u5B58(&S)"},
+        {"Save.As", "\u53E6\u5B58\u4E3A(&A)..."},
+        {"View.Warning.Log", "\u67E5\u770B\u8B66\u544A\u65E5\u5FD7(&W)"},
+        {"Exit", "\u9000\u51FA(&X)"},
+        {"Add.Policy.Entry", "\u6DFB\u52A0\u7B56\u7565\u6761\u76EE(&A)"},
+        {"Edit.Policy.Entry", "\u7F16\u8F91\u7B56\u7565\u6761\u76EE(&E)"},
+        {"Remove.Policy.Entry", "\u5220\u9664\u7B56\u7565\u6761\u76EE(&R)"},
+        {"Edit", "\u7F16\u8F91(&E)"},
         {"Retain", "\u4FDD\u7559"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "\u6DFB\u52A0\u516C\u5171\u5BC6\u94A5\u522B\u540D"},
         {"Remove.Public.Key.Alias", "\u5220\u9664\u516C\u5171\u5BC6\u94A5\u522B\u540D"},
-        {"File", "\u6587\u4EF6"},
-        {"KeyStore", "\u5BC6\u94A5\u5E93"},
+        {"File", "\u6587\u4EF6(&F)"},
+        {"KeyStore", "\u5BC6\u94A5\u5E93(&K)"},
         {"Policy.File.", "\u7B56\u7565\u6587\u4EF6:"},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "\u65E0\u6CD5\u6253\u5F00\u7B56\u7565\u6587\u4EF6: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "\u786E\u8BA4\u8986\u76D6\u73B0\u6709\u7684\u6587\u4EF6{0}?"},
         {"Cancel", "\u53D6\u6D88"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "\u6DFB\u52A0\u4E3B\u7528\u6237"},
-        {"Edit.Principal", "\u7F16\u8F91\u4E3B\u7528\u6237"},
-        {"Remove.Principal", "\u5220\u9664\u4E3B\u7528\u6237"},
-        {"Principals.", "\u4E3B\u7528\u6237:"},
-        {".Add.Permission", "  \u6DFB\u52A0\u6743\u9650"},
-        {".Edit.Permission", "  \u7F16\u8F91\u6743\u9650"},
-        {"Remove.Permission", "\u5220\u9664\u6743\u9650"},
+        {"CodeBase.", "CodeBase(&C):"},
+        {"SignedBy.", "SignedBy(&S):"},
+        {"Add.Principal", "\u6DFB\u52A0\u4E3B\u7528\u6237(&A)"},
+        {"Edit.Principal", "\u7F16\u8F91\u4E3B\u7528\u6237(&E)"},
+        {"Remove.Principal", "\u5220\u9664\u4E3B\u7528\u6237(&R)"},
+        {"Principals.", "\u4E3B\u7528\u6237(&P):"},
+        {".Add.Permission", "  \u6DFB\u52A0\u6743\u9650(&D)"},
+        {".Edit.Permission", "  \u7F16\u8F91\u6743\u9650(&I)"},
+        {"Remove.Permission", "\u5220\u9664\u6743\u9650(&M)"},
         {"Done", "\u5B8C\u6210"},
-        {"KeyStore.URL.", "\u5BC6\u94A5\u5E93 URL:"},
-        {"KeyStore.Type.", "\u5BC6\u94A5\u5E93\u7C7B\u578B:"},
-        {"KeyStore.Provider.", "\u5BC6\u94A5\u5E93\u63D0\u4F9B\u65B9:"},
-        {"KeyStore.Password.URL.", "\u5BC6\u94A5\u5E93\u53E3\u4EE4 URL:"},
+        {"KeyStore.URL.", "\u5BC6\u94A5\u5E93 URL(&U):"},
+        {"KeyStore.Type.", "\u5BC6\u94A5\u5E93\u7C7B\u578B(&T):"},
+        {"KeyStore.Provider.", "\u5BC6\u94A5\u5E93\u63D0\u4F9B\u65B9(&P):"},
+        {"KeyStore.Password.URL.", "\u5BC6\u94A5\u5E93\u53E3\u4EE4 URL(&W):"},
         {"Principals", "\u4E3B\u7528\u6237"},
         {".Edit.Principal.", "  \u7F16\u8F91\u4E3B\u7528\u6237:"},
         {".Add.New.Principal.", "  \u6DFB\u52A0\u65B0\u4E3B\u7528\u6237:"},
@@ -117,8 +117,8 @@
                 "\u7B56\u7565\u5DF2\u6210\u529F\u5199\u5165\u5230{0}"},
         {"null.filename", "\u7A7A\u6587\u4EF6\u540D"},
         {"Save.changes.", "\u662F\u5426\u4FDD\u5B58\u6240\u505A\u7684\u66F4\u6539?"},
-        {"Yes", "\u662F"},
-        {"No", "\u5426"},
+        {"Yes", "\u662F(&Y)"},
+        {"No", "\u5426(&N)"},
         {"Policy.Entry", "\u7B56\u7565\u6761\u76EE"},
         {"Save.Changes", "\u4FDD\u5B58\u66F4\u6539"},
         {"No.Policy.Entry.selected", "\u6CA1\u6709\u9009\u62E9\u7B56\u7565\u6761\u76EE"},
diff --git a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_TW.java b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_TW.java
index b446eef..e96ad87 100644
--- a/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_TW.java
+++ b/jdk/src/jdk.policytool/share/classes/sun/security/tools/policytool/Resources_zh_TW.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,7 +35,7 @@
     private static final Object[][] contents = {
         {"NEWLINE", "\n"},
         {"Warning.A.public.key.for.alias.signers.i.does.not.exist.Make.sure.a.KeyStore.is.properly.configured.",
-                "\u8B66\u544A: \u5225\u540D {0} \u7684\u516C\u958B\u91D1\u9470\u4E0D\u5B58\u5728\u3002\u8ACB\u78BA\u5B9A\u91D1\u9470\u5132\u5B58\u5EAB\u914D\u7F6E\u6B63\u78BA\u3002"},
+                "\u8B66\u544A: \u5225\u540D {0} \u7684\u516C\u958B\u91D1\u9470\u4E0D\u5B58\u5728\u3002\u8ACB\u78BA\u5B9A\u91D1\u9470\u5132\u5B58\u5EAB\u8A2D\u5B9A\u6B63\u78BA\u3002"},
         {"Warning.Class.not.found.class", "\u8B66\u544A: \u627E\u4E0D\u5230\u985E\u5225 {0}"},
         {"Warning.Invalid.argument.s.for.constructor.arg",
                 "\u8B66\u544A: \u7121\u6548\u7684\u5EFA\u69CB\u5B50\u5F15\u6578: {0}"},
@@ -44,16 +44,16 @@
         {"Usage.policytool.options.", "\u7528\u6CD5: policytool [options]"},
         {".file.file.policy.file.location",
                 "  [-file <file>]    \u539F\u5247\u6A94\u6848\u4F4D\u7F6E"},
-        {"New", "\u65B0\u589E"},
-        {"Open", "\u958B\u555F"},
-        {"Save", "\u5132\u5B58"},
-        {"Save.As", "\u53E6\u5B58\u65B0\u6A94"},
-        {"View.Warning.Log", "\u6AA2\u8996\u8B66\u544A\u8A18\u9304"},
-        {"Exit", "\u7D50\u675F"},
-        {"Add.Policy.Entry", "\u65B0\u589E\u539F\u5247\u9805\u76EE"},
-        {"Edit.Policy.Entry", "\u7DE8\u8F2F\u539F\u5247\u9805\u76EE"},
-        {"Remove.Policy.Entry", "\u79FB\u9664\u539F\u5247\u9805\u76EE"},
-        {"Edit", "\u7DE8\u8F2F"},
+        {"New", "\u65B0\u5EFA(&N)"},
+        {"Open", "\u958B\u555F(&O)..."},
+        {"Save", "\u5132\u5B58(&S)"},
+        {"Save.As", "\u53E6\u5B58\u65B0\u6A94(&A)..."},
+        {"View.Warning.Log", "\u6AA2\u8996\u8B66\u544A\u8A18\u9304(&W)"},
+        {"Exit", "\u7D50\u675F(&X)"},
+        {"Add.Policy.Entry", "\u65B0\u589E\u539F\u5247\u9805\u76EE(&A)"},
+        {"Edit.Policy.Entry", "\u7DE8\u8F2F\u539F\u5247\u9805\u76EE(&E)"},
+        {"Remove.Policy.Entry", "\u79FB\u9664\u539F\u5247\u9805\u76EE(&R)"},
+        {"Edit", "\u7DE8\u8F2F(&E)"},
         {"Retain", "\u4FDD\u7559"},
 
         {"Warning.File.name.may.include.escaped.backslash.characters.It.is.not.necessary.to.escape.backslash.characters.the.tool.escapes",
@@ -61,8 +61,8 @@
 
         {"Add.Public.Key.Alias", "\u65B0\u589E\u516C\u958B\u91D1\u9470\u5225\u540D"},
         {"Remove.Public.Key.Alias", "\u79FB\u9664\u516C\u958B\u91D1\u9470\u5225\u540D"},
-        {"File", "\u6A94\u6848"},
-        {"KeyStore", "\u91D1\u9470\u5132\u5B58\u5EAB"},
+        {"File", "\u6A94\u6848(&F)"},
+        {"KeyStore", "\u91D1\u9470\u5132\u5B58\u5EAB(&K)"},
         {"Policy.File.", "\u539F\u5247\u6A94\u6848: "},
         {"Could.not.open.policy.file.policyFile.e.toString.",
                 "\u7121\u6CD5\u958B\u555F\u539F\u5247\u6A94\u6848: {0}: {1}"},
@@ -84,20 +84,20 @@
         {"OK.to.overwrite.existing.file.filename.",
                 "\u78BA\u8A8D\u8986\u5BEB\u73FE\u5B58\u7684\u6A94\u6848 {0}\uFF1F"},
         {"Cancel", "\u53D6\u6D88"},
-        {"CodeBase.", "CodeBase:"},
-        {"SignedBy.", "SignedBy:"},
-        {"Add.Principal", "\u65B0\u589E Principal"},
-        {"Edit.Principal", "\u7DE8\u8F2F Principal"},
-        {"Remove.Principal", "\u79FB\u9664 Principal"},
-        {"Principals.", "Principal:"},
-        {".Add.Permission", "  \u65B0\u589E\u6B0A\u9650"},
-        {".Edit.Permission", "  \u7DE8\u8F2F\u6B0A\u9650"},
-        {"Remove.Permission", "\u79FB\u9664\u6B0A\u9650"},
+        {"CodeBase.", "CodeBase(&C):"},
+        {"SignedBy.", "SignedBy(&S):"},
+        {"Add.Principal", "\u65B0\u589E Principal(&A)"},
+        {"Edit.Principal", "\u7DE8\u8F2F Principal(&E)"},
+        {"Remove.Principal", "\u79FB\u9664 Principal(&R)"},
+        {"Principals.", "Principal(&P):"},
+        {".Add.Permission", "  \u65B0\u589E\u6B0A\u9650(&D)"},
+        {".Edit.Permission", "  \u7DE8\u8F2F\u6B0A\u9650(&I)"},
+        {"Remove.Permission", "\u79FB\u9664\u6B0A\u9650(&M)"},
         {"Done", "\u5B8C\u6210"},
-        {"KeyStore.URL.", "\u91D1\u9470\u5132\u5B58\u5EAB URL: "},
-        {"KeyStore.Type.", "\u91D1\u9470\u5132\u5B58\u5EAB\u985E\u578B:"},
-        {"KeyStore.Provider.", "\u91D1\u9470\u5132\u5B58\u5EAB\u63D0\u4F9B\u8005:"},
-        {"KeyStore.Password.URL.", "\u91D1\u9470\u5132\u5B58\u5EAB\u5BC6\u78BC URL: "},
+        {"KeyStore.URL.", "\u91D1\u9470\u5132\u5B58\u5EAB URL(&U): "},
+        {"KeyStore.Type.", "\u91D1\u9470\u5132\u5B58\u5EAB\u985E\u578B(&T):"},
+        {"KeyStore.Provider.", "\u91D1\u9470\u5132\u5B58\u5EAB\u63D0\u4F9B\u8005(&P):"},
+        {"KeyStore.Password.URL.", "\u91D1\u9470\u5132\u5B58\u5EAB\u5BC6\u78BC URL(&W): "},
         {"Principals", "Principal"},
         {".Edit.Principal.", "  \u7DE8\u8F2F Principal: "},
         {".Add.New.Principal.", "  \u65B0\u589E Principal: "},
@@ -117,8 +117,8 @@
                 "\u539F\u5247\u6210\u529F\u5BEB\u5165\u81F3 {0}"},
         {"null.filename", "\u7A7A\u503C\u6A94\u540D"},
         {"Save.changes.", "\u5132\u5B58\u8B8A\u66F4\uFF1F"},
-        {"Yes", "\u662F"},
-        {"No", "\u5426"},
+        {"Yes", "\u662F(&Y)"},
+        {"No", "\u5426(&N)"},
         {"Policy.Entry", "\u539F\u5247\u9805\u76EE"},
         {"Save.Changes", "\u5132\u5B58\u8B8A\u66F4"},
         {"No.Policy.Entry.selected", "\u6C92\u6709\u9078\u53D6\u539F\u5247\u9805\u76EE"},
diff --git a/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_ja.properties b/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_ja.properties
index 2a11d99..b901a80 100644
--- a/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_ja.properties
+++ b/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_ja.properties
@@ -1,6 +1,6 @@
 #
 #
-# Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -71,7 +71,7 @@
 generator.env.idl=sun.rmi.rmic.iiop.BatchEnvironment
 generator.env.xprint=sun.rmi.rmic.iiop.BatchEnvironment
 
-rmic.usage=\u4F7F\u7528\u65B9\u6CD5: {0} <options> <class names>\n\n<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\n -keep      \u4E2D\u9593\u751F\u6210\u3055\u308C\u305F\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u524A\u9664\u3057\u306A\u3044\n -keepgenerated("-keep"\u3068\u540C\u3058)\n -v1.1      1.1\u30B9\u30BF\u30D6\u30FB\u30D7\u30ED\u30C8\u30B3\u30EB\u7248\u7528\u306E\u30B9\u30BF\u30D6/\u30B9\u30B1\u30EB\u30C8\u30F3\u3092\u4F5C\u6210\u3059\u308B\n -vcompat   1.1\u30681.2\u306E\u30B9\u30BF\u30D6\u30FB\u30D7\u30ED\u30C8\u30B3\u30EB\u7248\u3068\n                 \u4E92\u63DB\u6027\u306E\u3042\u308B\u30B9\u30BF\u30D6/\u30B9\u30B1\u30EB\u30C8\u30F3\u3092\u4F5C\u6210\u3059\u308B\n -v1.2      (\u30C7\u30D5\u30A9\u30EB\u30C8)1.2\u30B9\u30BF\u30D6\u30FB\u30D7\u30ED\u30C8\u30B3\u30EB\u7248\u5C02\u7528\u306E\u30B9\u30BF\u30D6\u3092\u4F5C\u6210\u3059\u308B\n -iiop      IIOP\u7528\u306E\u30B9\u30BF\u30D6\u3092\u4F5C\u6210\u3059\u308B\u3002\u6307\u5B9A\u3059\u308B\u3068<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u3082\u542B\u307E\u308C\u307E\u3059\u3002\n\n            -always       \u6700\u65B0\u306E\u5834\u5408\u3067\u3082\u30B9\u30BF\u30D6\u3092\u4F5C\u6210\u3059\u308B\n            -alwaysgenerate ("-always"\u3068\u540C\u3058)\n            -nolocalstubs   \u540C\u3058\u30D7\u30ED\u30BB\u30B9\u306B\u3064\u3044\u3066\u6700\u9069\u5316\u3055\u308C\u305F\u30B9\u30BF\u30D6\u306F\u4F5C\u6210\u3057\u306A\u3044\n\n -idl      IDL\u3092\u4F5C\u6210\u3059\u308B\u3002\u6307\u5B9A\u3059\u308B\u3068<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u3082\u542B\u307E\u308C\u307E\u3059\u3002\n\n            -noValueMethods valuetypes\u306B\u5BFE\u3057\u3066\u30E1\u30BD\u30C3\u30C9\u3092\u751F\u6210\u3057\u306A\u3044\n            -always       \u6700\u65B0\u306E\u5834\u5408\u3067\u3082IDL\u3092\u751F\u6210\u3059\u308B\n            -alwaysgenerate ("-always"\u3068\u540C\u3058)\n\n -g        \u30C7\u30D0\u30C3\u30B0\u60C5\u5831\u3092\u751F\u6210\u3059\u308B\n -nowarn     \u8B66\u544A\u3092\u751F\u6210\u3057\u306A\u3044\n -nowrite    \u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u305F\u30AF\u30E9\u30B9\u3092\u30D5\u30A1\u30A4\u30EB\u30FB\u30B7\u30B9\u30C6\u30E0\u306B\u66F8\u304D\u8FBC\u307E\u306A\u3044\n -verbose    \u30B3\u30F3\u30D1\u30A4\u30E9\u306E\u52D5\u4F5C\u306B\u95A2\u3059\u308B\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n -classpath <path>    \u5165\u529B\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B\n -bootclasspath<path> \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u4F4D\u7F6E\u3092\u7F6E\u304D\u63DB\u3048\u308B\n -extdirs<path>     \u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u62E1\u5F35\u6A5F\u80FD\u306E\u4F4D\u7F6E\u3092\u7F6E\u304D\u63DB\u3048\u308B\n -d <directory>      \u751F\u6210\u3055\u308C\u305F\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u683C\u7D0D\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B\n -J<runtime flag>  java\u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u306B\u5F15\u6570\u3092\u6E21\u3059\n
+rmic.usage=\u4F7F\u7528\u65B9\u6CD5: {0} <options> <class names>\n\n<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\n -keep      \u4E2D\u9593\u751F\u6210\u3055\u308C\u305F\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u524A\u9664\u3057\u306A\u3044\n -keepgenerated("-keep"\u3068\u540C\u3058)\n -v1.1      1.1\u30B9\u30BF\u30D6\u30FB\u30D7\u30ED\u30C8\u30B3\u30EB\u7248\u7528\u306E\u30B9\u30BF\u30D6/\u30B9\u30B1\u30EB\u30C8\u30F3\u3092\u4F5C\u6210\u3059\u308B(\u975E\u63A8\u5968)\n -vcompat   1.1\u30681.2\u306E\u30B9\u30BF\u30D6\u30FB\u30D7\u30ED\u30C8\u30B3\u30EB\u7248\u3068\n                 \u4E92\u63DB\u6027\u306E\u3042\u308B\u30B9\u30BF\u30D6/\u30B9\u30B1\u30EB\u30C8\u30F3\u3092\u4F5C\u6210\u3059\u308B(\u975E\u63A8\u5968)\n -v1.2      (\u30C7\u30D5\u30A9\u30EB\u30C8)1.2\u30B9\u30BF\u30D6\u30FB\u30D7\u30ED\u30C8\u30B3\u30EB\u7248\u5C02\u7528\u306E\u30B9\u30BF\u30D6\u3092\u4F5C\u6210\u3059\u308B(\u975E\u63A8\u5968)\n -iiop      IIOP\u7528\u306E\u30B9\u30BF\u30D6\u3092\u4F5C\u6210\u3059\u308B\u3002\u6307\u5B9A\u3059\u308B\u3068<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u3082\u542B\u307E\u308C\u307E\u3059\u3002\n\n            -always       \u6700\u65B0\u306E\u5834\u5408\u3067\u3082\u30B9\u30BF\u30D6\u3092\u4F5C\u6210\u3059\u308B\n            -alwaysgenerate ("-always"\u3068\u540C\u3058)\n            -nolocalstubs   \u540C\u3058\u30D7\u30ED\u30BB\u30B9\u306B\u3064\u3044\u3066\u6700\u9069\u5316\u3055\u308C\u305F\u30B9\u30BF\u30D6\u306F\u4F5C\u6210\u3057\u306A\u3044\n\n -idl      IDL\u3092\u4F5C\u6210\u3059\u308B\u3002\u6307\u5B9A\u3059\u308B\u3068<options>\u306B\u306F\u6B21\u306E\u3082\u306E\u3082\u542B\u307E\u308C\u307E\u3059\u3002\n\n            -noValueMethods valuetypes\u306B\u5BFE\u3057\u3066\u30E1\u30BD\u30C3\u30C9\u3092\u751F\u6210\u3057\u306A\u3044\n            -always       \u6700\u65B0\u306E\u5834\u5408\u3067\u3082IDL\u3092\u751F\u6210\u3059\u308B\n            -alwaysgenerate ("-always"\u3068\u540C\u3058)\n\n -g        \u30C7\u30D0\u30C3\u30B0\u60C5\u5831\u3092\u751F\u6210\u3059\u308B\n -nowarn     \u8B66\u544A\u3092\u751F\u6210\u3057\u306A\u3044\n -nowrite    \u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u305F\u30AF\u30E9\u30B9\u3092\u30D5\u30A1\u30A4\u30EB\u30FB\u30B7\u30B9\u30C6\u30E0\u306B\u66F8\u304D\u8FBC\u307E\u306A\u3044\n -verbose    \u30B3\u30F3\u30D1\u30A4\u30E9\u306E\u52D5\u4F5C\u306B\u95A2\u3059\u308B\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n -classpath <path>    \u5165\u529B\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n -bootclasspath<path> \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n -d <directory>      \u751F\u6210\u3055\u308C\u305F\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u683C\u7D0D\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n -J<runtime flag>  java\u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u306B\u5F15\u6570\u3092\u6E21\u3059\n
 
 #
 # Generic Messages
@@ -111,6 +111,7 @@
 rmic.must.throw.remoteexception={0}\u306F\u4E0D\u6B63\u306A\u30EA\u30E2\u30FC\u30C8\u30FB\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3067\u3059\u3002\u30E1\u30BD\u30C3\u30C9{1}\u306Fjava.rmi.RemoteException\u3092\u30B9\u30ED\u30FC\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
 rmic.must.only.throw.exception=\u30E1\u30BD\u30C3\u30C9{0}\u306F{1}\u3092\u30B9\u30ED\u30FC\u3059\u308B\u306E\u3067\u4E0D\u6B63\u306A\u30EA\u30E2\u30FC\u30C8\u30FB\u30E1\u30BD\u30C3\u30C9\u5B9F\u88C5\u3067\u3059\u3002\u30EA\u30E2\u30FC\u30C8\u30FB\u30E1\u30BD\u30C3\u30C9\u306E\u5B9F\u88C5\u304C\u30B9\u30ED\u30FC\u3059\u308B\u306E\u306Fjava.lang.Exception\u304B\u305D\u306E\u30B5\u30D6\u30AF\u30E9\u30B9\u306E\u307F\u3067\u3059\u3002
 warn.rmic.tie.found=IIOP "tie"\u306F\u30AF\u30E9\u30B9{0}\u306E\u305F\u3081\u306B\u3042\u308A\u307E\u3059\u3002\n {1}\nPortableRemoteObject.exportObject\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3053\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u524A\u9664\u3057\u307E\u3059\u3002\u524A\u9664\u3057\u306A\u3044\u3068\u3001\u30B5\u30FC\u30D0\u30FC\u30FB\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u306FJRMP\u3067\u306A\u304FIIOP\u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u307E\u3059\u3002
+rmic.jrmp.stubs.deprecated=\u8B66\u544A: JRMP\u306E\u30B9\u30B1\u30EB\u30C8\u30F3\u3068static\u30B9\u30BF\u30D6\u306E\u751F\u6210\u3068\u4F7F\u7528\u306F\n\u975E\u63A8\u5968\u3067\u3059\u3002\u30B9\u30B1\u30EB\u30C8\u30F3\u306F\u4E0D\u8981\u3067\u3001static\u30B9\u30BF\u30D6\u306F\n\u52D5\u7684\u306B\u751F\u6210\u3055\u308C\u308B\u30B9\u30BF\u30D6\u306B\u5DEE\u3057\u66FF\u3048\u3089\u308C\u307E\u3057\u305F\u3002\u30E6\u30FC\u30B6\u30FC\u306F\n\u30B9\u30B1\u30EB\u30C8\u30F3\u3068static\u30B9\u30BF\u30D6\u3092\u751F\u6210\u3059\u308B\u305F\u3081\u306B{0}\u3092\u4F7F\u7528\u305B\u305A\u306B\u79FB\u884C\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\njava.rmi.server.UnicastRemoteObject\u306B\u95A2\u3059\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 
 #
 # RMI-IIOP Messages
diff --git a/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_zh_CN.properties b/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_zh_CN.properties
index aa93d01..cb220b9 100644
--- a/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_zh_CN.properties
+++ b/jdk/src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic_zh_CN.properties
@@ -1,6 +1,6 @@
 #
 #
-# Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -71,7 +71,7 @@
 generator.env.idl=sun.rmi.rmic.iiop.BatchEnvironment
 generator.env.xprint=sun.rmi.rmic.iiop.BatchEnvironment
 
-rmic.usage=\u7528\u6CD5: {0} <options> <class names>\n\n\u5176\u4E2D, <options> \u5305\u62EC:\n  -keep          \u4E0D\u5220\u9664\u4E34\u65F6\u751F\u6210\u7684\u6E90\u6587\u4EF6\n  -keepgenerated (\u4E0E "-keep" \u76F8\u540C)\n  -v1.1          \u521B\u5EFA 1.1 \u5B58\u6839\u534F\u8BAE\u7248\u672C\u7684\u5B58\u6839/\u9AA8\u67B6\n  -vcompat       \u521B\u5EFA\u4E0E 1.1 \u548C 1.2 \u5B58\u6839\u534F\u8BAE\u7248\u672C\n                           \u90FD\u517C\u5BB9\u7684\u5B58\u6839/\u9AA8\u67B6\n  -v1.2          (\u9ED8\u8BA4\u503C) \u4EC5\u521B\u5EFA 1.2 \u5B58\u6839\u534F\u8BAE\u7248\u672C\u7684\u5B58\u6839\n  -iiop          \u521B\u5EFA IIOP \u7684\u5B58\u6839\u3002\u5982\u679C\u63D0\u4F9B, <options> \u8FD8\u5305\u62EC:\n\n                   -always           \u521B\u5EFA\u5B58\u6839 (\u5373\u4F7F\u5F53\u524D\u663E\u793A)\n                   -alwaysgenerate   (\u4E0E "-always" \u76F8\u540C)\n                   -nolocalstubs     \u4E0D\u521B\u5EFA\u5BF9\u76F8\u540C\u8FDB\u7A0B\u4F18\u5316\u7684\u5B58\u6839\n\n  -idl           \u521B\u5EFA IDL\u3002\u5982\u679C\u63D0\u4F9B, <options> \u8FD8\u5305\u62EC:\n\n                   -noValueMethods   \u4E0D\u4E3A valuetype \u751F\u6210\u65B9\u6CD5\n                   -always           \u521B\u5EFA IDL (\u5373\u4F7F\u5F53\u524D\u663E\u793A)\n                   -alwaysgenerate   (\u4E0E "-always" \u76F8\u540C)\n\n  -g             \u751F\u6210\u8C03\u8BD5\u4FE1\u606F\n  -nowarn        \u4E0D\u751F\u6210\u4EFB\u4F55\u8B66\u544A\n  -nowrite       \u4E0D\u5C06\u7F16\u8BD1\u7684\u7C7B\u5199\u5165\u6587\u4EF6\u7CFB\u7EDF\n  -verbose       \u8F93\u51FA\u6709\u5173\u7F16\u8BD1\u5668\u6B63\u5728\u6267\u884C\u7684\u64CD\u4F5C\u7684\u6D88\u606F\n  -classpath <path>      \u6307\u5B9A\u67E5\u627E\u8F93\u5165\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -bootclasspath <path>  \u8986\u76D6\u5F15\u5BFC\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -extdirs <path>        \u8986\u76D6\u6240\u5B89\u88C5\u6269\u5C55\u7684\u4F4D\u7F6E\n  -d <directory>         \u6307\u5B9A\u653E\u7F6E\u751F\u6210\u7684\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -J<runtime flag>       \u5C06\u53C2\u6570\u4F20\u9012\u7ED9 java \u89E3\u91CA\u5668\n
+rmic.usage=\u7528\u6CD5: {0} <options> <class names>\n\n\u5176\u4E2D <options> \u5305\u62EC:\n  -keep          \u4E0D\u5220\u9664\u4E34\u65F6\u751F\u6210\u7684\u6E90\u6587\u4EF6\n  -keepgenerated (\u4E0E "-keep" \u76F8\u540C)\n  -v1.1          \u521B\u5EFA 1.1 \u5B58\u6839\u534F\u8BAE\u7248\u672C\u7684\u5B58\u6839/\u9AA8\u67B6 (\u5DF2\u8FC7\u65F6)\n  -vcompat       \u521B\u5EFA\u4E0E 1.1 \u548C 1.2 \u5B58\u6839\u534F\u8BAE\u7248\u672C\n                           \u90FD\u517C\u5BB9\u7684\u5B58\u6839/\u9AA8\u67B6 (\u5DF2\u8FC7\u65F6)\n  -v1.2          (\u9ED8\u8BA4\u503C) \u4EC5\u521B\u5EFA 1.2 \u5B58\u6839\u534F\u8BAE\u7248\u672C\u7684\u5B58\u6839 (\u5DF2\u8FC7\u65F6)\n  -iiop          \u521B\u5EFA IIOP \u7684\u5B58\u6839\u3002\u5982\u679C\u63D0\u4F9B, <options> \u8FD8\u5305\u62EC:\n\n                   -always           \u521B\u5EFA\u5B58\u6839 (\u5373\u4F7F\u5F53\u524D\u663E\u793A)\n                   -alwaysgenerate   (\u4E0E "-always" \u76F8\u540C)\n                   -nolocalstubs     \u4E0D\u521B\u5EFA\u5BF9\u76F8\u540C\u8FDB\u7A0B\u4F18\u5316\u7684\u5B58\u6839\n\n  -idl           \u521B\u5EFA IDL\u3002\u5982\u679C\u63D0\u4F9B, <options> \u8FD8\u5305\u62EC:\n\n                   -noValueMethods   \u4E0D\u4E3A\u503C\u7C7B\u578B\u751F\u6210\u65B9\u6CD5\n                   -always           \u521B\u5EFA IDL (\u5373\u4F7F\u5F53\u524D\u663E\u793A)\n                   -alwaysgenerate   (\u4E0E "-always" \u76F8\u540C)\n\n  -g             \u751F\u6210\u8C03\u8BD5\u4FE1\u606F\n  -nowarn        \u4E0D\u751F\u6210\u4EFB\u4F55\u8B66\u544A\n  -nowrite       \u4E0D\u5C06\u7F16\u8BD1\u7684\u7C7B\u5199\u5165\u6587\u4EF6\u7CFB\u7EDF\n  -verbose       \u8F93\u51FA\u6709\u5173\u7F16\u8BD1\u5668\u6B63\u5728\u6267\u884C\u7684\u64CD\u4F5C\u7684\u6D88\u606F\n  -classpath <path>      \u6307\u5B9A\u67E5\u627E\u8F93\u5165\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -bootclasspath <path>  \u8986\u76D6\u5F15\u5BFC\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -d <directory>         \u6307\u5B9A\u653E\u7F6E\u751F\u6210\u7684\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -J<runtime flag>       \u5C06\u53C2\u6570\u4F20\u9012\u7ED9 java \u89E3\u91CA\u5668\n
 
 #
 # Generic Messages
@@ -111,6 +111,7 @@
 rmic.must.throw.remoteexception={0}\u4E0D\u662F\u6709\u6548\u8FDC\u7A0B\u63A5\u53E3: \u65B9\u6CD5{1}\u5FC5\u987B\u629B\u51FA java.rmi.RemoteException\u3002
 rmic.must.only.throw.exception=\u65B9\u6CD5{0}\u4E0D\u662F\u6709\u6548\u7684\u8FDC\u7A0B\u65B9\u6CD5\u5B9E\u73B0, \u56E0\u4E3A\u5B83\u629B\u51FA\u4E86{1}; \u8FDC\u7A0B\u65B9\u6CD5\u5B9E\u73B0\u53EA\u53EF\u80FD\u629B\u51FA java.lang.Exception \u6216\u5176\u5B50\u7C7B\u3002
 warn.rmic.tie.found=\u5BF9\u4E8E\u7C7B{0}, \u5B58\u5728 IIOP "tie":\n  {1}\n\u5982\u679C\u4F7F\u7528 PortableRemoteObject.exportObject, \u5219\u5E94\u8BE5\u5220\u9664\u6B64\u6587\u4EF6, \u5426\u5219, \u60A8\u7684\u670D\u52A1\u5668\u5BF9\u8C61\u5C06\u4F1A\u5BFC\u51FA\u5230 IIOP \u800C\u975E JRMP\u3002
+rmic.jrmp.stubs.deprecated=\u8B66\u544A: \u4E3A JRMP \u751F\u6210\u548C\u4F7F\u7528\u9AA8\u67B6\u53CA\u9759\u6001\u5B58\u6839\n\u5DF2\u8FC7\u65F6\u3002\u9AA8\u67B6\u4E0D\u518D\u5FC5\u8981, \u800C\u9759\u6001\u5B58\u6839\n\u5DF2\u7531\u52A8\u6001\u751F\u6210\u7684\u5B58\u6839\u53D6\u4EE3\u3002\u5EFA\u8BAE\u7528\u6237\n\u4E0D\u518D\u4F7F\u7528{0}\u6765\u751F\u6210\u9AA8\u67B6\u548C\u9759\u6001\u5B58\u6839\u3002\n\u8BF7\u53C2\u9605 java.rmi.server.UnicastRemoteObject \u7684\u6587\u6863\u3002
 
 #
 # RMI-IIOP Messages
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java
index 38a9709..06bf55b 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java
@@ -209,13 +209,14 @@
  * @deprecated As of JDK&nbsp;1.4, replaced by
  *             {@code sun.security.provider.PolicyFile}.
  *             This class is entirely deprecated.
+ * This class is subject to removal in a future version of Java SE.
  *
  * @see java.security.CodeSource
  * @see java.security.Permissions
  * @see java.security.ProtectionDomain
  * @see java.security.Security security properties
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class PolicyFile extends javax.security.auth.Policy {
 
     private final sun.security.provider.AuthPolicyFile apf;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java
index 7bef826..f3183e3 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java
@@ -41,11 +41,12 @@
  * @deprecated As of JDK&nbsp;1.4, replaced by
  *             {@link UnixNumericGroupPrincipal}.
  *             This class is entirely deprecated.
+ * This class is subject to removal in a future version of Java SE.
  *
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class SolarisNumericGroupPrincipal implements
                                         Principal,
                                         java.io.Serializable {
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java
index a182cf4..858f956 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java
@@ -40,11 +40,12 @@
  * @deprecated As of JDK&nbsp;1.4, replaced by
  *             {@link UnixNumericUserPrincipal}.
  *             This class is entirely deprecated.
+ * This class is subject to removal in a future version of Java SE.
  *
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class SolarisNumericUserPrincipal implements
                                         Principal,
                                         java.io.Serializable {
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java
index 80402c3..6cbc103 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java
@@ -41,10 +41,11 @@
  * @deprecated As of JDK&nbsp;1.4, replaced by
  *             {@link UnixPrincipal}.
  *             This class is entirely deprecated.
+ * This class is subject to removal in a future version of Java SE.
  * @see java.security.Principal
  * @see javax.security.auth.Subject
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class SolarisPrincipal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = -7840670002439379038L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java
index bffbea5..1bf2e3e 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java
@@ -47,9 +47,10 @@
  *             This X500Principal classs is entirely deprecated and
  *             is here to allow for a smooth transition to the new
  *             class.
+ * This class is subject to removal in a future version of Java SE.
  * @see javax.security.auth.x500.X500Principal
 */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class X500Principal implements Principal, java.io.Serializable {
 
     private static final long serialVersionUID = -8222422609431628648L;
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
index f5666ff..9116448 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
@@ -50,9 +50,10 @@
  *             This LoginModule is entirely deprecated and
  *             is here to allow for a smooth transition to the new
  *             UnixLoginModule.
+ * This class is subject to removal in a future version of Java SE.
  *
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class SolarisLoginModule implements LoginModule {
 
     // initial state
diff --git a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java
index ea4842a..24c87ec 100644
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java
+++ b/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java
@@ -30,8 +30,9 @@
  * UID/GID/groups information for the current user.
  *
  * @deprecated replaced by {@link UnixSystem}.
+ * This class is subject to removal in a future version of Java SE.
  */
-@Deprecated
+@Deprecated(since="1.4", forRemoval=true)
 public class SolarisSystem {
 
     private native void getSolarisInfo();
diff --git a/jdk/test/ProblemList.txt b/jdk/test/ProblemList.txt
index 512c555..3cd2758 100644
--- a/jdk/test/ProblemList.txt
+++ b/jdk/test/ProblemList.txt
@@ -116,9 +116,6 @@
 
 # jdk_beans
 
-java/beans/XMLDecoder/8028054/TestConstructorFinder.java        8156579 generic-all
-java/beans/XMLDecoder/8028054/TestMethodFinder.java             8156579 generic-all
-
 java/beans/Introspector/8132566/OverridePropertyInfoTest.java   8132565 generic-all
 java/beans/Introspector/8132566/OverrideUserDefPropertyInfoTest.java 8132565 generic-all
 
@@ -275,8 +272,6 @@
 sun/security/pkcs11/tls/TestPRF.java                            8077138,8023434 windows-all
 sun/security/pkcs11/tls/TestPremaster.java                      8077138,8023434 windows-all
 
-sun/security/provider/SecureRandom/StrongSecureRandom.java      8051770 macosx-10.10
-
 sun/security/pkcs11/rsa/TestKeyPairGenerator.java               8074580 generic-all
 
 sun/security/krb5/auto/HttpNegotiateServer.java                 8038079 generic-all
@@ -285,14 +280,10 @@
 
 sun/security/x509/URICertStore/ExtensionsWithLDAP.java          8134577 generic-all
 
-sun/security/provider/SecureRandom/StrongSecureRandom.java      8157387 linux-all
-
 ############################################################################
 
 # jdk_sound
 
-javax/sound/sampled/DirectAudio/bug6400879.java                 8148915 linux-all
-
 ############################################################################
 
 # jdk_imageio
@@ -304,6 +295,8 @@
 
 # jdk_swing
 
+sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java        8157338 generic-all
+
 ############################################################################
 
 # jdk_text
@@ -394,30 +387,8 @@
 
 # core_tools
 
-tools/jlink/plugins/IncludeLocalesPluginTest.java               8158272 generic-all
+tools/jlink/plugins/IncludeLocalesPluginTest.java               8159781 generic-all
 
-tools/jlink/basic/BasicTest.java                                8159206 generic-all
-
-tools/jlink/IntegrationTest.java                                8159206 generic-all
-
-tools/jlink/JLinkOptimTest.java                                 8159206 generic-all
-
-tools/jlink/JLinkTest.java                                      8159206 generic-all
-
-tools/jlink/plugins/CompressorPluginTest.java                   8159206 generic-all
-
-tools/jlink/plugins/ExcludeFilesPluginTest.java                 8159206 generic-all
-
-tools/jlink/plugins/ExcludePluginTest.java                      8159206 generic-all
-
-tools/jlink/plugins/ExcludeVMPluginTest.java                    8159206 generic-all
-
-tools/jlink/plugins/OrderResourcesPluginTest.java               8159206 generic-all
-
-tools/jlink/plugins/ResourceFilterTest.java                     8159206 generic-all
-
-tools/jlink/plugins/StringSharingPluginTest.java                8159206 generic-all
-
-tools/jmod/JmodTest.java                                        8159206 generic-all
+tools/jlink/JLinkOptimTest.java                                 8159264 generic-all
 
 ############################################################################
diff --git a/jdk/test/com/sun/awt/SecurityWarning/GetSizeShouldNotReturnZero.java b/jdk/test/com/sun/awt/SecurityWarning/GetSizeShouldNotReturnZero.java
index 2cc09bb..baa0670 100644
--- a/jdk/test/com/sun/awt/SecurityWarning/GetSizeShouldNotReturnZero.java
+++ b/jdk/test/com/sun/awt/SecurityWarning/GetSizeShouldNotReturnZero.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6818312
   @summary The size returned by SecurityWarning.getSize() should not be zero
   @author anthony.petrov@sun.com: area=awt.toplevel
diff --git a/jdk/test/com/sun/awt/Translucency/WindowOpacity.java b/jdk/test/com/sun/awt/Translucency/WindowOpacity.java
index 1f1454b..634c1a0 100644
--- a/jdk/test/com/sun/awt/Translucency/WindowOpacity.java
+++ b/jdk/test/com/sun/awt/Translucency/WindowOpacity.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6594131
   @summary Tests the AWTUtilities.get/setWindowOpacity() methods
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/AppContext/ApplicationThreadsStop/ApplicationThreadsStop.java b/jdk/test/java/awt/AppContext/ApplicationThreadsStop/ApplicationThreadsStop.java
index 0819c5e..48e227f 100644
--- a/jdk/test/java/awt/AppContext/ApplicationThreadsStop/ApplicationThreadsStop.java
+++ b/jdk/test/java/awt/AppContext/ApplicationThreadsStop/ApplicationThreadsStop.java
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8136858
  * @modules java.desktop/sun.awt
  * @run main/othervm/java.security.policy=java.policy -Djava.security.manager ApplicationThreadsStop
diff --git a/jdk/test/java/awt/Choice/ChoiceKeyEventReaction/ChoiceKeyEventReaction.html b/jdk/test/java/awt/Choice/ChoiceKeyEventReaction/ChoiceKeyEventReaction.html
index 9b8277d..d1d92a0 100644
--- a/jdk/test/java/awt/Choice/ChoiceKeyEventReaction/ChoiceKeyEventReaction.html
+++ b/jdk/test/java/awt/Choice/ChoiceKeyEventReaction/ChoiceKeyEventReaction.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6252982
   @summary PIT: Keyboard FocusTraversal not working when choice's drop-down is visible, on XToolkit
   @author andrei.dmitriev : area=awt.choice
diff --git a/jdk/test/java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java b/jdk/test/java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java
index 97d4ff6..6426a37 100644
--- a/jdk/test/java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java
+++ b/jdk/test/java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7050935
   @summary closed/java/awt/Choice/WheelEventsConsumed/WheelEventsConsumed.html fails on win32
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/Choice/GrabLockTest/GrabLockTest.java b/jdk/test/java/awt/Choice/GrabLockTest/GrabLockTest.java
index b84ae0b..14cc1a2 100644
--- a/jdk/test/java/awt/Choice/GrabLockTest/GrabLockTest.java
+++ b/jdk/test/java/awt/Choice/GrabLockTest/GrabLockTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
   @test
+  @key headful
   @bug 4800638
   @summary Tests that Choice does not lock the Desktop
   @run main GrabLockTest
diff --git a/jdk/test/java/awt/Choice/ItemStateChangeTest/ItemStateChangeTest.java b/jdk/test/java/awt/Choice/ItemStateChangeTest/ItemStateChangeTest.java
index 6987852..d7ceaa9 100644
--- a/jdk/test/java/awt/Choice/ItemStateChangeTest/ItemStateChangeTest.java
+++ b/jdk/test/java/awt/Choice/ItemStateChangeTest/ItemStateChangeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7171412
   @summary awt Choice doesn't fire ItemStateChange when selecting item after select() call
   @author Oleg Pekhovskiy: area=awt-choice
diff --git a/jdk/test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html b/jdk/test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html
index 4e79bf7..a2cce32 100644
--- a/jdk/test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html
+++ b/jdk/test/java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug 6200670
   @summary MouseMoved events are triggered by Choice when mouse is moved outside the component, XToolkit
   @library ../../regtesthelpers/
diff --git a/jdk/test/java/awt/Choice/PopupPosTest/PopupPosTest.html b/jdk/test/java/awt/Choice/PopupPosTest/PopupPosTest.html
index 8c52e48..d2248e3 100644
--- a/jdk/test/java/awt/Choice/PopupPosTest/PopupPosTest.html
+++ b/jdk/test/java/awt/Choice/PopupPosTest/PopupPosTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 5044150
   @summary Tests that pupup doesn't popdown if no space to display under 
   @author ssi@sparc.spb.su
diff --git a/jdk/test/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest.java b/jdk/test/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest.java
index 311f7eb..8824e32 100644
--- a/jdk/test/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest.java
+++ b/jdk/test/java/awt/Choice/RemoveAllShrinkTest/RemoveAllShrinkTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4851798 8041896
   @summary Tests Choice List shrinks after removeAll
   @run main RemoveAllShrinkTest
diff --git a/jdk/test/java/awt/Choice/SelectCurrentItemTest/SelectCurrentItemTest.html b/jdk/test/java/awt/Choice/SelectCurrentItemTest/SelectCurrentItemTest.html
index d6c8158..aaa7a9a 100644
--- a/jdk/test/java/awt/Choice/SelectCurrentItemTest/SelectCurrentItemTest.html
+++ b/jdk/test/java/awt/Choice/SelectCurrentItemTest/SelectCurrentItemTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test 1.2 01/02/10
+  @key headful
   @bug 4902933
   @summary Test that selecting the current item sends an ItemEvent
   @author bchristi : area= Choice
diff --git a/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html b/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html
index c9f7236..2367cfc 100644
--- a/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html
+++ b/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html
@@ -25,6 +25,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug 6392086 8014725
   @summary Tests basic DnD functionality in an applet
   @author Alexey Utkin, Semyon Sadetsky area=dnd
diff --git a/jdk/test/java/awt/Component/7097771/bug7097771.java b/jdk/test/java/awt/Component/7097771/bug7097771.java
index 1cae495..9fbc296 100644
--- a/jdk/test/java/awt/Component/7097771/bug7097771.java
+++ b/jdk/test/java/awt/Component/7097771/bug7097771.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 
 /*
   @test
+  @key headful
   @bug 7097771
   @summary setEnabled does not work for components in disabled containers.
   @author sergey.bylokhov@oracle.com: area=awt.component
diff --git a/jdk/test/java/awt/Component/CompEventOnHiddenComponent/CompEventOnHiddenComponent.java b/jdk/test/java/awt/Component/CompEventOnHiddenComponent/CompEventOnHiddenComponent.java
index cd74e12..8f0c287 100644
--- a/jdk/test/java/awt/Component/CompEventOnHiddenComponent/CompEventOnHiddenComponent.java
+++ b/jdk/test/java/awt/Component/CompEventOnHiddenComponent/CompEventOnHiddenComponent.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
   @test
+  @key headful
   @bug 6383903 8144166
   @summary REGRESSION: componentMoved is now getting called for some hidden components
   @author andrei.dmitriev: area=awt.component
diff --git a/jdk/test/java/awt/Component/F10TopToplevel/F10TopToplevel.html b/jdk/test/java/awt/Component/F10TopToplevel/F10TopToplevel.html
index 73e49d2..559cacb 100644
--- a/jdk/test/java/awt/Component/F10TopToplevel/F10TopToplevel.html
+++ b/jdk/test/java/awt/Component/F10TopToplevel/F10TopToplevel.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6533175
   @summary Block F10 if closest toplevel to keystroke target is not a Frame.
   @author yuri nesterenko : area= awt.toplevel
diff --git a/jdk/test/java/awt/Component/NativeInLightShow/NativeInLightShow.java b/jdk/test/java/awt/Component/NativeInLightShow/NativeInLightShow.java
index c5e5565..1e3e19c 100644
--- a/jdk/test/java/awt/Component/NativeInLightShow/NativeInLightShow.java
+++ b/jdk/test/java/awt/Component/NativeInLightShow/NativeInLightShow.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test 1.0 04/05/20
+  @key headful
   @bug 4140484
   @summary Heavyweight components inside invisible lightweight containers still show
   @author Your Name: art@sparc.spb.su
diff --git a/jdk/test/java/awt/Component/NoUpdateUponShow/NoUpdateUponShow.java b/jdk/test/java/awt/Component/NoUpdateUponShow/NoUpdateUponShow.java
index d032f0d..050e947 100644
--- a/jdk/test/java/awt/Component/NoUpdateUponShow/NoUpdateUponShow.java
+++ b/jdk/test/java/awt/Component/NoUpdateUponShow/NoUpdateUponShow.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6774258
   @summary  api/java_awt/Component/index.html#PaintUpdate fails randomly
   @author dmitry.cherepanov@...: area=awt.painting
diff --git a/jdk/test/java/awt/Component/PrintAllXcheckJNI/PrintAllXcheckJNI.java b/jdk/test/java/awt/Component/PrintAllXcheckJNI/PrintAllXcheckJNI.java
index 78589f2..a4d8edc 100644
--- a/jdk/test/java/awt/Component/PrintAllXcheckJNI/PrintAllXcheckJNI.java
+++ b/jdk/test/java/awt/Component/PrintAllXcheckJNI/PrintAllXcheckJNI.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6736247
   @summary Component.printAll Invalid local JNI handle
   @author Dmitry Cherepanov: area=awt.component
diff --git a/jdk/test/java/awt/Component/TreeLockDeadlock/TreeLockDeadlock.java b/jdk/test/java/awt/Component/TreeLockDeadlock/TreeLockDeadlock.java
index 91e651c..db11985 100644
--- a/jdk/test/java/awt/Component/TreeLockDeadlock/TreeLockDeadlock.java
+++ b/jdk/test/java/awt/Component/TreeLockDeadlock/TreeLockDeadlock.java
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8138764
  */
 public final class TreeLockDeadlock extends Frame {
diff --git a/jdk/test/java/awt/Component/isLightweightCrash/IsLightweightCrash.java b/jdk/test/java/awt/Component/isLightweightCrash/IsLightweightCrash.java
index 6b04a75..1df485d 100644
--- a/jdk/test/java/awt/Component/isLightweightCrash/IsLightweightCrash.java
+++ b/jdk/test/java/awt/Component/isLightweightCrash/IsLightweightCrash.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6255653
   @summary REGRESSION: Override isLightweight() causes access violation in awt.dll
   @author Andrei Dmitriev: area=awt-component
diff --git a/jdk/test/java/awt/ComponentOrientation/BorderTest.java b/jdk/test/java/awt/ComponentOrientation/BorderTest.java
index 5cc2138..c310ab3 100644
--- a/jdk/test/java/awt/ComponentOrientation/BorderTest.java
+++ b/jdk/test/java/awt/ComponentOrientation/BorderTest.java
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     4108453
  * @summary Test ComponentOrientation (Bidi) support in BorderLayout
  */
diff --git a/jdk/test/java/awt/ComponentOrientation/FlowTest.java b/jdk/test/java/awt/ComponentOrientation/FlowTest.java
index 046953c..467efc4 100644
--- a/jdk/test/java/awt/ComponentOrientation/FlowTest.java
+++ b/jdk/test/java/awt/ComponentOrientation/FlowTest.java
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     4108453
  * @summary Test ComponentOrientation (Bidi) support in FlowLayout
  */
diff --git a/jdk/test/java/awt/ComponentOrientation/WindowTest.java b/jdk/test/java/awt/ComponentOrientation/WindowTest.java
index 85242e1..63f53cb 100644
--- a/jdk/test/java/awt/ComponentOrientation/WindowTest.java
+++ b/jdk/test/java/awt/ComponentOrientation/WindowTest.java
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug     4108453 4778440 6304785
  * @summary Test Window.applyResourceBundle orientation support
  *
diff --git a/jdk/test/java/awt/Container/ContainerAIOOBE/ContainerAIOOBE.java b/jdk/test/java/awt/Container/ContainerAIOOBE/ContainerAIOOBE.java
index 677188a..bd1499c 100644
--- a/jdk/test/java/awt/Container/ContainerAIOOBE/ContainerAIOOBE.java
+++ b/jdk/test/java/awt/Container/ContainerAIOOBE/ContainerAIOOBE.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8059590
  * @summary ArrayIndexOutOfBoundsException occurs when Container with overridden getComponents() is deserialized.
  * @author Alexey Ivanov
diff --git a/jdk/test/java/awt/Container/isRemoveNotifyNeeded/JInternalFrameTest.java b/jdk/test/java/awt/Container/isRemoveNotifyNeeded/JInternalFrameTest.java
index 23e975b..08692bd 100644
--- a/jdk/test/java/awt/Container/isRemoveNotifyNeeded/JInternalFrameTest.java
+++ b/jdk/test/java/awt/Container/isRemoveNotifyNeeded/JInternalFrameTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6552803
   @summary moveToFront shouldn't remove peers of HW components
   @author anthony.petrov@...: area=awt.container
diff --git a/jdk/test/java/awt/Cursor/GetSystemCustomCursor/GetSystemCustomCursor.java b/jdk/test/java/awt/Cursor/GetSystemCustomCursor/GetSystemCustomCursor.java
index 3927aa3..6b149b4 100644
--- a/jdk/test/java/awt/Cursor/GetSystemCustomCursor/GetSystemCustomCursor.java
+++ b/jdk/test/java/awt/Cursor/GetSystemCustomCursor/GetSystemCustomCursor.java
@@ -26,6 +26,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8039269
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/Debug/DumpOnKey/DumpOnKey.java b/jdk/test/java/awt/Debug/DumpOnKey/DumpOnKey.java
index 694f572..5dd99d9 100644
--- a/jdk/test/java/awt/Debug/DumpOnKey/DumpOnKey.java
+++ b/jdk/test/java/awt/Debug/DumpOnKey/DumpOnKey.java
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4379403
  * @run main/othervm DumpOnKey false
  * @run main/othervm DumpOnKey -Dsun.awt.nativedebug=true true
diff --git a/jdk/test/java/awt/Dialog/ChildProperties/ChildDialogProperties.java b/jdk/test/java/awt/Dialog/ChildProperties/ChildDialogProperties.java
new file mode 100644
index 0000000..1a963aa
--- /dev/null
+++ b/jdk/test/java/awt/Dialog/ChildProperties/ChildDialogProperties.java
@@ -0,0 +1,151 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+ /*
+ @test
+ @bug 8057574
+ @summary Verify that child Dialog does not inherit parent's Properties
+ @run main ChildDialogProperties
+ */
+import java.awt.Color;
+import java.awt.Dialog;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.Label;
+
+public class ChildDialogProperties {
+
+    private Dialog parentDialog;
+    private Dialog dialogChild;
+    private Frame parentFrame;
+    private Dialog frameChildDialog;
+    private Label parentLabel;
+    private Font parentFont;
+    private Label childLabel;
+
+    private static final int WIDTH = 200;
+    private static final int HEIGHT = 200;
+
+    public void testChildPropertiesWithDialogAsParent() {
+
+        parentDialog = new Dialog((Dialog) null, "parent Dialog");
+        parentDialog.setSize(WIDTH, HEIGHT);
+        parentDialog.setLocation(100, 100);
+        parentDialog.setBackground(Color.RED);
+
+        parentLabel = new Label("ParentForegroundAndFont");
+        parentFont = new Font("Courier New", Font.ITALIC, 15);
+        parentDialog.setForeground(Color.BLUE);
+        parentDialog.setFont(parentFont);
+
+        parentDialog.add(parentLabel);
+        parentDialog.setVisible(true);
+
+        dialogChild = new Dialog(parentDialog, "Dialog's child");
+        dialogChild.setSize(WIDTH, HEIGHT);
+        dialogChild.setLocation(WIDTH + 200, 100);
+        childLabel = new Label("ChildForegroundAndFont");
+        dialogChild.add(childLabel);
+
+        dialogChild.setVisible(true);
+
+        if (parentDialog.getBackground() == dialogChild.getBackground()) {
+            dispose();
+            throw new RuntimeException("Child Dialog Should NOT Inherit "
+                    + "Parent Dialog's Background Color");
+        }
+
+        if (parentDialog.getForeground() == dialogChild.getForeground()) {
+            dispose();
+            throw new RuntimeException("Child Dialog Should NOT Inherit "
+                    + "Parent Dialog's Foreground Color");
+        }
+
+        if (parentDialog.getFont() == dialogChild.getFont()) {
+            dispose();
+            throw new RuntimeException("Child Dialog Should NOT Inherit "
+                    + "Parent Dialog's Font Style/Color");
+        }
+
+    }
+
+    public void testChildPropertiesWithFrameAsParent() {
+
+        parentFrame = new Frame("parent Frame");
+        parentFrame.setSize(WIDTH, HEIGHT);
+        parentFrame.setLocation(100, 400);
+        parentFrame.setBackground(Color.BLUE);
+        parentLabel = new Label("ParentForegroundAndFont");
+        parentFont = new Font("Courier New", Font.ITALIC, 15);
+        parentFrame.setForeground(Color.RED);
+        parentFrame.setFont(parentFont);
+        parentFrame.add(parentLabel);
+        parentFrame.setVisible(true);
+
+        frameChildDialog = new Dialog(parentFrame, "Frame's child");
+        frameChildDialog.setSize(WIDTH, HEIGHT);
+        frameChildDialog.setLocation(WIDTH + 200, 400);
+        childLabel = new Label("ChildForegroundAndFont");
+        frameChildDialog.add(childLabel);
+        frameChildDialog.setVisible(true);
+
+        if (parentFrame.getBackground() == frameChildDialog.getBackground()) {
+            dispose();
+            throw new RuntimeException("Child Dialog Should NOT Inherit "
+                    + "Parent Frame's Background Color");
+        }
+
+        if (parentFrame.getForeground() == frameChildDialog.getForeground()) {
+            dispose();
+            throw new RuntimeException("Child Dialog Should NOT Inherit "
+                    + "Parent Frame's Foreground Color");
+        }
+
+        if (parentFrame.getFont() == frameChildDialog.getFont()) {
+            dispose();
+            throw new RuntimeException("Child Dialog Should NOT Inherit "
+                    + "Parent Frame's Font Style/Color");
+        }
+    }
+
+    private void dispose() {
+
+        if (parentDialog != null) {
+            parentDialog.dispose();
+        }
+        if (parentFrame != null) {
+            parentFrame.dispose();
+        }
+    }
+
+    public static void main(String[] args) throws Exception {
+
+        ChildDialogProperties obj = new ChildDialogProperties();
+        // TestCase1: When Parent is Dialog, Child is Dialog
+        obj.testChildPropertiesWithDialogAsParent();
+        // TestCase2: When Parent is Frame, chis is Dialog
+        obj.testChildPropertiesWithFrameAsParent();
+        obj.dispose();
+    }
+
+}
diff --git a/jdk/test/java/awt/Dialog/CrashXCheckJni/CrashXCheckJni.java b/jdk/test/java/awt/Dialog/CrashXCheckJni/CrashXCheckJni.java
index b4cc131..24bda17 100644
--- a/jdk/test/java/awt/Dialog/CrashXCheckJni/CrashXCheckJni.java
+++ b/jdk/test/java/awt/Dialog/CrashXCheckJni/CrashXCheckJni.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6610244
   @library ../../regtesthelpers
   @build Util Sysout AbstractTest
diff --git a/jdk/test/java/awt/Dialog/DialogOverflowSizeTest/DialogSizeOverflowTest.java b/jdk/test/java/awt/Dialog/DialogOverflowSizeTest/DialogSizeOverflowTest.java
index abcf9f5..095850c 100644
--- a/jdk/test/java/awt/Dialog/DialogOverflowSizeTest/DialogSizeOverflowTest.java
+++ b/jdk/test/java/awt/Dialog/DialogOverflowSizeTest/DialogSizeOverflowTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,14 +22,15 @@
  */
 
 /*
-   @test
-   @bug 4904961
-   @summary Test that Dialog with zero sizes won't be created with negative sizes due to overflow in peer code
-   @author Andrei Dmitriev: area=awt.toplevel
-   @library ../../regtesthelpers
-   @build Util
-   @run main DialogSizeOverflowTest
-*/
+ * @test
+ * @key headful
+ * @bug 4904961
+ * @summary Test that Dialog with zero sizes won't be created with negative sizes due to overflow in peer code
+ * @author Andrei Dmitriev: area=awt.toplevel
+ * @library ../../regtesthelpers
+ * @build Util
+ * @run main DialogSizeOverflowTest
+ */
 
 import java.awt.*;
 import java.awt.event.*;
diff --git a/jdk/test/java/awt/Dialog/ModalDialogPermission/ModalDialogPermission.java b/jdk/test/java/awt/Dialog/ModalDialogPermission/ModalDialogPermission.java
index 5c6cfe2..2c3755e 100644
--- a/jdk/test/java/awt/Dialog/ModalDialogPermission/ModalDialogPermission.java
+++ b/jdk/test/java/awt/Dialog/ModalDialogPermission/ModalDialogPermission.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /*
   @test
+  @key headful
   @bug 7080109
   @summary Dialog.show() lacks doPrivileged() to access system event queue.
   @author sergey.bylokhov@oracle.com: area=awt.dialog
diff --git a/jdk/test/java/awt/Dialog/NonResizableDialogSysMenuResize/NonResizableDialogSysMenuResize.java b/jdk/test/java/awt/Dialog/NonResizableDialogSysMenuResize/NonResizableDialogSysMenuResize.java
index dab3a16..017ae8c 100644
--- a/jdk/test/java/awt/Dialog/NonResizableDialogSysMenuResize/NonResizableDialogSysMenuResize.java
+++ b/jdk/test/java/awt/Dialog/NonResizableDialogSysMenuResize/NonResizableDialogSysMenuResize.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6494016
   @summary Nonresizable dialogs should not be resized using the Size SystemMenu command
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/EventDispatchThread/HandleExceptionOnEDT/HandleExceptionOnEDT.java b/jdk/test/java/awt/EventDispatchThread/HandleExceptionOnEDT/HandleExceptionOnEDT.java
index a5c85bf..b240a80 100644
--- a/jdk/test/java/awt/EventDispatchThread/HandleExceptionOnEDT/HandleExceptionOnEDT.java
+++ b/jdk/test/java/awt/EventDispatchThread/HandleExceptionOnEDT/HandleExceptionOnEDT.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6304473 6727884
   @summary Tests that an exception on EDT is handled with ThreadGroup.uncaughtException()
   @author artem.ananiev: area=awt.eventdispatching
diff --git a/jdk/test/java/awt/EventDispatchThread/PreserveDispathThread/PreserveDispatchThread.java b/jdk/test/java/awt/EventDispatchThread/PreserveDispathThread/PreserveDispatchThread.java
index cc9d218..d04b1a9 100644
--- a/jdk/test/java/awt/EventDispatchThread/PreserveDispathThread/PreserveDispatchThread.java
+++ b/jdk/test/java/awt/EventDispatchThread/PreserveDispathThread/PreserveDispatchThread.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6424157
   @author Artem Ananiev: area=eventqueue
   @run main PreserveDispatchThread
diff --git a/jdk/test/java/awt/EventDispatchThread/PropertyPermissionOnEDT/PropertyPermissionOnEDT.java b/jdk/test/java/awt/EventDispatchThread/PropertyPermissionOnEDT/PropertyPermissionOnEDT.java
index ef0e009..5810065 100644
--- a/jdk/test/java/awt/EventDispatchThread/PropertyPermissionOnEDT/PropertyPermissionOnEDT.java
+++ b/jdk/test/java/awt/EventDispatchThread/PropertyPermissionOnEDT/PropertyPermissionOnEDT.java
@@ -34,6 +34,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8080405
  * @run main/othervm/policy=java.policy -Djava.security.manager PropertyPermissionOnEDT
  */
diff --git a/jdk/test/java/awt/EventQueue/PushPopDeadlock2/PushPopTest.java b/jdk/test/java/awt/EventQueue/PushPopDeadlock2/PushPopTest.java
index c59b7b3..f28b5cc 100644
--- a/jdk/test/java/awt/EventQueue/PushPopDeadlock2/PushPopTest.java
+++ b/jdk/test/java/awt/EventQueue/PushPopDeadlock2/PushPopTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4913324
   @author Oleg Sukhodolsky: area=eventqueue
   @modules java.desktop/sun.awt
diff --git a/jdk/test/java/awt/FileDialog/FileDialogIconTest/FileDialogIconTest.java b/jdk/test/java/awt/FileDialog/FileDialogIconTest/FileDialogIconTest.java
new file mode 100644
index 0000000..5ff6343
--- /dev/null
+++ b/jdk/test/java/awt/FileDialog/FileDialogIconTest/FileDialogIconTest.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8157163
+ * @summary AWT FileDialog does not inherit icon image from parent Frame
+ * @requires os.family=="windows"
+ * @run main FileDialogIconTest
+ */
+import javax.swing.*;
+import java.awt.*;
+import java.awt.image.BufferedImage;
+import java.lang.reflect.InvocationTargetException;
+
+public class FileDialogIconTest {
+    private static Frame frame;
+    private static Dialog dialog;
+
+    public static void main(final String[] args) throws InterruptedException, InvocationTargetException, AWTException {
+        Robot robot;
+        Point p;
+        try {
+            frame = new Frame();
+            frame.setIconImage(createImage());
+            frame.setVisible(true);
+            robot = new Robot();
+            robot.waitForIdle();
+            robot.delay(200);
+
+            dialog = new FileDialog(frame, "Dialog");
+            dialog.setModal(false);
+            dialog.setVisible(true);
+            robot.waitForIdle();
+            robot.delay(200);
+
+            p = new Point(10, 10);
+            SwingUtilities.convertPointToScreen(p, dialog);
+            Color color = robot.getPixelColor(p.x, p.y);
+            if (!Color.RED.equals(color)) {
+                throw new RuntimeException("Dialog icon was not inherited from " +
+                        "owning window. Wrong color: " + color);
+            }
+        } finally {
+            dialog.dispose();
+            frame.dispose();
+        }
+    }
+
+    private static Image createImage() {
+        BufferedImage image = new BufferedImage(64, 64,
+                                                  BufferedImage.TYPE_INT_ARGB);
+        Graphics g = image.getGraphics();
+        g.setColor(Color.RED);
+        g.fillRect(0, 0, image.getWidth(), image.getHeight());
+        g.dispose();
+        return image;
+    }
+
+}
diff --git a/jdk/test/java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.html b/jdk/test/java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.html
index 430a11b..26c3fb7 100644
--- a/jdk/test/java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.html
+++ b/jdk/test/java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6448069
   @summary namefilter is not called for file dialog on windows
   @author oleg.sukhodolsky: area= awt.filedialog
diff --git a/jdk/test/java/awt/FileDialog/ModalFocus/FileDialogModalFocusTest.java b/jdk/test/java/awt/FileDialog/ModalFocus/FileDialogModalFocusTest.java
index d3e187b..7ca0896 100644
--- a/jdk/test/java/awt/FileDialog/ModalFocus/FileDialogModalFocusTest.java
+++ b/jdk/test/java/awt/FileDialog/ModalFocus/FileDialogModalFocusTest.java
@@ -1,3 +1,4 @@
+
 /*
  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -21,11 +22,13 @@
  * questions.
  */
 
-/* @test
-   @bug 8025815
-   @summary Child FileDialog of modal dialog does not get focus on Gnome
-   @author Semyon Sadetsky
-  */
+/*
+ * @test
+ * @key headful
+ * @bug 8025815
+ * @summary Child FileDialog of modal dialog does not get focus on Gnome
+ * @author Semyon Sadetsky
+ */
 
 import javax.swing.*;
 import java.awt.*;
diff --git a/jdk/test/java/awt/Focus/6378278/InputVerifierTest.java b/jdk/test/java/awt/Focus/6378278/InputVerifierTest.java
index 25daa26..1cf9b33 100644
--- a/jdk/test/java/awt/Focus/6378278/InputVerifierTest.java
+++ b/jdk/test/java/awt/Focus/6378278/InputVerifierTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6378278
   @summary Apparent missing key events causing Bugster to break
   @author oleg.sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/6382144/EndlessLoopTest.java b/jdk/test/java/awt/Focus/6382144/EndlessLoopTest.java
index 9d1719b..6982b3d 100644
--- a/jdk/test/java/awt/Focus/6382144/EndlessLoopTest.java
+++ b/jdk/test/java/awt/Focus/6382144/EndlessLoopTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6382144
   @summary REGRESSION: InputVerifier and JOptionPane
   @author oleg.sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/6401036/InputVerifierTest2.java b/jdk/test/java/awt/Focus/6401036/InputVerifierTest2.java
index 6ee0049..e8c853c 100644
--- a/jdk/test/java/awt/Focus/6401036/InputVerifierTest2.java
+++ b/jdk/test/java/awt/Focus/6401036/InputVerifierTest2.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6401036
   @summary  InputVerifier shouldn't be called when requestFocus() is called on comp from another toplevel
   @author oleg.sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java b/jdk/test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java
index 6f8e484..ffc1835 100644
--- a/jdk/test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java
+++ b/jdk/test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6314575
   @summary   Tests that previosly focused owned window doesn't steal focus when an owner's component requests focus.
   @author    Anton.Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html b/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html
index 996e375..ce01b32 100644
--- a/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html
+++ b/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug 4041703 4096228 4025223 4260929
   @summary Ensures that appletviewer sets a reasonable default focus for an Applet on start
   @author  das area=appletviewer
diff --git a/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html b/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html
index 626849c..05f51fd 100644
--- a/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html
+++ b/jdk/test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug 4411534 4517274
   @summary ensures that user's requestFocus() during applet initialization
            is not ignored
diff --git a/jdk/test/java/awt/Focus/Cause/FocusCauseTest.java b/jdk/test/java/awt/Focus/Cause/FocusCauseTest.java
index 129c3b6..3c8c71a 100644
--- a/jdk/test/java/awt/Focus/Cause/FocusCauseTest.java
+++ b/jdk/test/java/awt/Focus/Cause/FocusCauseTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8080395
   @summary consider making sun.awt.CausedFocusEvent functionality public
   @run main FocusCauseTest
diff --git a/jdk/test/java/awt/Focus/ChildWindowFocusTest/ChildWindowFocusTest.html b/jdk/test/java/awt/Focus/ChildWindowFocusTest/ChildWindowFocusTest.html
index 3964d76..3f3e612 100644
--- a/jdk/test/java/awt/Focus/ChildWindowFocusTest/ChildWindowFocusTest.html
+++ b/jdk/test/java/awt/Focus/ChildWindowFocusTest/ChildWindowFocusTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug        5090325
   @summary    Tests that Window's child can be focused on XAWT.
   @author     anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/ChoiceFocus/ChoiceFocus.java b/jdk/test/java/awt/Focus/ChoiceFocus/ChoiceFocus.java
index c48c85a..904992f 100644
--- a/jdk/test/java/awt/Focus/ChoiceFocus/ChoiceFocus.java
+++ b/jdk/test/java/awt/Focus/ChoiceFocus/ChoiceFocus.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4053856
   @summary Choice components don't honour key focus
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/Focus/ClearLwQueueBreakTest/ClearLwQueueBreakTest.java b/jdk/test/java/awt/Focus/ClearLwQueueBreakTest/ClearLwQueueBreakTest.java
index bf8ca56..df81efb 100644
--- a/jdk/test/java/awt/Focus/ClearLwQueueBreakTest/ClearLwQueueBreakTest.java
+++ b/jdk/test/java/awt/Focus/ClearLwQueueBreakTest/ClearLwQueueBreakTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6496958
   @summary   Tests that breaking the proccess of clearing LW requests doesn't break focus.
   @author    anton.tarasov@...: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/CloseDialogActivateOwnerTest/CloseDialogActivateOwnerTest.java b/jdk/test/java/awt/Focus/CloseDialogActivateOwnerTest/CloseDialogActivateOwnerTest.java
index 1ac0d0d..46f1ecb 100644
--- a/jdk/test/java/awt/Focus/CloseDialogActivateOwnerTest/CloseDialogActivateOwnerTest.java
+++ b/jdk/test/java/awt/Focus/CloseDialogActivateOwnerTest/CloseDialogActivateOwnerTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6785058
   @summary   Tests that an owner is activated on closing its owned dialog with the warning icon.
   @author    Anton Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/ConsumeNextKeyTypedOnModalShowTest/ConsumeNextKeyTypedOnModalShowTest.java b/jdk/test/java/awt/Focus/ConsumeNextKeyTypedOnModalShowTest/ConsumeNextKeyTypedOnModalShowTest.java
index ce12dcb..1ea3996 100644
--- a/jdk/test/java/awt/Focus/ConsumeNextKeyTypedOnModalShowTest/ConsumeNextKeyTypedOnModalShowTest.java
+++ b/jdk/test/java/awt/Focus/ConsumeNextKeyTypedOnModalShowTest/ConsumeNextKeyTypedOnModalShowTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test      %W% %E%
+  @key headful
   @bug       6637607
   @summary   Showing a modal dlg on TAB KEY_PRESS shouldn't consume inappropriate KEY_TYPED.
   @author    Anton Tarasov: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/ContainerFocusAutoTransferTest/ContainerFocusAutoTransferTest.java b/jdk/test/java/awt/Focus/ContainerFocusAutoTransferTest/ContainerFocusAutoTransferTest.java
index f178ca8..24fc9fc 100644
--- a/jdk/test/java/awt/Focus/ContainerFocusAutoTransferTest/ContainerFocusAutoTransferTest.java
+++ b/jdk/test/java/awt/Focus/ContainerFocusAutoTransferTest/ContainerFocusAutoTransferTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6607170
   @summary   Tests for focus-auto-transfer.
   @author    Anton Tarasov: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.html b/jdk/test/java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.html
index a574175..ed942a4 100644
--- a/jdk/test/java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.html
+++ b/jdk/test/java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6480534
   @summary    A Frame changing its state from ICONIFIED to NORMAL should regain focus.
   @author     anton.tarasov@...: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/DisposedWindow/DisposeDialogNotActivateOwnerTest/DisposeDialogNotActivateOwnerTest.html b/jdk/test/java/awt/Focus/DisposedWindow/DisposeDialogNotActivateOwnerTest/DisposeDialogNotActivateOwnerTest.html
index 81fcd67..28ae8df 100644
--- a/jdk/test/java/awt/Focus/DisposedWindow/DisposeDialogNotActivateOwnerTest/DisposeDialogNotActivateOwnerTest.html
+++ b/jdk/test/java/awt/Focus/DisposedWindow/DisposeDialogNotActivateOwnerTest/DisposeDialogNotActivateOwnerTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6386592
   @summary    Tests that disposing a dialog doesn't activate its invisible owner.
   @author     anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java b/jdk/test/java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java
index 1135c5a..b7ef4e0 100644
--- a/jdk/test/java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java
+++ b/jdk/test/java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test      FocusOwnerFrameOnClick.java %W% %E%
+  @key headful
   @bug       6886678
   @summary   Tests that clicking an owner frame switches focus from its owned window.
   @author    Anton Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/FocusSubRequestTest/FocusSubRequestTest.html b/jdk/test/java/awt/Focus/FocusSubRequestTest/FocusSubRequestTest.html
index 9de74ff..f0642d9 100644
--- a/jdk/test/java/awt/Focus/FocusSubRequestTest/FocusSubRequestTest.html
+++ b/jdk/test/java/awt/Focus/FocusSubRequestTest/FocusSubRequestTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug        5082319
   @summary    Tests that focus request for already focused component doesn't block key events.
   @author     anton.tarasov@sun.com
diff --git a/jdk/test/java/awt/Focus/FocusTraversalPolicy/ContainerOrderFTPTest.java b/jdk/test/java/awt/Focus/FocusTraversalPolicy/ContainerOrderFTPTest.java
index 5957204..cdb4e14 100644
--- a/jdk/test/java/awt/Focus/FocusTraversalPolicy/ContainerOrderFTPTest.java
+++ b/jdk/test/java/awt/Focus/FocusTraversalPolicy/ContainerOrderFTPTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8025001
   @summary Tests java.awt.ContainerOrderFocusTraversalPolicy functionality.
   @run main ContainerOrderFTPTest
diff --git a/jdk/test/java/awt/Focus/FocusTraversalPolicy/DefaultFTPTest.java b/jdk/test/java/awt/Focus/FocusTraversalPolicy/DefaultFTPTest.java
index b98fbe2..cd507c0 100644
--- a/jdk/test/java/awt/Focus/FocusTraversalPolicy/DefaultFTPTest.java
+++ b/jdk/test/java/awt/Focus/FocusTraversalPolicy/DefaultFTPTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6463545
   @summary   Tests java.awt.DefaultFocusTraversalPolicy functionality.
   @author    anton.tarasov area=awt.focus
diff --git a/jdk/test/java/awt/Focus/FocusTraversalPolicy/InitialFTP.java b/jdk/test/java/awt/Focus/FocusTraversalPolicy/InitialFTP.java
index 7808dd1..d05e93a 100644
--- a/jdk/test/java/awt/Focus/FocusTraversalPolicy/InitialFTP.java
+++ b/jdk/test/java/awt/Focus/FocusTraversalPolicy/InitialFTP.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       7125044
   @summary   Tests defaut focus traversal policy in AWT & Swing toplevel windows.
   @author    anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/FocusTraversalPolicy/LayoutFTPTest.java b/jdk/test/java/awt/Focus/FocusTraversalPolicy/LayoutFTPTest.java
index b6445c9..8e5fafd 100644
--- a/jdk/test/java/awt/Focus/FocusTraversalPolicy/LayoutFTPTest.java
+++ b/jdk/test/java/awt/Focus/FocusTraversalPolicy/LayoutFTPTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6463545
   @summary   Tests javax.swing.LayoutFocusTraversalPolicy functionality.
   @author    anton.tarasov, oleg.sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/FrameJumpingToMouse/FrameJumpingToMouse.java b/jdk/test/java/awt/Focus/FrameJumpingToMouse/FrameJumpingToMouse.java
index 0d9d542..8002efe 100644
--- a/jdk/test/java/awt/Focus/FrameJumpingToMouse/FrameJumpingToMouse.java
+++ b/jdk/test/java/awt/Focus/FrameJumpingToMouse/FrameJumpingToMouse.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,14 +22,15 @@
  */
 
 /*
-    @test
-    @bug        4752312
-    @summary    Tests that after moving non-focusable window it ungrabs mouse pointer
-    @author     Denis Mikhalkin: area=awt.focus
-    @library    ../../regtesthelpers
-    @build      Util
-    @run        main FrameJumpingToMouse
-*/
+ * @test
+ * @key headful
+ * @bug        4752312
+ * @summary    Tests that after moving non-focusable window it ungrabs mouse pointer
+ * @author     Denis Mikhalkin: area=awt.focus
+ * @library    ../../regtesthelpers
+ * @build      Util
+ * @run        main FrameJumpingToMouse
+ */
 
 import java.applet.Applet;
 import java.awt.BorderLayout;
diff --git a/jdk/test/java/awt/Focus/FrameMinimizeTest/FrameMinimizeTest.java b/jdk/test/java/awt/Focus/FrameMinimizeTest/FrameMinimizeTest.java
index b556aa4..5a3c0f3 100644
--- a/jdk/test/java/awt/Focus/FrameMinimizeTest/FrameMinimizeTest.java
+++ b/jdk/test/java/awt/Focus/FrameMinimizeTest/FrameMinimizeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6502358
   @summary focus is not restored after programmatic iconification and restoring
   @author : area=awt.focus
diff --git a/jdk/test/java/awt/Focus/IconifiedFrameFocusChangeTest/IconifiedFrameFocusChangeTest.java b/jdk/test/java/awt/Focus/IconifiedFrameFocusChangeTest/IconifiedFrameFocusChangeTest.java
index adcd61d..70f971a 100644
--- a/jdk/test/java/awt/Focus/IconifiedFrameFocusChangeTest/IconifiedFrameFocusChangeTest.java
+++ b/jdk/test/java/awt/Focus/IconifiedFrameFocusChangeTest/IconifiedFrameFocusChangeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6522725
   @summary   Tests for proper request-focus-back on FOCUS_LOST.
   @author    Anton Tarasov: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/InputVerifierTest3/InputVerifierTest3.java b/jdk/test/java/awt/Focus/InputVerifierTest3/InputVerifierTest3.java
index 1369d48..f7d14e8 100644
--- a/jdk/test/java/awt/Focus/InputVerifierTest3/InputVerifierTest3.java
+++ b/jdk/test/java/awt/Focus/InputVerifierTest3/InputVerifierTest3.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6432665
   @summary Inputverifier is not executed when focus owner is removed
   @author oleg.sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/ModalBlockedStealsFocusTest/ModalBlockedStealsFocusTest.html b/jdk/test/java/awt/Focus/ModalBlockedStealsFocusTest/ModalBlockedStealsFocusTest.html
index dfa2999..2423df0 100644
--- a/jdk/test/java/awt/Focus/ModalBlockedStealsFocusTest/ModalBlockedStealsFocusTest.html
+++ b/jdk/test/java/awt/Focus/ModalBlockedStealsFocusTest/ModalBlockedStealsFocusTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6426132
   @summary    Modal blocked window shouldn't steal focus when shown, or brought to front.
   @author     anton.tarasov@...: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/ModalDialogInitialFocusTest/ModalDialogInitialFocusTest.html b/jdk/test/java/awt/Focus/ModalDialogInitialFocusTest/ModalDialogInitialFocusTest.html
index 9be0616..0dd6818 100644
--- a/jdk/test/java/awt/Focus/ModalDialogInitialFocusTest/ModalDialogInitialFocusTest.html
+++ b/jdk/test/java/awt/Focus/ModalDialogInitialFocusTest/ModalDialogInitialFocusTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6382750
   @summary
   @author     anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.html b/jdk/test/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.html
index a34d01d..1f91039 100644
--- a/jdk/test/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.html
+++ b/jdk/test/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug        6271849
   @summary    Tests that component in modal excluded Window which parent is blocked responses to mouse clicks.
   @author     anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java b/jdk/test/java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java
index dd52f1d..91932c8 100644
--- a/jdk/test/java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java
+++ b/jdk/test/java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       4685768
   @summary   Tests that auto-transfering focus doesn't stuck on a disabled component.
   @author    Anton Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/NonFocusableBlockedOwnerTest/NonFocusableBlockedOwnerTest.html b/jdk/test/java/awt/Focus/NonFocusableBlockedOwnerTest/NonFocusableBlockedOwnerTest.html
index 21fd147..b765de4 100644
--- a/jdk/test/java/awt/Focus/NonFocusableBlockedOwnerTest/NonFocusableBlockedOwnerTest.html
+++ b/jdk/test/java/awt/Focus/NonFocusableBlockedOwnerTest/NonFocusableBlockedOwnerTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug        6272324
   @summary    Modal excluded Window which decorated parent is blocked should be non-focusable.
   @author     anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/NonFocusableResizableTooSmall/NonFocusableResizableTooSmall.java b/jdk/test/java/awt/Focus/NonFocusableResizableTooSmall/NonFocusableResizableTooSmall.java
index af895e0..f314f20 100644
--- a/jdk/test/java/awt/Focus/NonFocusableResizableTooSmall/NonFocusableResizableTooSmall.java
+++ b/jdk/test/java/awt/Focus/NonFocusableResizableTooSmall/NonFocusableResizableTooSmall.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6581927
   @summary Non-focusable frame should honor the size of the frame buttons/decorations when resizing
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java b/jdk/test/java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java
index e1ab7c4..3fcee8e 100644
--- a/jdk/test/java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java
+++ b/jdk/test/java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4452384
   @summary Tests that non-focusable windows doesn't generate any focus events when accessed.
   @author Denis.Mikhalkin: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java b/jdk/test/java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java
index c27d978..3601c99 100644
--- a/jdk/test/java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java
+++ b/jdk/test/java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6182359
   @summary   Tests that Window having non-focusable owner can't be a focus owner.
   @author    Anton.Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/OwnedWindowFocusIMECrashTest/OwnedWindowFocusIMECrashTest.java b/jdk/test/java/awt/Focus/OwnedWindowFocusIMECrashTest/OwnedWindowFocusIMECrashTest.java
index 975a1f2..6fe6b6a 100644
--- a/jdk/test/java/awt/Focus/OwnedWindowFocusIMECrashTest/OwnedWindowFocusIMECrashTest.java
+++ b/jdk/test/java/awt/Focus/OwnedWindowFocusIMECrashTest/OwnedWindowFocusIMECrashTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6542975
   @summary   Tests that switching focus from an owned window doesn't crash.
   @author    anton.tarasov@sun.com: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/RequestFocusAndHideTest/RequestFocusAndHideTest.java b/jdk/test/java/awt/Focus/RequestFocusAndHideTest/RequestFocusAndHideTest.java
index d8f338c..3027ce3 100644
--- a/jdk/test/java/awt/Focus/RequestFocusAndHideTest/RequestFocusAndHideTest.java
+++ b/jdk/test/java/awt/Focus/RequestFocusAndHideTest/RequestFocusAndHideTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6562853 6562853 6562853
   @summary   Tests that focus can not be set to removed component.
   @author    Oleg Sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/RequestFocusToDisabledCompTest/RequestFocusToDisabledCompTest.java b/jdk/test/java/awt/Focus/RequestFocusToDisabledCompTest/RequestFocusToDisabledCompTest.java
index 4e4912d..5985273 100644
--- a/jdk/test/java/awt/Focus/RequestFocusToDisabledCompTest/RequestFocusToDisabledCompTest.java
+++ b/jdk/test/java/awt/Focus/RequestFocusToDisabledCompTest/RequestFocusToDisabledCompTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       4685768
   @summary   Tests that it's possible to manually request focus on a disabled component.
   @author    Anton Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/RequestOnCompWithNullParent/RequestOnCompWithNullParent1.java b/jdk/test/java/awt/Focus/RequestOnCompWithNullParent/RequestOnCompWithNullParent1.java
index a1c3e79..a6730e0 100644
--- a/jdk/test/java/awt/Focus/RequestOnCompWithNullParent/RequestOnCompWithNullParent1.java
+++ b/jdk/test/java/awt/Focus/RequestOnCompWithNullParent/RequestOnCompWithNullParent1.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6418028
   @author oleg.sukhodolsky: area=awt.focus
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/Focus/ResetMostRecentFocusOwnerTest/ResetMostRecentFocusOwnerTest.java b/jdk/test/java/awt/Focus/ResetMostRecentFocusOwnerTest/ResetMostRecentFocusOwnerTest.java
index f98bbdf..048aadb 100644
--- a/jdk/test/java/awt/Focus/ResetMostRecentFocusOwnerTest/ResetMostRecentFocusOwnerTest.java
+++ b/jdk/test/java/awt/Focus/ResetMostRecentFocusOwnerTest/ResetMostRecentFocusOwnerTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug      8013773
   @summary  Tests that disabled component is not retained as most recent focus owner.
   @author   Anton.Tarasov: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/RestoreFocusOnDisabledComponentTest/RestoreFocusOnDisabledComponentTest.java b/jdk/test/java/awt/Focus/RestoreFocusOnDisabledComponentTest/RestoreFocusOnDisabledComponentTest.java
index d88d0fa..267fe92 100644
--- a/jdk/test/java/awt/Focus/RestoreFocusOnDisabledComponentTest/RestoreFocusOnDisabledComponentTest.java
+++ b/jdk/test/java/awt/Focus/RestoreFocusOnDisabledComponentTest/RestoreFocusOnDisabledComponentTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test      %W% %E%
+  @key headful
   @bug       6598089
   @summary   Tests restoring focus on a single disabled coponent
   @author    Anton Tarasov: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/RollbackFocusFromAnotherWindowTest/RollbackFocusFromAnotherWindowTest.java b/jdk/test/java/awt/Focus/RollbackFocusFromAnotherWindowTest/RollbackFocusFromAnotherWindowTest.java
new file mode 100644
index 0000000..8d94f0d
--- /dev/null
+++ b/jdk/test/java/awt/Focus/RollbackFocusFromAnotherWindowTest/RollbackFocusFromAnotherWindowTest.java
@@ -0,0 +1,112 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+  @test
+  @bug       8139218
+  @summary   Dialog that opens and closes quickly changes focus in original
+             focusowner
+  @run       main RollbackFocusFromAnotherWindowTest
+ */
+
+import java.awt.*;
+import java.awt.event.*;
+
+import javax.swing.*;
+
+public class RollbackFocusFromAnotherWindowTest extends JFrame
+                                                          implements KeyListener
+{
+    private static RollbackFocusFromAnotherWindowTest tfs;
+    private static Robot robot;
+
+    public static void main(String[] args) throws Exception {
+        robot = new Robot();
+
+        SwingUtilities.invokeAndWait(() -> {
+            tfs = new RollbackFocusFromAnotherWindowTest();
+            tfs.setVisible(true);
+        });
+
+        robot.waitForIdle();
+        robot.delay(200);
+
+        try {
+            for (int i = 0; i < 10; i++) {
+                robot.keyPress(KeyEvent.VK_A);
+                robot.delay(10);
+                robot.keyRelease(KeyEvent.VK_A);
+                robot.waitForIdle();
+                robot.delay(200);
+                SwingUtilities.invokeAndWait(() -> {
+                    String name = tfs.getFocusOwner().getName();
+                    System.out.println(name);
+                    if (!"Comp0".equals(name)) {
+                        throw new RuntimeException(
+                                "Focus is not restored correctly");
+                    }
+                });
+            }
+            System.out.println("ok");
+        } finally {
+            SwingUtilities.invokeLater(() -> tfs.dispose());
+        }
+    }
+
+    public RollbackFocusFromAnotherWindowTest()
+    {
+        setUndecorated(true);
+        Container c = getContentPane();
+        c.setLayout(new FlowLayout());
+        for (int i = 0; i < 10; i++)
+        {
+            JTextField tf = new JTextField("" + i, 10);
+            tf.setName("Comp" + i);
+            c.add(tf);
+            tf.addKeyListener(this);
+        }
+        pack();
+    }
+
+    @Override
+    public void keyTyped(KeyEvent e) {
+
+    }
+
+    @Override
+    public void keyPressed(KeyEvent e) {
+        Frame frame = new Frame();
+        frame.setVisible(true);
+        try {
+            Thread.sleep(2);
+        } catch (InterruptedException e1) {
+            e1.printStackTrace();
+        }
+        frame.dispose();
+    }
+
+    @Override
+    public void keyReleased(KeyEvent e) {
+
+    }
+}
diff --git a/jdk/test/java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java b/jdk/test/java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java
index 607a3bf..aa35e50 100644
--- a/jdk/test/java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java
+++ b/jdk/test/java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug       6492970
   @summary   Tests that showing a toplvel in a not foreground Java process activates it.
   @library   ../../regtesthelpers
diff --git a/jdk/test/java/awt/Focus/ToFrontFocusTest/ToFrontFocus.html b/jdk/test/java/awt/Focus/ToFrontFocusTest/ToFrontFocus.html
index 7fe8fec..39785a2 100644
--- a/jdk/test/java/awt/Focus/ToFrontFocusTest/ToFrontFocus.html
+++ b/jdk/test/java/awt/Focus/ToFrontFocusTest/ToFrontFocus.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4092033 4529626
   @summary Tests that toFront makes window focused unless it is non-focusable
   @author  area=awt.focus
diff --git a/jdk/test/java/awt/Focus/WindowInitialFocusTest/WindowInitialFocusTest.html b/jdk/test/java/awt/Focus/WindowInitialFocusTest/WindowInitialFocusTest.html
index 4d7d2d4..6c7356a 100644
--- a/jdk/test/java/awt/Focus/WindowInitialFocusTest/WindowInitialFocusTest.html
+++ b/jdk/test/java/awt/Focus/WindowInitialFocusTest/WindowInitialFocusTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6426132
   @summary    A Window should be focused upon start (XAWT bug).
   @author     anton.tarasov@...: area=awt.focus
diff --git a/jdk/test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java b/jdk/test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java
index 3fe6c19..e83306d 100644
--- a/jdk/test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java
+++ b/jdk/test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug      8047288
   @summary  Tests method isFocusable of Window component. It should be accessed only from EDT
   @author   artem.malinko@oracle.com
diff --git a/jdk/test/java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.html b/jdk/test/java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.html
index 9eb69ab..cafb019 100644
--- a/jdk/test/java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.html
+++ b/jdk/test/java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6253913
   @summary    Tests that a Window shown before its owner is focusable.
   @author     anton.tarasov@sun.com: area=awt-focus
diff --git a/jdk/test/java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java b/jdk/test/java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java
index 12cb2d7..d2d2ea6 100644
--- a/jdk/test/java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java
+++ b/jdk/test/java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug      4782886
   @summary  FocusManager consumes wrong KEY_TYPED events
   @author   Oleg.Sukhodolsky: area=awt.focus
diff --git a/jdk/test/java/awt/FontClass/CreateFont/bigfont.html b/jdk/test/java/awt/FontClass/CreateFont/bigfont.html
index 2e929b6..cfd6ca7 100644
--- a/jdk/test/java/awt/FontClass/CreateFont/bigfont.html
+++ b/jdk/test/java/awt/FontClass/CreateFont/bigfont.html
@@ -1,6 +1,6 @@
 <!--
 
- Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  questions.
 
   @test
+  @key headful
   @bug 6522586
   @run applet bigfont.html
   @summary Enforce limits on font creation
diff --git a/jdk/test/java/awt/Frame/7024749/bug7024749.java b/jdk/test/java/awt/Frame/7024749/bug7024749.java
index 7035435..2194335 100644
--- a/jdk/test/java/awt/Frame/7024749/bug7024749.java
+++ b/jdk/test/java/awt/Frame/7024749/bug7024749.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 7024749 8019990
  * @summary JDK7 b131---a crash in: Java_sun_awt_windows_ThemeReader_isGetThemeTransitionDurationDefined+0x75
  * @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/Frame/DisposeStressTest/DisposeStressTest.html b/jdk/test/java/awt/Frame/DisposeStressTest/DisposeStressTest.html
index 41944bc..ddd060f 100644
--- a/jdk/test/java/awt/Frame/DisposeStressTest/DisposeStressTest.html
+++ b/jdk/test/java/awt/Frame/DisposeStressTest/DisposeStressTest.html
@@ -1,6 +1,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4051487 4145670
   @summary Tests that disposing of an empty Frame or a Frame with a MenuBar
            while it is being created does not crash the VM.
diff --git a/jdk/test/java/awt/Frame/DynamicLayout/DynamicLayout.java b/jdk/test/java/awt/Frame/DynamicLayout/DynamicLayout.java
index 65af131..f32f84f 100644
--- a/jdk/test/java/awt/Frame/DynamicLayout/DynamicLayout.java
+++ b/jdk/test/java/awt/Frame/DynamicLayout/DynamicLayout.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6500477
   @summary Tests whether DynamicLayout is really off
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/FrameLocation/FrameLocation.java b/jdk/test/java/awt/Frame/FrameLocation/FrameLocation.java
index bd12a2f..e2f2749 100644
--- a/jdk/test/java/awt/Frame/FrameLocation/FrameLocation.java
+++ b/jdk/test/java/awt/Frame/FrameLocation/FrameLocation.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6895647
   @summary X11 Frame locations should be what we set them to
   @author anthony.petrov@oracle.com: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java b/jdk/test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java
index ee722f4..69c7b84 100644
--- a/jdk/test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java
+++ b/jdk/test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java
@@ -1,3 +1,4 @@
+
 /*
  * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -21,11 +22,13 @@
  * questions.
  */
 
-/* @test
-   @bug 8079595
-   @summary Resizing dialog which is JWindow parent makes JVM crash
-   @author Semyon Sadetsky
-  */
+/*
+ * @test
+ * @key headful
+ * @bug 8079595
+ * @summary Resizing dialog which is JWindow parent makes JVM crash
+ * @author Semyon Sadetsky
+ */
 
 import javax.swing.*;
 import java.awt.*;
diff --git a/jdk/test/java/awt/Frame/FrameSetSizeStressTest/FrameSetSizeStressTest.java b/jdk/test/java/awt/Frame/FrameSetSizeStressTest/FrameSetSizeStressTest.java
index 6559e5e..8e43535 100644
--- a/jdk/test/java/awt/Frame/FrameSetSizeStressTest/FrameSetSizeStressTest.java
+++ b/jdk/test/java/awt/Frame/FrameSetSizeStressTest/FrameSetSizeStressTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
   @test
+  @key headful
   @bug 7177173
   @summary setBounds can cause StackOverflow in case of the considerable loading
   @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/Frame/FrameSize/TestFrameSize.java b/jdk/test/java/awt/Frame/FrameSize/TestFrameSize.java
index b42a70f..e9cda15 100644
--- a/jdk/test/java/awt/Frame/FrameSize/TestFrameSize.java
+++ b/jdk/test/java/awt/Frame/FrameSize/TestFrameSize.java
@@ -1,6 +1,6 @@
 /*
  * Copyright 2009 Red Hat, Inc.  All Rights Reserved.
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 
 /*
   @test
+  @key headful
   @bug 6721088
   @summary X11 Window sizes should be what we set them to
   @author Omair Majid <omajid@redhat.com>: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/HideMaximized/HideMaximized.java b/jdk/test/java/awt/Frame/HideMaximized/HideMaximized.java
index 9e64b2d..30c2653 100644
--- a/jdk/test/java/awt/Frame/HideMaximized/HideMaximized.java
+++ b/jdk/test/java/awt/Frame/HideMaximized/HideMaximized.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7177173
   @summary The maximized state shouldn't be reset upon hiding a frame
   @author anthony.petrov@oracle.com: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/HugeFrame/HugeFrame.java b/jdk/test/java/awt/Frame/HugeFrame/HugeFrame.java
index 8da7ce0..9af2d9e 100644
--- a/jdk/test/java/awt/Frame/HugeFrame/HugeFrame.java
+++ b/jdk/test/java/awt/Frame/HugeFrame/HugeFrame.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7160609
   @summary A window with huge dimensions shouldn't crash JVM
   @author anthony.petrov@oracle.com: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/InvisibleOwner/InvisibleOwner.java b/jdk/test/java/awt/Frame/InvisibleOwner/InvisibleOwner.java
index 007f14d..19ca937 100644
--- a/jdk/test/java/awt/Frame/InvisibleOwner/InvisibleOwner.java
+++ b/jdk/test/java/awt/Frame/InvisibleOwner/InvisibleOwner.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7154177
   @summary An invisible owner frame should never become visible
   @author anthony.petrov@oracle.com: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/LayoutOnMaximizeTest/LayoutOnMaximizeTest.java b/jdk/test/java/awt/Frame/LayoutOnMaximizeTest/LayoutOnMaximizeTest.java
index 87a6c60..ef7722d 100644
--- a/jdk/test/java/awt/Frame/LayoutOnMaximizeTest/LayoutOnMaximizeTest.java
+++ b/jdk/test/java/awt/Frame/LayoutOnMaximizeTest/LayoutOnMaximizeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6355340
   @summary Test correctness of laying out the contents of a frame on maximize
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/MaximizedNormalBoundsUndecoratedTest/MaximizedNormalBoundsUndecoratedTest.java b/jdk/test/java/awt/Frame/MaximizedNormalBoundsUndecoratedTest/MaximizedNormalBoundsUndecoratedTest.java
index 119224a..16d97ee 100644
--- a/jdk/test/java/awt/Frame/MaximizedNormalBoundsUndecoratedTest/MaximizedNormalBoundsUndecoratedTest.java
+++ b/jdk/test/java/awt/Frame/MaximizedNormalBoundsUndecoratedTest/MaximizedNormalBoundsUndecoratedTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 import java.awt.Dimension;
 /*
  * @test
+ * @key headful
  * @bug 8066436
  * @summary Set the size of frame. Set extendedState Frame.MAXIMIZED_BOTH and Frame.NORMAL
  *          sequentially for undecorated Frame and .
diff --git a/jdk/test/java/awt/Frame/MaximizedToIconified/MaximizedToIconified.java b/jdk/test/java/awt/Frame/MaximizedToIconified/MaximizedToIconified.java
index 78f0a49..1cb2813 100644
--- a/jdk/test/java/awt/Frame/MaximizedToIconified/MaximizedToIconified.java
+++ b/jdk/test/java/awt/Frame/MaximizedToIconified/MaximizedToIconified.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4977491
   @summary State changes should always be reported as events
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/MaximizedToMaximized/MaximizedToMaximized.java b/jdk/test/java/awt/Frame/MaximizedToMaximized/MaximizedToMaximized.java
index 0b29547..21c72bc 100644
--- a/jdk/test/java/awt/Frame/MaximizedToMaximized/MaximizedToMaximized.java
+++ b/jdk/test/java/awt/Frame/MaximizedToMaximized/MaximizedToMaximized.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8007219 8146168
  * @author Alexander Scherbatiy
  * @summary Frame size reverts meaning of maximized attribute
diff --git a/jdk/test/java/awt/Frame/MaximizedToUnmaximized/MaximizedToUnmaximized.java b/jdk/test/java/awt/Frame/MaximizedToUnmaximized/MaximizedToUnmaximized.java
index f4946e3..de55187 100644
--- a/jdk/test/java/awt/Frame/MaximizedToUnmaximized/MaximizedToUnmaximized.java
+++ b/jdk/test/java/awt/Frame/MaximizedToUnmaximized/MaximizedToUnmaximized.java
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8065739
  * @summary [macosx] Frame warps to lower left of screen when displayed
  * @author Alexandr Scherbatiy
diff --git a/jdk/test/java/awt/Frame/MaximizedUndecorated/MaximizedUndecorated.java b/jdk/test/java/awt/Frame/MaximizedUndecorated/MaximizedUndecorated.java
index 62e8010..b484cf0 100644
--- a/jdk/test/java/awt/Frame/MaximizedUndecorated/MaximizedUndecorated.java
+++ b/jdk/test/java/awt/Frame/MaximizedUndecorated/MaximizedUndecorated.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 import java.lang.reflect.InvocationTargetException;
 /*
  * @test
+ * @key headful
  * @bug 8022302
  * @summary Set extendedState Frame.MAXIMIZED_BOTH for undecorated Frame and JFrame.
  *          Check if resulted size is equal to GraphicsEnvironment.getMaximumWindowBounds().
diff --git a/jdk/test/java/awt/Frame/MiscUndecorated/UndecoratedInitiallyIconified.java b/jdk/test/java/awt/Frame/MiscUndecorated/UndecoratedInitiallyIconified.java
index 5c89c5f..8caaa29 100644
--- a/jdk/test/java/awt/Frame/MiscUndecorated/UndecoratedInitiallyIconified.java
+++ b/jdk/test/java/awt/Frame/MiscUndecorated/UndecoratedInitiallyIconified.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 import java.awt.FlowLayout;
 /*
  * @test
+ * @key headful
  * @bug 4464710 7102299
  * @summary Recurring bug is, an undecorated JFrame cannot be set iconified
  *          before setVisible(true)
diff --git a/jdk/test/java/awt/Frame/NonEDT_GUI_DeadlockTest/NonEDT_GUI_Deadlock.html b/jdk/test/java/awt/Frame/NonEDT_GUI_DeadlockTest/NonEDT_GUI_Deadlock.html
index b0bc28d..809adc0 100644
--- a/jdk/test/java/awt/Frame/NonEDT_GUI_DeadlockTest/NonEDT_GUI_Deadlock.html
+++ b/jdk/test/java/awt/Frame/NonEDT_GUI_DeadlockTest/NonEDT_GUI_Deadlock.html
@@ -1,6 +1,6 @@
 <html>
 <!--
- Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 
 <!--  
   @test
+  @key headful
   @bug 4828019
   @summary Frame/Window deadlock
   @author yan@sparc.spb.su: area=
diff --git a/jdk/test/java/awt/Frame/ResizeAfterSetFont/ResizeAfterSetFont.java b/jdk/test/java/awt/Frame/ResizeAfterSetFont/ResizeAfterSetFont.java
index 56a9318..534cbd9 100644
--- a/jdk/test/java/awt/Frame/ResizeAfterSetFont/ResizeAfterSetFont.java
+++ b/jdk/test/java/awt/Frame/ResizeAfterSetFont/ResizeAfterSetFont.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 
 /*
  @test
+ @key headful
  @bug 7170655
  @summary Frame size does not change after changing font
  @author Jonathan Lu
diff --git a/jdk/test/java/awt/Frame/ShownOffScreenOnWin98/ShownOffScreenOnWin98Test.java b/jdk/test/java/awt/Frame/ShownOffScreenOnWin98/ShownOffScreenOnWin98Test.java
index b044ef5..caf90b0 100644
--- a/jdk/test/java/awt/Frame/ShownOffScreenOnWin98/ShownOffScreenOnWin98Test.java
+++ b/jdk/test/java/awt/Frame/ShownOffScreenOnWin98/ShownOffScreenOnWin98Test.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6477497
   @summary Windows drawn off-screen on Win98 if locationByPlatform is true
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/Frame/SlideNotResizableTest/SlideNotResizableTest.java b/jdk/test/java/awt/Frame/SlideNotResizableTest/SlideNotResizableTest.java
index b593818..7149f4c 100644
--- a/jdk/test/java/awt/Frame/SlideNotResizableTest/SlideNotResizableTest.java
+++ b/jdk/test/java/awt/Frame/SlideNotResizableTest/SlideNotResizableTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8032595
  * @summary setResizable(false) makes a frame slide down
  * @author Petr Pchelko
diff --git a/jdk/test/java/awt/Frame/UnfocusableMaximizedFrameResizablity/UnfocusableMaximizedFrameResizablity.java b/jdk/test/java/awt/Frame/UnfocusableMaximizedFrameResizablity/UnfocusableMaximizedFrameResizablity.java
index d34d573..e2f5a53 100644
--- a/jdk/test/java/awt/Frame/UnfocusableMaximizedFrameResizablity/UnfocusableMaximizedFrameResizablity.java
+++ b/jdk/test/java/awt/Frame/UnfocusableMaximizedFrameResizablity/UnfocusableMaximizedFrameResizablity.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4980161
   @summary Setting focusable window state to false makes the maximized frame resizable
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/FullScreen/8013581/bug8013581.java b/jdk/test/java/awt/FullScreen/8013581/bug8013581.java
index e8345da..4cdb180 100644
--- a/jdk/test/java/awt/FullScreen/8013581/bug8013581.java
+++ b/jdk/test/java/awt/FullScreen/8013581/bug8013581.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8013581
  * @summary [macosx] Key Bindings break with awt GraphicsEnvironment setFullScreenWindow
  * @author leonid.romanov@oracle.com
diff --git a/jdk/test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java b/jdk/test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java
index 5bb6931..809e7ff 100644
--- a/jdk/test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java
+++ b/jdk/test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java
@@ -23,6 +23,7 @@
 
 /*
  @test
+ @key headful
  @bug 6275887 6429971 6459792
  @summary Test that we don't crash when alt+tabbing in and out of
          fullscreen app
diff --git a/jdk/test/java/awt/FullScreen/BufferStrategyExceptionTest/BufferStrategyExceptionTest.java b/jdk/test/java/awt/FullScreen/BufferStrategyExceptionTest/BufferStrategyExceptionTest.java
index fa315fe..e9f5ce7 100644
--- a/jdk/test/java/awt/FullScreen/BufferStrategyExceptionTest/BufferStrategyExceptionTest.java
+++ b/jdk/test/java/awt/FullScreen/BufferStrategyExceptionTest/BufferStrategyExceptionTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6366813 6459844
  * @summary Tests that no exception is thrown if a frame is resized just
  * before we create a bufferStrategy
diff --git a/jdk/test/java/awt/FullScreen/DisplayChangeVITest/DisplayChangeVITest.java b/jdk/test/java/awt/FullScreen/DisplayChangeVITest/DisplayChangeVITest.java
index ae7ab9f..8e0e86d 100644
--- a/jdk/test/java/awt/FullScreen/DisplayChangeVITest/DisplayChangeVITest.java
+++ b/jdk/test/java/awt/FullScreen/DisplayChangeVITest/DisplayChangeVITest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6366359
  * @summary Test that we don't crash when changing from 8 to 16/32 bit modes
  * @author Dmitri.Trembovetski@Sun.COM area=FullScreen
diff --git a/jdk/test/java/awt/FullScreen/FullScreenInsets/FullScreenInsets.java b/jdk/test/java/awt/FullScreen/FullScreenInsets/FullScreenInsets.java
index 1a67afb..97cd75b 100644
--- a/jdk/test/java/awt/FullScreen/FullScreenInsets/FullScreenInsets.java
+++ b/jdk/test/java/awt/FullScreen/FullScreenInsets/FullScreenInsets.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,6 +35,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8003173 7019055
  * @summary Full-screen windows should have the proper insets.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/FullScreen/MultimonFullscreenTest/MultimonDeadlockTest.java b/jdk/test/java/awt/FullScreen/MultimonFullscreenTest/MultimonDeadlockTest.java
index c457245..3a14013 100644
--- a/jdk/test/java/awt/FullScreen/MultimonFullscreenTest/MultimonDeadlockTest.java
+++ b/jdk/test/java/awt/FullScreen/MultimonFullscreenTest/MultimonDeadlockTest.java
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8129116
   @summary Deadlock with multimonitor fullscreen windows.
   @run main/timeout=20 MultimonDeadlockTest
diff --git a/jdk/test/java/awt/FullScreen/NoResizeEventOnDMChangeTest/NoResizeEventOnDMChangeTest.java b/jdk/test/java/awt/FullScreen/NoResizeEventOnDMChangeTest/NoResizeEventOnDMChangeTest.java
index ba386d9..a6e635e 100644
--- a/jdk/test/java/awt/FullScreen/NoResizeEventOnDMChangeTest/NoResizeEventOnDMChangeTest.java
+++ b/jdk/test/java/awt/FullScreen/NoResizeEventOnDMChangeTest/NoResizeEventOnDMChangeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug 6646411
  * @summary Tests that full screen window and its children receive resize
             event when display mode changes
diff --git a/jdk/test/java/awt/FullScreen/NonExistentDisplayModeTest/NonExistentDisplayModeTest.java b/jdk/test/java/awt/FullScreen/NonExistentDisplayModeTest/NonExistentDisplayModeTest.java
index 5387391..24c037d 100644
--- a/jdk/test/java/awt/FullScreen/NonExistentDisplayModeTest/NonExistentDisplayModeTest.java
+++ b/jdk/test/java/awt/FullScreen/NonExistentDisplayModeTest/NonExistentDisplayModeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6430607
  * @summary Test that we throw an exception for incorrect display modes
  * @author Dmitri.Trembovetski@Sun.COM area=FullScreen
diff --git a/jdk/test/java/awt/FullScreen/SetFSWindow/FSFrame.java b/jdk/test/java/awt/FullScreen/SetFSWindow/FSFrame.java
index d283ee4..4a66768 100644
--- a/jdk/test/java/awt/FullScreen/SetFSWindow/FSFrame.java
+++ b/jdk/test/java/awt/FullScreen/SetFSWindow/FSFrame.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6240507 6662642
  * @summary verify that isFullScreenSupported and getFullScreenWindow work
  * correctly with and without a SecurityManager. Note that the test may fail
diff --git a/jdk/test/java/awt/GradientPaint/GradientTransformTest.java b/jdk/test/java/awt/GradientPaint/GradientTransformTest.java
index b197849..d3bffd6 100644
--- a/jdk/test/java/awt/GradientPaint/GradientTransformTest.java
+++ b/jdk/test/java/awt/GradientPaint/GradientTransformTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8023483
  * @summary tests if the transform-parameter is applied correctly when creating
  *          a gradient.
diff --git a/jdk/test/java/awt/GradientPaint/LinearColorSpaceGradientTest.java b/jdk/test/java/awt/GradientPaint/LinearColorSpaceGradientTest.java
index d4fa6f8..f331e56 100644
--- a/jdk/test/java/awt/GradientPaint/LinearColorSpaceGradientTest.java
+++ b/jdk/test/java/awt/GradientPaint/LinearColorSpaceGradientTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8023483
  * @summary tests wether the colorspace-parameter is applied correctly when
  *          creating a gradient.
diff --git a/jdk/test/java/awt/Graphics/CopyScaledArea/CopyScaledAreaTest.java b/jdk/test/java/awt/Graphics/CopyScaledArea/CopyScaledAreaTest.java
index 92d8540..733fc6f 100644
--- a/jdk/test/java/awt/Graphics/CopyScaledArea/CopyScaledAreaTest.java
+++ b/jdk/test/java/awt/Graphics/CopyScaledArea/CopyScaledAreaTest.java
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8069348
  * @summary SunGraphics2D.copyArea() does not properly work for scaled graphics
  * @modules java.desktop/sun.awt
diff --git a/jdk/test/java/awt/Graphics/LineClipTest.java b/jdk/test/java/awt/Graphics/LineClipTest.java
index da7bff7..49ac120 100644
--- a/jdk/test/java/awt/Graphics/LineClipTest.java
+++ b/jdk/test/java/awt/Graphics/LineClipTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug   4780022 4862193 7179526
  * @summary  Tests that clipped lines are drawn over the same pixels
  * as unclipped lines (within the clip bounds)
diff --git a/jdk/test/java/awt/Graphics2D/DrawString/DrawStrSuper.java b/jdk/test/java/awt/Graphics2D/DrawString/DrawStrSuper.java
index 977da20..72e5cf3 100644
--- a/jdk/test/java/awt/Graphics2D/DrawString/DrawStrSuper.java
+++ b/jdk/test/java/awt/Graphics2D/DrawString/DrawStrSuper.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6684056
  * @summary Super-scripted text needs to be positioned the same with
  *          drawString and TextLayout.
diff --git a/jdk/test/java/awt/Graphics2D/DrawString/LCDTextSrcEa.java b/jdk/test/java/awt/Graphics2D/DrawString/LCDTextSrcEa.java
index 74c228e..932f656 100644
--- a/jdk/test/java/awt/Graphics2D/DrawString/LCDTextSrcEa.java
+++ b/jdk/test/java/awt/Graphics2D/DrawString/LCDTextSrcEa.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6996867
  * @summary Render as LCD Text in SrcEa composite mode.
  */
diff --git a/jdk/test/java/awt/Graphics2D/DrawString/ScaledLCDTextMetrics.java b/jdk/test/java/awt/Graphics2D/DrawString/ScaledLCDTextMetrics.java
index 948160b..b34d4c5 100644
--- a/jdk/test/java/awt/Graphics2D/DrawString/ScaledLCDTextMetrics.java
+++ b/jdk/test/java/awt/Graphics2D/DrawString/ScaledLCDTextMetrics.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6685312
  * @summary Check advance of LCD text on a scaled graphics.
  */
diff --git a/jdk/test/java/awt/Graphics2D/DrawString/TextRenderingTest.java b/jdk/test/java/awt/Graphics2D/DrawString/TextRenderingTest.java
index 205cda9..2de16b8 100644
--- a/jdk/test/java/awt/Graphics2D/DrawString/TextRenderingTest.java
+++ b/jdk/test/java/awt/Graphics2D/DrawString/TextRenderingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,6 +36,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 7189452 8024767
  * @summary Check if source offset for text rendering is handled correctly
  *          (shouldn't see the text on a similarly colored background).
diff --git a/jdk/test/java/awt/Graphics2D/DrawString/XRenderElt254TextTest.java b/jdk/test/java/awt/Graphics2D/DrawString/XRenderElt254TextTest.java
index be825f2..6334453 100644
--- a/jdk/test/java/awt/Graphics2D/DrawString/XRenderElt254TextTest.java
+++ b/jdk/test/java/awt/Graphics2D/DrawString/XRenderElt254TextTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8028722
  * @summary tests wether drawString with 254 characters causes the xrender
  *          pipeline to hang.
diff --git a/jdk/test/java/awt/Graphics2D/FillTexturePaint/FillTexturePaint.java b/jdk/test/java/awt/Graphics2D/FillTexturePaint/FillTexturePaint.java
index 78cd398..b2e756d 100644
--- a/jdk/test/java/awt/Graphics2D/FillTexturePaint/FillTexturePaint.java
+++ b/jdk/test/java/awt/Graphics2D/FillTexturePaint/FillTexturePaint.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8000629
  * @summary TexturePaint areas shouldn't separates.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/Graphics2D/FlipDrawImage/FlipDrawImage.java b/jdk/test/java/awt/Graphics2D/FlipDrawImage/FlipDrawImage.java
index 00639d5..fd71196 100644
--- a/jdk/test/java/awt/Graphics2D/FlipDrawImage/FlipDrawImage.java
+++ b/jdk/test/java/awt/Graphics2D/FlipDrawImage/FlipDrawImage.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8000629
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/Graphics2D/TransformSetGet/TransformSetGet.java b/jdk/test/java/awt/Graphics2D/TransformSetGet/TransformSetGet.java
index e6662cd..c276789 100644
--- a/jdk/test/java/awt/Graphics2D/TransformSetGet/TransformSetGet.java
+++ b/jdk/test/java/awt/Graphics2D/TransformSetGet/TransformSetGet.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8000629
  * @summary Set/get transform should work on constrained graphics.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/GraphicsConfiguration/NormalizingTransformTest/NormalizingTransformTest.java b/jdk/test/java/awt/GraphicsConfiguration/NormalizingTransformTest/NormalizingTransformTest.java
index 0e5e46b..59a6810 100644
--- a/jdk/test/java/awt/GraphicsConfiguration/NormalizingTransformTest/NormalizingTransformTest.java
+++ b/jdk/test/java/awt/GraphicsConfiguration/NormalizingTransformTest/NormalizingTransformTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6373505
  * @summary Tests that the result of Toolkit.getScreenResolution() is
  * consistent with GraphicsConfiguration.getNormalizingTransform().
diff --git a/jdk/test/java/awt/GraphicsDevice/CheckDisplayModes.java b/jdk/test/java/awt/GraphicsDevice/CheckDisplayModes.java
index 719ee9b..8c03369 100644
--- a/jdk/test/java/awt/GraphicsDevice/CheckDisplayModes.java
+++ b/jdk/test/java/awt/GraphicsDevice/CheckDisplayModes.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8007146
  * @summary [macosx] Setting a display mode crashes JDK under VNC
  * @author Alexander Scherbatiy
diff --git a/jdk/test/java/awt/GraphicsDevice/CloneConfigsTest.java b/jdk/test/java/awt/GraphicsDevice/CloneConfigsTest.java
index bc80813..a817f99e 100644
--- a/jdk/test/java/awt/GraphicsDevice/CloneConfigsTest.java
+++ b/jdk/test/java/awt/GraphicsDevice/CloneConfigsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     6822057 7124400 8059848
  *
  * @summary Test verifies that list of supported graphics configurations
diff --git a/jdk/test/java/awt/GraphicsDevice/IncorrectDisplayModeExitFullscreen.java b/jdk/test/java/awt/GraphicsDevice/IncorrectDisplayModeExitFullscreen.java
index ad808c3..ce21bfb 100644
--- a/jdk/test/java/awt/GraphicsDevice/IncorrectDisplayModeExitFullscreen.java
+++ b/jdk/test/java/awt/GraphicsDevice/IncorrectDisplayModeExitFullscreen.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8019587
  * @author Sergey Bylokhov
  * @library ../../../lib/testlibrary/
diff --git a/jdk/test/java/awt/GraphicsEnvironment/LoadLock/GE_init3.java b/jdk/test/java/awt/GraphicsEnvironment/LoadLock/GE_init3.java
index 68a64f8..9ec9c05 100644
--- a/jdk/test/java/awt/GraphicsEnvironment/LoadLock/GE_init3.java
+++ b/jdk/test/java/awt/GraphicsEnvironment/LoadLock/GE_init3.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 7002839
  * @summary Static init deadlock Win32GraphicsEnvironment and WToolkit
  * @run main GE_init3
diff --git a/jdk/test/java/awt/GridBagLayout/GridBagLayoutIpadXYTest/GridBagLayoutIpadXYTest.html b/jdk/test/java/awt/GridBagLayout/GridBagLayoutIpadXYTest/GridBagLayoutIpadXYTest.html
index 122af17..33fa73e 100644
--- a/jdk/test/java/awt/GridBagLayout/GridBagLayoutIpadXYTest/GridBagLayoutIpadXYTest.html
+++ b/jdk/test/java/awt/GridBagLayout/GridBagLayoutIpadXYTest/GridBagLayoutIpadXYTest.html
@@ -1,7 +1,7 @@
 <html>
 <!--  
 
- Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
  questions.
 
   @test
+  @key headful
   @bug 5004032
   @summary GridBagConstraints.ipad(x|y) defined in a new way
   @author dav@sparc.spb.su area= 
diff --git a/jdk/test/java/awt/GridLayout/LayoutExtraGaps/LayoutExtraGaps.java b/jdk/test/java/awt/GridLayout/LayoutExtraGaps/LayoutExtraGaps.java
index 691e716..efeaaaf 100644
--- a/jdk/test/java/awt/GridLayout/LayoutExtraGaps/LayoutExtraGaps.java
+++ b/jdk/test/java/awt/GridLayout/LayoutExtraGaps/LayoutExtraGaps.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
    @test
+  @key headful
    @bug 4370316
    @summary GridLayout does not centre its component properly
     (summary was GridLayout does not fill its Container)
diff --git a/jdk/test/java/awt/Gtk/GtkVersionTest/GtkVersionTest.java b/jdk/test/java/awt/Gtk/GtkVersionTest/GtkVersionTest.java
new file mode 100644
index 0000000..cc327e3
--- /dev/null
+++ b/jdk/test/java/awt/Gtk/GtkVersionTest/GtkVersionTest.java
@@ -0,0 +1,78 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8156121
+ * @summary "Fail forward" fails for GTK3 if no GTK2 available
+ * @modules java.desktop/sun.awt
+ * @requires (os.family == "linux")
+ * @run main GtkVersionTest
+ */
+
+import sun.awt.UNIXToolkit;
+
+import java.awt.*;
+import java.io.*;
+
+public class GtkVersionTest {
+    public static class LoadGtk {
+        public static void main(String[] args) {
+            ((UNIXToolkit)Toolkit.getDefaultToolkit()).loadGTK();
+        }
+    }
+
+    public static void main(String[] args) throws Exception {
+        test(null, "2");
+        test("2", "2");
+        test("2.2", "2");
+        test("3", "3");
+    }
+
+    private static void test(String version, String expect) throws Exception {
+        System.out.println( "Test " +
+                (version == null ? "no" : " GTK" + version) + " preference.");
+        Process p = Runtime.getRuntime().exec(System.getProperty("java.home") +
+                "/bin/java " +
+                (version == null ? "" : "-Djdk.gtk.version=" + version) +
+                " -Djdk.gtk.verbose=true " +
+                "-XaddExports:java.desktop/sun.awt=ALL-UNNAMED " +
+                "-cp " + System.getProperty("java.class.path", ".") +
+                " GtkVersionTest$LoadGtk");
+        p.waitFor();
+
+        try (BufferedReader br = new BufferedReader(
+                new InputStreamReader(p.getErrorStream()))) {
+            String line;
+            while ((line = br.readLine()) != null) {
+                System.out.println(line);
+                if (line.contains("Looking for GTK" + expect + " library")) {
+                    return;
+                } else if (line.contains("Looking for GTK")) {
+                    break;
+                }
+            }
+            throw new RuntimeException("Wrong GTK library version: \n" + line);
+        }
+    }
+
+}
diff --git a/jdk/test/java/awt/Insets/CombinedTestApp1.java b/jdk/test/java/awt/Insets/CombinedTestApp1.java
index c7cfde9..998cc6e 100644
--- a/jdk/test/java/awt/Insets/CombinedTestApp1.java
+++ b/jdk/test/java/awt/Insets/CombinedTestApp1.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4068386
   @summary Insets are incorrect for Frame w/MenuBar
   @library ../regtesthelpers
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeForModalDialogTest/ConsumeForModalDialogTest.html b/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeForModalDialogTest/ConsumeForModalDialogTest.html
index 22906f1..d7495df 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeForModalDialogTest/ConsumeForModalDialogTest.html
+++ b/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeForModalDialogTest/ConsumeForModalDialogTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6391688
   @summary    Tests that next mnemonic KeyTyped is consumed for a modal dialog.
   @author     anton.tarasov@sun.com: area=awt.focus
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeNextMnemonicKeyTypedTest.html b/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeNextMnemonicKeyTypedTest.html
index 1533c64..d7c9645 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeNextMnemonicKeyTypedTest.html
+++ b/jdk/test/java/awt/KeyboardFocusmanager/ConsumeNextMnemonicKeyTypedTest/ConsumeNextMnemonicKeyTypedTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6346690
   @summary    Tests that key_typed is consumed after mnemonic key_pressed is handled for a menu item.
   @author     anton.tarasov@sun.com: area=awt-focus
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_AWT.java b/jdk/test/java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_AWT.java
index 4de107e..bef1eb6 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_AWT.java
+++ b/jdk/test/java/awt/KeyboardFocusmanager/DefaultPolicyChange/DefaultPolicyChange_AWT.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6741526
   @summary KeyboardFocusManager.setDefaultFocusTraversalPolicy(FocusTraversalPolicy) affects created components
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/ButtonActionKeyTest/ButtonActionKeyTest.html b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/ButtonActionKeyTest/ButtonActionKeyTest.html
index f231e33..545facb 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/ButtonActionKeyTest/ButtonActionKeyTest.html
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/ButtonActionKeyTest/ButtonActionKeyTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6396785
   @summary    Action key pressed on a button should be swallowed.
   @author     anton.tarasov@...: area=awt.focus
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogButtonTest/EnqueueWithDialogButtonTest.java b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogButtonTest/EnqueueWithDialogButtonTest.java
index 6b15e5b..a80d40b 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogButtonTest/EnqueueWithDialogButtonTest.java
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogButtonTest/EnqueueWithDialogButtonTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,12 +22,13 @@
  */
 
 /*
-@test
-@bug 4799136
-@summary Tests that type-ahead for dialog works and doesn't block program
-@author Dmitry.Cherepanov@SUN.COM area=awt.focus
-@run main EnqueueWithDialogButtonTest
-*/
+ * @test
+ * @key headful
+ * @bug 4799136
+ * @summary Tests that type-ahead for dialog works and doesn't block program
+ * @author Dmitry.Cherepanov@SUN.COM area=awt.focus
+ * @run main EnqueueWithDialogButtonTest
+ */
 
 import java.awt.*;
 import java.lang.reflect.InvocationTargetException;
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogTest/EnqueueWithDialogTest.java b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogTest/EnqueueWithDialogTest.java
index a194cc3..aabe564 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogTest/EnqueueWithDialogTest.java
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogTest/EnqueueWithDialogTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,12 +22,13 @@
  */
 
 /*
-@test
-@bug 4799136
-@summary Tests that type-ahead for dialog works and doesn't block program
-@author Dmitry.Cherepanov@SUN.COM area=awt.focus
-@run main EnqueueWithDialogTest
-*/
+ * @test
+ * @key headful
+ * @bug 4799136
+ * @summary Tests that type-ahead for dialog works and doesn't block program
+ * @author Dmitry.Cherepanov@SUN.COM area=awt.focus
+ * @run main EnqueueWithDialogTest
+ */
 
 import java.awt.*;
 import java.lang.reflect.InvocationTargetException;
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/FreezeTest/FreezeTest.java b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/FreezeTest/FreezeTest.java
index 8db5358..6c12506 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/FreezeTest/FreezeTest.java
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/FreezeTest/FreezeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,13 @@
  * questions.
  */
 /*
-@test
-@bug 4799136
-@summary Tests that type-ahead for dialog works and doesn't block program
-@author Dmitry.Cherepanov@SUN.COM area=awt.focus
-@run main FreezeTest
-*/
+ * @test
+ * @key headful
+ * @bug 4799136
+ * @summary Tests that type-ahead for dialog works and doesn't block program
+ * @author Dmitry.Cherepanov@SUN.COM area=awt.focus
+ * @run main FreezeTest
+ */
 
 import java.awt.*;
 import java.lang.reflect.InvocationTargetException;
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/MenuItemActivatedTest/MenuItemActivatedTest.html b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/MenuItemActivatedTest/MenuItemActivatedTest.html
index 52961b8..ddb52bf 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/MenuItemActivatedTest/MenuItemActivatedTest.html
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/MenuItemActivatedTest/MenuItemActivatedTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6396785
   @summary    MenuItem activated with space should swallow this space.
   @author     anton.tarasov@...: area=awt.focus
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/SubMenuShowTest/SubMenuShowTest.html b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/SubMenuShowTest/SubMenuShowTest.html
index b07fd87..572e182 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/SubMenuShowTest/SubMenuShowTest.html
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/SubMenuShowTest/SubMenuShowTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug        6380743
   @summary    Submenu should be shown by mnemonic key press.
   @author     anton.tarasov@...: area=awt.focus
diff --git a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html
index 854b842..7a89b9a 100644
--- a/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html
+++ b/jdk/test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4799136
   @summary Tests that type-ahead for dialog works and doesn't block program
   @author  area=awt.focus
diff --git a/jdk/test/java/awt/List/ActionAfterRemove/ActionAfterRemove.java b/jdk/test/java/awt/List/ActionAfterRemove/ActionAfterRemove.java
index 221f769..1ac4331 100644
--- a/jdk/test/java/awt/List/ActionAfterRemove/ActionAfterRemove.java
+++ b/jdk/test/java/awt/List/ActionAfterRemove/ActionAfterRemove.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6426186
   @summary XToolkit: List throws ArrayIndexOutOfBoundsException on double clicking when the List is empty
   @author Dmitry Cherepanov area=awt-list
diff --git a/jdk/test/java/awt/List/ActionEventTest/ActionEventTest.java b/jdk/test/java/awt/List/ActionEventTest/ActionEventTest.java
index f1cd8e3..a587e7b 100644
--- a/jdk/test/java/awt/List/ActionEventTest/ActionEventTest.java
+++ b/jdk/test/java/awt/List/ActionEventTest/ActionEventTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6191390
  * @summary Verify that ActionEvent is received with correct modifiers set.
  * @run main ActionEventTest
diff --git a/jdk/test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.html b/jdk/test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.html
index 65ee786..1994f97 100644
--- a/jdk/test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.html
+++ b/jdk/test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.html
@@ -1,6 +1,6 @@
 <html>
 <!--
-  Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+  Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
   DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  
   This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
  -->
 <!--  
   @test
+  @key headful
   @bug 6299858
   @summary PIT. Focused border not shown on List if selected item is removed, XToolkit
   @author Dmitry.Cherepanov@SUN.COM area=awt.list
diff --git a/jdk/test/java/awt/List/FocusEmptyListTest/FocusEmptyListTest.html b/jdk/test/java/awt/List/FocusEmptyListTest/FocusEmptyListTest.html
index 5bbd8f7..25b96af 100644
--- a/jdk/test/java/awt/List/FocusEmptyListTest/FocusEmptyListTest.html
+++ b/jdk/test/java/awt/List/FocusEmptyListTest/FocusEmptyListTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  
  This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6387275
   @summary List: the focus is at the top of the first item, XAWT
   @author Dmitry.Cherepanov@SUN.COM area=awt.list
diff --git a/jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java b/jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java
index c239b01..65cbc5f 100644
--- a/jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java
+++ b/jdk/test/java/awt/List/ItemEventTest/ItemEventTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,10 +22,11 @@
  */
 
 /*
- *  @test
- *  @bug 8033936
- *  @summary Verify that correct ItemEvent is received while selection &
- *           deselection of multi select List items.
+ * @test
+ * @key headful
+ * @bug 8033936
+ * @summary Verify that correct ItemEvent is received while selection &
+ *          deselection of multi select List items.
  */
 
 import java.awt.AWTException;
diff --git a/jdk/test/java/awt/List/KeyEventsTest/KeyEventsTest.html b/jdk/test/java/awt/List/KeyEventsTest/KeyEventsTest.html
index 255fc9e5e..2c90997 100644
--- a/jdk/test/java/awt/List/KeyEventsTest/KeyEventsTest.html
+++ b/jdk/test/java/awt/List/KeyEventsTest/KeyEventsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6190768 6190778
   @summary Tests that triggering events on AWT list by pressing CTRL + HOME, CTRL + END, PG-UP, PG-DOWN similar Motif behavior
   @author Dmitry.Cherepanov@SUN.COM area=awt.list
diff --git a/jdk/test/java/awt/List/ListGarbageCollectionTest/AwtListGarbageCollectionTest.java b/jdk/test/java/awt/List/ListGarbageCollectionTest/AwtListGarbageCollectionTest.java
index acf74a3..56ab900 100644
--- a/jdk/test/java/awt/List/ListGarbageCollectionTest/AwtListGarbageCollectionTest.java
+++ b/jdk/test/java/awt/List/ListGarbageCollectionTest/AwtListGarbageCollectionTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8040076
  * @summary AwtList not garbage collected
  * @run main/othervm -Xmx100m AwtListGarbageCollectionTest
diff --git a/jdk/test/java/awt/List/ListPeer/R2303044ListSelection.java b/jdk/test/java/awt/List/ListPeer/R2303044ListSelection.java
index d170fe0..d2aebbd 100644
--- a/jdk/test/java/awt/List/ListPeer/R2303044ListSelection.java
+++ b/jdk/test/java/awt/List/ListPeer/R2303044ListSelection.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @summary rdar://problem/2303044 List selection not set when peer is created
  * @summary com.apple.junit.java.awt.List;
  * @run main R2303044ListSelection
diff --git a/jdk/test/java/awt/List/ScrollOutside/ScrollOut.java b/jdk/test/java/awt/List/ScrollOutside/ScrollOut.java
index 6873dcf..705fcd3 100644
--- a/jdk/test/java/awt/List/ScrollOutside/ScrollOut.java
+++ b/jdk/test/java/awt/List/ScrollOutside/ScrollOut.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7036733
   @summary Regression : NullPointerException when scrolling horizontally on AWT List
   @author Andrei Dmitriev area=awt-list
diff --git a/jdk/test/java/awt/List/SingleModeDeselect/SingleModeDeselect.java b/jdk/test/java/awt/List/SingleModeDeselect/SingleModeDeselect.java
index c4452cd..f578be9 100644
--- a/jdk/test/java/awt/List/SingleModeDeselect/SingleModeDeselect.java
+++ b/jdk/test/java/awt/List/SingleModeDeselect/SingleModeDeselect.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6248040
   @summary List.deselect() de-selects the currently selected item regardless of the index, win32
   @author Dmitry Cherepanov area=awt.list
diff --git a/jdk/test/java/awt/Menu/NullMenuLabelTest/NullMenuLabelTest.java b/jdk/test/java/awt/Menu/NullMenuLabelTest/NullMenuLabelTest.java
index 5ae64a2..8617794 100644
--- a/jdk/test/java/awt/Menu/NullMenuLabelTest/NullMenuLabelTest.java
+++ b/jdk/test/java/awt/Menu/NullMenuLabelTest/NullMenuLabelTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,14 @@
  * questions.
  */
 
-/*      @test 1.5 98/07/23
-        @bug 4064202 4253466
-        @summary Test for Win32 NPE when MenuItem with null label added.
-        @author fred.ecks
-        @run main/othervm NullMenuLabelTest
-*/
+/*
+ * @test 1.5 98/07/23
+ * @key headful
+ * @bug 4064202 4253466
+ * @summary Test for Win32 NPE when MenuItem with null label added.
+ * @author fred.ecks
+ * @run main/othervm NullMenuLabelTest
+ */
 
 import java.awt.*;
 
diff --git a/jdk/test/java/awt/Menu/OpensWithNoGrab/OpensWithNoGrab.java b/jdk/test/java/awt/Menu/OpensWithNoGrab/OpensWithNoGrab.java
index 52f0165..b93e62c 100644
--- a/jdk/test/java/awt/Menu/OpensWithNoGrab/OpensWithNoGrab.java
+++ b/jdk/test/java/awt/Menu/OpensWithNoGrab/OpensWithNoGrab.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6354721
   @summary REG: Menu does not disappear when clicked, keeping Choice's drop-down open, XToolkit
   @author andrei.dmitriev: area=awt.menu
diff --git a/jdk/test/java/awt/MenuBar/DeadlockTest1/DeadlockTest1.java b/jdk/test/java/awt/MenuBar/DeadlockTest1/DeadlockTest1.java
index dc9677b..a9ca39c 100644
--- a/jdk/test/java/awt/MenuBar/DeadlockTest1/DeadlockTest1.java
+++ b/jdk/test/java/awt/MenuBar/DeadlockTest1/DeadlockTest1.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6990904
   @summary on oel5.5, Frame doesn't show if the Frame has only a MenuBar as its component.
   @author Andrei Dmitriev: area=awt-menubar
diff --git a/jdk/test/java/awt/MenuBar/RemoveHelpMenu/RemoveHelpMenu.java b/jdk/test/java/awt/MenuBar/RemoveHelpMenu/RemoveHelpMenu.java
index 870b6e6..76c541f 100644
--- a/jdk/test/java/awt/MenuBar/RemoveHelpMenu/RemoveHelpMenu.java
+++ b/jdk/test/java/awt/MenuBar/RemoveHelpMenu/RemoveHelpMenu.java
@@ -27,6 +27,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6475361
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java b/jdk/test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java
index b9f8cab..567ecd4 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,11 +33,12 @@
  * <p>See <a href="https://bugs.openjdk.java.net/browse/JDK-6768230">CR6768230</a> for details.
  */
 /*
-@test
-@bug 6768230
-@summary Mixing test for HierarchyBoundsListener ancestors
-@build FrameBorderCounter
-@run main HierarchyBoundsListenerMixingTest
+ * @test
+ * @key headful
+ * @bug 6768230
+ * @summary Mixing test for HierarchyBoundsListener ancestors
+ * @build FrameBorderCounter
+ * @run main HierarchyBoundsListenerMixingTest
  */
 public class HierarchyBoundsListenerMixingTest {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java
index 0d9e6ff..a41e342 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JButton
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JButtonInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JButton
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JButtonInGlassPaneOverlapping
  */
 public class JButtonInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java
index 127a3c4..4b4fda2 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JButton
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JButtonOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JButton
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JButtonOverlapping
  */
 public class JButtonOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java
index 972debe..b038f6a 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,15 +28,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JColorChooser
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JColorChooserOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JColorChooser
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JColorChooserOverlapping
  */
 public class JColorChooserOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java
index ea7d5fa..cc6649f 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -39,15 +39,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JComboBoxOverlapping
+ * @test
+ * @key headful
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JComboBoxOverlapping
  */
 public class JComboBoxOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java
index d1dfd71..cfc4184 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JEditorPaneInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JEditorPaneInGlassPaneOverlapping
  */
 public class JEditorPaneInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java
index d7e5ac3..e267942 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,15 +28,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JEditorPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JEditorPaneOverlapping
  */
 public class JEditorPaneOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneInternalFrameOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneInternalFrameOverlapping.java
index 9386881..bac8d81 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneInternalFrameOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneInternalFrameOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -40,15 +40,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@bug 6637655 6985776
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build Util
-@run main JGlassPaneInternalFrameOverlapping
+ * @test
+ * @key headful
+ * @bug 6637655 6985776
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build Util
+ * @run main JGlassPaneInternalFrameOverlapping
  */
 public class JGlassPaneInternalFrameOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneMoveOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneMoveOverlapping.java
index d4596f2..309b103 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneMoveOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JGlassPaneMoveOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,15 +41,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@bug 6637655 6981919
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build Util
-@run main JGlassPaneMoveOverlapping
+ * @test
+ * @key headful
+ * @bug 6637655 6981919
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build Util
+ * @run main JGlassPaneMoveOverlapping
  */
 public class JGlassPaneMoveOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java
index c7fb166..647be2b 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,15 +37,16 @@
  * <p>See <a href="http://monaco.sfbay.sun.com/detail.jsf?cr=6985399">CR6768230</a> for details and base class for test info.
  */
 /*
-@test
-@bug 6985399
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build Util
-@run main JInternalFrameMoveOverlapping
+ * @test
+ * @key headful
+ * @bug 6985399
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build Util
+ * @run main JInternalFrameMoveOverlapping
  */
 public class JInternalFrameMoveOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java
index 16dc79a..c5d1614 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,14 +37,15 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build Util
-@run main JInternalFrameOverlapping
+ * @test
+ * @key headful
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build Util
+ * @run main JInternalFrameOverlapping
  */
 public class JInternalFrameOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java
index 76336c7..e267583 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JLabelInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JLabelInGlassPaneOverlapping
  */
 public class JLabelInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java
index fe29e85..3df2eb6 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JLabelOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JLabelOverlapping
  */
 public class JLabelOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java
index 34d4771..89db27c 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JList
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JListInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JList
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JListInGlassPaneOverlapping
  */
 public class JListInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JListOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JListOverlapping.java
index c3ed67c..c4a8372 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JListOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JListOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,15 +28,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JList
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JListOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JList
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JListOverlapping
  */
 public class JListOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java
index 864c8f7..792831c 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,15 +44,16 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JMenuBarOverlapping
+ * @test
+ * @key headful
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JMenuBarOverlapping
  */
 public class JMenuBarOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java
index 02c0422..28ddcf3 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JPanel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JPanelInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JPanel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JPanelInGlassPaneOverlapping
  */
 public class JPanelInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java
index e6fe8e6..1731c1e 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JPanel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JPanelOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JPanel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JPanelOverlapping
  */
 public class JPanelOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java
index 10de3b9..d4b5028 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,15 +41,16 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JPopupMenuOverlapping
+ * @test
+ * @key headful
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JPopupMenuOverlapping
  */
 public class JPopupMenuOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java
index a741eac..5419dc8 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JProgressBar
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JProgressBarInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JProgressBar
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JProgressBarInGlassPaneOverlapping
  */
 public class JProgressBarInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java
index ad4400b..63bdc1f 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JProgressBar
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JProgressBarOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JProgressBar
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JProgressBarOverlapping
  */
 public class JProgressBarOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java
index 28a9370..a4952e3 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,15 +33,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JScrollBar
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JScrollBarInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JScrollBar
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JScrollBarInGlassPaneOverlapping
  */
 public class JScrollBarInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java
index 6f4f2c8..569de41 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,15 +32,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JScrollBar
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JScrollBarOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JScrollBar
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JScrollBarOverlapping
  */
 public class JScrollBarOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollPaneOverlapping.java
index 929b6a5..9278bda 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JScrollPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -39,14 +39,15 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@summary Overlapping test for javax.swing.JScrollPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build Util
-@run main JScrollPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Overlapping test for javax.swing.JScrollPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build Util
+ * @run main JScrollPaneOverlapping
  */
 public class JScrollPaneOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java
index c9d5693..2fa45d7 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JSlider
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JSliderInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JSlider
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JSliderInGlassPaneOverlapping
  */
 public class JSliderInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java
index aed5f97..8cb94b0 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JSlider
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JSliderOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JSlider
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JSliderOverlapping
  */
 public class JSliderOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java
index a346405..85fd56b 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,15 +32,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JSpinner
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JSpinnerInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JSpinner
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JSpinnerInGlassPaneOverlapping
  */
 public class JSpinnerInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java
index a9e6bca..7082fc2 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,15 +31,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JSpinner
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JSpinnerOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JSpinner
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JSpinnerOverlapping
  */
 public class JSpinnerOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java
index a5edd00..f0f07e7 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -45,15 +45,16 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@bug 6986109
-@summary Overlapping test for javax.swing.JSplitPane
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build Util
-@run main JSplitPaneOverlapping
+ * @test
+ * @key headful
+ * @bug 6986109
+ * @summary Overlapping test for javax.swing.JSplitPane
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build Util
+ * @run main JSplitPaneOverlapping
  */
 public class JSplitPaneOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java
index 871275a..e73e8c8 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,15 +32,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for JTable
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JTableInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for JTable
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JTableInGlassPaneOverlapping
  */
 public class JTableInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JTableOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JTableOverlapping.java
index e29fb93..76fc3a4 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JTableOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JTableOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,15 +28,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for JTable
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JTableOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for JTable
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JTableOverlapping
  */
 public class JTableOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java
index 6b8f707..ac14fcd 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JTextAreaInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JTextAreaInGlassPaneOverlapping
  */
 public class JTextAreaInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java
index cf0c9f1..8e4035f 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JTextAreaOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JTextAreaOverlapping
  */
 public class JTextAreaOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java
index de968ab..e6cc75c 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JTextFieldInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JTextFieldInGlassPaneOverlapping
  */
 public class JTextFieldInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java
index c627d14..133e25d 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JLabel
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JTextFieldOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JLabel
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JTextFieldOverlapping
  */
 public class JTextFieldOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java
index 876f219..324f701 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,15 +29,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JToggleButton
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JToggleButtonInGlassPaneOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JToggleButton
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JToggleButtonInGlassPaneOverlapping
  */
 public class JToggleButtonInGlassPaneOverlapping extends GlassPaneOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java
index 8045bf6..d90658b 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,15 +28,16 @@
  * <p>See base class for details.
  */
 /*
-@test
-@summary Simple Overlapping test for javax.swing.JToggleButton
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main JToggleButtonOverlapping
+ * @test
+ * @key headful
+ * @summary Simple Overlapping test for javax.swing.JToggleButton
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main JToggleButtonOverlapping
  */
 public class JToggleButtonOverlapping extends SimpleOverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/MixingFrameResizing.java b/jdk/test/java/awt/Mixing/AWT_Mixing/MixingFrameResizing.java
index e3b0242..3c8d416 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/MixingFrameResizing.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/MixingFrameResizing.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,16 +37,17 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@bug 6777370
-@summary Issues when resizing the JFrame with HW components
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib  ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main MixingFrameResizing
+ * @test
+ * @key headful
+ * @bug 6777370
+ * @summary Issues when resizing the JFrame with HW components
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib  ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main MixingFrameResizing
  */
 public class MixingFrameResizing extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java b/jdk/test/java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java
index 4b94b4f..72dd652 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,14 +33,15 @@
  * <p>See <a href="https://bugs.openjdk.java.net/browse/JDK-6786219">JDK-6786219</a> for details
  */
 /*
-@test
-@bug 6786219
-@summary Issues when resizing the frame after mixing of heavy weight & light weight components
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library ../../regtesthelpers
-@build Util
-@build FrameBorderCounter
-@run main MixingPanelsResizing
+ * @test
+ * @key headful
+ * @bug 6786219
+ * @summary Issues when resizing the frame after mixing of heavy weight & light weight components
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library ../../regtesthelpers
+ * @build Util
+ * @build FrameBorderCounter
+ * @run main MixingPanelsResizing
  */
 public class MixingPanelsResizing {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlapping.java
index bed5517..1074692 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,15 +42,16 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@bug 6776743
-@summary Opaque overlapping test for each AWT component
-@library ../../regtesthelpers
-@modules java.desktop/com.sun.awt
-         java.desktop/java.awt.peer
-         java.desktop/sun.awt
-@build Util
-@run main OpaqueOverlapping
+ * @test
+ * @key headful
+ * @bug 6776743
+ * @summary Opaque overlapping test for each AWT component
+ * @library ../../regtesthelpers
+ * @modules java.desktop/com.sun.awt
+ *          java.desktop/java.awt.peer
+ *          java.desktop/sun.awt
+ * @build Util
+ * @run main OpaqueOverlapping
  */
 public class OpaqueOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java b/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java
index 9aceaed..4a3b836 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,15 +28,16 @@
  * This test case was separated from {@link OpaqueOverlapping} due to CR 6994264 (Choice autohides dropdown on Solaris 10)
  */
 /*
-@test
-@bug 6994264
-@summary Opaque overlapping test for Choice AWT component
-@library ../../regtesthelpers
-@modules java.desktop/com.sun.awt
-         java.desktop/java.awt.peer
-         java.desktop/sun.awt
-@build Util
-@run main OpaqueOverlappingChoice
+ * @test
+ * @key headful
+ * @bug 6994264
+ * @summary Opaque overlapping test for Choice AWT component
+ * @library ../../regtesthelpers
+ * @modules java.desktop/com.sun.awt
+ *          java.desktop/java.awt.peer
+ *          java.desktop/sun.awt
+ * @build Util
+ * @run main OpaqueOverlappingChoice
  */
 public class OpaqueOverlappingChoice extends OpaqueOverlapping  {
     {
diff --git a/jdk/test/java/awt/Mixing/AWT_Mixing/ViewportOverlapping.java b/jdk/test/java/awt/Mixing/AWT_Mixing/ViewportOverlapping.java
index 17e6c55..d291530 100644
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/ViewportOverlapping.java
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/ViewportOverlapping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -46,16 +46,17 @@
  * <p>See base class for test info.
  */
 /*
-@test
-@bug 6778882
-@summary Viewport overlapping test for each AWT component
-@author sergey.grinev@oracle.com: area=awt.mixing
-@library /java/awt/patchlib ../../regtesthelpers
-@modules java.desktop/sun.awt
-         java.desktop/java.awt.peer
-@build java.desktop/java.awt.Helper
-@build Util
-@run main ViewportOverlapping
+ * @test
+ * @key headful
+ * @bug 6778882
+ * @summary Viewport overlapping test for each AWT component
+ * @author sergey.grinev@oracle.com: area=awt.mixing
+ * @library /java/awt/patchlib ../../regtesthelpers
+ * @modules java.desktop/sun.awt
+ *          java.desktop/java.awt.peer
+ * @build java.desktop/java.awt.Helper
+ * @build Util
+ * @run main ViewportOverlapping
  */
 public class ViewportOverlapping extends OverlappingTestBase {
 
diff --git a/jdk/test/java/awt/Mixing/HWDisappear.java b/jdk/test/java/awt/Mixing/HWDisappear.java
index e57f62c..95ff04b 100644
--- a/jdk/test/java/awt/Mixing/HWDisappear.java
+++ b/jdk/test/java/awt/Mixing/HWDisappear.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6769511
   @summary AWT components are invisible for a while after frame is moved & menu items are visible
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/JButtonInGlassPane.java b/jdk/test/java/awt/Mixing/JButtonInGlassPane.java
index a7469be..f9a2305 100644
--- a/jdk/test/java/awt/Mixing/JButtonInGlassPane.java
+++ b/jdk/test/java/awt/Mixing/JButtonInGlassPane.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6779670
   @summary Tests if a LW components in the glass pane affects HW in the content pane
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/LWComboBox.java b/jdk/test/java/awt/Mixing/LWComboBox.java
index 223ef3e..65d16a4 100644
--- a/jdk/test/java/awt/Mixing/LWComboBox.java
+++ b/jdk/test/java/awt/Mixing/LWComboBox.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6637655
   @summary Tests whether a LW combobox correctly overlaps a HW button
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/LWPopupMenu.java b/jdk/test/java/awt/Mixing/LWPopupMenu.java
index fa23911..75ecaa7 100644
--- a/jdk/test/java/awt/Mixing/LWPopupMenu.java
+++ b/jdk/test/java/awt/Mixing/LWPopupMenu.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4811096
   @summary Tests whether a LW menu correctly overlaps a HW button
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/MixingInHwPanel.java b/jdk/test/java/awt/Mixing/MixingInHwPanel.java
index 135110e..0863f91 100644
--- a/jdk/test/java/awt/Mixing/MixingInHwPanel.java
+++ b/jdk/test/java/awt/Mixing/MixingInHwPanel.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6829858
   @summary Mixing should work inside heavyweight containers
   @author anthony.petrov@sun.com: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/MixingOnDialog.java b/jdk/test/java/awt/Mixing/MixingOnDialog.java
index 6225dab..fc80764 100644
--- a/jdk/test/java/awt/Mixing/MixingOnDialog.java
+++ b/jdk/test/java/awt/Mixing/MixingOnDialog.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4811096
   @summary Tests whether mixing works on Dialogs
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/MixingOnShrinkingHWButton.java b/jdk/test/java/awt/Mixing/MixingOnShrinkingHWButton.java
index c1a547f..2c100cb 100644
--- a/jdk/test/java/awt/Mixing/MixingOnShrinkingHWButton.java
+++ b/jdk/test/java/awt/Mixing/MixingOnShrinkingHWButton.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6777320
   @summary PIT : Canvas is not fully painted on the internal frame & internal frame goes behind the canvas
   @author dmitry.cherepanov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/NonOpaqueInternalFrame.java b/jdk/test/java/awt/Mixing/NonOpaqueInternalFrame.java
index 86fb968..7d2065b 100644
--- a/jdk/test/java/awt/Mixing/NonOpaqueInternalFrame.java
+++ b/jdk/test/java/awt/Mixing/NonOpaqueInternalFrame.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %W% %E%
+  @key headful
   @bug 6768332
   @summary Tests whether internal frames are always considered opaque
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/OpaqueTest.java b/jdk/test/java/awt/Mixing/OpaqueTest.java
index 3fc2ccb..2b4781b 100644
--- a/jdk/test/java/awt/Mixing/OpaqueTest.java
+++ b/jdk/test/java/awt/Mixing/OpaqueTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4811096
   @summary Tests whether opaque and non-opaque components mix correctly
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/OverlappingButtons.java b/jdk/test/java/awt/Mixing/OverlappingButtons.java
index 53e6fb5..b37d820 100644
--- a/jdk/test/java/awt/Mixing/OverlappingButtons.java
+++ b/jdk/test/java/awt/Mixing/OverlappingButtons.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4811096
   @summary Tests whether overlapping buttons mix correctly
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/ValidBounds.java b/jdk/test/java/awt/Mixing/ValidBounds.java
index e9001bb..3c1f569 100644
--- a/jdk/test/java/awt/Mixing/ValidBounds.java
+++ b/jdk/test/java/awt/Mixing/ValidBounds.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6637796
   @summary Shape should be correctly updated on invalid components
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/Validating.java b/jdk/test/java/awt/Mixing/Validating.java
index d5eaaf9..ab98d4e 100644
--- a/jdk/test/java/awt/Mixing/Validating.java
+++ b/jdk/test/java/awt/Mixing/Validating.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6682046
   @summary Mixing code does not always recalculate shapes correctly when resizing components
   @author anthony.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Mixing/setComponentZOrder.java b/jdk/test/java/awt/Mixing/setComponentZOrder.java
index 47a4feb..a984ba4 100644
--- a/jdk/test/java/awt/Mixing/setComponentZOrder.java
+++ b/jdk/test/java/awt/Mixing/setComponentZOrder.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6589530
   @summary Mixing code should correctly handle insertion of components with setComponentZOrder.
   @author antohny.petrov@...: area=awt.mixing
diff --git a/jdk/test/java/awt/Modal/LWModalTest/LWModalTest.java b/jdk/test/java/awt/Modal/LWModalTest/LWModalTest.java
index 272285e..dd7829b 100644
--- a/jdk/test/java/awt/Modal/LWModalTest/LWModalTest.java
+++ b/jdk/test/java/awt/Modal/LWModalTest/LWModalTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6178755
   @summary The test checks that Container's method startLWModal
 and stopLWModal work correctly. The test scenario is very close
diff --git a/jdk/test/java/awt/Modal/ModalDialogOrderingTest/ModalDialogOrderingTest.java b/jdk/test/java/awt/Modal/ModalDialogOrderingTest/ModalDialogOrderingTest.java
index 6370d14..f9932eb 100644
--- a/jdk/test/java/awt/Modal/ModalDialogOrderingTest/ModalDialogOrderingTest.java
+++ b/jdk/test/java/awt/Modal/ModalDialogOrderingTest/ModalDialogOrderingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8008728
  * @summary [macosx] Swing. JDialog. Modal dialog goes to background
  * @author Alexandr Scherbatiy
diff --git a/jdk/test/java/awt/Modal/ModalitySettingsTest/ModalitySettingsTest.java b/jdk/test/java/awt/Modal/ModalitySettingsTest/ModalitySettingsTest.java
index 614b32c..3217ee9 100644
--- a/jdk/test/java/awt/Modal/ModalitySettingsTest/ModalitySettingsTest.java
+++ b/jdk/test/java/awt/Modal/ModalitySettingsTest/ModalitySettingsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8047367
  * @summary Check modality settings for Window and Dialog.
  *
diff --git a/jdk/test/java/awt/Modal/NpeOnClose/NpeOnCloseTest.java b/jdk/test/java/awt/Modal/NpeOnClose/NpeOnCloseTest.java
index 4d92e27..07e6212 100644
--- a/jdk/test/java/awt/Modal/NpeOnClose/NpeOnCloseTest.java
+++ b/jdk/test/java/awt/Modal/NpeOnClose/NpeOnCloseTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6547881
   @summary NPE when closing modal dialog
   @author Oleg Sukhodolsky: area=awt.modal
diff --git a/jdk/test/java/awt/Modal/SupportedTest/SupportedTest.java b/jdk/test/java/awt/Modal/SupportedTest/SupportedTest.java
index ed8e197..dbb971d 100644
--- a/jdk/test/java/awt/Modal/SupportedTest/SupportedTest.java
+++ b/jdk/test/java/awt/Modal/SupportedTest/SupportedTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6520635
   @summary Test that modality and modal exclusion types are handled
 correctly according Toolkit.isModalityTypeSupported() and
diff --git a/jdk/test/java/awt/Mouse/ExtraMouseClick/ExtraMouseClick.html b/jdk/test/java/awt/Mouse/ExtraMouseClick/ExtraMouseClick.html
index 91eec92..b7580c8 100644
--- a/jdk/test/java/awt/Mouse/ExtraMouseClick/ExtraMouseClick.html
+++ b/jdk/test/java/awt/Mouse/ExtraMouseClick/ExtraMouseClick.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 5039416 6404008
   @summary REGRESSION: Extra mouse click dispatched after press-drag- release sequence.
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java b/jdk/test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java
index e519d3d..3393def 100644
--- a/jdk/test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java
+++ b/jdk/test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java
@@ -23,6 +23,7 @@
 
 /*
  @test
+ @key headful
  @bug 6176814 8132766
  @summary Metalworks frame maximizes after the move
  @run main MaximizedFrameTest
diff --git a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/ExtraButtonDrag.java b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/ExtraButtonDrag.java
index 65ce4a0..c98587f 100644
--- a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/ExtraButtonDrag.java
+++ b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/ExtraButtonDrag.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that drag events are coming for every button if the property is set to true
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersInKeyEvent.java b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersInKeyEvent.java
index 54dfc46..2955405 100644
--- a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersInKeyEvent.java
+++ b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersInKeyEvent.java
@@ -35,6 +35,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8143054
  */
 public final class MouseModifiersInKeyEvent {
diff --git a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java
index a6c4019..ecb0647 100644
--- a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java
+++ b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that modifiers are correct for extra buttons
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java
index e85e455..3365b92 100644
--- a/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java
+++ b/jdk/test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that modifiers are correct for standard (1, 2, 3, wheel) mouse buttons
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Mouse/MouseWheelAbsXY/MouseWheelAbsXY.java b/jdk/test/java/awt/Mouse/MouseWheelAbsXY/MouseWheelAbsXY.java
index f112132..1730e44 100644
--- a/jdk/test/java/awt/Mouse/MouseWheelAbsXY/MouseWheelAbsXY.java
+++ b/jdk/test/java/awt/Mouse/MouseWheelAbsXY/MouseWheelAbsXY.java
@@ -34,6 +34,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6778087
  */
 public final class MouseWheelAbsXY {
diff --git a/jdk/test/java/awt/Mouse/TitleBarDoubleClick/TitleBarDoubleClick.html b/jdk/test/java/awt/Mouse/TitleBarDoubleClick/TitleBarDoubleClick.html
index 62cbd1c..724a8b5 100644
--- a/jdk/test/java/awt/Mouse/TitleBarDoubleClick/TitleBarDoubleClick.html
+++ b/jdk/test/java/awt/Mouse/TitleBarDoubleClick/TitleBarDoubleClick.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4664415
   @summary Test that double clicking the titlebar does not send RELEASE/CLICKED
   @library    ../../regtesthelpers
diff --git a/jdk/test/java/awt/MouseInfo/GetPointerInfoTest.java b/jdk/test/java/awt/MouseInfo/GetPointerInfoTest.java
index c812cce..abe4033 100644
--- a/jdk/test/java/awt/MouseInfo/GetPointerInfoTest.java
+++ b/jdk/test/java/awt/MouseInfo/GetPointerInfoTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @summary unit test for getPointerInfo() from MouseInfo class
   @author dav@sparc.spb.su: area=
   @bug 4009555
diff --git a/jdk/test/java/awt/MouseInfo/MultiscreenPointerInfo.java b/jdk/test/java/awt/MouseInfo/MultiscreenPointerInfo.java
index 288ab4b..eae54c7 100644
--- a/jdk/test/java/awt/MouseInfo/MultiscreenPointerInfo.java
+++ b/jdk/test/java/awt/MouseInfo/MultiscreenPointerInfo.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @summary unit test for getPointerInfo() from MouseInfo class
   @author prs@sparc.spb.su: area=
   @bug 4009555
diff --git a/jdk/test/java/awt/MouseInfo/PointerInfoCrashTest.java b/jdk/test/java/awt/MouseInfo/PointerInfoCrashTest.java
index 8221bb8..1465a66 100644
--- a/jdk/test/java/awt/MouseInfo/PointerInfoCrashTest.java
+++ b/jdk/test/java/awt/MouseInfo/PointerInfoCrashTest.java
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8143316
  * @modules java.desktop/java.awt.peer
  *          java.desktop/sun.awt
diff --git a/jdk/test/java/awt/Multiscreen/MouseEventTest/MouseEventTest.java b/jdk/test/java/awt/Multiscreen/MouseEventTest/MouseEventTest.java
index 361d01b..45d9aa5 100644
--- a/jdk/test/java/awt/Multiscreen/MouseEventTest/MouseEventTest.java
+++ b/jdk/test/java/awt/Multiscreen/MouseEventTest/MouseEventTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8017472
   @summary MouseEvent has wrong coordinates when using multiple monitors
   @run main MouseEventTest
diff --git a/jdk/test/java/awt/Multiscreen/MultiScreenInsetsTest/MultiScreenInsetsTest.java b/jdk/test/java/awt/Multiscreen/MultiScreenInsetsTest/MultiScreenInsetsTest.java
index 179dfba..cd246d0 100644
--- a/jdk/test/java/awt/Multiscreen/MultiScreenInsetsTest/MultiScreenInsetsTest.java
+++ b/jdk/test/java/awt/Multiscreen/MultiScreenInsetsTest/MultiScreenInsetsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8020443
   @summary Frame is not created on the specified GraphicsDevice with two
 monitors
diff --git a/jdk/test/java/awt/Multiscreen/MultiScreenLocationTest/MultiScreenLocationTest.java b/jdk/test/java/awt/Multiscreen/MultiScreenLocationTest/MultiScreenLocationTest.java
index 6937a10..2d75118 100644
--- a/jdk/test/java/awt/Multiscreen/MultiScreenLocationTest/MultiScreenLocationTest.java
+++ b/jdk/test/java/awt/Multiscreen/MultiScreenLocationTest/MultiScreenLocationTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8013116
   @summary Robot moves mouse to point which differs from set in mouseMove on
  Unity shell
diff --git a/jdk/test/java/awt/Multiscreen/UpdateGCTest/UpdateGCTest.java b/jdk/test/java/awt/Multiscreen/UpdateGCTest/UpdateGCTest.java
index 2db7ee8..88491a9 100644
--- a/jdk/test/java/awt/Multiscreen/UpdateGCTest/UpdateGCTest.java
+++ b/jdk/test/java/awt/Multiscreen/UpdateGCTest/UpdateGCTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4452373 6567564
   @summary Tests that all the child and toplevel components have
 their GraphicsConfiguration updated when the window moves from
diff --git a/jdk/test/java/awt/Multiscreen/WPanelPeerPerf/WPanelPeerPerf.java b/jdk/test/java/awt/Multiscreen/WPanelPeerPerf/WPanelPeerPerf.java
index ea5796a..a8af744 100644
--- a/jdk/test/java/awt/Multiscreen/WPanelPeerPerf/WPanelPeerPerf.java
+++ b/jdk/test/java/awt/Multiscreen/WPanelPeerPerf/WPanelPeerPerf.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  @test
+ @key headful
  @bug 5085626
  @summary Exponential performance regression in AWT components (multiple mon)
  @run main WPanelPeerPerf
diff --git a/jdk/test/java/awt/Multiscreen/WindowGCChangeTest/WindowGCChangeTest.html b/jdk/test/java/awt/Multiscreen/WindowGCChangeTest/WindowGCChangeTest.html
index b97ab6b..738439a 100644
--- a/jdk/test/java/awt/Multiscreen/WindowGCChangeTest/WindowGCChangeTest.html
+++ b/jdk/test/java/awt/Multiscreen/WindowGCChangeTest/WindowGCChangeTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4868278
   @summary Tests that GraphicsConfig for invisible (peerless) windows is
 updated after showing the window
diff --git a/jdk/test/java/awt/Paint/ButtonRepaint.java b/jdk/test/java/awt/Paint/ButtonRepaint.java
index 1b13ac3..77cd1a4 100644
--- a/jdk/test/java/awt/Paint/ButtonRepaint.java
+++ b/jdk/test/java/awt/Paint/ButtonRepaint.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7090424
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/Paint/CheckboxRepaint.java b/jdk/test/java/awt/Paint/CheckboxRepaint.java
index f4d7d99..409c11f 100644
--- a/jdk/test/java/awt/Paint/CheckboxRepaint.java
+++ b/jdk/test/java/awt/Paint/CheckboxRepaint.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7090424
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java b/jdk/test/java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java
index 186b572..6d9dd73 100644
--- a/jdk/test/java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java
+++ b/jdk/test/java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java
@@ -1,5 +1,6 @@
+
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,10 +22,12 @@
  * questions.
  */
 
-/* @test
-   @bug 8139581
-   @summary AWT components are not drawn after removal and addition to a container
-   @author Anton Litvinov
+/*
+ * @test
+ * @key headful
+ * @bug 8139581
+ * @summary AWT components are not drawn after removal and addition to a container
+ * @author Anton Litvinov
  */
 
 import java.awt.Button;
diff --git a/jdk/test/java/awt/Paint/LabelRepaint.java b/jdk/test/java/awt/Paint/LabelRepaint.java
index b632595..7131f6d 100644
--- a/jdk/test/java/awt/Paint/LabelRepaint.java
+++ b/jdk/test/java/awt/Paint/LabelRepaint.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7090424
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/Paint/ListRepaint.java b/jdk/test/java/awt/Paint/ListRepaint.java
index fd96e76..6a5df92 100644
--- a/jdk/test/java/awt/Paint/ListRepaint.java
+++ b/jdk/test/java/awt/Paint/ListRepaint.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7090424
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/java/awt/PrintJob/MultipleEnd/MultipleEnd.java b/jdk/test/java/awt/PrintJob/MultipleEnd/MultipleEnd.java
index 97ddd6f..b115e8d 100644
--- a/jdk/test/java/awt/PrintJob/MultipleEnd/MultipleEnd.java
+++ b/jdk/test/java/awt/PrintJob/MultipleEnd/MultipleEnd.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4112758
  * @summary Checks that a second invocation of PrintJob.end() does not cause
  * an exception or segmentation violation.
diff --git a/jdk/test/java/awt/PrintJob/PrintArcTest/PrintArcTest.java b/jdk/test/java/awt/PrintJob/PrintArcTest/PrintArcTest.java
index b6b3caa..15cf121 100644
--- a/jdk/test/java/awt/PrintJob/PrintArcTest/PrintArcTest.java
+++ b/jdk/test/java/awt/PrintJob/PrintArcTest/PrintArcTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,11 +22,12 @@
  */
 
 /*
-   @test
-   @bug 4105609
-   @summary Test printing of drawArc preceded by drawString
-   @author robi.khan
-*/
+ * @test
+ * @key headful
+ * @bug 4105609
+ * @summary Test printing of drawArc preceded by drawString
+ * @author robi.khan
+ */
 
 import java.awt.*;
 import java.awt.event.*;
diff --git a/jdk/test/java/awt/PrintJob/PrinterException.java b/jdk/test/java/awt/PrintJob/PrinterException.java
index e202c00..32fa544 100644
--- a/jdk/test/java/awt/PrintJob/PrinterException.java
+++ b/jdk/test/java/awt/PrintJob/PrinterException.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,7 +22,7 @@
  */
 /*
  * @test
- * @bug 7161283
+ * @bug 7161283 8158520
  * @summary  Toolkit.getPrintJob throws NPE if no printer available
  * @run main PrinterException
  */
@@ -30,9 +30,19 @@
 import java.awt.JobAttributes;
 import java.awt.PrintJob;
 import java.awt.Toolkit;
+import java.awt.Robot;
+import java.awt.event.KeyEvent;
 
 public class PrinterException {
-    public static void main(String[] args) {
+
+    public static void main(String[] args) throws Exception {
+        Robot robot = new Robot();
+        Thread t = new Thread (() -> {
+            robot.waitForIdle();
+            robot.delay(2000);
+            robot.keyPress(KeyEvent.VK_ESCAPE);
+            robot.keyRelease(KeyEvent.VK_ESCAPE);
+           });
         Toolkit tk = Toolkit.getDefaultToolkit();
         PrintJob pj = null;
 
@@ -40,12 +50,19 @@
         JobAttributes ja = new JobAttributes(1,
                 java.awt.JobAttributes.DefaultSelectionType.ALL,
                 JobAttributes.DestinationType.FILE, JobAttributes.DialogType.NATIVE,
-                "", Integer.MAX_VALUE, 1,
+                "filename.ps", Integer.MAX_VALUE, 1,
                 JobAttributes.MultipleDocumentHandlingType.SEPARATE_DOCUMENTS_UNCOLLATED_COPIES,
                  pageRange, "", JobAttributes.SidesType.ONE_SIDED);
+
         Frame testFrame = new Frame("print");
-        if (tk != null) {
-            pj = tk.getPrintJob(testFrame, null, ja, null);
+        try {
+            if (tk != null) {
+                t.start();
+                pj = tk.getPrintJob(testFrame, null, ja, null);
+            }
+        } finally {
+            testFrame.dispose();
         }
     }
+
 }
diff --git a/jdk/test/java/awt/PrintJob/QuoteAndBackslashTest/QuoteAndBackslashTest.java b/jdk/test/java/awt/PrintJob/QuoteAndBackslashTest/QuoteAndBackslashTest.java
index e784791..dcc720d 100644
--- a/jdk/test/java/awt/PrintJob/QuoteAndBackslashTest/QuoteAndBackslashTest.java
+++ b/jdk/test/java/awt/PrintJob/QuoteAndBackslashTest/QuoteAndBackslashTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4040668
  * @summary Checks that banner titles which contain double quotation marks
  * or backslashes still print correctly.
diff --git a/jdk/test/java/awt/PrintJob/RoundedRectTest/RoundedRectTest.java b/jdk/test/java/awt/PrintJob/RoundedRectTest/RoundedRectTest.java
index 5668cb9..a8af7b5 100644
--- a/jdk/test/java/awt/PrintJob/RoundedRectTest/RoundedRectTest.java
+++ b/jdk/test/java/awt/PrintJob/RoundedRectTest/RoundedRectTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4061440
  * @summary Checks that rounded rectangles print correctly.
  * @author dpm
diff --git a/jdk/test/java/awt/PrintJob/Security/SecurityDialogTest.java b/jdk/test/java/awt/PrintJob/Security/SecurityDialogTest.java
index 295ad8c..3bda65e 100644
--- a/jdk/test/java/awt/PrintJob/Security/SecurityDialogTest.java
+++ b/jdk/test/java/awt/PrintJob/Security/SecurityDialogTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6195901 6195923 6195928 6195933 6491273 6888734
  * @summary No SecurityException should be thrown when printing to a file
             using the given policy.
diff --git a/jdk/test/java/awt/Robot/CtorTest/CtorTest.java b/jdk/test/java/awt/Robot/CtorTest/CtorTest.java
index 8a02441..1b78166 100644
--- a/jdk/test/java/awt/Robot/CtorTest/CtorTest.java
+++ b/jdk/test/java/awt/Robot/CtorTest/CtorTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6855323
   @summary  Robot(GraphicsDevice) constructor initializes LEGAL_BUTTON_MASK variable improperly
   @author Dmitry Cherepanov area=awt.robot
diff --git a/jdk/test/java/awt/Robot/RobotExtraButton/RobotExtraButton.java b/jdk/test/java/awt/Robot/RobotExtraButton/RobotExtraButton.java
index 5bc8c1f..21d28d4 100644
--- a/jdk/test/java/awt/Robot/RobotExtraButton/RobotExtraButton.java
+++ b/jdk/test/java/awt/Robot/RobotExtraButton/RobotExtraButton.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that robot could accept extra buttons
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Robot/RobotWheelTest/RobotWheelTest.java b/jdk/test/java/awt/Robot/RobotWheelTest/RobotWheelTest.java
index 5a0efd2..7f52ae9 100644
--- a/jdk/test/java/awt/Robot/RobotWheelTest/RobotWheelTest.java
+++ b/jdk/test/java/awt/Robot/RobotWheelTest/RobotWheelTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /*
  * @test 1.2 98/08/05
+ * @key headful
  * @bug 4373478 8079255
  * @summary Test mouse wheel functionality of Robot
  * @author bchristi: area=Robot
diff --git a/jdk/test/java/awt/ScrollPane/ScrollPanePreferredSize/ScrollPanePreferredSize.java b/jdk/test/java/awt/ScrollPane/ScrollPanePreferredSize/ScrollPanePreferredSize.java
index 02a84e8..7fee9f9 100644
--- a/jdk/test/java/awt/ScrollPane/ScrollPanePreferredSize/ScrollPanePreferredSize.java
+++ b/jdk/test/java/awt/ScrollPane/ScrollPanePreferredSize/ScrollPanePreferredSize.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7124213
  * @author Sergey Bylokhov
  * @library ../../../../lib/testlibrary/
diff --git a/jdk/test/java/awt/ScrollPane/bug8077409Test.java b/jdk/test/java/awt/ScrollPane/bug8077409Test.java
index 6d03a7c..65d8da6 100644
--- a/jdk/test/java/awt/ScrollPane/bug8077409Test.java
+++ b/jdk/test/java/awt/ScrollPane/bug8077409Test.java
@@ -21,12 +21,14 @@
  * questions.
  */
 
-/* @test
-   @bug 8077409
-   @summary Drawing deviates when validate() is invoked on java.awt.ScrollPane
-   @author mikhail.cherkasov@oracle.com
-   @run main bug8077409Test
-*/
+/*
+ * @test
+ * @key headful
+ * @bug 8077409
+ * @summary Drawing deviates when validate() is invoked on java.awt.ScrollPane
+ * @author mikhail.cherkasov@oracle.com
+ * @run main bug8077409Test
+ */
 
 
 import java.awt.*;
diff --git a/jdk/test/java/awt/SplashScreen/MultiResolutionSplash/MultiResolutionSplashTest.java b/jdk/test/java/awt/SplashScreen/MultiResolutionSplash/MultiResolutionSplashTest.java
index 824fce4..31e496d 100644
--- a/jdk/test/java/awt/SplashScreen/MultiResolutionSplash/MultiResolutionSplashTest.java
+++ b/jdk/test/java/awt/SplashScreen/MultiResolutionSplash/MultiResolutionSplashTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8043869 8075244 8078082 8145173
  * @summary Tests the HiDPI splash screen support for windows and MAC
  * @modules java.desktop/sun.java2d
@@ -104,6 +105,16 @@
         int screenX = (int) splashBounds.getCenterX();
         int screenY = (int) splashBounds.getCenterY();
 
+        if (splashBounds.width != IMAGE_WIDTH) {
+            throw new RuntimeException(
+                    "SplashScreen#getBounds has wrong width");
+        }
+
+        if (splashBounds.height != IMAGE_HEIGHT) {
+            throw new RuntimeException(
+                    "SplashScreen#getBounds has wrong height");
+        }
+
         Robot robot = new Robot();
         Color splashScreenColor = robot.getPixelColor(screenX, screenY);
 
diff --git a/jdk/test/java/awt/TextArea/Mixing/TextAreaMixing.java b/jdk/test/java/awt/TextArea/Mixing/TextAreaMixing.java
index f07ddf3..890e1fb 100644
--- a/jdk/test/java/awt/TextArea/Mixing/TextAreaMixing.java
+++ b/jdk/test/java/awt/TextArea/Mixing/TextAreaMixing.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,9 @@
  * questions.
  */
 
-/* @test
+/*
+ * @test
+ * @key headful
  * @bug 8013189
  * @run main TextAreaMixing
  * @summary TextArea should support HW/LW mixing
diff --git a/jdk/test/java/awt/TextArea/ScrollbarIntersectionTest/ScrollbarIntersectionTest.java b/jdk/test/java/awt/TextArea/ScrollbarIntersectionTest/ScrollbarIntersectionTest.java
index 2be3171..3d999cb 100644
--- a/jdk/test/java/awt/TextArea/ScrollbarIntersectionTest/ScrollbarIntersectionTest.java
+++ b/jdk/test/java/awt/TextArea/ScrollbarIntersectionTest/ScrollbarIntersectionTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6429174
   @summary Tests that mouse click at the are of intersection of two
    scrollbars for text area doesn't trigger any scrolling
diff --git a/jdk/test/java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java b/jdk/test/java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java
index 1550849..d6b98a6 100644
--- a/jdk/test/java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java
+++ b/jdk/test/java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  @test
+ @key headful
  @bug 6180449
  @summary TextArea scrolls to its left when selecting the text from the end.
  @run main TextAreaScrolling
diff --git a/jdk/test/java/awt/TextArea/TextAreaTwicePack/TextAreaTwicePack.java b/jdk/test/java/awt/TextArea/TextAreaTwicePack/TextAreaTwicePack.java
index e134c38..5a51a07 100644
--- a/jdk/test/java/awt/TextArea/TextAreaTwicePack/TextAreaTwicePack.java
+++ b/jdk/test/java/awt/TextArea/TextAreaTwicePack/TextAreaTwicePack.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7160627
  * @summary We shouldn't get different frame size when we call Frame.pack()
  * twice.
diff --git a/jdk/test/java/awt/TextArea/UsingWithMouse/SelectionAutoscrollTest.java b/jdk/test/java/awt/TextArea/UsingWithMouse/SelectionAutoscrollTest.java
index 6acb430..c54d676 100644
--- a/jdk/test/java/awt/TextArea/UsingWithMouse/SelectionAutoscrollTest.java
+++ b/jdk/test/java/awt/TextArea/UsingWithMouse/SelectionAutoscrollTest.java
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6497109 6734341
   @summary TextArea must have selection expanding, and also be autoscrolled, if mouse is dragged from inside.
   @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/TextField/EOLTest/EOLTest.java b/jdk/test/java/awt/TextField/EOLTest/EOLTest.java
index a9ab7b0..e56639a 100644
--- a/jdk/test/java/awt/TextField/EOLTest/EOLTest.java
+++ b/jdk/test/java/awt/TextField/EOLTest/EOLTest.java
@@ -23,6 +23,7 @@
 
 /*
  @test
+ @key headful
  @bug 8055197 7186036
  @summary TextField should replace EOL character with space character
  @run main EOLTest
@@ -199,4 +200,4 @@
         testEOL.checkFailures();
         testEOL.dispose();
     }
-}
\ No newline at end of file
+}
diff --git a/jdk/test/java/awt/TextField/SelectionInvisibleTest/SelectionInvisibleTest.java b/jdk/test/java/awt/TextField/SelectionInvisibleTest/SelectionInvisibleTest.java
index 973e1df..6f06cb6 100644
--- a/jdk/test/java/awt/TextField/SelectionInvisibleTest/SelectionInvisibleTest.java
+++ b/jdk/test/java/awt/TextField/SelectionInvisibleTest/SelectionInvisibleTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8036110
  * @author Alexander Scherbatiy
  * @summary In TextField can only select text visible or to the left
diff --git a/jdk/test/java/awt/Toolkit/DynamicLayout/bug7172833.java b/jdk/test/java/awt/Toolkit/DynamicLayout/bug7172833.java
index 2c4f041..eba1002 100644
--- a/jdk/test/java/awt/Toolkit/DynamicLayout/bug7172833.java
+++ b/jdk/test/java/awt/Toolkit/DynamicLayout/bug7172833.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,6 +37,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7172833
  * @summary java.awt.Toolkit methods is/setDynamicLayout() should be consistent.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/Toolkit/GetSizeTest/GetScreenSizeTest.java b/jdk/test/java/awt/Toolkit/GetSizeTest/GetScreenSizeTest.java
index b38a31c..b645e17 100644
--- a/jdk/test/java/awt/Toolkit/GetSizeTest/GetScreenSizeTest.java
+++ b/jdk/test/java/awt/Toolkit/GetSizeTest/GetScreenSizeTest.java
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8144074 8145785 8149151
   @summary Crash while getting screen size during Toolkit initialisation
   @run main/othervm GetScreenSizeTest
diff --git a/jdk/test/java/awt/Toolkit/RealSync/RealSyncOnEDT.java b/jdk/test/java/awt/Toolkit/RealSync/RealSyncOnEDT.java
index 9f2200a..2182b68 100644
--- a/jdk/test/java/awt/Toolkit/RealSync/RealSyncOnEDT.java
+++ b/jdk/test/java/awt/Toolkit/RealSync/RealSyncOnEDT.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6541903
   @summary Tests if the realSync() throws the IllegalThreadException while invoked on the EDT
   @author anthony.petrov: area=awt.toolkit
diff --git a/jdk/test/java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java b/jdk/test/java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java
index 4b4df6d..f604942 100644
--- a/jdk/test/java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java
+++ b/jdk/test/java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4737732
   @summary Tests that Toolkit.getScreenInsets() returns correct insets
   @author artem.ananiev: area=awt.toplevel
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_1.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_1.java
index 794cfa4..3ea09a0 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_1.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_1.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that system property sun.awt.enableExtraMouseButtons is true by default
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_2.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_2.java
index 8e23c7c..ecd6797 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_2.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_2.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that system property sun.awt.enableExtraMouseButtons might be set to true by the command line
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_3.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_3.java
index ba546f7..dd2327f 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_3.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_3.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that system property sun.awt.enableExtraMouseButtons might be set to false by the command line
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_4.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_4.java
index 1d624aa..aba0853 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_4.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_4.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that system property sun.awt.enableExtraMouseButtons might be set to true by the System class API.
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_5.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_5.java
index 027f268..5a3f2a9 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_5.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_5.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that system property sun.awt.enableExtraMouseButtons might be set to false by the System class API.
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Disable.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Disable.java
index a944d6a..150fa7e 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Disable.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Disable.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that sun.awt.enableExtraMouseButtons = false consumes extra events
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java
index 7f6221c..4a9f944 100644
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that sun.awt.enableExtraMouseButtons is working
   @author Andrei Dmitriev : area=awt.mouse
diff --git a/jdk/test/java/awt/Window/AlwaysOnTop/AlwaysOnTopEvenOfWindow.java b/jdk/test/java/awt/Window/AlwaysOnTop/AlwaysOnTopEvenOfWindow.java
index a476395..0976034 100644
--- a/jdk/test/java/awt/Window/AlwaysOnTop/AlwaysOnTopEvenOfWindow.java
+++ b/jdk/test/java/awt/Window/AlwaysOnTop/AlwaysOnTopEvenOfWindow.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 5028924
   @summary Always-on-top frame should be on top of Window.
   @author Yuri.Nesterenko: area=awt.toplevel
diff --git a/jdk/test/java/awt/Window/AlwaysOnTop/SyncAlwaysOnTopFieldTest.java b/jdk/test/java/awt/Window/AlwaysOnTop/SyncAlwaysOnTopFieldTest.java
index 3771baf..26c8116 100644
--- a/jdk/test/java/awt/Window/AlwaysOnTop/SyncAlwaysOnTopFieldTest.java
+++ b/jdk/test/java/awt/Window/AlwaysOnTop/SyncAlwaysOnTopFieldTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8064468
  * @author Alexander Scherbatiy
  * @summary ownedWindowList access requires synchronization in
diff --git a/jdk/test/java/awt/Window/AlwaysOnTop/TestAlwaysOnTopBeforeShow.java b/jdk/test/java/awt/Window/AlwaysOnTop/TestAlwaysOnTopBeforeShow.java
index e250f07..f46c0ad 100644
--- a/jdk/test/java/awt/Window/AlwaysOnTop/TestAlwaysOnTopBeforeShow.java
+++ b/jdk/test/java/awt/Window/AlwaysOnTop/TestAlwaysOnTopBeforeShow.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,13 @@
  * questions.
  */
 /*
-@test
-@bug 6236247
-@summary Test that setting of always-on-top flags before showing window works
-@author dom@sparc.spb.su: area=awt.toplevel
-@run main TestAlwaysOnTopBeforeShow
-*/
+ * @test
+ * @key headful
+ * @bug 6236247
+ * @summary Test that setting of always-on-top flags before showing window works
+ * @author dom@sparc.spb.su: area=awt.toplevel
+ * @run main TestAlwaysOnTopBeforeShow
+ */
 
 /**
  * TestAlwaysOnTopBeforeShow.java
diff --git a/jdk/test/java/awt/Window/BackgroundIsNotUpdated/BackgroundIsNotUpdated.java b/jdk/test/java/awt/Window/BackgroundIsNotUpdated/BackgroundIsNotUpdated.java
index a68439a..5171ac1 100644
--- a/jdk/test/java/awt/Window/BackgroundIsNotUpdated/BackgroundIsNotUpdated.java
+++ b/jdk/test/java/awt/Window/BackgroundIsNotUpdated/BackgroundIsNotUpdated.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8001472
  * @summary Background of the window should not depend from the paint()/update()
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/Window/ChildProperties/ChildWindowProperties.java b/jdk/test/java/awt/Window/ChildProperties/ChildWindowProperties.java
new file mode 100644
index 0000000..a6a2318
--- /dev/null
+++ b/jdk/test/java/awt/Window/ChildProperties/ChildWindowProperties.java
@@ -0,0 +1,163 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+ /*
+ @test
+ @bug 8057574
+ @summary Verify that child Window does not inherit parent's Properties
+ @run main ChildWindowProperties
+ */
+import java.awt.Color;
+import java.awt.Dialog;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.Label;
+import java.awt.Panel;
+import java.awt.Window;
+
+public class ChildWindowProperties {
+
+    private Dialog parentDialog;
+    private Window windowChild;
+    private Frame parentFrame;
+    private Window frameChildWindow;
+    private Label parentLabel;
+    private Font parentFont;
+    private Label childLabel;
+
+    private static final int WIDTH = 200;
+    private static final int HEIGHT = 200;
+
+    public void testChildPropertiesWithDialogAsParent() {
+
+        parentDialog = new Dialog((Dialog) null, "parent Dialog");
+        parentDialog.setSize(WIDTH, HEIGHT);
+        parentDialog.setLocation(100, 100);
+        parentDialog.setBackground(Color.RED);
+        parentLabel = new Label("ParentForegroundAndFont");
+        parentFont = new Font("Courier New", Font.ITALIC, 15);
+        parentDialog.setForeground(Color.BLUE);
+        parentDialog.setFont(parentFont);
+
+        parentDialog.add(parentLabel);
+        parentDialog.setVisible(true);
+
+        windowChild = new Window(parentDialog);
+        windowChild.setSize(WIDTH, HEIGHT);
+        windowChild.setLocation(WIDTH + 200, 100);
+        childLabel = new Label("ChildForegroundAndFont");
+        windowChild.add(childLabel);
+        windowChild.setVisible(true);
+
+        if (parentDialog.getBackground() == windowChild.getBackground()) {
+            dispose();
+            throw new RuntimeException("Child Window Should NOT Inherit "
+                    + "Parent Dialog's Background Color");
+        }
+        if (parentDialog.getForeground() == windowChild.getForeground()) {
+            dispose();
+            throw new RuntimeException("Child Window Should NOT Inherit "
+                    + "Parent Dialog's Foreground Color");
+        }
+        if (parentDialog.getFont() == windowChild.getFont()) {
+            dispose();
+            throw new RuntimeException("Child Window Should NOT Inherit "
+                    + "Parent Dialog's Font Color");
+        }
+    }
+
+    public void testChildPropertiesWithFrameAsParent() {
+
+        parentFrame = new Frame("parent Frame");
+        parentFrame.setSize(WIDTH, HEIGHT);
+        parentFrame.setLocation(100, 400);
+        parentFrame.setBackground(Color.BLUE);
+        parentLabel = new Label("ParentForegroundAndFont");
+        parentFont = new Font("Courier New", Font.ITALIC, 15);
+        parentFrame.setForeground(Color.RED);
+        parentFrame.setFont(parentFont);
+        parentFrame.add(parentLabel);
+        parentFrame.setVisible(true);
+
+        frameChildWindow = new Window(parentFrame);
+        frameChildWindow.setSize(WIDTH, HEIGHT);
+        frameChildWindow.setLocation(WIDTH + 200, 400);
+        childLabel = new Label("ChildForegroundAndFont");
+        frameChildWindow.add(childLabel);
+        frameChildWindow.setVisible(true);
+
+        if (parentFrame.getBackground() == frameChildWindow.getBackground()) {
+            dispose();
+            throw new RuntimeException("Child Window Should NOT Inherit "
+                    + "Parent Frame's Background Color");
+        }
+        if (parentDialog.getForeground() == windowChild.getForeground()) {
+            dispose();
+            throw new RuntimeException("Child Window Should NOT Inherit "
+                    + "Parent Frame's Foreground Color");
+        }
+        if (parentDialog.getFont() == windowChild.getFont()) {
+            dispose();
+            throw new RuntimeException("Child Window Should NOT Inherit "
+                    + "Parent Frame's Font Color");
+        }
+    }
+
+    public void testPanelBackground() {
+        Window window = new Frame();
+        window.setBackground(Color.GREEN);
+        Panel panel = new Panel();
+        window.add(panel);
+        window.pack();
+        window.setVisible(true);
+        if (panel.getBackground() != Color.GREEN) {
+            window.dispose();
+            throw new RuntimeException("Panel Background Color Not Valid");
+        }
+        window.dispose();
+    }
+
+    private void dispose() {
+
+        if (parentDialog != null) {
+            parentDialog.dispose();
+        }
+        if (parentFrame != null) {
+            parentFrame.dispose();
+        }
+    }
+
+    public static void main(String[] args) throws Exception {
+
+        ChildWindowProperties obj = new ChildWindowProperties();
+        // TestCase1: When Parent is Dialog, Child is Window
+        obj.testChildPropertiesWithDialogAsParent();
+        // TestCase2: When Parent is Frame, chis is Window
+        obj.testChildPropertiesWithFrameAsParent();
+        // TestCase3: Panel Background Test
+        obj.testPanelBackground();
+        obj.dispose();
+    }
+
+}
+
diff --git a/jdk/test/java/awt/Window/FindOwner/FindOwnerTest.html b/jdk/test/java/awt/Window/FindOwner/FindOwnerTest.html
index f0f8e47..f022dc4 100644
--- a/jdk/test/java/awt/Window/FindOwner/FindOwnerTest.html
+++ b/jdk/test/java/awt/Window/FindOwner/FindOwnerTest.html
@@ -22,6 +22,7 @@
 
 
   @test
+  @key headful
   @bug 8139227
   @summary Text fields in JPopupMenu structure do not receive focus in hosted
            Applets
@@ -40,4 +41,4 @@
         width="250" height="150">
 </applet>
 </body>
-</html> 
\ No newline at end of file
+</html> 
diff --git a/jdk/test/java/awt/Window/GetWindowsTest/GetWindowsTest.java b/jdk/test/java/awt/Window/GetWindowsTest/GetWindowsTest.java
index e1a9482..a82d3e7 100644
--- a/jdk/test/java/awt/Window/GetWindowsTest/GetWindowsTest.java
+++ b/jdk/test/java/awt/Window/GetWindowsTest/GetWindowsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
   @test
+  @key headful
   @bug 6322270
   @summary Test for new API introduced in the fix for 6322270: Window.getWindows(),
 Window.getOwnerlessWindows() and Frame.getFrames()
diff --git a/jdk/test/java/awt/Window/Grab/GrabTest.java b/jdk/test/java/awt/Window/Grab/GrabTest.java
index 8b0a787..0b13ada 100644
--- a/jdk/test/java/awt/Window/Grab/GrabTest.java
+++ b/jdk/test/java/awt/Window/Grab/GrabTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 7124430
   @summary Tests that SunToolkit.grab API works
   @author anton.tarasov@oracle.com: area=awt.toolkit
diff --git a/jdk/test/java/awt/Window/GrabSequence/GrabSequence.java b/jdk/test/java/awt/Window/GrabSequence/GrabSequence.java
index 2702ebd..df82c17 100644
--- a/jdk/test/java/awt/Window/GrabSequence/GrabSequence.java
+++ b/jdk/test/java/awt/Window/GrabSequence/GrabSequence.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
  /*
   @test
+  @key headful
   @bug 6273031
   @summary  PIT. Choice drop down does not close once it is right clicked to show a popup menu
   @author andrei.dmitriev: area=awt.window
diff --git a/jdk/test/java/awt/Window/HandleWindowDestroyTest/HandleWindowDestroyTest.html b/jdk/test/java/awt/Window/HandleWindowDestroyTest/HandleWindowDestroyTest.html
index aea7f23..981dcc8 100644
--- a/jdk/test/java/awt/Window/HandleWindowDestroyTest/HandleWindowDestroyTest.html
+++ b/jdk/test/java/awt/Window/HandleWindowDestroyTest/HandleWindowDestroyTest.html
@@ -1,6 +1,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6260648
   @summary Tests that WINDOW_DESTROY event can be handled by overriding handleEvent(). Also,
 tests that handleEvent() is not called by AWT if any listener is added to the component
diff --git a/jdk/test/java/awt/Window/LocationByPlatform/LocationByPlatformTest.java b/jdk/test/java/awt/Window/LocationByPlatform/LocationByPlatformTest.java
index 44f670b..bf03139 100644
--- a/jdk/test/java/awt/Window/LocationByPlatform/LocationByPlatformTest.java
+++ b/jdk/test/java/awt/Window/LocationByPlatform/LocationByPlatformTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7092283
  * @author Alexander Scherbatiy
  * @summary Property Window.locationByPlatform is not cleared by calling
diff --git a/jdk/test/java/awt/Window/MultiWindowApp/MultiWindowAppTest.java b/jdk/test/java/awt/Window/MultiWindowApp/MultiWindowAppTest.java
index 41b4b7f..02a52e5 100644
--- a/jdk/test/java/awt/Window/MultiWindowApp/MultiWindowAppTest.java
+++ b/jdk/test/java/awt/Window/MultiWindowApp/MultiWindowAppTest.java
@@ -23,6 +23,7 @@
 
 /**
  * @test @summary After calling frame.toBack() dialog goes to the back on Ubuntu 12.04
+ * @key headful
  * @bug 8022334
  * @author Semyon Sadetsky
  * @run main MultiWindowAppTest
diff --git a/jdk/test/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java b/jdk/test/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java
index d19ba45..0b6da11 100644
--- a/jdk/test/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java
+++ b/jdk/test/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6758673
   @summary Tests that windows are removed from owner's child windows list
   @author art: area=awt.toplevel
diff --git a/jdk/test/java/awt/Window/PropertyChangeListenerLockSerialization/PropertyChangeListenerLockSerialization.java b/jdk/test/java/awt/Window/PropertyChangeListenerLockSerialization/PropertyChangeListenerLockSerialization.java
index 8201bae..4e5da7e 100644
--- a/jdk/test/java/awt/Window/PropertyChangeListenerLockSerialization/PropertyChangeListenerLockSerialization.java
+++ b/jdk/test/java/awt/Window/PropertyChangeListenerLockSerialization/PropertyChangeListenerLockSerialization.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6681889
   @summary Showing a deserialized frame should not throw NPE
   @author anthony.petrov@...: area=awt.toplevel
diff --git a/jdk/test/java/awt/Window/ScreenLocation/ScreenLocationTest.java b/jdk/test/java/awt/Window/ScreenLocation/ScreenLocationTest.java
index ef89ef0..ab0baa7 100644
--- a/jdk/test/java/awt/Window/ScreenLocation/ScreenLocationTest.java
+++ b/jdk/test/java/awt/Window/ScreenLocation/ScreenLocationTest.java
@@ -21,12 +21,14 @@
  * questions.
  */
 
-/* @test
-   @bug 8011616
-   @summary JWindow.getLocation and JWindow.getLocationOnScreen return different
-            values on Unity
-   @author Semyon Sadetsky
-  */
+/*
+ * @test
+ * @key headful
+ * @bug 8011616
+ * @summary JWindow.getLocation and JWindow.getLocationOnScreen return different
+ *          values on Unity
+ * @author Semyon Sadetsky
+ */
 
 import java.awt.*;
 
diff --git a/jdk/test/java/awt/Window/SetBackgroundNPE/SetBackgroundNPE.java b/jdk/test/java/awt/Window/SetBackgroundNPE/SetBackgroundNPE.java
index 6bd3aae..73f5cee 100644
--- a/jdk/test/java/awt/Window/SetBackgroundNPE/SetBackgroundNPE.java
+++ b/jdk/test/java/awt/Window/SetBackgroundNPE/SetBackgroundNPE.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6853916
   @summary Window.setBackground() should not throw NPE
   @author anthony.petrov@sun.com: area=awt.toplevel
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/FocusAWTTest.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/FocusAWTTest.java
index 4edefc1..538e2f6 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/FocusAWTTest.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/FocusAWTTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8013450
  * @summary Check if the window events (Focus and Activation) are triggered correctly
  *          when clicked on visible and clipped areas.
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShape.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShape.java
index 4c3ac04..cdadbb2 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShape.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShape.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a window set with shape appears in the expected shape
  *
  * Test Description: Check if PERPIXEL_TRANSPARENT Translucency type is supported
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeAndClick.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeAndClick.java
index 8d616e8..ba793cc 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeAndClick.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeAndClick.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a window set with shape clips the contents
  *
  * Test Description: Check if PERPIXEL_TRANSPARENT Translucency type is supported
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeDynamicallyAndClick.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeDynamicallyAndClick.java
index 60ffc39..d4f7594 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeDynamicallyAndClick.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/SetShapeDynamicallyAndClick.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if dynamically setting a shape works
  *
  * Test Description: Check if PERPIXEL_TRANSPARENT Translucency type is supported
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Shaped.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Shaped.java
index 507f584..c16536e 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Shaped.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Shaped.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if dynamically shaped window is dragged and resized
  *          by mouse correctly
  *
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedByAPI.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedByAPI.java
index eee3447..e6d1ce6 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedByAPI.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedByAPI.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if dynamically shaped window is moved and resized by
  *          API correctly.
  *
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucent.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucent.java
index 9f9aeb1..73ad4b6 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucent.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucent.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a translucent shaped window is dragged and
  *          resized correctly.
  *
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucentWindowClick.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucentWindowClick.java
index 6d205a7..678724b 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucentWindowClick.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucentWindowClick.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a translucent shaped window trigger events correctly.
  *
  * Test Description: Check if TRANSLUCENT and PERPIXEL_TRANSPARENT traslucency
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java
index ad00125..7ddaa62 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if statically shaped window is dragged and resized correctly.
  *
  * Test Description: Check if PERPIXEL_TRANSPARENT translucency type is supported
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Translucent.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Translucent.java
index 3ed7a96..6c41098 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Translucent.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/Translucent.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if translucent window is dragged and resized
  *          correctly.
  *
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentChoice.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentChoice.java
index 53f6039..34b9924 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentChoice.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentChoice.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a Choice present in a window set with opacity less than 1.0
  *          shows a translucent drop down
  *
diff --git a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentWindowClick.java b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentWindowClick.java
index 7af86f4..159b941 100644
--- a/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentWindowClick.java
+++ b/jdk/test/java/awt/Window/ShapedAndTranslucentWindows/TranslucentWindowClick.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if components present in a window set with opacity less than 1.0
  *          triggers events correctly
  *
diff --git a/jdk/test/java/awt/Window/WindowClosedEvents/WindowClosedEventOnDispose.java b/jdk/test/java/awt/Window/WindowClosedEvents/WindowClosedEventOnDispose.java
index 2bb42fc..88f4c2f 100644
--- a/jdk/test/java/awt/Window/WindowClosedEvents/WindowClosedEventOnDispose.java
+++ b/jdk/test/java/awt/Window/WindowClosedEvents/WindowClosedEventOnDispose.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8015500
   @summary DisposeAction multiplies the WINDOW_CLOSED event.
   @author jlm@joseluismartin.info
diff --git a/jdk/test/java/awt/Window/WindowJumpingTest/WindowJumpingTest.java b/jdk/test/java/awt/Window/WindowJumpingTest/WindowJumpingTest.java
new file mode 100644
index 0000000..f2e2100
--- /dev/null
+++ b/jdk/test/java/awt/Window/WindowJumpingTest/WindowJumpingTest.java
@@ -0,0 +1,86 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8080729
+ * @summary Dialogs on multiscreen jump to parent frame on focus gain
+ * @author Dmitry Markov
+ * @library ../../regtesthelpers
+ * @build Util
+ * @run main WindowJumpingTest
+ */
+import java.awt.*;
+
+import test.java.awt.regtesthelpers.Util;
+
+public class WindowJumpingTest {
+    public static void main(String[] args) throws AWTException {
+        Robot r = Util.createRobot();
+
+        GraphicsEnvironment graphicsEnvironment = GraphicsEnvironment.getLocalGraphicsEnvironment();
+        GraphicsDevice[] graphicsDevices = graphicsEnvironment.getScreenDevices();
+        if (graphicsDevices.length < 2) {
+            System.out.println("This is multi-screen test... Skipping!");
+            return;
+        }
+
+        Frame frame = new Frame("Frame", graphicsDevices[0].getDefaultConfiguration());
+        frame.setSize(400, 300);
+        frame.setVisible(true);
+        Util.waitForIdle(r);
+
+        Dialog dialog = new Dialog(frame, "Dialog", false, graphicsDevices[1].getDefaultConfiguration());
+        dialog.setSize(400, 300);
+        dialog.setVisible(true);
+        Util.waitForIdle(r);
+
+        checkGraphicsDevice(frame, graphicsDevices[0]);
+        checkGraphicsDevice(dialog, graphicsDevices[1]);
+
+        Util.clickOnComp(frame, r);
+        Util.waitForIdle(r);
+
+        checkGraphicsDevice(frame, graphicsDevices[0]);
+        checkGraphicsDevice(dialog, graphicsDevices[1]);
+
+        Util.clickOnComp(dialog, r);
+        Util.waitForIdle(r);
+
+        checkGraphicsDevice(frame, graphicsDevices[0]);
+        checkGraphicsDevice(dialog, graphicsDevices[1]);
+
+        dialog.dispose();
+        frame.dispose();
+    }
+
+    private static void checkGraphicsDevice(Window window, GraphicsDevice graphicsDevice) {
+        GraphicsDevice actualGraphicsDevice = window.getGraphicsConfiguration().getDevice();
+
+        if (!actualGraphicsDevice.equals(graphicsDevice)) {
+            System.err.println("Expected screen: " + graphicsDevice);
+            System.err.println("Actual screen: "+ actualGraphicsDevice);
+            throw new RuntimeException("Test FAILED: " + window + " is displayed on wrong screen");
+        }
+    }
+}
+
diff --git a/jdk/test/java/awt/Window/WindowType/WindowType.java b/jdk/test/java/awt/Window/WindowType/WindowType.java
index 508cede..c272fc9 100644
--- a/jdk/test/java/awt/Window/WindowType/WindowType.java
+++ b/jdk/test/java/awt/Window/WindowType/WindowType.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6402325
   @summary Test showing windows of different types
   @author anthony.petrov@sun.com: area=awt.toplevel
diff --git a/jdk/test/java/awt/Window/WindowsLeak/WindowsLeak.java b/jdk/test/java/awt/Window/WindowsLeak/WindowsLeak.java
index f6ee946..584025f 100644
--- a/jdk/test/java/awt/Window/WindowsLeak/WindowsLeak.java
+++ b/jdk/test/java/awt/Window/WindowsLeak/WindowsLeak.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,42 +23,42 @@
 
 /*
  * @test
- * @bug 8013563
+ * @bug 8013563 8028486
  * @summary Tests that windows are removed from windows list
+ * @library /javax/swing/regtesthelpers
  * @modules java.desktop/sun.awt
+ *          java.desktop/sun.java2d
+ * @build Util
  * @run main/othervm -Xms32M -Xmx32M WindowsLeak
 */
 
-import java.awt.*;
-import sun.awt.AppContext;
-
+import java.awt.Frame;
+import java.awt.Robot;
+import java.awt.Window;
 import java.lang.ref.WeakReference;
-
 import java.util.Vector;
 
+import sun.awt.AppContext;
+import sun.java2d.Disposer;
+
 public class WindowsLeak {
 
-    public static void main(String[] args) {
-        for (int i = 0; i < 100; i++)
-        {
+    private static volatile boolean disposerPhantomComplete;
+
+    public static void main(String[] args) throws Exception {
+        Robot r = new Robot();
+        for (int i = 0; i < 100; i++) {
             Frame f = new Frame();
             f.pack();
             f.dispose();
         }
+        r.waitForIdle();
 
-        Vector garbage = new Vector();
-        while (true)
-        {
-            try
-            {
-                garbage.add(new byte[1000]);
-            }
-            catch (OutOfMemoryError e)
-            {
-                break;
-            }
+        Disposer.addRecord(new Object(), () -> disposerPhantomComplete = true);
+
+        while (!disposerPhantomComplete) {
+            Util.generateOOME();
         }
-        garbage = null;
 
         Vector<WeakReference<Window>> windowList =
                         (Vector<WeakReference<Window>>) AppContext.getAppContext().get(Window.class);
diff --git a/jdk/test/java/awt/Window/setLocRelativeTo/SetLocationRelativeToTest.java b/jdk/test/java/awt/Window/setLocRelativeTo/SetLocationRelativeToTest.java
index 0cf3cec..da54640 100644
--- a/jdk/test/java/awt/Window/setLocRelativeTo/SetLocationRelativeToTest.java
+++ b/jdk/test/java/awt/Window/setLocRelativeTo/SetLocationRelativeToTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,15 +26,16 @@
 import javax.swing.*;
 
 /*
-@test
-@summary Toplevel should be correctly positioned as relative to a component:
-       so that their centers coincide
-       or, if the component is hidden, centered on the screen.
-@bug 8036915
-@library ../../../../lib/testlibrary
-@build ExtendedRobot
-@run main/timeout=1200 SetLocationRelativeToTest
-*/
+ * @test
+ * @key headful
+ * @summary Toplevel should be correctly positioned as relative to a component:
+ *          so that their centers coincide
+ *          or, if the component is hidden, centered on the screen.
+ * @bug 8036915
+ * @library ../../../../lib/testlibrary
+ * @build ExtendedRobot
+ * @run main/timeout=1200 SetLocationRelativeToTest
+ */
 
 public class SetLocationRelativeToTest {
     private static int delay = 500;
diff --git a/jdk/test/java/awt/applet/Applet/AppletFlipBuffer.java b/jdk/test/java/awt/applet/Applet/AppletFlipBuffer.java
index 35c681d..bb541e1 100644
--- a/jdk/test/java/awt/applet/Applet/AppletFlipBuffer.java
+++ b/jdk/test/java/awt/applet/Applet/AppletFlipBuffer.java
@@ -40,6 +40,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8130390 8134732
  * @summary Applet fails to launch on virtual desktop
  * @modules java.desktop/sun.awt
diff --git a/jdk/test/java/awt/datatransfer/Clipboard/GetContentsInterruptedTest.java b/jdk/test/java/awt/datatransfer/Clipboard/GetContentsInterruptedTest.java
index 34e9f10..dd40083 100644
--- a/jdk/test/java/awt/datatransfer/Clipboard/GetContentsInterruptedTest.java
+++ b/jdk/test/java/awt/datatransfer/Clipboard/GetContentsInterruptedTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4532299 4648733
  * @summary Tests that getting clipboard contents on the interrupted thread will
  *          not cause deadlock.Also check that lostOwnership event occurs while
diff --git a/jdk/test/java/awt/datatransfer/ClipboardInterVMTest/ClipboardInterVMTest.java b/jdk/test/java/awt/datatransfer/ClipboardInterVMTest/ClipboardInterVMTest.java
index 6bf4cd0..339d2e1 100644
--- a/jdk/test/java/awt/datatransfer/ClipboardInterVMTest/ClipboardInterVMTest.java
+++ b/jdk/test/java/awt/datatransfer/ClipboardInterVMTest/ClipboardInterVMTest.java
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8071668
   @summary Check whether clipboard see changes from external process after taking ownership
   @author Anton Nashatyrev: area=datatransfer
diff --git a/jdk/test/java/awt/datatransfer/ConstructFlavoredObjectTest/ConstructFlavoredObjectTest.java b/jdk/test/java/awt/datatransfer/ConstructFlavoredObjectTest/ConstructFlavoredObjectTest.java
index 2058f91..d7c9769 100644
--- a/jdk/test/java/awt/datatransfer/ConstructFlavoredObjectTest/ConstructFlavoredObjectTest.java
+++ b/jdk/test/java/awt/datatransfer/ConstructFlavoredObjectTest/ConstructFlavoredObjectTest.java
@@ -30,6 +30,7 @@
 import javax.swing.TransferHandler;
 /*
  * @test
+ * @key headful
  * @bug 8130329
  * @summary  Audit Core Reflection in module java.desktop AWT/Miscellaneous area
  *           for places that will require changes to work with modules
diff --git a/jdk/test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java b/jdk/test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java
index 4468eaf..7e0a67b 100644
--- a/jdk/test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java
+++ b/jdk/test/java/awt/datatransfer/CustomClassLoaderTransferTest/CustomClassLoaderTransferTest.java
@@ -1,5 +1,6 @@
 /*
   @test
+  @key headful
   @bug 4932376
   @summary verifies that data transfer within one JVM works correctly if
            the transfer data was created with a custom class loader.
diff --git a/jdk/test/java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java b/jdk/test/java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java
index e7bac95..bd76aae 100644
--- a/jdk/test/java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java
+++ b/jdk/test/java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8051636
   @summary DataTransferer optional dependency on RMI
   @author Semyon Sadetsky
diff --git a/jdk/test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.html b/jdk/test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.html
index 73ccf1b..c58d921 100644
--- a/jdk/test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.html
+++ b/jdk/test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 5098433
   @summary REG: DnD of File-List between JVM is broken for non ASCII file names - Win32
   @author Denis Fokin: area=dnd
diff --git a/jdk/test/java/awt/datatransfer/ImageTransfer/ImageTransferTest.java b/jdk/test/java/awt/datatransfer/ImageTransfer/ImageTransferTest.java
index abe4ebf..7d610e3 100644
--- a/jdk/test/java/awt/datatransfer/ImageTransfer/ImageTransferTest.java
+++ b/jdk/test/java/awt/datatransfer/ImageTransfer/ImageTransferTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary To check Whether java.awt.Image can be transferred through the
  *          system clipboard
  * @author Jitender(jitender.singh@eng.sun.com) area=AWT
diff --git a/jdk/test/java/awt/datatransfer/Independence/IndependenceAWTTest.java b/jdk/test/java/awt/datatransfer/Independence/IndependenceAWTTest.java
index babb61f..f70e246 100644
--- a/jdk/test/java/awt/datatransfer/Independence/IndependenceAWTTest.java
+++ b/jdk/test/java/awt/datatransfer/Independence/IndependenceAWTTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary To make sure that System & Primary clipboards should behave independently
  * @author Jitender(jitender.singh@eng.sun.com) area=AWT
  * @author dmitriy.ermashov@oracle.com
diff --git a/jdk/test/java/awt/datatransfer/Independence/IndependenceSwingTest.java b/jdk/test/java/awt/datatransfer/Independence/IndependenceSwingTest.java
index 91a3ce1..3ee598e 100644
--- a/jdk/test/java/awt/datatransfer/Independence/IndependenceSwingTest.java
+++ b/jdk/test/java/awt/datatransfer/Independence/IndependenceSwingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,6 +37,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary To make sure that System & Primary clipboards should behave independently
  * @author Jitender(jitender.singh@eng.sun.com) area=AWT
  * @author dmitriy.ermashov@oracle.com
diff --git a/jdk/test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html b/jdk/test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html
index 7a9730e..5fc7396 100644
--- a/jdk/test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html
+++ b/jdk/test/java/awt/datatransfer/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 8005932 8017456
   @summary Java 7 on mac os x only provides text clipboard formats
   @author mikhail.cherkasov@oracle.com
diff --git a/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionAWTTest.java b/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionAWTTest.java
index e8b28a2..57acdd6 100644
--- a/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionAWTTest.java
+++ b/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionAWTTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary To check the functionality of newly added API getSystemSelection & make sure
  *          that it's mapped to primary clipboard
  * @author Jitender(jitender.singh@eng.sun.com) area=AWT
diff --git a/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionSwingTest.java b/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionSwingTest.java
index 30f4a65..fdc698a 100644
--- a/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionSwingTest.java
+++ b/jdk/test/java/awt/datatransfer/SystemSelection/SystemSelectionSwingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,6 +35,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary To check the functionality of newly added API getSystemSelection & make sure
  *          that it's mapped to primary clipboard
  * @author Jitender(jitender.singh@eng.sun.com) area=AWT
diff --git a/jdk/test/java/awt/dnd/Button2DragTest/Button2DragTest.java b/jdk/test/java/awt/dnd/Button2DragTest/Button2DragTest.java
index c5045ed..df5041d 100644
--- a/jdk/test/java/awt/dnd/Button2DragTest/Button2DragTest.java
+++ b/jdk/test/java/awt/dnd/Button2DragTest/Button2DragTest.java
@@ -41,6 +41,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4955110
  * @summary tests that DragSourceDragEvent.getDropAction() accords to its new
  *          spec (does not depend on the user drop action)
diff --git a/jdk/test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.html b/jdk/test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.html
index 7d4a3a5..d213c26 100644
--- a/jdk/test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.html
+++ b/jdk/test/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6887703
   @summary Unsigned applet can retrieve the dragged information before drop action occurs
   @author : area=dnd
diff --git a/jdk/test/java/awt/dnd/DragSourceListenerSerializationTest/DragSourceListenerSerializationTest.java b/jdk/test/java/awt/dnd/DragSourceListenerSerializationTest/DragSourceListenerSerializationTest.java
index dcb3ad5..e20aa2c 100644
--- a/jdk/test/java/awt/dnd/DragSourceListenerSerializationTest/DragSourceListenerSerializationTest.java
+++ b/jdk/test/java/awt/dnd/DragSourceListenerSerializationTest/DragSourceListenerSerializationTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4422345 8039083
   @summary tests serialization of DragSourceListeners
   @author das@sparc.spb.su area=dnd
diff --git a/jdk/test/java/awt/dnd/FileListBetweenJVMsTest/FileListBetweenJVMsTest.html b/jdk/test/java/awt/dnd/FileListBetweenJVMsTest/FileListBetweenJVMsTest.html
index af2e1e1..95c4fc6 100644
--- a/jdk/test/java/awt/dnd/FileListBetweenJVMsTest/FileListBetweenJVMsTest.html
+++ b/jdk/test/java/awt/dnd/FileListBetweenJVMsTest/FileListBetweenJVMsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 5079469
   @summary DnD of File-List across JVM adds two empty items to the list
   @author : area=dnd
diff --git a/jdk/test/java/awt/dnd/ImageDecoratedDnDInOut/ImageDecoratedDnDInOut.html b/jdk/test/java/awt/dnd/ImageDecoratedDnDInOut/ImageDecoratedDnDInOut.html
index 553069a..2bdec39 100644
--- a/jdk/test/java/awt/dnd/ImageDecoratedDnDInOut/ImageDecoratedDnDInOut.html
+++ b/jdk/test/java/awt/dnd/ImageDecoratedDnDInOut/ImageDecoratedDnDInOut.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test %W% %E%
+  @key headful
   @bug 4874070
   @summary Tests basic DnD functionality
   @author Your Name: Alexey Utkin area=dnd
diff --git a/jdk/test/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.html b/jdk/test/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.html
index b313801..88c40ab 100644
--- a/jdk/test/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.html
+++ b/jdk/test/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test %W% %E%
+  @key headful
   @bug 4874070
   @summary Tests basic DnD functionality
   @author Your Name: Alexey Utkin area=dnd
diff --git a/jdk/test/java/awt/dnd/ImageTransferTest/ImageTransferTest.java b/jdk/test/java/awt/dnd/ImageTransferTest/ImageTransferTest.java
index 3de23e0..7110751 100644
--- a/jdk/test/java/awt/dnd/ImageTransferTest/ImageTransferTest.java
+++ b/jdk/test/java/awt/dnd/ImageTransferTest/ImageTransferTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4397404 4720930
   @summary tests that images of all supported native image formats are transfered properly
   @library ../../../../lib/testlibrary
diff --git a/jdk/test/java/awt/dnd/InterJVMGetDropSuccessTest/InterJVMGetDropSuccessTest.html b/jdk/test/java/awt/dnd/InterJVMGetDropSuccessTest/InterJVMGetDropSuccessTest.html
index 2b3aa7a..65fa2e3 100644
--- a/jdk/test/java/awt/dnd/InterJVMGetDropSuccessTest/InterJVMGetDropSuccessTest.html
+++ b/jdk/test/java/awt/dnd/InterJVMGetDropSuccessTest/InterJVMGetDropSuccessTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4658741
   @summary verifies that getDropSuccess() returns correct value for inter-JVM DnD
   @author das@sparc.spb.su area=dnd
diff --git a/jdk/test/java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java b/jdk/test/java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java
index ee28fcc..997cac3 100644
--- a/jdk/test/java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java
+++ b/jdk/test/java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java
@@ -43,6 +43,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8134917
  * @summary [macosx] JOptionPane doesn't receive mouse events when opened from a drop event
  * @author Alexandr Scherbatiy
diff --git a/jdk/test/java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.html b/jdk/test/java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.html
index c19a0a0..066917f 100644
--- a/jdk/test/java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.html
+++ b/jdk/test/java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4870762
   @summary tests that a drop target JVM doesn't crash if the source doesn't export 
            data in native formats.
diff --git a/jdk/test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.html b/jdk/test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.html
index 838c497..2c17f0e 100644
--- a/jdk/test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.html
+++ b/jdk/test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4899516
   @summary Transferable has no DataFlavors when dragging from Gnome window to Swing
   @author : area=dnd
diff --git a/jdk/test/java/awt/dnd/URIListToFileListBetweenJVMsTest/URIListToFileListBetweenJVMsTest.html b/jdk/test/java/awt/dnd/URIListToFileListBetweenJVMsTest/URIListToFileListBetweenJVMsTest.html
index 19ee5de..642a06e 100644
--- a/jdk/test/java/awt/dnd/URIListToFileListBetweenJVMsTest/URIListToFileListBetweenJVMsTest.html
+++ b/jdk/test/java/awt/dnd/URIListToFileListBetweenJVMsTest/URIListToFileListBetweenJVMsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 8029565
   @summary Conversion of a URI list to File list fails
   @author Petr Pchelko <petr.pchelko@oracle.com>
diff --git a/jdk/test/java/awt/event/ComponentEvent/MovedResizedTardyEventTest/MovedResizedTardyEventTest.html b/jdk/test/java/awt/event/ComponentEvent/MovedResizedTardyEventTest/MovedResizedTardyEventTest.html
index a94f1e2..8b8ce17 100644
--- a/jdk/test/java/awt/event/ComponentEvent/MovedResizedTardyEventTest/MovedResizedTardyEventTest.html
+++ b/jdk/test/java/awt/event/ComponentEvent/MovedResizedTardyEventTest/MovedResizedTardyEventTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug          4985250
   @summary      COMPONENT_MOVED/RESIZED tardy events shouldn't be generated.
   @author       tav@sparc.spb.su
diff --git a/jdk/test/java/awt/event/HierarchyEvent/AncestorResized/AncestorResized.java b/jdk/test/java/awt/event/HierarchyEvent/AncestorResized/AncestorResized.java
index cab82b7..ba0f470 100644
--- a/jdk/test/java/awt/event/HierarchyEvent/AncestorResized/AncestorResized.java
+++ b/jdk/test/java/awt/event/HierarchyEvent/AncestorResized/AncestorResized.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6533330
   @summary ANCESTOR_RESIZED is not sent while resizing a frame. Regression caused by 6500477.
   @author anthony.petrov: area=awt.toplevel
diff --git a/jdk/test/java/awt/event/InputEvent/ButtonArraysEquality/ButtonArraysEquality.java b/jdk/test/java/awt/event/InputEvent/ButtonArraysEquality/ButtonArraysEquality.java
index 3b8628e..25884f9 100644
--- a/jdk/test/java/awt/event/InputEvent/ButtonArraysEquality/ButtonArraysEquality.java
+++ b/jdk/test/java/awt/event/InputEvent/ButtonArraysEquality/ButtonArraysEquality.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that InputEvents button masks arrays are the same
   @author Andrei Dmitriev : area=awt.event
diff --git a/jdk/test/java/awt/event/InputEvent/EventWhenTest/EventWhenTest.java b/jdk/test/java/awt/event/InputEvent/EventWhenTest/EventWhenTest.java
index 4cf9f52..0979003 100644
--- a/jdk/test/java/awt/event/InputEvent/EventWhenTest/EventWhenTest.java
+++ b/jdk/test/java/awt/event/InputEvent/EventWhenTest/EventWhenTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8046495
  * @summary Verifies that mouse/key events has always increasing 'when' timestamps
  * @author Anton Nashatyrev
diff --git a/jdk/test/java/awt/event/KeyEvent/DeadKey/DeadKeySystemAssertionDialog.java b/jdk/test/java/awt/event/KeyEvent/DeadKey/DeadKeySystemAssertionDialog.java
index c4448f0..ad7f01f 100644
--- a/jdk/test/java/awt/event/KeyEvent/DeadKey/DeadKeySystemAssertionDialog.java
+++ b/jdk/test/java/awt/event/KeyEvent/DeadKey/DeadKeySystemAssertionDialog.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 import java.awt.event.KeyEvent;
 /*
  * @test
+ * @key headful
  * @bug 8013849
  * @summary Awt assert on Hashtable.cpp:124
  * @author alexandr.scherbatiy area=awt.event
diff --git a/jdk/test/java/awt/event/KeyEvent/KeyChar/KeyCharTest.java b/jdk/test/java/awt/event/KeyEvent/KeyChar/KeyCharTest.java
index f369cf5..bcdefe1 100644
--- a/jdk/test/java/awt/event/KeyEvent/KeyChar/KeyCharTest.java
+++ b/jdk/test/java/awt/event/KeyEvent/KeyChar/KeyCharTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8022401
  * @summary Wrong key char
  * @author Alexandr Scherbatiy
diff --git a/jdk/test/java/awt/event/KeyEvent/KeyTyped/CtrlASCII.html b/jdk/test/java/awt/event/KeyEvent/KeyTyped/CtrlASCII.html
index d71c6f1..b5beb19 100644
--- a/jdk/test/java/awt/event/KeyEvent/KeyTyped/CtrlASCII.html
+++ b/jdk/test/java/awt/event/KeyEvent/KeyTyped/CtrlASCII.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug  6497426
   @summary ests that pressing of Ctrl+ascii mostly fires KEY_TYPED with a Unicode control symbols
   @author yuri.nesterenko@... area=awt.keyboard
diff --git a/jdk/test/java/awt/event/MouseEvent/AcceptExtraButton/AcceptExtraButton.java b/jdk/test/java/awt/event/MouseEvent/AcceptExtraButton/AcceptExtraButton.java
index a205879..f82ebbd 100644
--- a/jdk/test/java/awt/event/MouseEvent/AcceptExtraButton/AcceptExtraButton.java
+++ b/jdk/test/java/awt/event/MouseEvent/AcceptExtraButton/AcceptExtraButton.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that MouseEvent CTOR accepts extra mouse button numbers
   @author Andrei Dmitriev : area=awt.event
diff --git a/jdk/test/java/awt/event/MouseEvent/CheckGetMaskForButton/CheckGetMaskForButton.java b/jdk/test/java/awt/event/MouseEvent/CheckGetMaskForButton/CheckGetMaskForButton.java
index ba4f493..879aee5 100644
--- a/jdk/test/java/awt/event/MouseEvent/CheckGetMaskForButton/CheckGetMaskForButton.java
+++ b/jdk/test/java/awt/event/MouseEvent/CheckGetMaskForButton/CheckGetMaskForButton.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test %I% %E%
+  @key headful
   @bug 6315717
   @summary verifies that InputEvent.getMaskForButton() returns the same values as in InputEvent.BUTTON_DOWN_MASK
   @author Andrei Dmitriev : area=awt.event
diff --git a/jdk/test/java/awt/event/MouseEvent/ClickDuringKeypress/ClickDuringKeypress.java b/jdk/test/java/awt/event/MouseEvent/ClickDuringKeypress/ClickDuringKeypress.java
index c1bb887..2f0affd 100644
--- a/jdk/test/java/awt/event/MouseEvent/ClickDuringKeypress/ClickDuringKeypress.java
+++ b/jdk/test/java/awt/event/MouseEvent/ClickDuringKeypress/ClickDuringKeypress.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test 1.2 98/08/05
+  @key headful
   @bug 4515763
   @summary Tests that clicking mouse and pressing keys generates correct amount of click-counts
   @author andrei.dmitriev: area=awt.mouse
diff --git a/jdk/test/java/awt/event/MouseEvent/EventTimeInFuture/EventTimeInFuture.java b/jdk/test/java/awt/event/MouseEvent/EventTimeInFuture/EventTimeInFuture.java
index 7eb37bb..df2a283 100644
--- a/jdk/test/java/awt/event/MouseEvent/EventTimeInFuture/EventTimeInFuture.java
+++ b/jdk/test/java/awt/event/MouseEvent/EventTimeInFuture/EventTimeInFuture.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6451578
   @library ../../../regtesthelpers
   @build Sysout AbstractTest Util
diff --git a/jdk/test/java/awt/event/MouseEvent/FrameMouseEventAbsoluteCoordsTest/FrameMouseEventAbsoluteCoordsTest.html b/jdk/test/java/awt/event/MouseEvent/FrameMouseEventAbsoluteCoordsTest/FrameMouseEventAbsoluteCoordsTest.html
index 0396d63..062ea26 100644
--- a/jdk/test/java/awt/event/MouseEvent/FrameMouseEventAbsoluteCoordsTest/FrameMouseEventAbsoluteCoordsTest.html
+++ b/jdk/test/java/awt/event/MouseEvent/FrameMouseEventAbsoluteCoordsTest/FrameMouseEventAbsoluteCoordsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4992908
   @summary Need way to get location of MouseEvent in screen  coordinates (Unit-test)
   @author Andrei.Dmitriev area=event
diff --git a/jdk/test/java/awt/event/MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMouseEventAbsoluteCoordsTest.html b/jdk/test/java/awt/event/MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMouseEventAbsoluteCoordsTest.html
index 59a9238..88a56ac 100644
--- a/jdk/test/java/awt/event/MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMouseEventAbsoluteCoordsTest.html
+++ b/jdk/test/java/awt/event/MouseEvent/MenuDragMouseEventAbsoluteCoordsTest/MenuDragMouseEventAbsoluteCoordsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4992908
   @summary Need way to get location of MouseEvent in screen coordinates
   @author Andrei.Dmitriev area=event
diff --git a/jdk/test/java/awt/event/MouseEvent/MouseClickTest/MouseClickTest.html b/jdk/test/java/awt/event/MouseEvent/MouseClickTest/MouseClickTest.html
index a7146d7..cae92e3 100644
--- a/jdk/test/java/awt/event/MouseEvent/MouseClickTest/MouseClickTest.html
+++ b/jdk/test/java/awt/event/MouseEvent/MouseClickTest/MouseClickTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6267983
   @summary PIT: MouseClicked is triggered when the mouse is released outside the tray icon, Win32
   @author dmitry.cherepanov@... area=awt.event
diff --git a/jdk/test/java/awt/event/MouseEvent/MouseWheelEventAbsoluteCoordsTest/MouseWheelEventAbsoluteCoordsTest.html b/jdk/test/java/awt/event/MouseEvent/MouseWheelEventAbsoluteCoordsTest/MouseWheelEventAbsoluteCoordsTest.html
index 45d94bf..a86b6e0 100644
--- a/jdk/test/java/awt/event/MouseEvent/MouseWheelEventAbsoluteCoordsTest/MouseWheelEventAbsoluteCoordsTest.html
+++ b/jdk/test/java/awt/event/MouseEvent/MouseWheelEventAbsoluteCoordsTest/MouseWheelEventAbsoluteCoordsTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4992908
   @summary Need way to get location of MouseEvent in screen coordinates
   @author Andrei.Dmitriev area=event 
diff --git a/jdk/test/java/awt/event/MouseEvent/RobotLWTest/RobotLWTest.html b/jdk/test/java/awt/event/MouseEvent/RobotLWTest/RobotLWTest.html
index 6f9d1af..75b6fc2 100644
--- a/jdk/test/java/awt/event/MouseEvent/RobotLWTest/RobotLWTest.html
+++ b/jdk/test/java/awt/event/MouseEvent/RobotLWTest/RobotLWTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug 4350402
   @summary Tests that mouse behavior on LW component
   @compile ../../../regtesthelpers/Util.java
diff --git a/jdk/test/java/awt/event/MouseWheelEvent/DisabledComponent/DisabledComponent.java b/jdk/test/java/awt/event/MouseWheelEvent/DisabledComponent/DisabledComponent.java
index 4d24522..04d2efc 100644
--- a/jdk/test/java/awt/event/MouseWheelEvent/DisabledComponent/DisabledComponent.java
+++ b/jdk/test/java/awt/event/MouseWheelEvent/DisabledComponent/DisabledComponent.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6847958
   @summary MouseWheel event is getting triggered for the disabled Textarea in jdk7 b60 pit build.
   @author Dmitry Cherepanov: area=awt.event
diff --git a/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_2.html b/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_2.html
index 6b64a8d..c2f6f91 100644
--- a/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_2.html
+++ b/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_2.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6480024
   @library ../../../regtesthelpers
   @build Util Sysout AbstractTest
diff --git a/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_3.html b/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_3.html
index 3005df5..e47269a 100644
--- a/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_3.html
+++ b/jdk/test/java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_3.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 6480024
   @library ../../../regtesthelpers
   @build Util Sysout AbstractTest
diff --git a/jdk/test/java/awt/event/OtherEvents/UngrabID/UngrabID.java b/jdk/test/java/awt/event/OtherEvents/UngrabID/UngrabID.java
index 762cc4a..8af3fd3 100644
--- a/jdk/test/java/awt/event/OtherEvents/UngrabID/UngrabID.java
+++ b/jdk/test/java/awt/event/OtherEvents/UngrabID/UngrabID.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6960516
   @summary check if the ungrab event has the ID < AWTEvent.RESERVED_ID_MAX
   @author Andrei Dmitriev : area=awt.event
diff --git a/jdk/test/java/awt/font/Rotate/Shear.java b/jdk/test/java/awt/font/Rotate/Shear.java
index c39fb42..1254a8b 100644
--- a/jdk/test/java/awt/font/Rotate/Shear.java
+++ b/jdk/test/java/awt/font/Rotate/Shear.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6692979
  * @summary Verify no crashes with extreme shears.
  */
diff --git a/jdk/test/java/awt/font/Underline/UnderlineTest.java b/jdk/test/java/awt/font/Underline/UnderlineTest.java
index 101164a..e9983c1 100644
--- a/jdk/test/java/awt/font/Underline/UnderlineTest.java
+++ b/jdk/test/java/awt/font/Underline/UnderlineTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6216010
  * @summary check to see that underline thickness scales.
  * @run main UnderlineTest
diff --git a/jdk/test/java/awt/grab/EmbeddedFrameTest1/EmbeddedFrameTest1.java b/jdk/test/java/awt/grab/EmbeddedFrameTest1/EmbeddedFrameTest1.java
index 412bdaf..fd2acaa 100644
--- a/jdk/test/java/awt/grab/EmbeddedFrameTest1/EmbeddedFrameTest1.java
+++ b/jdk/test/java/awt/grab/EmbeddedFrameTest1/EmbeddedFrameTest1.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 6359129
   @summary REGRESSION: Popup menus dont respond to selections when extend outside Applet
   @author oleg.sukhodolsky area=awt.grab
diff --git a/jdk/test/java/awt/grab/MenuDragEvents/MenuDragEvents.html b/jdk/test/java/awt/grab/MenuDragEvents/MenuDragEvents.html
index 4d612af..e6a1393 100644
--- a/jdk/test/java/awt/grab/MenuDragEvents/MenuDragEvents.html
+++ b/jdk/test/java/awt/grab/MenuDragEvents/MenuDragEvents.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--
   @test
+  @key headful
   @bug 6390326
   @summary REGRESSION: Broken mouse behaviour of menus partially outside the main window.
   @author oleg.sukhodolsky: area=awt-drab
diff --git a/jdk/test/java/awt/hidpi/properties/HiDPIPropertiesUnixTest.java b/jdk/test/java/awt/hidpi/properties/HiDPIPropertiesUnixTest.java
index d123398..87111ee 100644
--- a/jdk/test/java/awt/hidpi/properties/HiDPIPropertiesUnixTest.java
+++ b/jdk/test/java/awt/hidpi/properties/HiDPIPropertiesUnixTest.java
@@ -28,7 +28,9 @@
 import java.awt.geom.AffineTransform;
 import javax.swing.UIManager;
 
-/* @test
+/*
+ * @test
+ * @key headful
  * @bug 8137571
  * @summary Linux HiDPI Graphics support
  * @author Alexander Scherbatiy
diff --git a/jdk/test/java/awt/im/InputContext/InputContextTest.java b/jdk/test/java/awt/im/InputContext/InputContextTest.java
index b36315c..a1ef69b 100644
--- a/jdk/test/java/awt/im/InputContext/InputContextTest.java
+++ b/jdk/test/java/awt/im/InputContext/InputContextTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,9 @@
  * questions.
  */
 
-/* @test
+/*
+ * @test
+ * @key headful
  * @bug 4151222
  * @bug 4150206
  * @bug 4243948
diff --git a/jdk/test/java/awt/im/InputContext/bug4625203.java b/jdk/test/java/awt/im/InputContext/bug4625203.java
index 84df5d6..002cab4 100644
--- a/jdk/test/java/awt/im/InputContext/bug4625203.java
+++ b/jdk/test/java/awt/im/InputContext/bug4625203.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4625203
  * @summary 1. install two input locales on Windows
  *          2. run this application
diff --git a/jdk/test/java/awt/image/DrawImage/EABlitTest.java b/jdk/test/java/awt/image/DrawImage/EABlitTest.java
index 023a2e7..bed1675 100644
--- a/jdk/test/java/awt/image/DrawImage/EABlitTest.java
+++ b/jdk/test/java/awt/image/DrawImage/EABlitTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8024895
  * @summary tests if changing extra alpha values are honored for transformed blits
  * @author ceisserer
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectAlphaConversionBicubic.java b/jdk/test/java/awt/image/DrawImage/IncorrectAlphaConversionBicubic.java
index 901e6f7..11bc126 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectAlphaConversionBicubic.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectAlphaConversionBicubic.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -39,6 +39,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8062164
  * @summary We should get correct alpha, when we draw to/from VolatileImage and
  *          bicubic interpolation is enabled
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectAlphaSurface2SW.java b/jdk/test/java/awt/image/DrawImage/IncorrectAlphaSurface2SW.java
index e6fb519..1e92f51 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectAlphaSurface2SW.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectAlphaSurface2SW.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8017626
  * @summary Tests drawing transparent volatile image to transparent BI.
  *          Results of the blit compatibleImage to transparent BI used for
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectBounds.java b/jdk/test/java/awt/image/DrawImage/IncorrectBounds.java
index 36e1d25..16f9384 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectBounds.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectBounds.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8000629
  * @summary Temporary backbuffer in the DrawImage should not fill background
  * outside of source image bounds.
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectClipSurface2SW.java b/jdk/test/java/awt/image/DrawImage/IncorrectClipSurface2SW.java
index 7e49350..f2bf03d 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectClipSurface2SW.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectClipSurface2SW.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -42,6 +42,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8041644 8044788
  * @summary Tests drawing volatile image to BI using different clip.
  *          Results of the blit compatibleImage to BI used for comparison.
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java b/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java
index da06f4f..089c38e 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,6 +44,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8061456
  * @summary Tests drawing BI to volatile image using different clips + xor mode.
  *          Results of the blit BI to compatibleImage is used for comparison.
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSurface2Surface.java b/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSurface2Surface.java
index c23a1cf..bfb9783 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSurface2Surface.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectClipXorModeSurface2Surface.java
@@ -40,6 +40,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8061831 8130400
  * @summary Tests drawing volatile image to volatile image using different
  *          clips + xor mode. Results of the blit compatibleImage to
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectDestinationOffset.java b/jdk/test/java/awt/image/DrawImage/IncorrectDestinationOffset.java
index 66fafdf..94280b2 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectDestinationOffset.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectDestinationOffset.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,6 +35,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8041129
  * @summary Destination offset should be correct in case of Surface->SW blit.
  *          Destination outside of the drawing area should be untouched.
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectOffset.java b/jdk/test/java/awt/image/DrawImage/IncorrectOffset.java
index e2d2867..7e90e58 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectOffset.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectOffset.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8000629
  * @summary Temporary backbuffer in the DrawImage should have correct offset.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectSourceOffset.java b/jdk/test/java/awt/image/DrawImage/IncorrectSourceOffset.java
index 5dd4f49..2120255 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectSourceOffset.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectSourceOffset.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,6 +36,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8041129
  * @summary Tests asymmetric source offsets.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java b/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java
index faaf767..52b06c9 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -44,6 +44,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8059942
  * @summary Tests rotated clip when unmanaged image is drawn to VI.
  *          Results of the blit to compatibleImage are used for comparison.
diff --git a/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageSourceOffset.java b/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageSourceOffset.java
index 98cbcd4..486d344 100644
--- a/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageSourceOffset.java
+++ b/jdk/test/java/awt/image/DrawImage/IncorrectUnmanagedImageSourceOffset.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -43,6 +43,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8029253
  * @summary Tests asymmetric source offsets when unmanaged image is drawn to VI.
  *          Results of the blit to compatibleImage are used for comparison.
diff --git a/jdk/test/java/awt/image/DrawImage/ScaledImageAlphaTest.java b/jdk/test/java/awt/image/DrawImage/ScaledImageAlphaTest.java
index 0be030a..0768ef9 100644
--- a/jdk/test/java/awt/image/DrawImage/ScaledImageAlphaTest.java
+++ b/jdk/test/java/awt/image/DrawImage/ScaledImageAlphaTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     8139183
  * @summary Test verifies whether alpha channel of a translucent
  *          image is proper or not after scaling through drawImage.
diff --git a/jdk/test/java/awt/image/DrawImage/UnmanagedDrawImagePerformance.java b/jdk/test/java/awt/image/DrawImage/UnmanagedDrawImagePerformance.java
index e08bb9d..8b403c9 100644
--- a/jdk/test/java/awt/image/DrawImage/UnmanagedDrawImagePerformance.java
+++ b/jdk/test/java/awt/image/DrawImage/UnmanagedDrawImagePerformance.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,6 +41,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8029253 8059941
  * @summary Unmanaged images should be drawn fast.
  * @author Sergey Bylokhov
diff --git a/jdk/test/java/awt/image/VolatileImage/BitmaskVolatileImage.java b/jdk/test/java/awt/image/VolatileImage/BitmaskVolatileImage.java
index 4d05ad5..c3d0ca5 100644
--- a/jdk/test/java/awt/image/VolatileImage/BitmaskVolatileImage.java
+++ b/jdk/test/java/awt/image/VolatileImage/BitmaskVolatileImage.java
@@ -34,6 +34,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7188942
  * @summary We should get correct volatile image, when we use BITMASK
  *          transparency
diff --git a/jdk/test/java/awt/image/VolatileImage/VolatileImageBug.java b/jdk/test/java/awt/image/VolatileImage/VolatileImageBug.java
index 70ca2b0..3755c63 100644
--- a/jdk/test/java/awt/image/VolatileImage/VolatileImageBug.java
+++ b/jdk/test/java/awt/image/VolatileImage/VolatileImageBug.java
@@ -26,6 +26,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8140530
  * @run main VolatileImageBug
  * @summary Creating volatileimage(0,0) should throw IAE
diff --git a/jdk/test/java/awt/image/multiresolution/MultiresolutionIconTest.java b/jdk/test/java/awt/image/multiresolution/MultiresolutionIconTest.java
index e35a98a..f83d945 100644
--- a/jdk/test/java/awt/image/multiresolution/MultiresolutionIconTest.java
+++ b/jdk/test/java/awt/image/multiresolution/MultiresolutionIconTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8150724 8151303
  * @author a.stepanov
  * @summary Check that correct resolution variants are chosen for icons
diff --git a/jdk/test/java/awt/print/PageFormat/NullPaper.java b/jdk/test/java/awt/print/PageFormat/NullPaper.java
index 897f59d..ee8231e 100644
--- a/jdk/test/java/awt/print/PageFormat/NullPaper.java
+++ b/jdk/test/java/awt/print/PageFormat/NullPaper.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 4199506
   @summary  java.awt.print.PageFormat.setpaper(Paper paper)
                  assertion test fails by not throwing
diff --git a/jdk/test/java/awt/print/PageFormat/ReverseLandscapeTest.java b/jdk/test/java/awt/print/PageFormat/ReverseLandscapeTest.java
index 5afdfc1..2c6544f 100644
--- a/jdk/test/java/awt/print/PageFormat/ReverseLandscapeTest.java
+++ b/jdk/test/java/awt/print/PageFormat/ReverseLandscapeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4254954
  * @summary PageFormat would fail on solaris when setting orientation
  */
diff --git a/jdk/test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java b/jdk/test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java
index 907e655..12a290e 100644
--- a/jdk/test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java
+++ b/jdk/test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 7108598
  * @summary Container.paint/KeyboardFocusManager.clearMostRecentFocusOwner methods deadlock
  * @library ../../regtesthelpers
diff --git a/jdk/test/java/awt/print/PrinterJob/LandscapeStackOverflow.java b/jdk/test/java/awt/print/PrinterJob/LandscapeStackOverflow.java
new file mode 100644
index 0000000..9480b3b
--- /dev/null
+++ b/jdk/test/java/awt/print/PrinterJob/LandscapeStackOverflow.java
@@ -0,0 +1,94 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+/*
+ * @test
+ * @bug 6842011
+ * @summary Test if StackOverflowError occurs during printing landscape with
+ *          scale and transform.
+ * @run main LandscapeStackOverflow
+ */
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.geom.Path2D;
+import java.awt.print.PageFormat;
+import java.awt.print.Printable;
+import java.awt.print.PrinterException;
+import java.awt.print.PrinterJob;
+import javax.print.attribute.HashPrintRequestAttributeSet;
+import javax.print.attribute.PrintRequestAttributeSet;
+import javax.print.attribute.standard.OrientationRequested;
+
+public class LandscapeStackOverflow {
+
+    public static final void main( String[] parameters ) {
+        PrinterJob printjob = PrinterJob.getPrinterJob();
+        printjob.setJobName( "Test Print Job" );
+
+        PrintRequestAttributeSet attributes = new HashPrintRequestAttributeSet();
+        attributes.add( OrientationRequested.LANDSCAPE );
+
+        boolean print = printjob.printDialog( attributes );
+        if( !print ) return;
+
+        try {
+            printjob.setPrintable( new Painter() );
+            printjob.print( attributes );
+        } catch( PrinterException exception ) {
+            exception.printStackTrace();
+        }
+    }
+}
+
+/**
+ * Paints a 2 inch by 2 inch rectangle in the center of the page.
+ */
+class Painter implements Printable {
+
+    public int print( Graphics graphics, PageFormat format, int index ) {
+        Graphics2D g2d = (Graphics2D)graphics;
+
+        double scalex = g2d.getTransform().getScaleX();
+        double scaley = g2d.getTransform().getScaleY();
+
+        double centerx = ( format.getImageableX() +
+                         ( format.getImageableWidth() / 2 ) ) * scalex;
+        double centery = ( format.getImageableY() +
+                         ( format.getImageableHeight() / 2 ) ) * scaley;
+
+        // The following 2 lines cause an error when printing in landscape.
+        g2d.scale( 1 / scalex, 1 / scaley );
+        g2d.translate( centerx, centery );
+
+        Path2D.Double path = new Path2D.Double();
+        path.moveTo( -scalex * 72, -scaley * 72 );
+        path.lineTo( -scalex * 72, scaley * 72 );
+        path.lineTo( scalex * 72, scaley * 72 );
+        path.lineTo( scalex * 72, -scaley * 72 );
+        path.closePath();
+
+        g2d.draw( path );
+
+        return index == 0 ? PAGE_EXISTS : NO_SUCH_PAGE;
+    }
+
+}
diff --git a/jdk/test/java/awt/print/PrinterJob/PageDialogMarginValidation.java b/jdk/test/java/awt/print/PrinterJob/PageDialogMarginValidation.java
new file mode 100644
index 0000000..d71f84f
--- /dev/null
+++ b/jdk/test/java/awt/print/PrinterJob/PageDialogMarginValidation.java
@@ -0,0 +1,127 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+/*
+ * @test
+ * @bug 6509729
+ * @summary  Verifies pageDialog margin validation is correct
+ * @run main/manual PageDialogMarginValidation
+ */
+import java.awt.BorderLayout;
+import java.awt.FlowLayout;
+import java.awt.print.PageFormat;
+import java.awt.print.PrinterJob;
+import javax.print.attribute.HashPrintRequestAttributeSet;
+import javax.swing.JButton;
+import javax.swing.JDialog;
+import javax.swing.JPanel;
+import javax.swing.JTextArea;
+import javax.swing.SwingUtilities;
+
+public class PageDialogMarginValidation {
+
+    private static Thread mainThread;
+    private static boolean testPassed;
+    private static boolean testGeneratedInterrupt;
+    private static PrinterJob printJob;
+
+    public static void pageMarginTest() {
+        PrinterJob pj = PrinterJob.getPrinterJob();
+        HashPrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
+        PageFormat pf;
+        pf = pj.pageDialog(aset);
+    }
+
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            doTest(PageDialogMarginValidation::pageMarginTest);
+        });
+        mainThread = Thread.currentThread();
+        try {
+            Thread.sleep(30000);
+        } catch (InterruptedException e) {
+            if (!testPassed && testGeneratedInterrupt) {
+                throw new RuntimeException(""
+                        + "Margin validation is not correct");
+            }
+        }
+        if (!testGeneratedInterrupt) {
+            throw new RuntimeException("user has not executed the test");
+        }
+    }
+
+    public static synchronized void pass() {
+        testPassed = true;
+        testGeneratedInterrupt = true;
+        mainThread.interrupt();
+    }
+
+    public static synchronized void fail() {
+        testPassed = false;
+        testGeneratedInterrupt = true;
+        mainThread.interrupt();
+    }
+
+    private static void doTest(Runnable action) {
+        String description
+                = " Initially, a page dialog will be shown.\n "
+                + " The left, right, bottom, right margin will have value 1.0.\n"
+                + " Modify right margin from 1.0 to 0.0 and press tab.\n"
+                + " Please verify the right margin changes back to 1.0. \n"
+                + " Please do the same for bottom margin.\n"
+                + " If right and bottom margin changes back to 1.0, press PASS else press fail";
+
+        final JDialog dialog = new JDialog();
+        dialog.setTitle("printSelectionTest");
+        JTextArea textArea = new JTextArea(description);
+        textArea.setEditable(false);
+        final JButton testButton = new JButton("Start Test");
+        final JButton passButton = new JButton("PASS");
+        passButton.setEnabled(false);
+        passButton.addActionListener((e) -> {
+            dialog.dispose();
+            pass();
+        });
+        final JButton failButton = new JButton("FAIL");
+        failButton.setEnabled(false);
+        failButton.addActionListener((e) -> {
+            dialog.dispose();
+            fail();
+        });
+        testButton.addActionListener((e) -> {
+            testButton.setEnabled(false);
+            action.run();
+            passButton.setEnabled(true);
+            failButton.setEnabled(true);
+        });
+        JPanel mainPanel = new JPanel(new BorderLayout());
+        mainPanel.add(textArea, BorderLayout.CENTER);
+        JPanel buttonPanel = new JPanel(new FlowLayout());
+        buttonPanel.add(testButton);
+        buttonPanel.add(passButton);
+        buttonPanel.add(failButton);
+        mainPanel.add(buttonPanel, BorderLayout.SOUTH);
+        dialog.add(mainPanel);
+        dialog.pack();
+        dialog.setVisible(true);
+    }
+}
diff --git a/jdk/test/java/awt/print/PrinterJob/PrintDlgSelectionAttribTest.java b/jdk/test/java/awt/print/PrinterJob/PrintDlgSelectionAttribTest.java
new file mode 100644
index 0000000..8640038
--- /dev/null
+++ b/jdk/test/java/awt/print/PrinterJob/PrintDlgSelectionAttribTest.java
@@ -0,0 +1,153 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+ /*
+ * @test
+ * @bug 6529030
+ * @summary  Verifies if Java Printing: Selection radiobutton gets enabled.
+ * @requires (os.family == "windows")
+ * @run main/manual PrintDlgSelectionAttribTest
+ */
+import java.awt.BorderLayout;
+import java.awt.FlowLayout;
+import java.awt.Graphics;
+import java.awt.print.Printable;
+import java.awt.print.PageFormat;
+import java.awt.print.PrinterException;
+import java.awt.print.PrinterJob;
+import javax.swing.JButton;
+import javax.swing.JDialog;
+import javax.swing.JPanel;
+import javax.swing.JTextArea;
+import javax.swing.SwingUtilities;
+
+public class PrintDlgSelectionAttribTest {
+
+    private static Thread mainThread;
+    private static boolean testPassed;
+    private static boolean testGeneratedInterrupt;
+    private static PrinterJob printJob;
+
+    public static void print() {
+
+        // Set working printable to print pages
+        printJob.setPrintable(new Printable() {
+            public int print(Graphics graphics, PageFormat pageFormat,
+                    int pageIndex) throws PrinterException {
+                return NO_SUCH_PAGE;
+            }
+        });
+
+        // Display Print dialog
+        if (!printJob.printDialog()) {
+            System.out.println("\tPrinting canceled by user");
+            return;
+        }
+
+        try {
+            printJob.print();
+        } catch (PrinterException e) {
+        }
+    }
+
+    public static void printTest() {
+        printJob = PrinterJob.getPrinterJob();
+        System.out.println(" -=- Starting printing #1 -=-");
+        print();
+        System.out.println(" -=- Starting printing #2 -=-");
+        print();
+    }
+
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            doTest(PrintDlgSelectionAttribTest::printTest);
+        });
+        mainThread = Thread.currentThread();
+        try {
+            Thread.sleep(30000);
+        } catch (InterruptedException e) {
+            if (!testPassed && testGeneratedInterrupt) {
+                throw new RuntimeException(""
+                        + "Selection radio button is enabled in print dialog");
+            }
+        }
+        if (!testGeneratedInterrupt) {
+            throw new RuntimeException("user has not executed the test");
+        }
+    }
+
+    public static synchronized void pass() {
+        testPassed = true;
+        testGeneratedInterrupt = true;
+        mainThread.interrupt();
+    }
+
+    public static synchronized void fail() {
+        testPassed = false;
+        testGeneratedInterrupt = true;
+        mainThread.interrupt();
+    }
+
+    private static void doTest(Runnable action) {
+        String description
+                = " Visual inspection of print dialog is required.\n"
+                + " Initially, a print dialog will be shown.\n "
+                + " Please verify Selection radio button is disabled.\n"
+                + " Press OK. Then 2nd print dialog will be shown.\n"
+                + " Please verify the Selection radio button is disabled\n"
+                + " in 2nd print dialog. If disabled, press PASS else press fail";
+
+        final JDialog dialog = new JDialog();
+        dialog.setTitle("printSelectionTest");
+        JTextArea textArea = new JTextArea(description);
+        textArea.setEditable(false);
+        final JButton testButton = new JButton("Start Test");
+        final JButton passButton = new JButton("PASS");
+        passButton.setEnabled(false);
+        passButton.addActionListener((e) -> {
+            dialog.dispose();
+            pass();
+        });
+        final JButton failButton = new JButton("FAIL");
+        failButton.setEnabled(false);
+        failButton.addActionListener((e) -> {
+            dialog.dispose();
+            fail();
+        });
+        testButton.addActionListener((e) -> {
+            testButton.setEnabled(false);
+            action.run();
+            passButton.setEnabled(true);
+            failButton.setEnabled(true);
+        });
+        JPanel mainPanel = new JPanel(new BorderLayout());
+        mainPanel.add(textArea, BorderLayout.CENTER);
+        JPanel buttonPanel = new JPanel(new FlowLayout());
+        buttonPanel.add(testButton);
+        buttonPanel.add(passButton);
+        buttonPanel.add(failButton);
+        mainPanel.add(buttonPanel, BorderLayout.SOUTH);
+        dialog.add(mainPanel);
+        dialog.pack();
+        dialog.setVisible(true);
+    }
+}
diff --git a/jdk/test/java/awt/print/PrinterJob/PrintToDir.java b/jdk/test/java/awt/print/PrinterJob/PrintToDir.java
index 9f695e4..d29ea28 100644
--- a/jdk/test/java/awt/print/PrinterJob/PrintToDir.java
+++ b/jdk/test/java/awt/print/PrinterJob/PrintToDir.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,11 +21,14 @@
  * questions.
  */
 
-/* @test
-   @bug 4973278 8015586
-   @run main PrintToDir
-   @summary Must throw exception when printing to an invalid filename - a dir.
-*/
+/*
+ * @test
+ * @key headful
+ * @bug 4973278 8015586
+ * @run main PrintToDir
+ * @summary Must throw exception when printing to an invalid filename - a dir.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.awt.*;
diff --git a/jdk/test/java/awt/security/Permissions.java b/jdk/test/java/awt/security/Permissions.java
index 3f0a3ad..3d96415 100644
--- a/jdk/test/java/awt/security/Permissions.java
+++ b/jdk/test/java/awt/security/Permissions.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,9 @@
  * questions.
  */
 
-/* @test
+/*
+ * @test
+ * @key headful
  * @bug 8008981
  * @summary Test that selected Toolkit and Window methods/constructors do
  *   the appropriate permission check
diff --git a/jdk/test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java b/jdk/test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java
index 25e03d6..d2c45b7 100644
--- a/jdk/test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java
+++ b/jdk/test/java/awt/security/WarningWindowDisposeTest/WarningWindowDisposeCrashTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
   @test
+  @key headful
   @bug 8041490
   @summary tests that the WarningWindow's surface is invalidated on dispose
   @author Petr Pchelko
diff --git a/jdk/test/java/awt/xembed/server/RunTestXEmbed.java b/jdk/test/java/awt/xembed/server/RunTestXEmbed.java
index 232e24c..fb8314b 100644
--- a/jdk/test/java/awt/xembed/server/RunTestXEmbed.java
+++ b/jdk/test/java/awt/xembed/server/RunTestXEmbed.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4931668 7146533
  * @summary Tests XEmbed server/client functionality
  * @author Denis Mikhalkin: area=awt.xembed
diff --git a/jdk/test/java/beans/Introspector/AnonymousClassBeanPropertyTest.java b/jdk/test/java/beans/Introspector/AnonymousClassBeanPropertyTest.java
index b5fc366..32cdc05 100644
--- a/jdk/test/java/beans/Introspector/AnonymousClassBeanPropertyTest.java
+++ b/jdk/test/java/beans/Introspector/AnonymousClassBeanPropertyTest.java
@@ -38,8 +38,7 @@
  * @author a.stepanov
  * @run main AnonymousClassBeanPropertyTest
  */
-
-
+//TODO in final revision each test should have only one checkInfo/checkAlternate
 public class AnonymousClassBeanPropertyTest {
 
     private final static String  DESCRIPTION = "TEST";
@@ -655,8 +654,6 @@
         System.out.println("OK = " + ok);
         passed = passed && ok;
 
-        // TODO: please uncomment/update after 8132973 fix
-        /*
         IGetSet testGetSet_3 = new IGetSet() {
 
             private double x;
@@ -688,10 +685,7 @@
         };
         ok = checkInfo(testGetSet_3.getClass(), "IGetSet-3", true);
         System.out.println("OK = " + ok);
-        ok2 = checkAlternativeInfo(testGetSet_3.getClass(), "IGetSet-3");
-        System.out.println("OK = " + ok2);
-        passed = passed && (ok || ok2);
-        */
+        passed = passed && ok;
 
         //----------------------------------------------------------------------
 
@@ -746,8 +740,6 @@
         System.out.println("OK = " + ok);
         passed = passed && ok;
 
-        // TODO: please uncomment/update after 8132973 fix
-        /*
         IGetSetByIndex testGetSetByIndex_3 = new IGetSetByIndex() {
 
             private double x[] = {X, X};
@@ -783,11 +775,7 @@
         };
         ok = checkInfo(testGetSetByIndex_3.getClass(), "IGetSetByIndex-3", true);
         System.out.println("OK = " + ok);
-        ok2 = checkAlternativeInfo(
-            testGetSetByIndex_3.getClass(), "IGetSetByIndex-3");
-        System.out.println("OK = " + ok2);
-        passed = passed && (ok || ok2);
-        */
+        passed = passed && ok;
 
         //----------------------------------------------------------------------
 
@@ -855,7 +843,7 @@
         passed = passed && ok;
         */
 
-        // TODO: please uncomment/update after 8132973 fix
+        // TODO: please uncomment/update after 8155013 fix
         /*
         IGetSetBoth testGetSetBoth_3 = new IGetSetBoth() {
 
@@ -978,8 +966,6 @@
         System.out.println("OK = " + ok2);
         passed = passed && (ok || ok2);
 
-        // TODO: please uncomment/update after 8132973 fix
-        /*
         IIs testIs_4 = new IIs() {
 
             private boolean b;
@@ -1010,11 +996,7 @@
         };
         ok = checkInfo(testIs_4.getClass(), "IIs-4", false);
         System.out.println("OK = " + ok);
-        ok2 = checkAlternativeInfo(testIs_4.getClass(), "IIs-4");
-        System.out.println("OK = " + ok2);
-        passed = passed && (ok || ok2);
-        */
-
+        passed = passed && ok;
 
         //----------------------------------------------------------------------
 
diff --git a/jdk/test/java/beans/Introspector/BeanPropertyTest.java b/jdk/test/java/beans/Introspector/BeanPropertyTest.java
index 5e84aaa..a62a4e1 100644
--- a/jdk/test/java/beans/Introspector/BeanPropertyTest.java
+++ b/jdk/test/java/beans/Introspector/BeanPropertyTest.java
@@ -38,8 +38,6 @@
  * @author a.stepanov
  * @run main BeanPropertyTest
  */
-
-
 public class BeanPropertyTest {
 
     private final static String  DESCRIPTION = "TEST";
@@ -853,8 +851,7 @@
         public void removePropertyChangeListener(PropertyChangeListener l) {}
     }
 
-    // JDK-8155103
-    public static enum E {
+    public enum E {
 
         ONE,
         TWO {
@@ -889,7 +886,7 @@
 
     }
 
-    private static enum EB {
+    private enum EB {
 
         TRUE(true), FALSE(false);
 
@@ -1036,7 +1033,7 @@
             G13.class, // S13.class, // TODO: please update after 8154756 fix
             // G14.class, S14.class, // TODO: please update after 8132888 fix or
                                      // remove these cases if it is not an issue
-            // GS.class, // TODO: please update after 8132973 fix
+            GS.class,
             getX.class, setX.class,
             Self.class, SelfArr.class
         };
@@ -1064,9 +1061,7 @@
         // enums
 
         Class<?> enumCases[] = {
-
-            // TODO: uncomment/update after 8155103 fix
-            //E.class, E.TWO.getClass(), EB.class
+            E.class, E.TWO.getClass(), EB.class
         };
 
         int ne = 1;
@@ -1076,7 +1071,7 @@
             ne++;
 
             BeanInfo i;
-            try { i = Introspector.getBeanInfo(c, Object.class); }
+            try { i = Introspector.getBeanInfo(c, Enum.class); }
             catch (IntrospectionException e) { throw new RuntimeException(e); }
             boolean ok = checkInfo(i, !ignoreVals(c));
             System.out.println(ok ? "OK" : "NOK");
diff --git a/jdk/test/java/beans/Introspector/TestMethodOrderDependence.java b/jdk/test/java/beans/Introspector/TestMethodOrderDependence.java
new file mode 100644
index 0000000..119ef8c
--- /dev/null
+++ b/jdk/test/java/beans/Introspector/TestMethodOrderDependence.java
@@ -0,0 +1,143 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.beans.BeanInfo;
+import java.beans.Introspector;
+import java.beans.PropertyDescriptor;
+import java.io.Serializable;
+import java.util.AbstractList;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Vector;
+
+/**
+ * @test
+ * @bug 8156043
+ */
+public final class TestMethodOrderDependence {
+
+    public static class Base {
+
+        public Object getI() {
+            return null;
+        }
+
+        public Object getE() {
+            return null;
+        }
+    }
+
+    public static class Super extends Base {
+
+        public Number getI() {
+            return null;
+        }
+        public Comparable<?> getE() {
+            return null;
+        }
+    }
+
+    public static class Sub extends Super {
+
+        public Integer getI() {
+            return null;
+        }
+
+        public void setFoo(Character foo) {
+        }
+
+        public void setFoo(String foo) {
+        }
+
+        public void setFoo(Object[] foo) {
+        }
+
+        public void setFoo(Enum foo) {
+        }
+
+        public void setFoo(Long foo) {
+        }
+
+        public void setFoo(Long[] foo) {
+        }
+
+        public void setFoo(Long foo, int i) {
+        }
+
+        public void setFoo(Object foo) {
+        }
+
+        public void setFoo(AbstractList foo) {
+        }
+
+        public void setFoo(ArrayList foo) {
+        }
+
+        public void setFoo(Integer foo) {
+        }
+
+        public void setFoo(Number foo) {
+        }
+
+        public void setFoo(Comparable<?> foo) {
+        }
+
+        public void setFoo(Serializable foo) {
+        }
+
+        public void setFoo(Vector<?> foo) {
+        }
+
+        public void setFoo(long foo) {
+        }
+
+        public void setFoo(int foo) {
+        }
+
+        public Enum getE() {
+            return null;
+        }
+
+        public void setE(Enum e) {
+        }
+
+        public void setE(Float e) {
+        }
+
+        public void setE(Long e) {
+        }
+    }
+
+    public static void main(final String[] args) throws Exception {
+        final BeanInfo beanInfo = Introspector.getBeanInfo(Sub.class);
+        final PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
+        for (final PropertyDescriptor pd : pds) {
+            System.err.println("pd = " + pd);
+            final Class<?> type = pd.getPropertyType();
+            if (type != Class.class && type != Long[].class
+                    && type != Integer.class && type != Enum.class) {
+                throw new RuntimeException(Arrays.toString(pds));
+            }
+        }
+    }
+}
diff --git a/jdk/test/java/beans/Statement/ClassForName/ClassForName.java b/jdk/test/java/beans/Statement/ClassForName/ClassForName.java
new file mode 100644
index 0000000..e819df8
--- /dev/null
+++ b/jdk/test/java/beans/Statement/ClassForName/ClassForName.java
@@ -0,0 +1,152 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.beans.Expression;
+import java.beans.Statement;
+
+/**
+ * @test
+ * @bug 8146313
+ * @run main/othervm ClassForName
+ * @run main/othervm/policy=java.policy -Djava.security.manager ClassForName
+ */
+public final class ClassForName {
+
+    static boolean initialized;
+
+    static final String[] classes = {
+            "A.A", "java.lang.String", "ClassForName$Bean", "sun.awt.SunToolkit"
+    };
+
+    static final ClassLoader appl = new Object() {}.getClass().getClassLoader();
+
+    static final ClassLoader[] loaders = {
+            String.class.getClassLoader(), null, appl
+    };
+
+    static boolean[] inits = {false, true};
+
+    public static void main(final String[] args) throws Exception {
+        // Check that the Class.forName(name, boolean, classloader) is executed
+        // when requested via JavaBeans
+        simpleTest();
+
+        // Check that the Class.forName and Expression returns the same classes
+        for (final String cls : classes) {
+            complexTest1Args(cls);
+            for (final ClassLoader loader : loaders) {
+                for (final boolean init : inits) {
+                    complexTest3Args(cls, loader, init);
+                }
+            }
+        }
+    }
+
+    private static void simpleTest() throws Exception {
+        // load the class without initialization
+        new Statement(Class.class, "forName", new Object[]{
+                "ClassForName$Bean", false, Bean.class.getClassLoader()
+        }).execute();
+        if (initialized) {
+            throw new RuntimeException("Should not be initialized");
+        }
+
+        // load the class and initialize it
+        new Statement(Class.class, "forName", new Object[]{
+                "ClassForName$Bean", true, Bean.class.getClassLoader()
+        }).execute();
+        if (!initialized) {
+            throw new RuntimeException("Should be initialized");
+        }
+    }
+
+    private static void complexTest1Args(final String cls) {
+        // load via standard Class.forName();
+        Class<?> classForName = null;
+        try {
+            classForName = Class.forName(cls);
+        } catch (final Exception ignored) {
+        }
+
+        // load via Expression.execute()
+        Class<?> classStatement = null;
+        try {
+            final Expression exp = new Expression(Class.class, "forName",
+                                                  new Object[]{
+                                                          cls
+                                                  });
+            exp.execute();
+            classStatement = (Class<?>) exp.getValue();
+        } catch (final Exception ignored) {
+        }
+        if (classForName != classStatement) {
+            System.err.println(classForName);
+            System.err.println(classStatement);
+            throw new RuntimeException();
+        }
+    }
+
+    private static void complexTest3Args(final String cls,
+                                         final ClassLoader loader,
+                                         final boolean init) {
+        // load via standard Class.forName();
+        Class<?> classForName = null;
+        Class<?> excForName = null;
+        try {
+            classForName = Class.forName(cls, init, loader);
+        } catch (final Exception e) {
+            excForName = e.getClass();
+        }
+
+        // load via Expression.execute()
+        Class<?> classStatement = null;
+        Class<?> excStatement = null;
+        try {
+            final Expression exp = new Expression(Class.class, "forName",
+                                                  new Object[]{
+                                                          cls, init, loader
+                                                  });
+            exp.execute();
+            classStatement = (Class<?>) exp.getValue();
+        } catch (final Exception e) {
+            excStatement = e.getClass();
+        }
+        if (classForName != classStatement) {
+            System.err.println(classForName);
+            System.err.println(classStatement);
+            throw new RuntimeException();
+        }
+        if (excForName != excStatement) {
+            System.err.println(excForName);
+            System.err.println(excStatement);
+            throw new RuntimeException();
+        }
+    }
+
+    public static final class Bean {
+
+        static {
+            initialized = true;
+        }
+    }
+}
diff --git a/jdk/test/java/beans/Statement/ClassForName/java.policy b/jdk/test/java/beans/Statement/ClassForName/java.policy
new file mode 100644
index 0000000..1c8a0e7
--- /dev/null
+++ b/jdk/test/java/beans/Statement/ClassForName/java.policy
@@ -0,0 +1 @@
+;
\ No newline at end of file
diff --git a/jdk/test/java/beans/XMLDecoder/8028054/TestConstructorFinder.java b/jdk/test/java/beans/XMLDecoder/8028054/TestConstructorFinder.java
index d940b38..1609bb1 100644
--- a/jdk/test/java/beans/XMLDecoder/8028054/TestConstructorFinder.java
+++ b/jdk/test/java/beans/XMLDecoder/8028054/TestConstructorFinder.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,8 +34,12 @@
  * @summary Tests that cached constructors have synchronized access
  * @author Sergey Malenkov
  * @modules java.desktop/com.sun.beans.finder
+ *          java.activation
+ *          java.transaction
+ *          java.corba
+ *          java.xml.bind
  * @compile -XDignore.symbol.file TestConstructorFinder.java
- * @run main TestConstructorFinder
+ * @run main/othervm -addmods java.activation -addmods java.transaction -addmods java.corba -addmods java.xml.bind TestConstructorFinder
  */
 
 public class TestConstructorFinder {
diff --git a/jdk/test/java/beans/XMLDecoder/8028054/TestMethodFinder.java b/jdk/test/java/beans/XMLDecoder/8028054/TestMethodFinder.java
index 9d3147f..ad7ca0b 100644
--- a/jdk/test/java/beans/XMLDecoder/8028054/TestMethodFinder.java
+++ b/jdk/test/java/beans/XMLDecoder/8028054/TestMethodFinder.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,8 +34,12 @@
  * @summary Tests that cached methods have synchronized access
  * @author Sergey Malenkov
  * @modules java.desktop/com.sun.beans.finder
+ *          java.activation
+ *          java.transaction
+ *          java.corba
+ *          java.xml.bind
  * @compile -XDignore.symbol.file TestMethodFinder.java
- * @run main TestMethodFinder
+ * @run main/othervm -addmods java.activation -addmods java.transaction -addmods java.corba -addmods java.xml.bind TestMethodFinder
  */
 
 public class TestMethodFinder {
diff --git a/jdk/test/java/lang/Class/GetModuleTest.java b/jdk/test/java/lang/Class/GetModuleTest.java
index 566721c..918e4dd 100644
--- a/jdk/test/java/lang/Class/GetModuleTest.java
+++ b/jdk/test/java/lang/Class/GetModuleTest.java
@@ -25,6 +25,7 @@
  * @test
  * @summary Exercise Class#getModule
  * @modules java.base/jdk.internal.org.objectweb.asm
+ *          java.base/jdk.internal.misc
  *          java.desktop
  * @run testng GetModuleTest
  */
@@ -35,7 +36,7 @@
 
 import jdk.internal.org.objectweb.asm.ClassWriter;
 import static jdk.internal.org.objectweb.asm.Opcodes.*;
-import sun.misc.Unsafe;
+import jdk.internal.misc.Unsafe;
 
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
diff --git a/jdk/test/java/lang/ClassLoader/EndorsedDirs.java b/jdk/test/java/lang/ClassLoader/EndorsedDirs.java
index a6293a3..a0357b4 100644
--- a/jdk/test/java/lang/ClassLoader/EndorsedDirs.java
+++ b/jdk/test/java/lang/ClassLoader/EndorsedDirs.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,20 +24,23 @@
 /*
  * @test
  * @bug 8060206 8067366
+ * @library /lib/testlibrary
  * @summary Endorsed standards and override mechanism is removed
  */
 
-import java.io.*;
-import java.util.*;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
+import jdk.testlibrary.ProcessTools;
+
+import java.util.stream.Stream;
 
 public class EndorsedDirs {
+    private static String TEST_CLASSES = System.getProperty("test.classes", ".");
+
     private static String[] VALUES = new String[] {
             null,
             "",
             "\"\""
     };
+
     public static void main(String... args) throws Exception {
         String value = System.getProperty("java.endorsed.dirs");
         System.out.format("java.endorsed.dirs = '%s'%n", value);
@@ -64,59 +67,20 @@
         start(2, "-Djava.endorsed.dirs=\"\"");
     }
 
-    static ProcessBuilder newProcessBuilder(int testParam, String... args) throws Exception {
-        List<String> commands = new ArrayList<>();
-        String java = System.getProperty("java.home") + "/bin/java";
-        commands.add(java);
-        for (String s : args) {
-            commands.add(s);
-        }
-        String cpath = System.getProperty("test.classes", ".");
-        commands.add("-cp");
-        commands.add(cpath);
-        commands.add("EndorsedDirs");
-        commands.add(String.valueOf(testParam));
-
-        System.out.println("Testing " + commands.stream().collect(Collectors.joining(" ")));
-        return new ProcessBuilder(commands);
+    static String[] launchOptions(int testParam, String... args) {
+        return Stream.concat(Stream.of(args),
+                             Stream.of("-cp", TEST_CLASSES, "EndorsedDirs",
+                                       String.valueOf(testParam)))
+                     .toArray(String[]::new);
     }
 
     static void start(int testParam, String... args) throws Exception {
-        start(newProcessBuilder(testParam, args), false);
+        ProcessTools.executeTestJava(launchOptions(testParam, args))
+                    .shouldHaveExitValue(0);
     }
 
     static void fatalError(int testParam, String... args) throws Exception {
-        start(newProcessBuilder(testParam, args), true);
-    }
-
-    static void start(ProcessBuilder pb, boolean fatalError) throws Exception {
-        final Process process = pb.start();
-        BufferedReader errorStream = new BufferedReader(
-                new InputStreamReader(process.getErrorStream()));
-        BufferedReader outStream = new BufferedReader(
-                new InputStreamReader(process.getInputStream()));
-        String errorLine;
-        StringBuilder errors = new StringBuilder();
-        String outLines;
-        while ((errorLine = errorStream.readLine()) != null) {
-            errors.append(errorLine).append("\n");
-        }
-        while ((outLines = outStream.readLine()) != null) {
-            System.out.println(outLines);
-        }
-        errorLine = errors.toString();
-        System.err.println(errorLine);
-        process.waitFor(1000, TimeUnit.MILLISECONDS);
-        int exitStatus = process.exitValue();
-        if (fatalError) {
-            if (exitStatus == 0) {
-                throw new RuntimeException("Expected fatal error");
-            }
-            if (!errorLine.contains("Could not create the Java Virtual Machine")) {
-                throw new RuntimeException(errorLine);
-            }
-        } else if (exitStatus != 0) {
-            throw new RuntimeException("Failed: " + errorLine);
-        }
+        ProcessTools.executeTestJava(launchOptions(testParam, args))
+                    .stderrShouldContain("Could not create the Java Virtual Machine");
     }
 }
diff --git a/jdk/test/java/lang/ClassLoader/ExtDirs.java b/jdk/test/java/lang/ClassLoader/ExtDirs.java
index 3443a47..0b80bcd 100644
--- a/jdk/test/java/lang/ClassLoader/ExtDirs.java
+++ b/jdk/test/java/lang/ClassLoader/ExtDirs.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,21 +24,24 @@
 /*
  * @test
  * @bug 8060206 8067366
+ * @library /lib/testlibrary
  * @summary Extension mechanism is removed
  */
 
-import java.io.*;
+import jdk.testlibrary.ProcessTools;
+
 import java.lang.Integer;
-import java.util.*;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 public class ExtDirs {
+    private static String TEST_CLASSES = System.getProperty("test.classes", ".");
+
     private static String[] VALUES = new String[] {
             null,
             "",
             "\"\""
     };
+
     public static void main(String... args) throws Exception {
         String value = System.getProperty("java.ext.dirs");
         System.out.format("java.ext.dirs = '%s'%n", value);
@@ -65,59 +68,20 @@
         start(2, "-Djava.ext.dirs=\"\"");
     }
 
-    static ProcessBuilder newProcessBuilder(int testParam, String... args) throws Exception {
-        List<String> commands = new ArrayList<>();
-        String java = System.getProperty("java.home") + "/bin/java";
-        commands.add(java);
-        for (String s : args) {
-            commands.add(s);
-        }
-        String cpath = System.getProperty("test.classes", ".");
-        commands.add("-cp");
-        commands.add(cpath);
-        commands.add("ExtDirs");
-        commands.add(String.valueOf(testParam));
-
-        System.out.println("Testing " + commands.stream().collect(Collectors.joining(" ")));
-        return new ProcessBuilder(commands);
+    static String[] launchOptions(int testParam, String... args) {
+        return Stream.concat(Stream.of(args),
+                             Stream.of("-cp", TEST_CLASSES, "ExtDirs",
+                                       String.valueOf(testParam)))
+                     .toArray(String[]::new);
     }
 
     static void start(int testParam, String... args) throws Exception {
-        start(newProcessBuilder(testParam, args), false);
+        ProcessTools.executeTestJava(launchOptions(testParam, args))
+                    .shouldHaveExitValue(0);
     }
 
     static void fatalError(int testParam, String... args) throws Exception {
-        start(newProcessBuilder(testParam, args), true);
-    }
-
-    static void start(ProcessBuilder pb, boolean fatalError) throws Exception {
-        final Process process = pb.start();
-        BufferedReader errorStream = new BufferedReader(
-                new InputStreamReader(process.getErrorStream()));
-        BufferedReader outStream = new BufferedReader(
-                new InputStreamReader(process.getInputStream()));
-        String errorLine;
-        StringBuilder errors = new StringBuilder();
-        String outLines;
-        while ((errorLine = errorStream.readLine()) != null) {
-            errors.append(errorLine).append("\n");
-        }
-        while ((outLines = outStream.readLine()) != null) {
-            System.out.println(outLines);
-        }
-        errorLine = errors.toString();
-        System.err.println(errorLine);
-        process.waitFor(1000, TimeUnit.MILLISECONDS);
-        int exitStatus = process.exitValue();
-        if (fatalError) {
-            if (exitStatus == 0) {
-                throw new RuntimeException("Expected fatal error");
-            }
-            if (!errorLine.contains("Could not create the Java Virtual Machine")) {
-                throw new RuntimeException(errorLine);
-            }
-        } else if (exitStatus != 0) {
-            throw new RuntimeException("Failed: " + errorLine);
-        }
+        ProcessTools.executeTestJava(launchOptions(testParam, args))
+                    .stderrShouldContain("Could not create the Java Virtual Machine");
     }
 }
diff --git a/jdk/test/java/lang/ProcessBuilder/SkipTest.java b/jdk/test/java/lang/ProcessBuilder/SkipTest.java
new file mode 100644
index 0000000..329e3a1
--- /dev/null
+++ b/jdk/test/java/lang/ProcessBuilder/SkipTest.java
@@ -0,0 +1,175 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8155808
+ * @run main SkipTest
+ * @summary verify skip method of Process Input Stream
+ */
+
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+public class SkipTest {
+    private static final String javaExe =
+            System.getProperty("java.home") +
+                    File.separator + "bin" + File.separator + "java";
+
+    private static final String classpath =
+            System.getProperty("java.class.path");
+
+    static final int BLOCK_SIZE = 10000;
+
+
+    public static void main(String[] args) throws Throwable {
+
+        // Start a Process to generate the test data to stdout and stderr
+        ProcessBuilder pb = new ProcessBuilder(javaExe, "-classpath", classpath, "SkipTest$GenerateData");
+        System.out.printf("cmd: %s%n", pb.command());
+        Process process = pb.start();
+
+        /*
+         * Verify the data expected is received mixing reads and skip.
+         */
+        try (InputStream in = process.getInputStream()) {
+
+            // Note: Process.getInputStream() actually returns a BufferedInputStream whose
+            // skip() method works perfectly, partially obscuring the bug. Only when the
+            // BufferedInputStream's buffer is drained, and it passes the skip() call to
+            // the underlying native stream, does the problem occur.
+
+            long n = in.skip(-1);
+            if (n != 0) {
+                throw new AssertionError("skip(-1) should return 0");
+            }
+            n = in.skip(0);
+            if (n != 0) {
+                throw new AssertionError("skip(0) should return 0");
+            }
+
+            // Now iterate all the data blocks
+            int header;
+            for (int expectedHeader = 'A'; (header = in.read()) != -1; expectedHeader++) {
+                // The header byte should be simple 'A' to 'Z'.
+                // When the bug hits, we will get lowercase letters instead.
+                if (header != expectedHeader) {
+                    throw new AssertionError("header char wrong, expected: " +
+                            expectedHeader + ", actual: " + header);
+                }
+
+                // Handle the data bytes.
+                // If the correct number of bytes are not skipped,
+                // then subsequent reads become out-of-sync;
+                int remaining = BLOCK_SIZE;
+                do {
+                    remaining -= in.skip(remaining);
+                } while (remaining != 0);
+            }
+            n = in.skip(1);
+            if (n != 0) {
+                throw new AssertionError("skip(1) at eof should return 0");
+            }
+        }
+
+        /**
+         * Do the same for the standard error stream.
+         */
+        try (InputStream in = process.getErrorStream()) {
+            long n = in.skip(-1);
+            if (n != 0) {
+                throw new AssertionError("skip(-1) should return 0");
+            }
+            n = in.skip(0);
+            if (n != 0) {
+                throw new AssertionError("skip(0) should return 0");
+            }
+
+            // Now iterate all the data blocks
+            int header;
+            for (int expectedHeader = 'A'; (header = in.read()) != -1; expectedHeader++) {
+                // The header byte should be simple 'A' to 'Z'.
+                // When the bug hits, we will get lowercase letters instead.
+                if (header != expectedHeader) {
+                    throw new AssertionError("header char wrong, expected: " +
+                            expectedHeader + ", actual: " + header);
+                }
+
+                // Handle the data bytes.
+                // If the correct number of bytes are not skipped,
+                // then subsequent reads become out-of-sync;
+                int remaining = BLOCK_SIZE;
+                do {
+                    remaining -= in.skip(remaining);
+                } while (remaining != 0);
+            }
+            n = in.skip(1);
+            if (n != 0) {
+                throw new AssertionError("skip(1) at eof should return 0");
+            }
+        }
+    }
+
+    /**
+     * Alternate main to generate the test data to standard output
+     * and standard error.
+     */
+    static class GenerateData {
+
+        public static void main(String[] args) {
+            // Generate test data containing a series of data blocks of length BLOCK_SIZE,
+            // each with a one-byte header. For example's sake, the "header" is a capital letter,
+            // and the "data" is the lowercase version of that letter repeated BLOCK_SIZE times:
+            try (OutputStream out = new BufferedOutputStream(System.out)) {
+                for (int header = 'A'; header <= 'Z'; header++) {
+                    out.write(header);
+
+                    int data = Character.toLowerCase(header);
+                    for (int i = 0; i < BLOCK_SIZE; i++) {
+                        out.write(data);
+                    }
+                }
+            } catch (IOException ioe) {
+                ioe.printStackTrace();
+                System.exit(1);
+            }
+            // Generate the same data to the error output
+            try (OutputStream err = new BufferedOutputStream(System.err)) {
+                for (int header = 'A'; header <= 'Z'; header++) {
+                    err.write(header);
+
+                    int data = Character.toLowerCase(header);
+                    for (int i = 0; i < BLOCK_SIZE; i++) {
+                        err.write(data);
+                    }
+                }
+            } catch (IOException ioe) {
+                ioe.printStackTrace();
+                System.exit(1);
+            }
+        }
+    }
+}
diff --git a/jdk/test/java/lang/annotation/EqualityTest.java b/jdk/test/java/lang/annotation/EqualityTest.java
new file mode 100644
index 0000000..8f93663
--- /dev/null
+++ b/jdk/test/java/lang/annotation/EqualityTest.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8071859
+ * @summary Check annotation equality behavior against the invocation handler
+ */
+
+import java.lang.annotation.*;
+import java.lang.reflect.*;
+
+@TestAnnotation
+public class EqualityTest {
+    public static void main(String... args) throws Exception {
+        TestAnnotation annotation =
+            EqualityTest.class.getAnnotation(TestAnnotation.class);
+        InvocationHandler handler = Proxy.getInvocationHandler(annotation);
+
+        testEquality(annotation, handler,    false);
+        testEquality(annotation, annotation, true);
+        testEquality(handler,    handler,    true);
+    }
+
+    private static void testEquality(Object a, Object b, boolean expected) {
+        boolean result = a.equals(b);
+        if (result != b.equals(a) || result != expected)
+            throw new RuntimeException("Unexpected result");
+    }
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface TestAnnotation {
+}
+
diff --git a/jdk/test/java/lang/instrument/ManyMethodsBenchmarkAgent.java b/jdk/test/java/lang/instrument/ManyMethodsBenchmarkAgent.java
index 89b958e..9453610 100644
--- a/jdk/test/java/lang/instrument/ManyMethodsBenchmarkAgent.java
+++ b/jdk/test/java/lang/instrument/ManyMethodsBenchmarkAgent.java
@@ -29,6 +29,7 @@
  *
  * @modules jdk.compiler
  *          java.instrument
+ *          jdk.zipfs
  * @run build ManyMethodsBenchmarkApp ManyMethodsBenchmarkAgent
  * @run shell MakeJAR3.sh ManyMethodsBenchmarkAgent 'Can-Retransform-Classes: true'
  * @run main/othervm -javaagent:ManyMethodsBenchmarkAgent.jar ManyMethodsBenchmarkApp
diff --git a/jdk/test/java/lang/instrument/PremainClass/NoPremainAgentTest.java b/jdk/test/java/lang/instrument/PremainClass/NoPremainAgentTest.java
index bd64239..a59b6b7 100644
--- a/jdk/test/java/lang/instrument/PremainClass/NoPremainAgentTest.java
+++ b/jdk/test/java/lang/instrument/PremainClass/NoPremainAgentTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  * @summary test when the agent's class is missing the premain() function.
  * @library /lib/testlibrary
  * @modules java.management
+ *          java.instrument
  * @run build jdk.testlibrary.* DummyMain
  * @run shell ../MakeJAR3.sh NoPremainAgent
  * @run main/othervm -XX:-CreateCoredumpOnCrash NoPremainAgentTest
diff --git a/jdk/test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java b/jdk/test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java
index 66633ea..3423f7c 100644
--- a/jdk/test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java
+++ b/jdk/test/java/lang/instrument/PremainClass/ZeroArgPremainAgentTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
  * @summary test when the agent's class has a zero arg premain() function.
  * @library /lib/testlibrary
  * @modules java.management
+ *          java.instrument
  * @run build jdk.testlibrary.* DummyMain
  * @run shell ../MakeJAR3.sh ZeroArgPremainAgent
  * @run main/othervm -XX:-CreateCoredumpOnCrash ZeroArgPremainAgentTest
diff --git a/jdk/test/java/lang/instrument/RedefineMethodInBacktrace.sh b/jdk/test/java/lang/instrument/RedefineMethodInBacktrace.sh
index dd75bcb..8d8cbc8 100644
--- a/jdk/test/java/lang/instrument/RedefineMethodInBacktrace.sh
+++ b/jdk/test/java/lang/instrument/RedefineMethodInBacktrace.sh
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,7 +27,7 @@
 # @author Stefan Karlsson
 #
 # @modules java.instrument
-#          java.management
+#          jdk.management
 # @run shell MakeJAR3.sh RedefineMethodInBacktraceAgent 'Can-Redefine-Classes: true'
 # @run build RedefineMethodInBacktraceTarget RedefineMethodInBacktraceApp
 # @run shell RedefineMethodInBacktrace.sh
diff --git a/jdk/test/java/lang/invoke/PrivateInvokeTest.java b/jdk/test/java/lang/invoke/PrivateInvokeTest.java
index 1475564..fdcb2ef 100644
--- a/jdk/test/java/lang/invoke/PrivateInvokeTest.java
+++ b/jdk/test/java/lang/invoke/PrivateInvokeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,8 +34,6 @@
 import java.lang.reflect.*;
 import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.logging.Level;
-import java.util.logging.Logger;
 import org.junit.*;
 import static org.junit.Assert.*;
 
diff --git a/jdk/test/java/lang/module/AutomaticModulesTest.java b/jdk/test/java/lang/module/AutomaticModulesTest.java
index 93dd5f7..680a727 100644
--- a/jdk/test/java/lang/module/AutomaticModulesTest.java
+++ b/jdk/test/java/lang/module/AutomaticModulesTest.java
@@ -24,14 +24,14 @@
 /**
  * @test
  * @library /lib/testlibrary
- * @build AutomaticModulesTest ModuleUtils
+ * @build AutomaticModulesTest ModuleUtils JarUtils
  * @run testng AutomaticModulesTest
  * @summary Basic tests for automatic modules
  */
 
 import java.io.IOException;
-import java.io.OutputStream;
 import java.lang.module.Configuration;
+import java.lang.module.FindException;
 import java.lang.module.ModuleDescriptor;
 import java.lang.module.ModuleDescriptor.Exports;
 import java.lang.module.ModuleDescriptor.Requires.Modifier;
@@ -46,11 +46,9 @@
 import java.util.Optional;
 import java.util.Set;
 import java.util.jar.Attributes;
-import java.util.jar.JarEntry;
-import java.util.jar.JarFile;
-import java.util.jar.JarOutputStream;
 import java.util.jar.Manifest;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
@@ -62,10 +60,8 @@
     private static final Path USER_DIR
          = Paths.get(System.getProperty("user.dir"));
 
-
     @DataProvider(name = "names")
     public Object[][] createNames() {
-
         return new Object[][] {
 
             // JAR file name                module-name[/version]
@@ -98,12 +94,22 @@
         };
     }
 
+    // JAR file names that do not map to a legal module name
+    @DataProvider(name = "badnames")
+    public Object[][] createBadNames() {
+        return new Object[][]{
+
+            { ".jar",     null },
+            { "_.jar",    null }
+
+        };
+    }
+
     /**
      * Test mapping of JAR file names to module names
      */
     @Test(dataProvider = "names")
     public void testNames(String fn, String mid) throws IOException {
-
         String[] s = mid.split("/");
         String mn = s[0];
         String vs = (s.length == 2) ? s[1] : null;
@@ -112,7 +118,7 @@
         Path jf = dir.resolve(fn);
 
         // create empty JAR file
-        createJarFile(jf);
+        createDummyJarFile(jf);
 
         // create a ModuleFinder to find modules in the directory
         ModuleFinder finder = ModuleFinder.of(dir);
@@ -128,17 +134,32 @@
         } else {
             assertEquals(descriptor.version().get().toString(), vs);
         }
+    }
 
+
+    /**
+     * Test impossible mapping of JAR files to modules names
+     */
+    @Test(dataProvider = "badnames", expectedExceptions = FindException.class)
+    public void testBadNames(String fn, String ignore) throws IOException {
+        Path dir = Files.createTempDirectory(USER_DIR, "mods");
+        Path jf = dir.resolve(fn);
+
+        // create empty JAR file
+        createDummyJarFile(jf);
+
+        // should throw FindException
+        ModuleFinder.of(dir).findAll();
     }
 
 
     /**
      * Test all packages are exported
      */
-    public void testExports() throws IOException {
+    public void testPackages() throws IOException {
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        createJarFile(dir.resolve("m1.jar"),
-                      "p/C1.class", "p/C2.class", "q/C1.class");
+        createDummyJarFile(dir.resolve("m1.jar"),
+                           "p/C1.class", "p/C2.class", "q/C1.class");
 
         ModuleFinder finder = ModuleFinder.of(dir);
 
@@ -158,6 +179,84 @@
 
 
     /**
+     * Test class file in JAR file where the entry does not correspond to a
+     * legal package name.
+     */
+    @Test(expectedExceptions = FindException.class)
+    public void testBadPackage() throws IOException {
+        Path dir = Files.createTempDirectory(USER_DIR, "mods");
+        createDummyJarFile(dir.resolve("m1.jar"), "p-/T.class");
+
+        // should throw FindException
+        ModuleFinder.of(dir).findAll();
+    }
+
+
+    /**
+     * Test JAR file with META-INF/services configuration file
+     */
+    public void testServicesConfiguration() throws IOException {
+        String service = "p.S";
+        String provider = "p.S1";
+
+        Path tmpdir = Files.createTempDirectory(USER_DIR, "tmp");
+        Path services = tmpdir.resolve("META-INF").resolve("services");
+        Files.createDirectories(services);
+        Files.write(services.resolve(service), Set.of(provider));
+        Path dir = Files.createTempDirectory(USER_DIR, "mods");
+        JarUtils.createJarFile(dir.resolve("m1.jar"), tmpdir);
+
+        ModuleFinder finder = ModuleFinder.of(dir);
+
+        Optional<ModuleReference> mref = finder.find("m1");
+        assertTrue(mref.isPresent(), "m1 not found");
+
+        ModuleDescriptor descriptor = mref.get().descriptor();
+        assertTrue(descriptor.provides().size() == 1);
+        assertTrue(descriptor.provides().containsKey(service));
+        ModuleDescriptor.Provides provides = descriptor.provides().get(service);
+        assertTrue(provides.providers().size() == 1);
+        assertTrue(provides.providers().contains((provider)));
+    }
+
+
+    // META-INF/services configuration file/entries that are not legal
+    @DataProvider(name = "badproviders")
+    public Object[][] createProviders() {
+        return new Object[][] {
+
+                // service type         provider type
+
+                { "p.S",                "-" },
+                { "p.S",                ".S1" },
+                { "p.S",                "S1." },
+
+                { "-",                  "p.S1" },
+                { ".S",                 "p.S1" },
+        };
+    }
+
+    /**
+     * Test JAR file with META-INF/services configuration file with bad
+     * values or names.
+     */
+    @Test(dataProvider = "badproviders", expectedExceptions = FindException.class)
+    public void testBadServicesConfiguration(String service, String provider)
+        throws IOException
+    {
+        Path tmpdir = Files.createTempDirectory(USER_DIR, "tmp");
+        Path services = tmpdir.resolve("META-INF").resolve("services");
+        Files.createDirectories(services);
+        Files.write(services.resolve(service), Set.of(provider));
+        Path dir = Files.createTempDirectory(USER_DIR, "mods");
+        JarUtils.createJarFile(dir.resolve("m1.jar"), tmpdir);
+
+        // should throw FindException
+        ModuleFinder.of(dir).findAll();
+    }
+
+
+    /**
      * Test that a JAR file with a Main-Class attribute results
      * in a module with a main class.
      */
@@ -170,7 +269,7 @@
         attrs.put(Attributes.Name.MAIN_CLASS, mainClass);
 
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        createJarFile(dir.resolve("m1.jar"), man);
+        createDummyJarFile(dir.resolve("m1.jar"), man);
 
         ModuleFinder finder = ModuleFinder.of(dir);
 
@@ -184,6 +283,36 @@
     }
 
 
+    // Main-Class files that do not map to a legal Java identifier
+    @DataProvider(name = "badmainclass")
+    public Object[][] createBadMainClass() {
+        return new Object[][]{
+
+            { "p-.Main",     null },
+            { ".Main",       null }
+
+        };
+    }
+
+    /**
+     * Test that a JAR file with a Main-Class attribute that is not a valid
+     * Java identifier
+     */
+    @Test(dataProvider = "badmainclass", expectedExceptions = FindException.class)
+    public void testBadMainClass(String mainClass, String ignore) throws IOException {
+        Manifest man = new Manifest();
+        Attributes attrs = man.getMainAttributes();
+        attrs.put(Attributes.Name.MANIFEST_VERSION, "1.0.0");
+        attrs.put(Attributes.Name.MAIN_CLASS, mainClass);
+
+        Path dir = Files.createTempDirectory(USER_DIR, "mods");
+        createDummyJarFile(dir.resolve("m1.jar"), man);
+
+        // should throw FindException
+        ModuleFinder.of(dir).findAll();
+    }
+
+
     /**
      * Basic test of a configuration created with automatic modules.
      *   m1 requires m2*
@@ -201,8 +330,8 @@
 
         // m2 and m3 are automatic modules
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        createJarFile(dir.resolve("m2.jar"), "p/T.class");
-        createJarFile(dir.resolve("m3.jar"), "q/T.class");
+        createDummyJarFile(dir.resolve("m2.jar"), "p/T.class");
+        createDummyJarFile(dir.resolve("m3.jar"), "q/T.class");
 
         // module finder locates m1 and the modules in the directory
         ModuleFinder finder
@@ -252,7 +381,6 @@
      *   m4*
      */
     public void testInConfiguration2() throws IOException {
-
         ModuleDescriptor descriptor1
             =  new ModuleDescriptor.Builder("m1")
                 .requires("m2")
@@ -267,8 +395,8 @@
 
         // m3 and m4 are automatic modules
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        createJarFile(dir.resolve("m3.jar"), "p/T.class");
-        createJarFile(dir.resolve("m4.jar"), "q/T.class");
+        createDummyJarFile(dir.resolve("m3.jar"), "p/T.class");
+        createDummyJarFile(dir.resolve("m4.jar"), "q/T.class");
 
         // module finder locates m1 and the modules in the directory
         ModuleFinder finder
@@ -315,7 +443,6 @@
         assertTrue(m4.reads().contains(m2));
         assertTrue(m4.reads().contains(m3));
         testReadAllBootModules(cf, "m4");    // m4 reads all modules in boot layer
-
     }
 
 
@@ -327,7 +454,6 @@
      *   m4*
      */
     public void testInConfiguration3() throws IOException {
-
         ModuleDescriptor descriptor1
             =  new ModuleDescriptor.Builder("m1")
                 .requires("m2")
@@ -342,8 +468,8 @@
 
         // m3 and m4 are automatic modules
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        createJarFile(dir.resolve("m3.jar"), "p/T.class");
-        createJarFile(dir.resolve("m4.jar"), "q/T.class");
+        createDummyJarFile(dir.resolve("m3.jar"), "p/T.class");
+        createDummyJarFile(dir.resolve("m4.jar"), "q/T.class");
 
         // module finder locates m1 and the modules in the directory
         ModuleFinder finder
@@ -396,7 +522,6 @@
         assertTrue(m4.reads().contains(m2));
         assertTrue(m4.reads().contains(m3));
         testReadAllBootModules(cf, "m4");    // m4 reads all modules in boot layer
-
     }
 
 
@@ -412,8 +537,8 @@
 
         // m2 and m3 are simple JAR files
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        createJarFile(dir.resolve("m2.jar"), "p/T.class");
-        createJarFile(dir.resolve("m3.jar"), "q/T2.class");
+        createDummyJarFile(dir.resolve("m2.jar"), "p/T.class");
+        createDummyJarFile(dir.resolve("m3.jar"), "q/T2.class");
 
         // module finder locates m1 and the modules in the directory
         ModuleFinder finder
@@ -447,7 +572,7 @@
      */
     public void testMisc() throws IOException {
         Path dir = Files.createTempDirectory(USER_DIR, "mods");
-        Path m1_jar = createJarFile(dir.resolve("m1.jar"), "p/T.class");
+        Path m1_jar = createDummyJarFile(dir.resolve("m1.jar"), "p/T.class");
 
         ModuleFinder finder = ModuleFinder.of(m1_jar);
 
@@ -535,38 +660,32 @@
      * Creates a JAR file, optionally with a manifest, and with the given
      * entries. The entries will be empty in the resulting JAR file.
      */
-    static Path createJarFile(Path file, Manifest man, String... entries)
+    static Path createDummyJarFile(Path jarfile, Manifest man, String... entries)
         throws IOException
     {
-        try (OutputStream out = Files.newOutputStream(file)) {
-            try (JarOutputStream jos = new JarOutputStream(out)) {
+        Path dir = Files.createTempDirectory(USER_DIR, "tmp");
 
-                if (man != null) {
-                    JarEntry je = new JarEntry(JarFile.MANIFEST_NAME);
-                    jos.putNextEntry(je);
-                    man.write(jos);
-                    jos.closeEntry();
-                }
-
-                for (String entry : entries) {
-                    JarEntry je = new JarEntry(entry);
-                    jos.putNextEntry(je);
-                    jos.closeEntry();
-                }
-
-            }
+        for (String entry : entries) {
+            Path file = dir.resolve(entry);
+            Path parent = file.getParent();
+            if (parent != null)
+                Files.createDirectories(parent);
+            Files.createFile(file);
         }
-        return file;
+
+        Path[] paths = Stream.of(entries).map(Paths::get).toArray(Path[]::new);
+        JarUtils.createJarFile(jarfile, man, dir, paths);
+        return jarfile;
     }
 
     /**
      * Creates a JAR file and with the given entries. The entries will be empty
      * in the resulting JAR file.
      */
-    static Path createJarFile(Path file, String... entries)
+    static Path createDummyJarFile(Path jarfile, String... entries)
         throws IOException
     {
-        return createJarFile(file, null, entries);
+        return createDummyJarFile(jarfile, null, entries);
     }
 
 }
diff --git a/jdk/test/java/lang/module/ModuleDescriptorTest.java b/jdk/test/java/lang/module/ModuleDescriptorTest.java
index 61dfc4e..402d645 100644
--- a/jdk/test/java/lang/module/ModuleDescriptorTest.java
+++ b/jdk/test/java/lang/module/ModuleDescriptorTest.java
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @modules java.base/jdk.internal.module
  * @run testng ModuleDescriptorTest
  * @summary Basic test for java.lang.module.ModuleDescriptor and its builder
  */
@@ -47,6 +48,7 @@
 
 import static java.lang.module.ModuleDescriptor.Requires.Modifier.*;
 
+import jdk.internal.module.ModuleInfoWriter;
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
 import static org.testng.Assert.*;
@@ -133,8 +135,8 @@
 
     @Test(expectedExceptions = IllegalArgumentException.class)
     public void testRequiresSelfWithRequires() {
-        Requires r = requires(null, "m");
-        new Builder("m").requires(r);
+        Requires r = requires(null, "foo");
+        new Builder("foo").requires(r);
     }
 
     @Test(expectedExceptions = IllegalArgumentException.class)
@@ -171,6 +173,21 @@
         assertTrue(r2.compareTo(r1) == -n);
     }
 
+    public void testRequiresCompareWithDifferentModifiers() {
+        Requires r1 = requires(EnumSet.of(PUBLIC), "foo");
+        Requires r2 = requires(EnumSet.of(SYNTHETIC), "foo");
+        int n = Integer.compare(1 << PUBLIC.ordinal(), 1 << SYNTHETIC.ordinal());
+        assertTrue(r1.compareTo(r2) == n);
+        assertTrue(r2.compareTo(r1) == -n);
+    }
+
+    public void testRequiresCompareWithSameModifiers() {
+        Requires r1 = requires(EnumSet.of(SYNTHETIC), "foo");
+        Requires r2 = requires(EnumSet.of(SYNTHETIC), "foo");
+        assertTrue(r1.compareTo(r2) == 0);
+        assertTrue(r2.compareTo(r1) == 0);
+    }
+
     public void testRequiresToString() {
         Requires r = requires(EnumSet.noneOf(Modifier.class), "foo");
         assertTrue(r.toString().contains("foo"));
@@ -330,7 +347,7 @@
 
     private Provides provides(String st, String pc) {
         return new Builder("foo")
-            .provides("p.S", pc)
+            .provides(st, pc)
             .build()
             .provides()
             .values()
@@ -668,6 +685,37 @@
         ModuleDescriptor.read(bb);
     }
 
+    // The requires table for java.base must be 0 length
+    @Test(expectedExceptions = InvalidModuleDescriptorException.class)
+    public void testReadOfJavaBaseWithRequires() {
+        ModuleDescriptor descriptor
+            = new ModuleDescriptor.Builder("java.base")
+                .requires("other")
+                .build();
+        ByteBuffer bb = ModuleInfoWriter.toByteBuffer(descriptor);
+        ModuleDescriptor.read(bb);
+    }
+
+    // The requires table must have an entry for java.base
+    @Test(expectedExceptions = InvalidModuleDescriptorException.class)
+    public void testReadWithEmptyRequires() {
+        ModuleDescriptor descriptor = new ModuleDescriptor.Builder("m1").build();
+        ByteBuffer bb = ModuleInfoWriter.toByteBuffer(descriptor);
+        ModuleDescriptor.read(bb);
+    }
+
+    // The requires table must have an entry for java.base
+    @Test(expectedExceptions = InvalidModuleDescriptorException.class)
+    public void testReadWithNoRequiresBase() {
+        ModuleDescriptor descriptor
+            = new ModuleDescriptor.Builder("m1")
+                .requires("m2")
+                .build();
+        ByteBuffer bb = ModuleInfoWriter.toByteBuffer(descriptor);
+        ModuleDescriptor.read(bb);
+    }
+
+
     public void testReadWithNull() throws Exception {
         Module base = Object.class.getModule();
 
diff --git a/jdk/test/java/lang/reflect/Module/AddExportsTest.java b/jdk/test/java/lang/reflect/Module/AddExportsTest.java
index 020f38e..0ac9906 100644
--- a/jdk/test/java/lang/reflect/Module/AddExportsTest.java
+++ b/jdk/test/java/lang/reflect/Module/AddExportsTest.java
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @modules java.desktop
  * @run main/othervm -XaddExports:java.desktop/sun.awt=java.base AddExportsTest
  * @run main/othervm -XaddExports:java.desktop/sun.awt=ALL-UNNAMED AddExportsTest
  * @summary Test Module isExported methods with exports changed by -AddExportsTest
diff --git a/jdk/test/java/lang/reflect/Module/access/AccessTest.java b/jdk/test/java/lang/reflect/Module/access/AccessTest.java
index 35e58a9..5e5ee03 100644
--- a/jdk/test/java/lang/reflect/Module/access/AccessTest.java
+++ b/jdk/test/java/lang/reflect/Module/access/AccessTest.java
@@ -35,7 +35,7 @@
 /**
  * @test
  * @library /lib/testlibrary
- * @modules java.compiler
+ * @modules jdk.compiler
  * @build AccessTest CompilerUtils jdk.testlibrary.*
  * @run testng AccessTest
  * @summary Driver for test that checks access to public members in exported
diff --git a/jdk/test/java/nio/file/Path/PathOps.java b/jdk/test/java/nio/file/Path/PathOps.java
index 4aa1369..f9964e5 100644
--- a/jdk/test/java/nio/file/Path/PathOps.java
+++ b/jdk/test/java/nio/file/Path/PathOps.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,23 +22,24 @@
  */
 
 /* @test
- * @bug 4313887 6838333 6925932 7006126 8037945 8072495
+ * @bug 4313887 6838333 6925932 7006126 8037945 8072495 8140449
  * @summary Unit test for java.nio.file.Path path operations
  */
 
-import java.nio.file.*;
+import java.nio.file.FileSystems;
+import java.nio.file.InvalidPathException;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 
 public class PathOps {
 
     static final java.io.PrintStream out = System.out;
 
-    private String input;
     private Path path;
     private Exception exc;
 
     private PathOps(String first, String... more) {
         out.println();
-        input = first;
         try {
             path = FileSystems.getDefault().getPath(first, more);
             out.format("%s -> %s", first, path);
@@ -87,6 +88,14 @@
         return this;
     }
 
+    PathOps hasRoot() {
+        out.println("check has root");
+        checkPath();
+        if (path.getRoot() == null)
+            fail();
+        return this;
+    }
+
     PathOps parent(String expected) {
         out.println("check parent");
         checkPath();
@@ -147,6 +156,11 @@
         return this;
     }
 
+    PathOps makeAbsolute() {
+        this.path = path.toAbsolutePath();
+        return this;
+    }
+
     PathOps absolute() {
         out.println("check path is absolute");
         checkPath();
@@ -209,6 +223,11 @@
         return new PathOps(first, more);
     }
 
+    static PathOps test(Path path) {
+        return new PathOps(path.toString());
+    }
+
+
     // -- PathOpss --
 
     static void header(String s) {
@@ -219,6 +238,7 @@
 
     static void doWindowsTests() {
         header("Windows specific tests");
+        Path cwd = Paths.get("").toAbsolutePath();
 
         // construction
         test("C:\\")
@@ -417,6 +437,52 @@
         test("C:\\abc").absolute();
         test("\\\\server\\share\\").absolute();
         test("").notAbsolute();
+        test(cwd).absolute();
+
+        // toAbsolutePath
+        test("")
+            .makeAbsolute()
+            .absolute()
+            .hasRoot()
+            .string(cwd.toString());
+        test(".")
+            .makeAbsolute()
+            .absolute()
+            .hasRoot()
+            .string(cwd.toString() + "\\.");
+        test("foo")
+            .makeAbsolute()
+            .absolute()
+            .hasRoot()
+            .string(cwd.toString() + "\\foo");
+
+        String rootAsString = cwd.getRoot().toString();
+        if (rootAsString.length() == 3
+                && rootAsString.charAt(1) == ':'
+                && rootAsString.charAt(2) == '\\') {
+            Path root = Paths.get(rootAsString.substring(0, 2));
+
+            // C:
+            test(root)
+                .makeAbsolute()
+                .absolute()
+                .hasRoot()
+                .string(cwd.toString());
+
+            // C:.
+            test(root + ".")
+                .makeAbsolute()
+                .absolute()
+                .hasRoot()
+                .string(cwd.toString() + "\\.");
+
+            // C:foo
+            test(root + "foo")
+                .makeAbsolute()
+                .absolute()
+                .hasRoot()
+                .string(cwd.toString() + "\\foo");
+        }
 
         // resolve
         test("C:\\")
@@ -506,19 +572,29 @@
             .resolveSibling("C:\\", "C:\\");
 
         // relativize
+        test("foo")
+            .relativize("foo", "")
+            .relativize("bar", "..\\bar")
+            .relativize("..", "..\\..")
+            .relativize("", "..");
         test("foo\\bar")
             .relativize("foo\\bar", "")
-            .relativize("foo", "..");
+            .relativize("foo", "..")
+            .relativize("gus", "..\\..\\gus")
+            .relativize("..", "..\\..\\..")
+            .relativize("", "..\\..");
         test("C:\\a\\b\\c")
             .relativize("C:\\a", "..\\..")
-            .relativize("C:\\a\\b\\c", "");
+            .relativize("C:\\a\\b\\c", "")
+            .relativize("C:\\x", "..\\..\\..\\x");
         test("\\\\server\\share\\foo")
             .relativize("\\\\server\\share\\bar", "..\\bar")
             .relativize("\\\\server\\share\\foo", "");
         test("")
-            .relativize("", "")
             .relativize("a", "a")
-            .relativize("a\\b\\c", "a\\b\\c");
+            .relativize("a\\b\\c", "a\\b\\c")
+            .relativize("..", "..")
+            .relativize("", "");
 
         // normalize
         test("C:\\")
@@ -672,6 +748,7 @@
 
     static void doUnixTests() {
         header("Unix specific tests");
+        Path cwd = Paths.get("").toAbsolutePath();
 
         // construction
         test("/")
@@ -840,7 +917,22 @@
             .notAbsolute();
         test("")
             .notAbsolute();
+        test(cwd)
+            .absolute();
 
+        // toAbsolutePath
+        test("/")
+            .makeAbsolute()
+            .absolute();
+        test("/tmp")
+            .makeAbsolute()
+            .absolute();
+        test("tmp")
+            .makeAbsolute()
+            .absolute();
+        test("")
+            .makeAbsolute()
+            .absolute();
 
         // resolve
         test("/tmp")
diff --git a/jdk/test/java/security/Provider/DefaultProviderList.java b/jdk/test/java/security/Provider/DefaultProviderList.java
index ba63c76..4aaeffe 100644
--- a/jdk/test/java/security/Provider/DefaultProviderList.java
+++ b/jdk/test/java/security/Provider/DefaultProviderList.java
@@ -23,7 +23,7 @@
 
 /**
  * @test
- * @bug 7191662 8157469
+ * @bug 7191662 8157469 8157489
  * @summary Ensure non-java.base providers can be found by ServiceLoader
  * @author Valerie Peng
  */
@@ -33,6 +33,7 @@
 import java.util.Arrays;
 import java.util.Iterator;
 import java.util.ServiceLoader;
+import java.lang.reflect.Module;
 
 public class DefaultProviderList {
 
@@ -43,37 +44,54 @@
 
         ServiceLoader<Provider> sl = ServiceLoader.load(Provider.class);
         boolean failed = false;
+
+        Module baseMod = Object.class.getModule();
+
+        // Test#1: check that all non-base security providers can be found
+        // through ServiceLoader
         for (Provider p : defaultProvs) {
             String pName = p.getName();
-            // only providers outside java.base are loaded by ServiceLoader
-            if (pName.equals("SUN") || pName.equals("SunRsaSign") ||
-                pName.equals("SunJCE") || pName.equals("SunJSSE") ||
-                pName.equals("Apple")) {
-                System.out.println("Skip test for provider " + pName);
-                continue;
-            }
-            String pClassName = p.getClass().getName();
-            // Should be able to find each one through ServiceLoader
-            Iterator<Provider> provIter = sl.iterator();
-            boolean found = false;
-            while (provIter.hasNext()) {
-                Provider pFromSL = provIter.next();
-                if (pFromSL.getClass().getName().equals(pClassName)) {
-                    found = true;
-                    break;
+            Class pClass = p.getClass();
+
+            if (pClass.getModule() != baseMod) {
+                String pClassName = pClass.getName();
+                Iterator<Provider> provIter = sl.iterator();
+                boolean found = false;
+                while (provIter.hasNext()) {
+                    Provider pFromSL = provIter.next();
+
+                    // check for match by class name because PKCS11 provider
+                    // will have a different name after being configured.
+                    if (pFromSL.getClass().getName().equals(pClassName)) {
+                        found = true;
+                        System.out.println("SL found provider " + pName);
+                        break;
+                    }
+                }
+                if (!found) {
+                    failed = true;
+                    System.out.println("Error: SL cannot find provider " +
+                        pName);
                 }
             }
-            System.out.println("Found " + p.getName() + " = " + found);
-            if (!found) {
+        }
+
+        // Test#2: check that all security providers found through ServiceLoader
+        // are not from base module
+        Iterator<Provider> provIter = sl.iterator();
+        while (provIter.hasNext()) {
+            Provider pFromSL = provIter.next();
+            if (pFromSL.getClass().getModule() == baseMod) {
                 failed = true;
-                System.out.println("Error: no provider class " + pClassName +
-                    " found");
+                System.out.println("Error: base provider " +
+                    pFromSL.getName() + " loaded by SL");
             }
         }
+
         if (!failed) {
             System.out.println("Test Passed");
         } else {
-            throw new Exception("One or more provider not loaded by SL");
+            throw new Exception("One or more tests failed");
         }
     }
 }
diff --git a/jdk/test/java/time/test/java/util/TestFormatter.java b/jdk/test/java/time/test/java/util/TestFormatter.java
index 5cf2163..903e48b 100644
--- a/jdk/test/java/time/test/java/util/TestFormatter.java
+++ b/jdk/test/java/time/test/java/util/TestFormatter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -47,7 +47,7 @@
 
 /* @test
  * @summary Unit test for j.u.Formatter threeten date/time support
- * @bug 8003680 8012638
+ * @bug 8003680 8043387 8012638
  */
 @Test
 public class TestFormatter {
@@ -235,10 +235,6 @@
         }
     }
 
-    private String toZoneIdStr(String expected) {
-        return expected.replaceAll("(?:GMT|UTC)(?<off>[+\\-]?[0-9]{2}:[0-9]{2})", "${off}");
-    }
-
     private String toZoneOffsetStr(String expected) {
         return expected.replaceAll("(?:GMT|UTC)(?<off>[+\\-]?[0-9]{2}:[0-9]{2})", "${off}")
                        .replaceAll("GMT|UTC|UT", "Z");
@@ -247,7 +243,7 @@
     private void testZoneId(Locale locale, ChronoZonedDateTime<?> zdt, Calendar cal) {
         String fmtStr = "z:[%tz] z:[%1$Tz] Z:[%1$tZ] Z:[%1$TZ]";
         printFmtStr(locale, fmtStr);
-        String expected = toZoneIdStr(test(fmtStr, locale, null, cal));
+        String expected = test(fmtStr, locale, null, cal);
         test(fmtStr, locale, expected, zdt);
         // get a new cal with fixed tz
         Calendar cal0 = Calendar.getInstance();
@@ -263,7 +259,7 @@
         // datetime + zid
         fmtStr = "c:[%tc] c:[%1$Tc]";
         printFmtStr(locale, fmtStr);
-        expected = toZoneIdStr(test(fmtStr, locale, null, cal));
+        expected = test(fmtStr, locale, null, cal);
         test(fmtStr, locale, expected, zdt);
     }
 
diff --git a/jdk/test/java/util/Locale/Bug8135061.java b/jdk/test/java/util/Locale/Bug8135061.java
new file mode 100644
index 0000000..3bb1fe4
--- /dev/null
+++ b/jdk/test/java/util/Locale/Bug8135061.java
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8135061
+ * @summary Checks that the Locale.lookup executes properly without throwing
+ *          any exception for some specific language ranges
+ * @run main Bug8135061
+ */
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
+import java.util.Locale.LanguageRange;
+
+public class Bug8135061 {
+
+    public static void main(String[] args) {
+
+        /* lookup should run without throwing any exception and
+         * return null as the language range does not match with the language
+         * tag
+         */
+        List<LanguageRange> ranges = LanguageRange.parse("nv");
+        Collection<Locale> locales = Collections.singleton(Locale.ENGLISH);
+
+        try {
+            Locale match = Locale.lookup(ranges, locales);
+            if (match != null) {
+                throw new RuntimeException("Locale.lookup returned non-null: "
+                        + match);
+            }
+        } catch (Exception ex) {
+            throw new RuntimeException("[Locale.lookup failed on language"
+                    + " range: " + ranges + " and language tags "
+                    + locales + "]", ex);
+        }
+
+        /* lookup should run without throwing any exception and
+         * return "nv" as the matching tag
+         */
+        ranges = LanguageRange.parse("i-navajo");
+        locales = Collections.singleton(new Locale("nv"));
+
+        try {
+            Locale match = Locale.lookup(ranges, locales);
+            if (!match.toLanguageTag().equals("nv")) {
+                throw new RuntimeException("Locale.lookup returned unexpected"
+                        + " result: " + match);
+            }
+        } catch (Exception ex) {
+            throw new RuntimeException("[Locale.lookup failed on language"
+                    + " range: " + ranges + " and language tags "
+                    + locales + "]", ex);
+        }
+
+    }
+
+}
diff --git a/jdk/test/java/util/Locale/Bug8159420.java b/jdk/test/java/util/Locale/Bug8159420.java
new file mode 100644
index 0000000..f09e0f2
--- /dev/null
+++ b/jdk/test/java/util/Locale/Bug8159420.java
@@ -0,0 +1,224 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8159420
+ * @summary Checks the proper execution of LanguageRange.parse() and
+ *          other LocaleMatcher methods when used in the locales like
+ *          Turkish, because the toLowerCase() method is invoked in the
+ *          parse() and other LocaleMatcher methods.
+ *          e.g. "HI-Deva".toLowerCase() in the Turkish locale returns
+ *          "hı-deva", where 'ı' is the LATIN SMALL LETTER DOTLESS I character
+ *          which is not allowed in the language ranges/tags.
+ * @compile -encoding utf-8 Bug8159420.java
+ * @run main Bug8159420
+ */
+
+import java.util.List;
+import java.util.Locale;
+import java.util.Locale.LanguageRange;
+import java.util.Locale.FilteringMode;
+import java.util.LinkedHashMap;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.ArrayList;
+import static java.util.Locale.FilteringMode.EXTENDED_FILTERING;
+import static java.util.Locale.FilteringMode.AUTOSELECT_FILTERING;
+
+public class Bug8159420 {
+
+    static boolean err = false;
+
+    public static void main(String[] args) {
+
+        Locale origLocale = null;
+        try {
+
+            origLocale = Locale.getDefault();
+            Locale.setDefault(new Locale("tr", "TR"));
+            testParse();
+            testFilter(EXTENDED_FILTERING);
+            testFilter(AUTOSELECT_FILTERING);
+            testLookup();
+            testMapEquivalents();
+
+            if (err) {
+                throw new RuntimeException("[LocaleMatcher method(s) in turkish"
+                        + " locale failed]");
+            }
+
+        } finally {
+            Locale.setDefault(origLocale);
+        }
+
+    }
+
+    /* Before the fix, the testParse() method was throwing
+     * IllegalArgumentException in Turkish Locale
+     */
+    private static void testParse() {
+        String ranges = "HI-Deva, ja-hIrA-JP, RKI";
+        try {
+            LanguageRange.parse(ranges);
+        } catch (Exception ex) {
+            System.err.println("[testParse() failed on range string: "
+                    + ranges + "] due to "+ex);
+            err = true;
+        }
+    }
+
+    /* Before the fix, the testFilter() method was returning empty list in
+     * Turkish Locale
+     */
+    private static void testFilter(FilteringMode mode) {
+
+        String ranges = "hi-IN, itc-Ital";
+        String tags = "hi-IN, itc-Ital";
+        List<LanguageRange> priorityList = LanguageRange.parse(ranges);
+        List<Locale> tagList = generateLocales(tags);
+        String actualLocales = showLocales(Locale.filter(priorityList, tagList, mode));
+        String expectedLocales = "hi-IN, itc-Ital";
+
+        if (!expectedLocales.equals(actualLocales)) {
+            System.err.println("testFilter(" + mode + ") failed on language ranges:"
+                    + " [" + ranges + "] and language tags: [" + tags + "]");
+            err = true;
+        }
+    }
+
+    /* Before the fix, the testLookup() method was returning null in Turkish
+     * Locale
+     */
+    private static void testLookup() {
+        boolean error = false;
+        String ranges = "hi-IN, itc-Ital";
+        String tags = "hi-IN, itc-Ital";
+        List<LanguageRange> priorityList = LanguageRange.parse(ranges);
+        List<Locale> localeList = generateLocales(tags);
+        Locale actualLocale
+                = Locale.lookup(priorityList, localeList);
+        String actualLocaleString = "";
+
+        if (actualLocale != null) {
+            actualLocaleString = actualLocale.toLanguageTag();
+        } else {
+            error = true;
+        }
+
+        String expectedLocale = "hi-IN";
+
+        if (!expectedLocale.equals(actualLocaleString)) {
+            error = true;
+        }
+
+        if (error) {
+            System.err.println("testLookup() failed on language ranges:"
+                    + " [" + ranges + "] and language tags: [" + tags + "]");
+            err = true;
+        }
+
+    }
+
+    /* Before the fix, testMapEquivalents() method was returning only "hi-in"
+     * in Turkish Locale
+     */
+    private static void testMapEquivalents() {
+
+        String ranges = "HI-IN";
+        List<LanguageRange> priorityList = LanguageRange.parse(ranges);
+        HashMap<String, List<String>> map = new LinkedHashMap<>();
+        List<String> equivalentList = new ArrayList<>();
+        equivalentList.add("HI");
+        equivalentList.add("HI-Deva");
+        map.put("HI", equivalentList);
+
+        List<LanguageRange> expected = new ArrayList<>();
+        expected.add(new LanguageRange("hi-in"));
+        expected.add(new LanguageRange("hi-deva-in"));
+        List<LanguageRange> got
+                = LanguageRange.mapEquivalents(priorityList, map);
+
+        if (!areEqual(expected, got)) {
+            System.err.println("testMapEquivalents() failed");
+            err = true;
+        }
+
+    }
+
+    private static boolean areEqual(List<LanguageRange> expected,
+            List<LanguageRange> got) {
+
+        boolean error = false;
+        if (expected.equals(got)) {
+            return !error;
+        }
+
+        List<LanguageRange> cloneExpected = new ArrayList<>(expected);
+        cloneExpected.removeAll(got);
+        if (!cloneExpected.isEmpty()) {
+            error = true;
+            System.err.println("Found missing range(s): " + cloneExpected);
+        }
+
+        // not creating the 'got' clone as the list will not be used after this
+        got.removeAll(expected);
+        if (!got.isEmpty()) {
+            error = true;
+            System.err.println("Found extra range(s): " + got);
+        }
+        return !error;
+    }
+
+    private static List<Locale> generateLocales(String tags) {
+        if (tags == null) {
+            return null;
+        }
+
+        List<Locale> localeList = new ArrayList<>();
+        if (tags.equals("")) {
+            return localeList;
+        }
+        String[] t = tags.split(", ");
+        for (String tag : t) {
+            localeList.add(Locale.forLanguageTag(tag));
+        }
+        return localeList;
+    }
+
+    private static String showLocales(List<Locale> locales) {
+        StringBuilder sb = new StringBuilder();
+
+        Iterator<Locale> itr = locales.iterator();
+        if (itr.hasNext()) {
+            sb.append(itr.next().toLanguageTag());
+        }
+        while (itr.hasNext()) {
+            sb.append(", ");
+            sb.append(itr.next().toLanguageTag());
+        }
+
+        return sb.toString().trim();
+    }
+
+}
diff --git a/jdk/test/java/util/PriorityQueue/AddNonComparable.java b/jdk/test/java/util/PriorityQueue/AddNonComparable.java
new file mode 100644
index 0000000..d71c5f8
--- /dev/null
+++ b/jdk/test/java/util/PriorityQueue/AddNonComparable.java
@@ -0,0 +1,153 @@
+/*
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8066070
+ * @run testng AddNonComparable
+ */
+
+import java.util.PriorityQueue;
+import java.util.Queue;
+import java.util.SortedMap;
+import java.util.SortedSet;
+import java.util.TreeMap;
+import java.util.TreeSet;
+import java.util.concurrent.ConcurrentSkipListMap;
+import java.util.concurrent.ConcurrentSkipListSet;
+import java.util.concurrent.PriorityBlockingQueue;
+import java.util.function.BiConsumer;
+import java.util.function.Supplier;
+
+import static org.testng.Assert.*;
+import org.testng.annotations.Test;
+
+public class AddNonComparable {
+
+    static <E> void test(Queue<E> queue, Supplier<E> supplier,
+                         BiConsumer<? super Queue<E>, Throwable> checker) {
+        Throwable x = null;
+        try { queue.add(supplier.get()); }
+        catch (Throwable e) { x = e; }
+        checker.accept(queue, x);
+    }
+
+    @Test
+    public void queues() {
+        test(new PriorityQueue<>(), NonComparable::new,
+             (q, e) -> {
+                 assertEquals(q.size(), 0);
+                 assertTrue(e instanceof ClassCastException);
+             });
+        test(new PriorityQueue<>(), AComparable::new,
+             (q, e) -> {
+                 assertEquals(q.size(), 1);
+                 assertTrue(e == null);
+             });
+
+        test(new PriorityBlockingQueue<>(), NonComparable::new,
+             (q, e) -> {
+                 assertEquals(q.size(), 0);
+                 assertTrue(e instanceof ClassCastException);
+             });
+        test(new PriorityBlockingQueue<>(), AComparable::new,
+             (q, e) -> {
+                 assertEquals(q.size(), 1);
+                 assertTrue(e == null);
+             });
+    }
+
+    static <E> void test(SortedSet<E> set, Supplier<E> supplier,
+                         BiConsumer<? super SortedSet<E>, Throwable> checker) {
+        Throwable x = null;
+        try { set.add(supplier.get()); }
+        catch (Throwable e) { x = e; }
+        checker.accept(set, x);
+    }
+
+
+    @Test
+    public void sets() {
+        test(new TreeSet<>(), NonComparable::new,
+             (s, e) -> {
+                 assertEquals(s.size(), 0);
+                 assertTrue(e instanceof ClassCastException);
+             });
+        test(new TreeSet<>(), AComparable::new,
+             (s, e) -> {
+                 assertEquals(s.size(), 1);
+                 assertTrue(e == null);
+             });
+
+        test(new ConcurrentSkipListSet<>(), NonComparable::new,
+             (s, e) -> {
+                 assertEquals(s.size(), 0);
+                 assertTrue(e instanceof ClassCastException);
+             });
+        test(new ConcurrentSkipListSet<>(), AComparable::new,
+             (s, e) -> {
+                 assertEquals(s.size(), 1);
+                 assertTrue(e == null);
+             });
+    }
+
+    static <K> void test(SortedMap<K,Boolean> map, Supplier<K> supplier,
+                         BiConsumer<? super SortedMap<K,Boolean>, Throwable> checker) {
+        Throwable x = null;
+        try { map.put(supplier.get(), Boolean.TRUE); }
+        catch (Throwable e) { x = e; }
+        checker.accept(map, x);
+    }
+
+    @Test
+    public void maps() {
+        test(new TreeMap<>(), NonComparable::new,
+             (m, e) -> {
+                 assertEquals(m.size(), 0);
+                 assertTrue(e instanceof ClassCastException);
+             });
+        test(new TreeMap<>(), AComparable::new,
+             (m, e) -> {
+                 assertEquals(m.size(), 1);
+                 assertTrue(e == null);
+             });
+
+        test(new ConcurrentSkipListMap<>(), NonComparable::new,
+             (s, e) -> {
+                 assertEquals(s.size(), 0);
+                 assertTrue(e instanceof ClassCastException);
+             });
+        test(new ConcurrentSkipListMap<>(), AComparable::new,
+             (s, e) -> {
+                 assertEquals(s.size(), 1);
+                 assertTrue(e == null);
+             });
+    }
+
+    static class NonComparable { }
+
+    static class AComparable implements Comparable<AComparable> {
+        @Override public int compareTo(AComparable v) { return 0; }
+    }
+
+}
diff --git a/jdk/test/java/util/Scanner/ScanTest.java b/jdk/test/java/util/Scanner/ScanTest.java
index 45383f0..cc8bca9 100644
--- a/jdk/test/java/util/Scanner/ScanTest.java
+++ b/jdk/test/java/util/Scanner/ScanTest.java
@@ -24,7 +24,7 @@
 /**
  * @test
  * @bug 4313885 4926319 4927634 5032610 5032622 5049968 5059533 6223711 6277261 6269946 6288823
- *      8072722
+ *      8072722 8072582 8139414
  * @summary Basic tests of java.util.Scanner methods
  * @key randomness
  * @modules jdk.localedata
@@ -70,6 +70,7 @@
             ioExceptionTest();
             matchTest();
             delimiterTest();
+            boundaryDelimTest();
             useLocaleTest();
             closeTest();
             cacheTest();
@@ -504,6 +505,54 @@
         report("Single delim test");
     }
 
+    private static void append(StringBuilder sb, char c, int n) {
+        for (int i = 0; i < n; i++) {
+            sb.append(c);
+        }
+    }
+
+    public static void boundaryDelimTest() throws Exception {
+        // 8072582
+        StringBuilder sb = new StringBuilder();
+        append(sb, 'a', 228); sb.append(",");
+        append(sb, 'b', 293); sb.append("#,#");
+        append(sb, 'c', 308); sb.append(",");
+        append(sb, 'd', 188); sb.append("#,#");
+        append(sb, 'e', 2);
+        try (Scanner scanner = new Scanner(sb.toString())) {
+            scanner.useDelimiter("(#,#)|(,)");
+            while(scanner.hasNext()){
+                String next = scanner.next();
+                if(next.contains("#")){
+                    System.out.printf("[%s]%n", next);
+                    failCount++;
+                }
+            }
+        }
+
+        // 8139414
+        int i = 1019;
+        sb = new StringBuilder();
+        sb.append("--;");
+        for (int j = 0; j < 1019; ++j) {
+            sb.append(j%10);
+        }
+        sb.append("-;-");
+        String text = sb.toString();
+        try (Scanner scanner = new Scanner(text)) {
+            scanner.useDelimiter("-;(-)?");
+            while (scanner.hasNext()) {
+                scanner.next();
+            }
+        } catch (NoSuchElementException e) {
+            System.out.println("Caught NoSuchElementException " + e);
+            e.printStackTrace();
+            failCount++;
+        }
+
+        report("delim at boundary test");
+    }
+
     /*
      * The hasNextPattern caches a match of a pattern called the regular cache
      * The hasNextType caches a match of that type called the type cache
diff --git a/jdk/test/java/util/concurrent/tck/ConcurrentSkipListSetTest.java b/jdk/test/java/util/concurrent/tck/ConcurrentSkipListSetTest.java
index 9012417..4ec79c8 100644
--- a/jdk/test/java/util/concurrent/tck/ConcurrentSkipListSetTest.java
+++ b/jdk/test/java/util/concurrent/tck/ConcurrentSkipListSetTest.java
@@ -226,7 +226,14 @@
             q.add(new Object());
             q.add(new Object());
             shouldThrow();
-        } catch (ClassCastException success) {}
+        } catch (ClassCastException success) {
+            assertTrue(q.size() < 2);
+            for (int i = 0, size = q.size(); i < size; i++)
+                assertTrue(q.pollFirst().getClass() == Object.class);
+            assertNull(q.pollFirst());
+            assertTrue(q.isEmpty());
+            assertEquals(0, q.size());
+        }
     }
 
     /**
diff --git a/jdk/test/java/util/concurrent/tck/PriorityBlockingQueueTest.java b/jdk/test/java/util/concurrent/tck/PriorityBlockingQueueTest.java
index c586837..2c4dbd0 100644
--- a/jdk/test/java/util/concurrent/tck/PriorityBlockingQueueTest.java
+++ b/jdk/test/java/util/concurrent/tck/PriorityBlockingQueueTest.java
@@ -227,9 +227,12 @@
         PriorityBlockingQueue q = new PriorityBlockingQueue(1);
         try {
             q.offer(new Object());
-            q.offer(new Object());
             shouldThrow();
-        } catch (ClassCastException success) {}
+        } catch (ClassCastException success) {
+            assertTrue(q.isEmpty());
+            assertEquals(0, q.size());
+            assertNull(q.poll());
+        }
     }
 
     /**
diff --git a/jdk/test/java/util/concurrent/tck/PriorityQueueTest.java b/jdk/test/java/util/concurrent/tck/PriorityQueueTest.java
index edb2379..e16497e 100644
--- a/jdk/test/java/util/concurrent/tck/PriorityQueueTest.java
+++ b/jdk/test/java/util/concurrent/tck/PriorityQueueTest.java
@@ -218,9 +218,12 @@
         PriorityQueue q = new PriorityQueue(1);
         try {
             q.offer(new Object());
-            q.offer(new Object());
             shouldThrow();
-        } catch (ClassCastException success) {}
+        } catch (ClassCastException success) {
+            assertTrue(q.isEmpty());
+            assertEquals(0, q.size());
+            assertNull(q.poll());
+        }
     }
 
     /**
diff --git a/jdk/test/javax/net/ssl/SSLSession/SessionCacheSizeTests.java b/jdk/test/javax/net/ssl/SSLSession/SessionCacheSizeTests.java
index cc5dd67..bb61abb 100644
--- a/jdk/test/javax/net/ssl/SSLSession/SessionCacheSizeTests.java
+++ b/jdk/test/javax/net/ssl/SSLSession/SessionCacheSizeTests.java
@@ -106,17 +106,21 @@
      */
     static int MAX_ACTIVE_CONNECTIONS = 4;
 
-    void doServerSide(int serverPort, int serverConns) throws Exception {
+    static final int FREE_PORT = 0;
 
+    void doServerSide(int serverConns) throws Exception {
         try (SSLServerSocket sslServerSocket =
-                (SSLServerSocket) sslssf.createServerSocket(serverPort)) {
+                (SSLServerSocket) sslssf.createServerSocket(FREE_PORT)) {
 
             // timeout to accept a connection
             sslServerSocket.setSoTimeout(45000);
 
             // make sure createdPorts++ is atomic
             synchronized(serverPorts) {
-                serverPorts[createdPorts++] = sslServerSocket.getLocalPort();
+                int serverPort = sslServerSocket.getLocalPort();
+                System.out.printf("server #%d started on port %d%n",
+                        createdPorts, serverPort);
+                serverPorts[createdPorts++] = serverPort;
 
                 /*
                  * Signal Client, we're ready for his connect.
@@ -173,11 +177,54 @@
         SSLSessionContext sessCtx = sslctx.getClientSessionContext();
         sessCtx.setSessionTimeout(0); // no limit
 
-        while (nConnections < (MAX_ACTIVE_CONNECTIONS - 1)) {
-            // divide the connections among the available server ports
+        try {
+            while (nConnections < (MAX_ACTIVE_CONNECTIONS - 1)) {
+                // divide the connections among the available server ports
+                int serverPort = serverPorts [nConnections % (serverPorts.length)];
+                System.out.printf("client #%d connects to port %d%n",
+                        nConnections, serverPort);
+                sslSockets[nConnections] = (SSLSocket) sslsf.
+                            createSocket("localhost",
+                            serverPort);
+                InputStream sslIS = sslSockets[nConnections].getInputStream();
+                OutputStream sslOS = sslSockets[nConnections].getOutputStream();
+                sslOS.write(237);
+                sslOS.flush();
+                int read = sslIS.read();
+                SSLSession sess = sslSockets[nConnections].getSession();
+                if (!sessions.contains(sess))
+                    sessions.add(sess);
+                nConnections++;
+            }
+            System.out.println("Current cacheSize is set to: " +
+                                    sessCtx.getSessionCacheSize());
+            System.out.println();
+            System.out.println("Currently cached Sessions......");
+            System.out.println("============================================"
+                                    + "============================");
+            System.out.println("Session                                     "
+                                    + "      Session-last-accessTime");
+            System.out.println("============================================"
+                                    + "============================");
+            checkCachedSessions(sessCtx, nConnections);
+            // Change session cache size
+            sessCtx.setSessionCacheSize(2);
+            System.out.println("Session cache size changed to: "
+                            + sessCtx.getSessionCacheSize());
+            System.out.println();
+            checkCachedSessions(sessCtx, nConnections);
+
+            // Test the effect of increasing the cache size
+            sessCtx.setSessionCacheSize(3);
+            System.out.println("Session cache size changed to: "
+                            + sessCtx.getSessionCacheSize());
+            // create a new session
+            int serverPort = serverPorts [nConnections % (serverPorts.length)];
+            System.out.printf("client #%d connects to port %d%n",
+                    nConnections, serverPort);
             sslSockets[nConnections] = (SSLSocket) sslsf.
-                        createSocket("localhost",
-                        serverPorts [nConnections % (serverPorts.length)]);
+                            createSocket("localhost",
+                            serverPort);
             InputStream sslIS = sslSockets[nConnections].getInputStream();
             OutputStream sslOS = sslSockets[nConnections].getOutputStream();
             sslOS.write(237);
@@ -187,48 +234,15 @@
             if (!sessions.contains(sess))
                 sessions.add(sess);
             nConnections++;
-        }
-        System.out.println("Current cacheSize is set to: " +
-                                 sessCtx.getSessionCacheSize());
-        System.out.println();
-        System.out.println("Currently cached Sessions......");
-        System.out.println("============================================"
-                                + "============================");
-        System.out.println("Session                                     "
-                                + "      Session-last-accessTime");
-        System.out.println("============================================"
-                                + "============================");
-        checkCachedSessions(sessCtx, nConnections);
-        // Change session cache size
-        sessCtx.setSessionCacheSize(2);
-        System.out.println("Session cache size changed to: "
-                        + sessCtx.getSessionCacheSize());
-        System.out.println();
-        checkCachedSessions(sessCtx, nConnections);
 
-        // Test the effect of increasing the cache size
-        sessCtx.setSessionCacheSize(3);
-        System.out.println("Session cache size changed to: "
-                        + sessCtx.getSessionCacheSize());
-        // create a new session
-        sslSockets[nConnections] = (SSLSocket) sslsf.
-                        createSocket("localhost",
-                        serverPorts [nConnections % (serverPorts.length)]);
-        InputStream sslIS = sslSockets[nConnections].getInputStream();
-        OutputStream sslOS = sslSockets[nConnections].getOutputStream();
-        sslOS.write(237);
-        sslOS.flush();
-        int read = sslIS.read();
-        SSLSession sess = sslSockets[nConnections].getSession();
-        if (!sessions.contains(sess))
-            sessions.add(sess);
-        nConnections++;
-
-        // test the number of sessions cached against the cache size
-        checkCachedSessions(sessCtx, nConnections);
-
-        for (int i = 0; i < nConnections; i++) {
-            sslSockets[i].close();
+            // test the number of sessions cached against the cache size
+            checkCachedSessions(sessCtx, nConnections);
+        } finally {
+            for (int i = 0; i < nConnections; i++) {
+                if (sslSockets[i] != null) {
+                    sslSockets[i].close();
+                }
+            }
         }
         System.out.println("Session cache size tests passed");
     }
@@ -302,7 +316,9 @@
         sslctx = SSLContext.getInstance("TLS");
         KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
         KeyStore ks = KeyStore.getInstance("JKS");
-        ks.load(new FileInputStream(keyFilename), passwd.toCharArray());
+        try (FileInputStream fis = new FileInputStream(keyFilename)) {
+            ks.load(fis, passwd.toCharArray());
+        }
         kmf.init(ks, passwd.toCharArray());
         sslctx.init(kmf.getKeyManagers(), null, null);
         sslssf = (SSLServerSocketFactory) sslctx.getServerSocketFactory();
@@ -343,19 +359,21 @@
                 for (int i = 0; i < serverPorts.length; i++) {
                     // distribute remaining connections among the
                     // available ports
-                    if (i < remainingConns)
-                        startServer(serverPorts[i], (serverConns + 1), true);
-                    else
-                        startServer(serverPorts[i], serverConns, true);
+                    if (i < remainingConns) {
+                        startServer(serverConns + 1, true);
+                    } else {
+                        startServer(serverConns, true);
+                    }
                 }
                 startClient(false);
             } else {
                 startClient(true);
                 for (int i = 0; i < serverPorts.length; i++) {
-                    if (i < remainingConns)
-                        startServer(serverPorts[i], (serverConns + 1), false);
-                    else
-                        startServer(serverPorts[i], serverConns, false);
+                    if (i < remainingConns) {
+                        startServer(serverConns + 1, false);
+                    } else {
+                        startServer(serverConns, false);
+                    }
                 }
             }
         } catch (Exception e) {
@@ -420,13 +438,12 @@
         // Fall-through: no exception to throw!
     }
 
-    void startServer(final int port, final int nConns,
-                        boolean newThread) throws Exception {
+    void startServer(final int nConns, boolean newThread) throws Exception {
         if (newThread) {
             serverThread = new Thread() {
                 public void run() {
                     try {
-                        doServerSide(port, nConns);
+                        doServerSide(nConns);
                     } catch (Exception e) {
                         /*
                          * Our server thread just died.
@@ -443,7 +460,7 @@
             serverThread.start();
         } else {
             try {
-                doServerSide(port, nConns);
+                doServerSide(nConns);
             } catch (Exception e) {
                 serverException = e;
             } finally {
diff --git a/jdk/test/javax/net/ssl/TLSv12/ShortRSAKey512.java b/jdk/test/javax/net/ssl/TLSv12/ShortRSAKey512.java
index 0c26c5f..e4d563a 100644
--- a/jdk/test/javax/net/ssl/TLSv12/ShortRSAKey512.java
+++ b/jdk/test/javax/net/ssl/TLSv12/ShortRSAKey512.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
  *
  *     SunJSSE does not support dynamic system properties, no way to re-use
  *     system properties in samevm/agentvm mode.
+ * @key intermittent
  * @run main/othervm ShortRSAKey512 PKIX
  * @run main/othervm ShortRSAKey512 SunX509
  */
@@ -125,7 +126,7 @@
     /*
      * Turn on SSL debugging?
      */
-    static boolean debug = false;
+    static boolean debug = true;
 
     /*
      * Define the server side of the test.
@@ -137,24 +138,26 @@
         SSLContext context = generateSSLContext(null, targetCertStr,
                                             targetPrivateKey);
         SSLServerSocketFactory sslssf = context.getServerSocketFactory();
-        SSLServerSocket sslServerSocket =
-            (SSLServerSocket)sslssf.createServerSocket(serverPort);
-        serverPort = sslServerSocket.getLocalPort();
+        try (SSLServerSocket sslServerSocket =
+                (SSLServerSocket) sslssf.createServerSocket(serverPort)) {
 
-        /*
-         * Signal Client, we're ready for his connect.
-         */
-        serverReady = true;
+            serverPort = sslServerSocket.getLocalPort();
+            System.out.println("Start server on port " + serverPort);
 
-        SSLSocket sslSocket = (SSLSocket)sslServerSocket.accept();
-        InputStream sslIS = sslSocket.getInputStream();
-        OutputStream sslOS = sslSocket.getOutputStream();
+            /*
+            * Signal Client, we're ready for his connect.
+            */
+            serverReady = true;
 
-        sslIS.read();
-        sslOS.write('A');
-        sslOS.flush();
+            try (SSLSocket sslSocket = (SSLSocket)sslServerSocket.accept()) {
+                InputStream sslIS = sslSocket.getInputStream();
+                OutputStream sslOS = sslSocket.getOutputStream();
 
-        sslSocket.close();
+                sslIS.read();
+                sslOS.write('A');
+                sslOS.flush();
+            }
+        }
     }
 
     /*
@@ -175,24 +178,24 @@
         SSLContext context = generateSSLContext(trustedCertStr, null, null);
         SSLSocketFactory sslsf = context.getSocketFactory();
 
-        SSLSocket sslSocket =
-            (SSLSocket)sslsf.createSocket("localhost", serverPort);
+        System.out.println("Client connects to port " + serverPort);
+        try (SSLSocket sslSocket =
+                (SSLSocket) sslsf.createSocket("localhost", serverPort)) {
 
-        // enable TLSv1.2 only
-        sslSocket.setEnabledProtocols(new String[] {"TLSv1.2"});
+            // enable TLSv1.2 only
+            sslSocket.setEnabledProtocols(new String[] {"TLSv1.2"});
 
-        // enable a block cipher
-        sslSocket.setEnabledCipherSuites(
-            new String[] {"TLS_DHE_RSA_WITH_AES_128_CBC_SHA"});
+            // enable a block cipher
+            sslSocket.setEnabledCipherSuites(
+                new String[] {"TLS_DHE_RSA_WITH_AES_128_CBC_SHA"});
 
-        InputStream sslIS = sslSocket.getInputStream();
-        OutputStream sslOS = sslSocket.getOutputStream();
+            InputStream sslIS = sslSocket.getInputStream();
+            OutputStream sslOS = sslSocket.getOutputStream();
 
-        sslOS.write('B');
-        sslOS.flush();
-        sslIS.read();
-
-        sslSocket.close();
+            sslOS.write('B');
+            sslOS.flush();
+            sslIS.read();
+        }
     }
 
     /*
@@ -308,16 +311,12 @@
      * Fork off the other side, then do your work.
      */
     ShortRSAKey512() throws Exception {
-        try {
-            if (separateServerThread) {
-                startServer(true);
-                startClient(false);
-            } else {
-                startClient(true);
-                startServer(false);
-            }
-        } catch (Exception e) {
-            // swallow for now.  Show later
+        if (separateServerThread) {
+            startServer(true);
+            startClient(false);
+        } else {
+            startClient(true);
+            startServer(false);
         }
 
         /*
@@ -335,16 +334,13 @@
          */
         Exception local;
         Exception remote;
-        String whichRemote;
 
         if (separateServerThread) {
             remote = serverException;
             local = clientException;
-            whichRemote = "server";
         } else {
             remote = clientException;
             local = serverException;
-            whichRemote = "client";
         }
 
         /*
@@ -352,9 +348,6 @@
          * print the remote side Exception
          */
         if ((local != null) && (remote != null)) {
-            System.out.println(whichRemote + " also threw:");
-            remote.printStackTrace();
-            System.out.println();
             throw local;
         }
 
@@ -367,7 +360,7 @@
         }
     }
 
-    void startServer(boolean newThread) throws Exception {
+    void startServer(boolean newThread) {
         if (newThread) {
             serverThread = new Thread() {
                 public void run() {
@@ -380,11 +373,13 @@
                          * Release the client, if not active already...
                          */
                         System.err.println("Server died...");
+                        e.printStackTrace(System.err);
                         serverReady = true;
                         serverException = e;
                     }
                 }
             };
+            serverThread.setDaemon(true);
             serverThread.start();
         } else {
             try {
@@ -397,7 +392,7 @@
         }
     }
 
-    void startClient(boolean newThread) throws Exception {
+    void startClient(boolean newThread) {
         if (newThread) {
             clientThread = new Thread() {
                 public void run() {
@@ -408,10 +403,12 @@
                          * Our client thread just died.
                          */
                         System.err.println("Client died...");
+                        e.printStackTrace(System.err);
                         clientException = e;
                     }
                 }
             };
+            clientThread.setDaemon(true);
             clientThread.start();
         } else {
             try {
diff --git a/jdk/test/javax/smartcardio/TerminalFactorySpiTest.java b/jdk/test/javax/smartcardio/TerminalFactorySpiTest.java
index 881cc72..692f111 100644
--- a/jdk/test/javax/smartcardio/TerminalFactorySpiTest.java
+++ b/jdk/test/javax/smartcardio/TerminalFactorySpiTest.java
@@ -26,7 +26,7 @@
  * @bug 8049021
  * @summary Test if we can write new provider for smart card
  * @compile -addmods java.smartcardio TerminalFactorySpiTest.java
- * @run main/othervm/policy=policy -addmods java.smartcardio TerminalFactorySpiTest
+ * @run main/othervm/java.security.policy=policy -addmods java.smartcardio TerminalFactorySpiTest
  */
 import java.security.Provider;
 import java.security.Security;
diff --git a/jdk/test/javax/sound/sampled/Clip/IsRunningHang.java b/jdk/test/javax/sound/sampled/Clip/IsRunningHang.java
new file mode 100644
index 0000000..c417c5a
--- /dev/null
+++ b/jdk/test/javax/sound/sampled/Clip/IsRunningHang.java
@@ -0,0 +1,117 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.CountDownLatch;
+
+import javax.sound.sampled.AudioFormat;
+import javax.sound.sampled.AudioSystem;
+import javax.sound.sampled.Clip;
+import javax.sound.sampled.DataLine;
+import javax.sound.sampled.Line;
+import javax.sound.sampled.LineEvent;
+import javax.sound.sampled.LineUnavailableException;
+
+/**
+ * @test
+ * @bug 8156169
+ * @run main/othervm/timeout=300 IsRunningHang
+ */
+public final class IsRunningHang {
+
+    private static CountDownLatch go;
+
+    /**
+     * We will try to use all usually supported formats.
+     */
+    private static final List<AudioFormat> formats = new ArrayList<>();
+
+    private static final AudioFormat.Encoding[] encodings = {
+            AudioFormat.Encoding.ALAW, AudioFormat.Encoding.ULAW,
+            AudioFormat.Encoding.PCM_SIGNED, AudioFormat.Encoding.PCM_UNSIGNED,
+            AudioFormat.Encoding.PCM_FLOAT
+    };
+
+    private static final int[] sampleRates = {8000, 16000, 48000};
+
+    private static final int[] sampleBits = {8, 16, 24, 32, 64};
+
+    private static final int[] channels = {1, 2, 3, 5};
+
+    static {
+        for (final Boolean end : new boolean[]{false, true}) {
+            for (final int sampleSize : sampleBits) {
+                for (final int sampleRate : sampleRates) {
+                    for (final int channel : channels) {
+                        for (final AudioFormat.Encoding enc : encodings) {
+                            int s = ((sampleSize + 7) / 8) * channel;
+                            formats.add(new AudioFormat(enc, sampleRate,
+                                                        sampleSize, channel,
+                                                        s, sampleRate, end));
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    public static void main(final String[] args) throws Exception {
+        for (final AudioFormat format : formats) {
+            System.out.println("format = " + format);
+            // create a 0.5-second data
+            byte[] soundData = new byte[(int) (format.getFrameRate()
+                                                       * format.getFrameSize()
+                                                       / 2)];
+            try {
+                test(format, soundData);
+            } catch (LineUnavailableException | IllegalArgumentException ignored) {
+                // the test is not applicable
+            }
+        }
+    }
+
+    private static void test(final AudioFormat format, final byte[] data)
+            throws Exception {
+        final Line.Info info = new DataLine.Info(Clip.class, format);
+        final Clip clip = (Clip) AudioSystem.getLine(info);
+
+        go = new CountDownLatch(1);
+        clip.addLineListener(event -> {
+            if (event.getType().equals(LineEvent.Type.START)) {
+                go.countDown();
+            }
+        });
+
+        clip.open(format, data, 0, data.length);
+        clip.start();
+        go.await();
+        while (clip.isRunning()) {
+            // This loop should not hang
+        }
+        while (clip.isActive()) {
+            // This loop should not hang
+        }
+        clip.close();
+    }
+}
diff --git a/jdk/test/javax/sound/sampled/DirectAudio/bug6400879.java b/jdk/test/javax/sound/sampled/DirectAudio/bug6400879.java
index 770e774..375fb57 100644
--- a/jdk/test/javax/sound/sampled/DirectAudio/bug6400879.java
+++ b/jdk/test/javax/sound/sampled/DirectAudio/bug6400879.java
@@ -26,10 +26,11 @@
  * @bug 6400879 7100140
  * @summary Tests that Start/Stop sequence doesn't hang
  * @author Alexey Menkov
- * @run main bug6400879
- * @key intermittent
+ * @run main/othervm bug6400879
  */
 
+import java.util.concurrent.TimeUnit;
+
 import javax.sound.sampled.*;
 
 public class bug6400879 extends Thread {
@@ -50,16 +51,16 @@
         long prevTime = currentTimeMillis();
         while (pThis.isAlive()) {
             if (pThis.loopCounter == prevLoop) {
-                if (currentTimeMillis() - prevTime > BLOCK_TIMEOUT) {
-                    // block!
-                    log("Test FAILED.");
-                    throw new RuntimeException("Test FAILED: thread has been blocked!");
+                long delay = currentTimeMillis() - prevTime;
+                if (delay > BLOCK_TIMEOUT) {
+                    // blocked?
+                    log("The test is slow, delay = " + delay);
                 }
             } else {
                 prevLoop = pThis.loopCounter;
                 prevTime = currentTimeMillis();
             }
-            delay(500);    // sleep for 0.5 sec
+            delay(1000);    // sleep for 1 sec
         }
         log("Test sucessfully passed.");
     }
@@ -111,8 +112,7 @@
     // helper routines
     static long startTime = currentTimeMillis();
     static long currentTimeMillis() {
-        //return System.nanoTime() / 1000000L;
-        return System.currentTimeMillis();
+        return TimeUnit.NANOSECONDS.toMillis(System.nanoTime());
     }
     static void log(String s) {
         long time = currentTimeMillis() - startTime;
diff --git a/jdk/test/javax/swing/InputVerifier/VerifyTarget/VerifyTargetTest.java b/jdk/test/javax/swing/InputVerifier/VerifyTarget/VerifyTargetTest.java
new file mode 100644
index 0000000..86bd6dd
--- /dev/null
+++ b/jdk/test/javax/swing/InputVerifier/VerifyTarget/VerifyTargetTest.java
@@ -0,0 +1,93 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+  @test
+  @bug 8154431
+  @summary Allow source and target based validation for the focus transfer
+           between two JComponents.
+  @run main VerifyTargetTest
+*/
+
+import javax.swing.*;
+import java.awt.*;
+import java.awt.event.FocusEvent;
+import java.awt.event.FocusListener;
+
+public class VerifyTargetTest extends InputVerifier implements FocusListener {
+    static boolean success;
+    private static JFrame frame;
+    private static JTextField field2;
+
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeAndWait(() -> setup());
+        try {
+            Robot robot = new Robot();
+            robot.waitForIdle();
+            robot.delay(200);
+            KeyboardFocusManager.getCurrentKeyboardFocusManager()
+                                                          .focusNextComponent();
+            robot.waitForIdle();
+            robot.delay(200);
+            if (!success) {
+                throw new RuntimeException("Failed");
+            } else {
+                System.out.println("ok");
+            }
+        } finally {
+            SwingUtilities.invokeLater(() -> frame.dispose());
+        }
+    }
+
+    static void setup() {
+        frame = new JFrame();
+        JTextField field1 = new JTextField("Input 1");
+        VerifyTargetTest test = new VerifyTargetTest();
+        field1.setInputVerifier(test);
+        field1.addFocusListener(test);
+        frame.getContentPane().add(field1, BorderLayout.NORTH);
+        field2 = new JTextField("Input 2");
+        frame.getContentPane().add(field2, BorderLayout.SOUTH);
+        frame.pack();
+        frame.setVisible(true);
+    }
+
+    @Override
+    public boolean verify(JComponent input) {
+        return true;
+    }
+
+    @Override
+    public boolean verifyTarget(JComponent input) {
+        success = input == field2;
+        return false;
+    }
+
+    @Override
+    public void focusGained(FocusEvent e) {}
+
+    @Override
+    public void focusLost(FocusEvent e) {
+        success = false;
+    }
+}
\ No newline at end of file
diff --git a/jdk/test/javax/swing/JColorChooser/Test4165217.java b/jdk/test/javax/swing/JColorChooser/Test4165217.java
index 83c3b80..1a0f270 100644
--- a/jdk/test/javax/swing/JColorChooser/Test4165217.java
+++ b/jdk/test/javax/swing/JColorChooser/Test4165217.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4165217
  * @summary Tests JColorChooser serialization
  * @author Ilya Boyandin
diff --git a/jdk/test/javax/swing/JColorChooser/Test4177735.java b/jdk/test/javax/swing/JColorChooser/Test4177735.java
index 338bf99..dc9ae5d 100644
--- a/jdk/test/javax/swing/JColorChooser/Test4177735.java
+++ b/jdk/test/javax/swing/JColorChooser/Test4177735.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4177735
  * @summary Tests that JColorChooser leaves no threads when disposed
  * @author Shannon Hickey
diff --git a/jdk/test/javax/swing/JColorChooser/Test4193384.java b/jdk/test/javax/swing/JColorChooser/Test4193384.java
index 63f5d29..826e989 100644
--- a/jdk/test/javax/swing/JColorChooser/Test4193384.java
+++ b/jdk/test/javax/swing/JColorChooser/Test4193384.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4193384 4200976
  * @summary Tests the color conversions and the preview panel foreground color
  * @author Mark Davidson
diff --git a/jdk/test/javax/swing/JColorChooser/Test4234761.java b/jdk/test/javax/swing/JColorChooser/Test4234761.java
index 540d771..c2b2d9e 100644
--- a/jdk/test/javax/swing/JColorChooser/Test4234761.java
+++ b/jdk/test/javax/swing/JColorChooser/Test4234761.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4234761
  * @summary RGB values sholdn't be changed in transition to HSB tab
  * @author Oleg Mokhovikov
diff --git a/jdk/test/javax/swing/JColorChooser/Test4461329.java b/jdk/test/javax/swing/JColorChooser/Test4461329.java
index 9ff7a66..eed6675 100644
--- a/jdk/test/javax/swing/JColorChooser/Test4461329.java
+++ b/jdk/test/javax/swing/JColorChooser/Test4461329.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4461329
  * @summary Tests getPreviewPanel() and setPreviewPanel() methods
  * @author Leif Samuelsson
diff --git a/jdk/test/javax/swing/JColorChooser/Test4711996.java b/jdk/test/javax/swing/JColorChooser/Test4711996.java
index 21d801f..267ad1b 100644
--- a/jdk/test/javax/swing/JColorChooser/Test4711996.java
+++ b/jdk/test/javax/swing/JColorChooser/Test4711996.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4711996
  * @summary Checks if IllegalArgumentException is thrown when updating JColorChooserUI
  * @author Konstantin Eremin
diff --git a/jdk/test/javax/swing/JColorChooser/Test6524757.java b/jdk/test/javax/swing/JColorChooser/Test6524757.java
index 55ee7c4..c3e5285 100644
--- a/jdk/test/javax/swing/JColorChooser/Test6524757.java
+++ b/jdk/test/javax/swing/JColorChooser/Test6524757.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6524757
  * @summary Tests different locales
  * @author Sergey Malenkov
diff --git a/jdk/test/javax/swing/JColorChooser/Test6707406.java b/jdk/test/javax/swing/JColorChooser/Test6707406.java
index fdc034d..e01fa38 100644
--- a/jdk/test/javax/swing/JColorChooser/Test6707406.java
+++ b/jdk/test/javax/swing/JColorChooser/Test6707406.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6707406
  * @summary Tests color chooser with invalid UI
  * @author Sergey Malenkov
diff --git a/jdk/test/javax/swing/JComboBox/8136998/bug8136998.java b/jdk/test/javax/swing/JComboBox/8136998/bug8136998.java
new file mode 100644
index 0000000..e7d9e0a
--- /dev/null
+++ b/jdk/test/javax/swing/JComboBox/8136998/bug8136998.java
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.awt.AWTException;
+import java.awt.Dimension;
+import java.awt.Point;
+import java.awt.Rectangle;
+import java.awt.Robot;
+import javax.swing.Box;
+import javax.swing.BoxLayout;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+import javax.swing.UIManager.LookAndFeelInfo;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.WindowConstants;
+
+/* @test
+ * @bug 8136998
+ * @summary Checks that JComboBox does not prevent mouse-wheel scrolling JScrollPane.
+ * @library ../../regtesthelpers
+ * @build Util
+ * @run main bug8136998
+ * @author Alexey Ivanov
+ */
+public class bug8136998 {
+
+    private static final String[] ITEMS = new String[] {
+        "A", "B", "C", "D", "E", "F"
+    };
+
+    private final Robot robot;
+
+    private JFrame frame;
+    private JComboBox comboBox;
+    private JScrollPane scrollPane;
+
+    public static void main(String[] args) throws Exception {
+        iterateLookAndFeels(new bug8136998());
+    }
+
+    protected static void iterateLookAndFeels(final bug8136998 test) throws Exception {
+        LookAndFeelInfo[] lafInfo = UIManager.getInstalledLookAndFeels();
+        for (LookAndFeelInfo info : lafInfo) {
+            try {
+                UIManager.setLookAndFeel(info.getClassName());
+                System.out.println("Look and Feel: " + info.getClassName());
+                test.runTest();
+            } catch (UnsupportedLookAndFeelException e) {
+                System.out.println("Skipping unsupported LaF: " + info);
+            }
+        }
+    }
+
+    public bug8136998() throws AWTException {
+        robot = new Robot();
+        robot.setAutoDelay(200);
+    }
+
+    private void setupUI() {
+        frame = new JFrame();
+        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
+
+        comboBox = new JComboBox<>(ITEMS);
+
+        JPanel scrollable = new JPanel();
+        scrollable.setLayout(new BoxLayout(scrollable, BoxLayout.Y_AXIS));
+
+        scrollable.add(Box.createVerticalStrut(200));
+        scrollable.add(comboBox);
+        scrollable.add(Box.createVerticalStrut(200));
+
+        scrollPane = new JScrollPane(scrollable);
+
+        frame.add(scrollPane);
+
+        frame.setSize(100, 200);
+        frame.setVisible(true);
+    }
+
+    public void runTest() throws Exception {
+        try {
+            SwingUtilities.invokeAndWait(this::setupUI);
+
+            robot.waitForIdle();
+
+            SwingUtilities.invokeAndWait(() ->
+                scrollPane.getViewport().scrollRectToVisible(comboBox.getBounds())
+            );
+            robot.waitForIdle();
+
+            // Move mouse pointer to the center of the combo box
+            Point p = comboBox.getLocationOnScreen();
+            Dimension d = comboBox.getSize();
+            robot.mouseMove(p.x + d.width / 2, p.y + d.height / 2);
+
+            // The currently visible rectangle in scrollPane
+            Rectangle viewRect0 = Util.invokeOnEDT(scrollPane.getViewport()::getViewRect);
+
+            // Scroll the scrollPane with mouse wheel
+            robot.mouseWheel(1);
+            robot.waitForIdle();
+
+            // The updated rectangle
+            Rectangle viewRect1 = Util.invokeOnEDT(scrollPane.getViewport()::getViewRect);
+
+            if (viewRect0.y == viewRect1.y) {
+                throw new RuntimeException("Mouse wheel should have scrolled the JScrollPane");
+            }
+        } finally {
+            if (frame != null) {
+                frame.dispose();
+            }
+        }
+
+        System.out.println("Test passed");
+    }
+}
diff --git a/jdk/test/javax/swing/JComponent/6683775/bug6683775.java b/jdk/test/javax/swing/JComponent/6683775/bug6683775.java
index d0b8eac..d069a28 100644
--- a/jdk/test/javax/swing/JComponent/6683775/bug6683775.java
+++ b/jdk/test/javax/swing/JComponent/6683775/bug6683775.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,14 +21,16 @@
  * questions.
  */
 
-/* @test
-   @bug 6683775 6794764
-   @summary Painting artifacts is seen when panel is made setOpaque(false) for a translucent window
-   @author Alexander Potochkin
-   @modules java.desktop/com.sun.awt
-            java.desktop/sun.awt
-   @run main bug6683775
-*/
+/*
+ * @test
+ * @key headful
+ * @bug 6683775 6794764
+ * @summary Painting artifacts is seen when panel is made setOpaque(false) for a translucent window
+ * @author Alexander Potochkin
+ * @modules java.desktop/com.sun.awt
+ *          java.desktop/sun.awt
+ * @run main bug6683775
+ */
 
 import com.sun.awt.AWTUtilities;
 
diff --git a/jdk/test/javax/swing/JEditorPane/6882559/bug6882559.java b/jdk/test/javax/swing/JEditorPane/6882559/bug6882559.java
new file mode 100644
index 0000000..5bcd041
--- /dev/null
+++ b/jdk/test/javax/swing/JEditorPane/6882559/bug6882559.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 6882559
+   @summary new JEditorPane("text/plain","") fails for null context class loader
+   @author Mikhail Cherkasov
+   @run main bug6882559
+*/
+
+import javax.swing.*;
+
+
+public class bug6882559 {
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            Thread.currentThread().setContextClassLoader(null);
+            new javax.swing.JEditorPane("text/plain", "");
+        });
+    }
+}
diff --git a/jdk/test/javax/swing/JEditorPane/8146319/JEditorPaneTest.java b/jdk/test/javax/swing/JEditorPane/8146319/JEditorPaneTest.java
new file mode 100644
index 0000000..86a5173
--- /dev/null
+++ b/jdk/test/javax/swing/JEditorPane/8146319/JEditorPaneTest.java
@@ -0,0 +1,80 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8146319
+ * @summary JEditorPane function setPage leaves a file lock
+ * @run main JEditorPaneTest
+ */
+import java.awt.Robot;
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import javax.swing.JEditorPane;
+import javax.swing.SwingUtilities;
+
+public class JEditorPaneTest {
+
+    public static void main(String[] args) throws Exception {
+        Robot robot = new Robot();
+        try {
+            File file = File.createTempFile("Temp_", ".txt");
+            file.deleteOnExit();
+            writeFile(file);
+            SwingUtilities.invokeAndWait(new Runnable() {
+                @Override
+                public void run() {
+                    JEditorPane editorPane = new JEditorPane();
+                    try {
+                        editorPane.setPage(file.toURI().toURL());
+                    } catch (IOException ex) {
+                        file.delete();
+                        throw new RuntimeException("Test Failed" + ex);
+                    }
+                }
+            });
+            robot.waitForIdle();
+            if (!file.renameTo(file)) {
+                file.delete();
+                throw new RuntimeException("Test Failed");
+            }
+        } catch (IOException ex) {
+            throw new RuntimeException("Failed to create File" + ex);
+        }
+    }
+
+    private static void writeFile(File file) {
+        FileWriter fw = null;
+        try {
+            fw = new FileWriter(file.getAbsoluteFile());
+            BufferedWriter bw = new BufferedWriter(fw);
+            bw.write("Test Text");
+            bw.close();
+        } catch (IOException ex) {
+            throw new RuntimeException("Failed to write File" + ex);
+        }
+
+    }
+}
diff --git a/jdk/test/javax/swing/JFileChooser/6520101/bug6520101.java b/jdk/test/javax/swing/JFileChooser/6520101/bug6520101.java
index f59375d..6d79e3e 100644
--- a/jdk/test/javax/swing/JFileChooser/6520101/bug6520101.java
+++ b/jdk/test/javax/swing/JFileChooser/6520101/bug6520101.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test @(#)bug6520101
+ * @key headful
  * @bug 6520101
  * @summary JFileChooser throws OOM in 1.4.2, 5.0u4 and 1.6.0
  * @author Praveen Gupta
diff --git a/jdk/test/javax/swing/JFileChooser/8041694/bug8041694.java b/jdk/test/javax/swing/JFileChooser/8041694/bug8041694.java
new file mode 100644
index 0000000..d24016b
--- /dev/null
+++ b/jdk/test/javax/swing/JFileChooser/8041694/bug8041694.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 8041694
+   @summary JFileChooser removes trailing spaces in the selected directory name
+   @author Anton Litvinov
+   @library ../../../../lib/testlibrary
+   @build jdk.testlibrary.OSInfo
+   @run main bug8041694
+ */
+
+import java.awt.AWTException;
+import java.awt.Robot;
+import java.awt.event.KeyEvent;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.util.concurrent.CountDownLatch;
+import javax.swing.JFileChooser;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import javax.swing.plaf.metal.MetalLookAndFeel;
+
+import jdk.testlibrary.OSInfo;
+
+public class bug8041694 {
+    private static volatile File dir1;
+    private static File dir2;
+    private static volatile File selectedDir;
+
+    private static void runTest() {
+        try {
+            // Set Metal L&F to make the test compatible with OS X.
+            UIManager.setLookAndFeel(new MetalLookAndFeel());
+            Robot robot = new Robot();
+
+            dir1 = Files.createTempDirectory("bug8041694").toFile();
+            if (OSInfo.getOSType() == OSInfo.OSType.WINDOWS) {
+                dir2 = new File(String.format(
+                    "\\\\?\\%s\\d ", dir1.getAbsolutePath().replace('/', '\\')));
+            } else {
+                dir2 = new File(dir1.getAbsolutePath() + File.separator + "d ");
+            }
+            dir2.mkdir();
+
+            final CountDownLatch fChooserClosedSignal = new CountDownLatch(1);
+            SwingUtilities.invokeLater(new Runnable() {
+                @Override
+                public void run() {
+                    try {
+                        JFileChooser fChooser = new JFileChooser(dir1);
+                        fChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
+                        if (fChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
+                            selectedDir = fChooser.getSelectedFile();
+                        }
+                    } finally {
+                        fChooserClosedSignal.countDown();
+                    }
+                }
+            });
+
+            robot.setAutoDelay(50);
+            robot.delay(1000);
+            robot.waitForIdle();
+            robot.keyPress(KeyEvent.VK_D);
+            robot.keyRelease(KeyEvent.VK_D);
+            robot.keyPress(KeyEvent.VK_SPACE);
+            robot.keyRelease(KeyEvent.VK_SPACE);
+            robot.keyPress(KeyEvent.VK_ENTER);
+            robot.keyRelease(KeyEvent.VK_ENTER);
+
+            fChooserClosedSignal.await();
+            if (selectedDir == null) {
+                throw new RuntimeException("No directory was selected in JFileChooser.");
+            }
+            System.out.println(String.format(
+                "The selected directory is '%s'.", selectedDir.getAbsolutePath()));
+            if (selectedDir.getName().equals("d")) {
+                throw new RuntimeException(
+                    "JFileChooser removed trailing spaces in the selected directory name.");
+            } else if (!selectedDir.getName().equals("d ")) {
+                throw new RuntimeException("The selected directory name is not the expected 'd '.");
+            }
+        } catch (UnsupportedLookAndFeelException | AWTException | IOException | InterruptedException e) {
+            throw new RuntimeException(e);
+        } finally {
+            if (dir2 != null) {
+                dir2.delete();
+            }
+            if (dir1 != null) {
+                dir1.delete();
+            }
+        }
+    }
+
+    public static void main(String[] args) {
+        runTest();
+    }
+}
diff --git a/jdk/test/javax/swing/JFormattedTextField/7070795/JFormattedTextFieldTest.java b/jdk/test/javax/swing/JFormattedTextField/7070795/JFormattedTextFieldTest.java
new file mode 100644
index 0000000..9cf7f97
--- /dev/null
+++ b/jdk/test/javax/swing/JFormattedTextField/7070795/JFormattedTextFieldTest.java
@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7070795
+ * @summary High contrast colour scheme fails to be applied to JFormattedTextField
+ * @requires (os.family == "windows")
+ * @run main/manual JFormattedTextFieldTest
+ */
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.text.NumberFormat;
+import javax.swing.JButton;
+import javax.swing.JFormattedTextField;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+
+public class JFormattedTextFieldTest implements ActionListener {
+
+    private static GridBagLayout layout;
+    private static JPanel mainControlPanel;
+    private static JPanel resultButtonPanel;
+    private static JLabel instructionText;
+    private static JButton passButton;
+    private static JButton failButton;
+    private static JFrame mainFrame;
+
+    public static void main(String[] args) throws Exception {
+        JFormattedTextFieldTest jFormattedTextFieldTest = new JFormattedTextFieldTest();
+    }
+
+    public JFormattedTextFieldTest() throws Exception {
+        createUI();
+    }
+
+    public final void createUI() throws Exception {
+
+        UIManager.setLookAndFeel("com.sun.java.swing.plaf."
+                + "windows.WindowsLookAndFeel");
+
+        SwingUtilities.invokeAndWait(() -> {
+
+            mainFrame = new JFrame("Window LAF JFormattedTextField Test");
+            layout = new GridBagLayout();
+            mainControlPanel = new JPanel(layout);
+            resultButtonPanel = new JPanel(layout);
+
+            GridBagConstraints gbc = new GridBagConstraints();
+            String instructions
+                    = "<html>INSTRUCTIONS:<br>"
+                    + "Set Windows Theme to HighContrast#1.<br><br>"
+                    + "(ControlPanel->Personalization->High Contrast#1)<br><br>"
+                    + "If TextFiled colors are same test"
+                    + " passes else failed.<br><br></html>";
+
+            instructionText = new JLabel();
+            instructionText.setText(instructions);
+
+            gbc.gridx = 0;
+            gbc.gridy = 0;
+            gbc.fill = GridBagConstraints.HORIZONTAL;
+            mainControlPanel.add(instructionText, gbc);
+
+            passButton = new JButton("Pass");
+            passButton.setActionCommand("Pass");
+            passButton.addActionListener(JFormattedTextFieldTest.this);
+            failButton = new JButton("Fail");
+            failButton.setActionCommand("Fail");
+            failButton.addActionListener(JFormattedTextFieldTest.this);
+            gbc.gridx = 0;
+            gbc.gridy = 0;
+            resultButtonPanel.add(passButton, gbc);
+            gbc.gridx = 1;
+            gbc.gridy = 0;
+            resultButtonPanel.add(failButton, gbc);
+            gbc.gridx = 3;
+            gbc.gridy = 0;
+            resultButtonPanel.add(new JTextField("12345"), gbc);
+
+            NumberFormat format = NumberFormat.getIntegerInstance();
+            format.setMaximumIntegerDigits(5);
+            JFormattedTextField formatted = new JFormattedTextField(format);
+            formatted.setText("67891");
+            gbc.gridx = 5;
+            gbc.gridy = 0;
+            resultButtonPanel.add(formatted, gbc);
+            gbc.gridx = 0;
+            gbc.gridy = 1;
+            mainControlPanel.add(resultButtonPanel, gbc);
+
+            mainFrame.add(mainControlPanel);
+            mainFrame.setSize(400, 200);
+            mainFrame.setLocationRelativeTo(null);
+            mainFrame.setVisible(true);
+        });
+    }
+
+    @Override
+    public void actionPerformed(ActionEvent evt) {
+        if (evt.getSource() instanceof JButton) {
+            JButton btn = (JButton) evt.getSource();
+            cleanUp();
+            switch (btn.getActionCommand()) {
+                case "Pass":
+                    break;
+                case "Fail":
+                    throw new AssertionError("User Clicked Fail!");
+            }
+        }
+    }
+
+    private static void cleanUp() {
+        mainFrame.dispose();
+    }
+
+}
+
diff --git a/jdk/test/javax/swing/JFrame/4962534/bug4962534.html b/jdk/test/javax/swing/JFrame/4962534/bug4962534.html
index b44fd7d..d9ce00f 100644
--- a/jdk/test/javax/swing/JFrame/4962534/bug4962534.html
+++ b/jdk/test/javax/swing/JFrame/4962534/bug4962534.html
@@ -1,6 +1,6 @@
 <html>
 <!--
-  Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+  Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
   DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
   This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 
 <!--
   @test
+  @key headful
   @bug 4962534
   @summary JFrame dances very badly
   @author dav@sparc.spb.su area=
diff --git a/jdk/test/javax/swing/JInternalFrame/6288609/TestJInternalFrameDispose.java b/jdk/test/javax/swing/JInternalFrame/6288609/TestJInternalFrameDispose.java
index 8da7c16..8eee6e2 100644
--- a/jdk/test/javax/swing/JInternalFrame/6288609/TestJInternalFrameDispose.java
+++ b/jdk/test/javax/swing/JInternalFrame/6288609/TestJInternalFrameDispose.java
@@ -67,6 +67,7 @@
 
         robot.waitForIdle();
         executeTest();
+        robot.delay(1000);
         dispose();
     }
 
diff --git a/jdk/test/javax/swing/JInternalFrame/8145060/TestJInternalFrameMinimize.java b/jdk/test/javax/swing/JInternalFrame/8145060/TestJInternalFrameMinimize.java
index a8e4001..e5aa8d1 100644
--- a/jdk/test/javax/swing/JInternalFrame/8145060/TestJInternalFrameMinimize.java
+++ b/jdk/test/javax/swing/JInternalFrame/8145060/TestJInternalFrameMinimize.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015,2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -155,7 +155,7 @@
                 };
             }
         });
-        timer = new Timer(100, listener);
+        timer = new Timer(1000, listener);
         timer.start();
         robot.delay(1000);
     }
diff --git a/jdk/test/javax/swing/JInternalFrame/8145896/TestJInternalFrameMaximize.java b/jdk/test/javax/swing/JInternalFrame/8145896/TestJInternalFrameMaximize.java
index 267a970..e48a2da 100644
--- a/jdk/test/javax/swing/JInternalFrame/8145896/TestJInternalFrameMaximize.java
+++ b/jdk/test/javax/swing/JInternalFrame/8145896/TestJInternalFrameMaximize.java
@@ -65,6 +65,7 @@
                 createUI();
                 robot.waitForIdle();
                 executeTest();
+                robot.delay(1000);
             }
         }
         if (!"".equals(errorMessage)) {
diff --git a/jdk/test/javax/swing/JMenu/8071705/bug8071705.java b/jdk/test/javax/swing/JMenu/8071705/bug8071705.java
index a814772..8abfcf6 100644
--- a/jdk/test/javax/swing/JMenu/8071705/bug8071705.java
+++ b/jdk/test/javax/swing/JMenu/8071705/bug8071705.java
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8071705
  * @summary  Java application menu misbehaves when running multiple screen stacked vertically
  * @build bug8071705
diff --git a/jdk/test/javax/swing/JMenuItem/7036148/bug7036148.java b/jdk/test/javax/swing/JMenuItem/7036148/bug7036148.java
index 32199de..c3f9544 100644
--- a/jdk/test/javax/swing/JMenuItem/7036148/bug7036148.java
+++ b/jdk/test/javax/swing/JMenuItem/7036148/bug7036148.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
  /*
  * @test
+ * @key headful
  * @bug 7036148
  * @summary NullPointerException with null JMenu name
  * @author Alexander Potochkin
diff --git a/jdk/test/javax/swing/JMenuItem/8152981/MenuItemIconTest.java b/jdk/test/javax/swing/JMenuItem/8152981/MenuItemIconTest.java
new file mode 100644
index 0000000..1a872a5
--- /dev/null
+++ b/jdk/test/javax/swing/JMenuItem/8152981/MenuItemIconTest.java
@@ -0,0 +1,114 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8152981
+ * @summary Double icons with JMenuItem setHorizontalTextPosition on Win 10
+ * @requires (os.family == "windows")
+ * @run main MenuItemIconTest
+ */
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Graphics;
+import java.awt.Point;
+import java.awt.Robot;
+import java.awt.image.BufferedImage;
+import javax.swing.ImageIcon;
+import javax.swing.JFrame;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.SwingConstants;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+
+public class MenuItemIconTest {
+
+    private static JFrame frame;
+    private static Robot robot;
+    private static String errorMessage = "";
+    private static JMenuItem menuItem;
+    private static final int IMAGE_WIDTH_AND_HEIGHT = 25;
+
+    public static void main(String[] args) throws Exception {
+        robot = new Robot();
+        String name = UIManager.getSystemLookAndFeelClassName();
+        try {
+            UIManager.setLookAndFeel(name);
+        } catch (ClassNotFoundException | InstantiationException |
+                IllegalAccessException | UnsupportedLookAndFeelException e) {
+            throw new RuntimeException("Test Failed");
+        }
+        createUI();
+        robot.waitForIdle();
+        executeTest();
+        if (!"".equals(errorMessage)) {
+            throw new RuntimeException(errorMessage);
+        }
+    }
+
+    private static void createUI() throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            frame = new JFrame();
+            frame.setTitle("Test");
+            JMenuBar menuBar = new JMenuBar();
+            ImageIcon icon = createIcon();
+            menuItem = new JMenuItem("Command", icon);
+            menuItem.setHorizontalTextPosition(SwingConstants.LEFT);
+            menuBar.add(menuItem);
+            frame.setJMenuBar(menuBar);
+            frame.setPreferredSize(new Dimension(500, 500));
+            frame.pack();
+            frame.setVisible(true);
+            frame.setLocationRelativeTo(null);
+        });
+    }
+
+    private static void checkPixeclColor(int x, int y) {
+        robot.delay(2000);
+        robot.mouseMove(x, y);
+        Color c = robot.getPixelColor(x, y);
+        if (c.getRed() == 255) {
+            errorMessage = "Test Failed";
+        }
+        robot.delay(5000);
+        frame.dispose();
+    }
+
+    protected static ImageIcon createIcon() {
+        BufferedImage bi = new BufferedImage(IMAGE_WIDTH_AND_HEIGHT,
+                IMAGE_WIDTH_AND_HEIGHT, BufferedImage.TYPE_INT_ARGB);
+        Graphics g = bi.createGraphics();
+        g.setColor(Color.RED);
+        g.fillOval(0, 0, IMAGE_WIDTH_AND_HEIGHT, IMAGE_WIDTH_AND_HEIGHT);
+        return new ImageIcon(bi);
+    }
+
+    private static void executeTest() throws Exception {
+        Point point = menuItem.getLocationOnScreen();
+        checkPixeclColor(point.x + IMAGE_WIDTH_AND_HEIGHT / 2,
+                point.y + IMAGE_WIDTH_AND_HEIGHT / 2);
+    }
+}
+
diff --git a/jdk/test/javax/swing/JMenuItem/ClickMenuTestManual/ClickMenuTestManual.java b/jdk/test/javax/swing/JMenuItem/ClickMenuTestManual/ClickMenuTestManual.java
new file mode 100644
index 0000000..c8602c2
--- /dev/null
+++ b/jdk/test/javax/swing/JMenuItem/ClickMenuTestManual/ClickMenuTestManual.java
@@ -0,0 +1,183 @@
+/*
+ * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+ /* @test
+ * @bug 8158230
+ * @summary Verify menu item option apple.laf.useScreenMenuBar implementation
+ * @requires (os.family=="mac")
+ * @run main ClickMenuTestManual
+ */
+import java.awt.Color;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import javax.swing.BorderFactory;
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JTextArea;
+import static javax.swing.WindowConstants.EXIT_ON_CLOSE;
+
+public class ClickMenuTestManual implements
+        ActionListener {
+
+    public static final String TEST_STRING = "STRING";
+
+    private static GridBagLayout layout;
+    private static JPanel mainControlPanel;
+    private static JPanel instructionPanel;
+    private static JPanel testPanel;
+
+    private static JPanel resultButtonPanel;
+    private static JPanel controlPanel;
+    private static JTextArea instructionTextArea;
+    private static JTextArea testTextArea;
+    private static JButton passButton;
+    private static JButton failButton;
+    private static JMenu menu;
+    private static JMenuBar menuBar;
+    private static JMenuItem menuItem;
+    private static JFrame mainFrame;
+
+    public static void main(String[] args) throws Exception {
+        System.setProperty("apple.laf.useScreenMenuBar", "true");
+        ClickMenuTestManual test
+                = new ClickMenuTestManual();
+    }
+
+    public ClickMenuTestManual() throws Exception {
+        createControlPanelUI();
+    }
+
+    public final void createControlPanelUI() throws Exception {
+        layout = new GridBagLayout();
+        mainControlPanel = new JPanel(layout);
+        instructionPanel = new JPanel(layout);
+        testPanel = new JPanel(layout);
+        resultButtonPanel = new JPanel(layout);
+        controlPanel = new JPanel(layout);
+
+        GridBagConstraints gbc = new GridBagConstraints();
+        String instructions
+                = "1) Click on MENU using mouse "
+                + "\n2) Click on MENU ITEM using mouse "
+                + "\n3) Check output on textArea if equal to STRING "
+                + "\n\n If correct string, press \"Pass\" "
+                + "\n Otherwise, press \"Fail\" ";
+        instructionTextArea = new JTextArea();
+        instructionTextArea.setText(instructions);
+        instructionTextArea.setEnabled(false);
+        instructionTextArea.setDisabledTextColor(Color.black);
+        instructionTextArea.setBackground(Color.white);
+        instructionTextArea.setBorder(
+                BorderFactory.createLineBorder(Color.black));
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.fill = GridBagConstraints.HORIZONTAL;
+        instructionPanel.add(instructionTextArea, gbc);
+        testTextArea = new JTextArea();
+        testTextArea.setEnabled(true);
+        testTextArea.setDisabledTextColor(Color.black);
+        testTextArea.setBackground(Color.white);
+        testTextArea.setBorder(
+                BorderFactory.createLineBorder(Color.black));
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.fill = GridBagConstraints.HORIZONTAL;
+        testPanel.add(testTextArea, gbc);
+        passButton = new JButton("Pass");
+        passButton.setActionCommand("Pass");
+        passButton.addActionListener(this);
+        failButton = new JButton("Fail");
+        failButton.setActionCommand("Fail");
+        failButton.addActionListener(this);
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        resultButtonPanel.add(passButton, gbc);
+        gbc.gridx = 1;
+        gbc.gridy = 0;
+        resultButtonPanel.add(failButton, gbc);
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        mainControlPanel.add(instructionPanel, gbc);
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        mainControlPanel.add(testPanel, gbc);
+        gbc.gridx = 0;
+        gbc.gridy = 2;
+        mainControlPanel.add(resultButtonPanel, gbc);
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        mainControlPanel.add(controlPanel, gbc);
+        mainFrame = new JFrame("Control Panel");
+        mainFrame.add(mainControlPanel);
+        menuBar = new JMenuBar();
+        menu = new JMenu("MENU");
+        menuItem = new JMenuItem("MENU ITEM");
+        menuItem.addActionListener((e) -> {
+            testTextArea.setText(TEST_STRING);
+        });
+        menu.add(menuItem);
+        menuBar.add(menu);
+        mainFrame.setJMenuBar(menuBar);
+        mainFrame.pack();
+        mainFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
+        mainFrame.setVisible(true);
+
+    }
+
+    @Override
+    public void actionPerformed(ActionEvent evt) {
+        if (evt.getSource() instanceof JButton) {
+            JButton btn = (JButton) evt.getSource();
+            if (btn.getActionCommand().equals("Pass")) {
+                try {
+                    cleanUp();
+                } catch (Exception ex) {
+                    Logger.getLogger(ClickMenuTestManual.class
+                            .getName()).log(Level.SEVERE, null, ex);
+                }
+            } else if (btn.getActionCommand().equals("Fail")) {
+                try {
+                    cleanUp();
+                } catch (Exception ex) {
+                    Logger.getLogger(ClickMenuTestManual.class
+                            .getName()).log(Level.SEVERE, null, ex);
+                }
+                throw new AssertionError("Test case has failed");
+
+            }
+        }
+    }
+
+    private static void cleanUp() {
+        mainFrame.dispose();
+    }
+
+}
diff --git a/jdk/test/javax/swing/JPopupMenu/4634626/bug4634626.java b/jdk/test/javax/swing/JPopupMenu/4634626/bug4634626.java
index ead465a..fb0ebe3 100644
--- a/jdk/test/javax/swing/JPopupMenu/4634626/bug4634626.java
+++ b/jdk/test/javax/swing/JPopupMenu/4634626/bug4634626.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -20,14 +20,18 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
-/* @test
-   @bug 4634626
-   @summary Implement context popup menus for components
-   @author Alexander Zuev
-   @library ../../../../lib/testlibrary
-   @build ExtendedRobot
-   @run applet bug4634626.html
-*/
+
+/*
+ * @test
+ * @key headful
+ * @bug 4634626
+ * @summary Implement context popup menus for components
+ * @author Alexander Zuev
+ * @library ../../../../lib/testlibrary
+ * @build ExtendedRobot
+ * @run applet bug4634626.html
+ */
+
 import javax.swing.*;
 import java.awt.event.*;
 import java.awt.*;
diff --git a/jdk/test/javax/swing/JPopupMenu/8147521/PopupMenuTest.java b/jdk/test/javax/swing/JPopupMenu/8147521/PopupMenuTest.java
new file mode 100644
index 0000000..b00abfc
--- /dev/null
+++ b/jdk/test/javax/swing/JPopupMenu/8147521/PopupMenuTest.java
@@ -0,0 +1,178 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8147521 8158358
+ * @summary [macosx] Internal API Usage: setPopupType used to force creation of
+ * heavyweight popup
+ * @run main PopupMenuTest
+ */
+import java.awt.Component;
+import java.awt.Point;
+import java.awt.Rectangle;
+import java.awt.Robot;
+import java.awt.event.InputEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import javax.swing.JFrame;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.Popup;
+import javax.swing.PopupFactory;
+import javax.swing.SwingUtilities;
+import javax.swing.event.PopupMenuEvent;
+import javax.swing.event.PopupMenuListener;
+import javax.swing.plaf.basic.BasicPopupMenuUI;
+
+public class PopupMenuTest {
+
+    private JPopupMenu jpopup;
+    private static volatile boolean isLightWeight;
+    private static JFrame frame;
+    private static Robot robot;
+    private static JPanel panel;
+
+    public static void main(String s[]) throws Exception {
+        PopupMenuTest obj = new PopupMenuTest();
+        obj.createUI();
+        robot = new Robot();
+        robot.waitForIdle();
+        robot.delay(1000);
+        obj.exectuteTest();
+        obj.dispose();
+        if (isLightWeight) {
+            throw new RuntimeException("Test Failed");
+        }
+    }
+
+    private void createUI() throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            frame = new JFrame("Popup Menu");
+            jpopup = new JPopupMenu();
+            jpopup.setUI(new PopMenuUIExt());
+            JMenuItem item = new JMenuItem("Menu Item1");
+            jpopup.add(item);
+            item = new JMenuItem("Menu Item2");
+            jpopup.setLabel("Justification");
+            jpopup.add(item);
+            jpopup.setLabel("Justification");
+            jpopup.addPopupMenuListener(new PopupListener());
+            panel = new JPanel();
+            panel.addMouseListener(new MousePopupListener());
+            frame.setContentPane(panel);
+            frame.setSize(300, 300);
+            frame.setLocationRelativeTo(null);
+            frame.setVisible(true);
+        });
+
+    }
+
+    private void dispose() throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            Popup popup = PopMenuUIExt.getPopup();
+            if (popup != null) {
+                popup.hide();
+            }
+            frame.dispose();
+        });
+    }
+
+    private void exectuteTest() {
+        Point p = frame.getLocationOnScreen();
+        Rectangle rect = frame.getBounds();
+        robot.mouseMove(p.x + rect.width / 2, p.y + rect.height / 2);
+        robot.mousePress(InputEvent.BUTTON3_DOWN_MASK);
+        robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK);
+        robot.delay(1000);
+        robot.mouseMove(p.x + rect.width / 2 - 10, p.y + rect.height / 2 - 10);
+        robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
+        robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
+        robot.delay(1000);
+    }
+
+    class MousePopupListener extends MouseAdapter {
+
+        @Override
+        public void mousePressed(MouseEvent e) {
+            showPopup(e);
+        }
+
+        @Override
+        public void mouseClicked(MouseEvent e) {
+            showPopup(e);
+        }
+
+        @Override
+        public void mouseReleased(MouseEvent e) {
+            showPopup(e);
+        }
+
+        private void showPopup(MouseEvent e) {
+            jpopup.show(panel, e.getX(), e.getY());
+        }
+    }
+
+    class PopupListener implements PopupMenuListener {
+
+        public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
+        }
+
+        public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
+            Popup popup = ((PopMenuUIExt) jpopup.getUI()).getPopup();
+            if (popup != null) {
+                isLightWeight = !popup.getClass().toString().
+                        contains("HeavyWeightPopup");
+            }
+        }
+
+        public void popupMenuCanceled(PopupMenuEvent e) {
+        }
+    }
+}
+
+class PopMenuUIExt extends BasicPopupMenuUI {
+
+    private static Popup popUp;
+
+    @Override
+    public Popup getPopup(JPopupMenu popup, int x, int y) {
+        PopupFactory.setSharedInstance(new PopupFactory() {
+
+            @Override
+            public Popup getPopup(Component owner, Component contents,
+                    int x, int y) {
+                return super.getPopup(owner, contents, x, y, true);
+            }
+        });
+        PopupFactory factory = PopupFactory.getSharedInstance();
+        popUp = factory.getPopup(popup.getInvoker(), popup, x, y);
+        return popUp;
+    }
+
+    public static Popup getPopup() {
+        return popUp;
+    }
+}
+
diff --git a/jdk/test/javax/swing/JSlider/6794836/bug6794836.java b/jdk/test/javax/swing/JSlider/6794836/bug6794836.java
index 26428aa..0f4258d 100644
--- a/jdk/test/javax/swing/JSlider/6794836/bug6794836.java
+++ b/jdk/test/javax/swing/JSlider/6794836/bug6794836.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,9 @@
  * questions.
  */
 
-/* @test
+/*
+ * @test
+ * @key headful
  * @bug 6794836
  * @summary BasicSliderUI throws NullPointerExc when JSlider maximum is Integer.MAX_VALUE
  * @author Pavel Porvatov
diff --git a/jdk/test/javax/swing/JSpinner/5012888/bug5012888.java b/jdk/test/javax/swing/JSpinner/5012888/bug5012888.java
index c98b46a..1bc83dc 100644
--- a/jdk/test/javax/swing/JSpinner/5012888/bug5012888.java
+++ b/jdk/test/javax/swing/JSpinner/5012888/bug5012888.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,15 @@
  * questions.
  */
 
-/* @test 1.0 04/04/23
-   @bug 5012888
-   @summary REGRESSION: Click & hold on arrow of JSpinner only transfers focus
-   @author Konstantin Eremin
-   @run main bug5012888
-*/
+/*
+ * @test 1.0 04/04/23
+ * @key headful
+ * @bug 5012888
+ * @summary REGRESSION: Click & hold on arrow of JSpinner only transfers focus
+ * @author Konstantin Eremin
+ * @run main bug5012888
+ */
+
 import javax.swing.*;
 import javax.swing.event.*;
 import java.awt.*;
diff --git a/jdk/test/javax/swing/JTextField/I18NViewNoWrapMinSpan/I18NViewNoWrapMinSpan.java b/jdk/test/javax/swing/JTextField/I18NViewNoWrapMinSpan/I18NViewNoWrapMinSpan.java
index 2709db2..7a651bc 100644
--- a/jdk/test/javax/swing/JTextField/I18NViewNoWrapMinSpan/I18NViewNoWrapMinSpan.java
+++ b/jdk/test/javax/swing/JTextField/I18NViewNoWrapMinSpan/I18NViewNoWrapMinSpan.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,34 +28,29 @@
    @author Semyon Sadetsky
 */
 
-import javax.swing.*;
+import javax.swing.JTextField;
 import javax.swing.SwingUtilities;
 import javax.swing.text.BadLocationException;
-import java.lang.Override;
-import java.lang.Runnable;
 
 public class I18NViewNoWrapMinSpan {
 
     public static void main(String[] args) throws Exception {
-        SwingUtilities.invokeAndWait(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    JTextField textField = new JTextField(15);
-                    textField.setText("ม12345");
-                    float noSpaceMin = textField.getUI().getRootView(textField)
-                            .getMinimumSpan(0);
-                    textField.getDocument().insertString(3, " ", null);
-                    if (noSpaceMin > textField.getUI().getRootView(textField)
-                            .getMinimumSpan(0)) {
-                        throw new RuntimeException(
-                                "Minimum span is calculated for wrapped text");
-                    }
-                } catch (BadLocationException e) {
-                    throw new RuntimeException(e);
+        SwingUtilities.invokeAndWait(() -> {
+            try {
+                JTextField textField = new JTextField(15);
+                textField.setText("\u0E2112345");
+                float noSpaceMin = textField.getUI().getRootView(textField)
+                        .getMinimumSpan(0);
+                textField.getDocument().insertString(3, " ", null);
+                if (noSpaceMin > textField.getUI().getRootView(textField)
+                        .getMinimumSpan(0)) {
+                    throw new RuntimeException(
+                            "Minimum span is calculated for wrapped text");
                 }
+            } catch (BadLocationException e) {
+                throw new RuntimeException(e);
             }
         });
         System.out.println("ok");
     }
-}
\ No newline at end of file
+}
diff --git a/jdk/test/javax/swing/JTree/DnD/LastNodeLowerHalfDrop.java b/jdk/test/javax/swing/JTree/DnD/LastNodeLowerHalfDrop.java
index 48f2f0c..1308f26 100644
--- a/jdk/test/javax/swing/JTree/DnD/LastNodeLowerHalfDrop.java
+++ b/jdk/test/javax/swing/JTree/DnD/LastNodeLowerHalfDrop.java
@@ -22,12 +22,14 @@
  */
 
 /* @test
-   @bug 8129830
-   @summary JTree drag/drop on lower half of last child of container incorrect
-   @author Semyon Sadetsky
-  */
+ * @bug 8129830 8132771
+ * @summary JTree drag/drop on lower half of last child of container incorrect
+ * @run main LastNodeLowerHalfDrop
+ */
 
-import java.awt.*;
+import java.awt.Point;
+import java.awt.Rectangle;
+import java.awt.Robot;
 import java.awt.datatransfer.DataFlavor;
 import java.awt.datatransfer.Transferable;
 import java.awt.datatransfer.UnsupportedFlavorException;
@@ -35,7 +37,13 @@
 import java.util.ArrayList;
 import java.util.Enumeration;
 import java.util.List;
-import javax.swing.*;
+import javax.swing.DropMode;
+import javax.swing.JComponent;
+import javax.swing.JFrame;
+import javax.swing.JScrollPane;
+import javax.swing.JTree;
+import javax.swing.SwingUtilities;
+import javax.swing.TransferHandler;
 import javax.swing.tree.DefaultMutableTreeNode;
 import javax.swing.tree.DefaultTreeModel;
 import javax.swing.tree.TreeModel;
@@ -74,24 +82,31 @@
         testCase(b2, a1, +0.4f);
         if (!"b2".equals(jTree.getModel().
                 getChild(a, a.getChildCount() - 1).toString())) {
-            throw new RuntimeException("b1 was not inserted in the last position in a");
+            cleanUp();
+            throw new RuntimeException("b1 was not inserted "
+                    +"in the last position in a");
         }
         testCase(c1, c, -0.4f);
         if (!"c1".equals(jTree.getModel().getChild(root, 2).toString())) {
-            throw new RuntimeException("c1 was not inserted beetween c and b nodes");
+            cleanUp();
+            throw new RuntimeException("c1 was not inserted "
+                    +"between c and b nodes");
         }
+        cleanUp();
+    }
 
-        SwingUtilities.invokeLater(new Runnable() {
+    private static void cleanUp() throws Exception {
+        SwingUtilities.invokeAndWait(new Runnable() {
             @Override
             public void run() {
                 f.dispose();
             }
         });
-        System.out.printf("ok");
     }
 
-    static void testCase(DefaultMutableTreeNode drag,
-                         DefaultMutableTreeNode drop, float shift) throws Exception {
+    private static void testCase(final DefaultMutableTreeNode drag,
+            final DefaultMutableTreeNode drop, final float shift)
+            throws Exception {
         Robot robot = new Robot();
         robot.waitForIdle();
         SwingUtilities.invokeAndWait(new Runnable() {
@@ -112,11 +127,11 @@
 
         robot.mouseMove(dragPoint.x, dragPoint.y);
         robot.mousePress(InputEvent.BUTTON1_MASK);
-        robot.delay(400);
+        robot.delay(1000);
         robot.mouseMove(dropPoint.x, dropPoint.y);
-        robot.delay(400);
+        robot.delay(1000);
         robot.mouseRelease(InputEvent.BUTTON1_MASK);
-
+        robot.delay(1000);
         robot.waitForIdle();
     }
 
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucent.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucent.java
index 92ddf3d..a34d379 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucent.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucent.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a per-pixel translucent window is dragged and resized
  *          by mouse correctly.
  * Test Description: Check if PERPIXEL_TRANSLUCENT translucency type is supported
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentGradient.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentGradient.java
index 62b72d0..fb233c5 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentGradient.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentGradient.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8032644
  * @summary Check if a per-pixel translucent window is dragged and resized by
  *          mouse correctly
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentSwing.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentSwing.java
index 4f6afe9..5cf3d27 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentSwing.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentSwing.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,6 +26,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a per-pixel translucent window shows only the area having
  *          opaque pixels
  * Test Description: Check if PERPIXEL_TRANSLUCENT Translucency type is supported
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/SetShapeAndClickSwing.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/SetShapeAndClickSwing.java
index 9705e53..3444aa0 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/SetShapeAndClickSwing.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/SetShapeAndClickSwing.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a window set with shape clips the contents
  * Test Description: Check if PERPIXEL_TRANSPARENT translucency type is supported
  *      by the current platform. Proceed if it is supported. Apply different types
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedPerPixelTranslucentGradient.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedPerPixelTranslucentGradient.java
index b0acdd0..549b7d4 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedPerPixelTranslucentGradient.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedPerPixelTranslucentGradient.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 7043845
  * @summary Check if shaped and per-pixel translucent window is dragged and
  *          resized by mouse correctly.
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedTranslucentPerPixelTranslucentGradient.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedTranslucentPerPixelTranslucentGradient.java
index 285bcf8..1e03cc1 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedTranslucentPerPixelTranslucentGradient.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedTranslucentPerPixelTranslucentGradient.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if shaped, translucent and per-pixel translucent window is
  *          dragged and resized by mouse correctly.
  * Test Description: Check if PERPIXEL_TRANSLUCENT, TRANSLUCENT and
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentJComboBox.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentJComboBox.java
index c9aa638..4de8c14 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentJComboBox.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentJComboBox.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 8024627
  * @summary Check if a JComboBox present in a window set with opacity less than
  *          1.0 shows a translucent drop down
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentPerPixelTranslucentGradient.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentPerPixelTranslucentGradient.java
index 3c40643..2137217 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentPerPixelTranslucentGradient.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentPerPixelTranslucentGradient.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if a per-pixel translucent and translucent window is dragged
  *          and resized by mouse correctly
  * Test Description: Check if PERPIXEL_TRANSLUCENT and TRANSLUCENT translucency
diff --git a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentWindowClickSwing.java b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentWindowClickSwing.java
index 1ee3ff8..0c1d135 100644
--- a/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentWindowClickSwing.java
+++ b/jdk/test/javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentWindowClickSwing.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /*
  * @test
+ * @key headful
  * @summary Check if swing components present in a window set with opacity less
  *          than 1.0 appears translucent
  * Test Description: Check if TRANSLUCENT Translucency type is supported for the
diff --git a/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK.java b/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK.java
index c1b7214..67ec62c 100644
--- a/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK.java
+++ b/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK.java
@@ -26,6 +26,7 @@
   @summary  Tests that GTK LaF is supported on solaris
             regardless of jdk.gtk.version flag values.
   @bug 8156121
+  @key headful
   @requires (os.name == "linux" | os.name == "solaris")
   @run main/othervm -Djdk.gtk.version=2 DemandGTK
   @run main/othervm -Djdk.gtk.version=3 DemandGTK
diff --git a/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK2.sh b/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK2.sh
index 93de979..fb4af25 100644
--- a/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK2.sh
+++ b/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK2.sh
@@ -26,6 +26,7 @@
 #   @test
 #   @summary  Try to force GTK2. We must bail out to GTK3 (if any) if no 2 available.
 #
+#   @key headful
 #   @compile ProvokeGTK.java
 #   @requires os.family == "linux"
 #   @run shell/timeout=400 DemandGTK2.sh
diff --git a/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK3.sh b/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK3.sh
index 1a9038a..ec14f9b 100644
--- a/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK3.sh
+++ b/jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK3.sh
@@ -27,6 +27,7 @@
 #   @test
 #   @summary  Try to force GTK3. We must bail out to GTK2 if no 3 available.
 #
+#   @key headful
 #   @compile ProvokeGTK.java
 #   @requires os.family == "linux"
 #   @run shell/timeout=400 DemandGTK3.sh
diff --git a/jdk/test/javax/swing/MultiUIDefaults/4300666/bug4300666.java b/jdk/test/javax/swing/MultiUIDefaults/4300666/bug4300666.java
index 9662205..5a00f73 100644
--- a/jdk/test/javax/swing/MultiUIDefaults/4300666/bug4300666.java
+++ b/jdk/test/javax/swing/MultiUIDefaults/4300666/bug4300666.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,14 @@
  * questions.
  */
 
-/* @test
-   @bug 4300666
-   @summary Printing UIDefaults throws NoSuchElementExcept
-   @author Andrey Pikalev
-   @run applet bug4300666.html
-*/
+/*
+ * @test
+ * @key headful
+ * @bug 4300666
+ * @summary Printing UIDefaults throws NoSuchElementExcept
+ * @author Andrey Pikalev
+ * @run applet bug4300666.html
+ */
 
 import javax.swing.*;
 
diff --git a/jdk/test/javax/swing/RepaintManager/6608456/bug6608456.java b/jdk/test/javax/swing/RepaintManager/6608456/bug6608456.java
index 40a7091..752269a 100644
--- a/jdk/test/javax/swing/RepaintManager/6608456/bug6608456.java
+++ b/jdk/test/javax/swing/RepaintManager/6608456/bug6608456.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,7 +21,9 @@
  * questions.
  */
 
-/* @test
+/*
+ * @test
+ * @key headful
  *
  * @bug 6608456
  * @author Igor Kushnirskiy
diff --git a/jdk/test/javax/swing/SwingUtilities/7170657/bug7170657.java b/jdk/test/javax/swing/SwingUtilities/7170657/bug7170657.java
index 99c04a5..1ec73e1 100644
--- a/jdk/test/javax/swing/SwingUtilities/7170657/bug7170657.java
+++ b/jdk/test/javax/swing/SwingUtilities/7170657/bug7170657.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7170657
  * @author Sergey Bylokhov
  */
diff --git a/jdk/test/javax/swing/SwingUtilities/8049533/bug8049533.java b/jdk/test/javax/swing/SwingUtilities/8049533/bug8049533.java
index 15b38d6..41a5555 100644
--- a/jdk/test/javax/swing/SwingUtilities/8049533/bug8049533.java
+++ b/jdk/test/javax/swing/SwingUtilities/8049533/bug8049533.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -28,6 +28,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8049533
  * @summary SwingUtilities.convertMouseEvent misses
  *      MouseWheelEvent.preciseWheelRotation
diff --git a/jdk/test/javax/swing/UIManager/8136366/CreateLookAndFeelTest.java b/jdk/test/javax/swing/UIManager/8136366/CreateLookAndFeelTest.java
new file mode 100644
index 0000000..72a598a
--- /dev/null
+++ b/jdk/test/javax/swing/UIManager/8136366/CreateLookAndFeelTest.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.awt.Toolkit;
+import javax.swing.LookAndFeel;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
+import sun.awt.SunToolkit;
+
+/**
+ * @test
+ * @bug 8136366
+ * @summary Add a public API to create a L&F without installation
+ * @modules java.desktop/sun.awt
+ */
+public class CreateLookAndFeelTest {
+
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeAndWait(CreateLookAndFeelTest::createLAFs);
+    }
+
+    private static void createLAFs() {
+
+        for (LAFTest lafTest : LAFTest.values()) {
+            createLAF(lafTest);
+        }
+
+        try {
+            UIManager.createLookAndFeel(null);
+        } catch (NullPointerException e) {
+            return;
+        } catch (UnsupportedLookAndFeelException ignore) {
+        }
+
+        throw new RuntimeException("NPE is not thrown!");
+    }
+
+    private static void createLAF(LAFTest lafTest) {
+        try {
+            UIManager.createLookAndFeel(lafTest.lafName);
+
+        } catch (UnsupportedLookAndFeelException e) {
+            if (lafTest.isSupported) {
+                throw new RuntimeException(e);
+            }
+        }
+    }
+
+    private static boolean isOSAvailable(String supportedOS) {
+        return System.getProperty("os.name")
+                .toLowerCase()
+                .contains(supportedOS);
+    }
+
+    private static boolean isGTKAvailable() {
+        Toolkit toolkit = Toolkit.getDefaultToolkit();
+        if (!(toolkit instanceof SunToolkit)) {
+            return false;
+        }
+        return ((SunToolkit) toolkit).isNativeGTKAvailable();
+    }
+
+    enum LAFTest {
+
+        METAL("Metal"),
+        NIMBUS("Nimbus"),
+        MOTIF("CDE/Motif"),
+        WINDOWS("Windows", isOSAvailable("windows")),
+        GTK("GTK look and feel", isGTKAvailable()),
+        MAC("Mac OS X", isOSAvailable("mac"));
+
+        private final String lafName;
+        private final boolean isSupported;
+
+        private LAFTest(String lafName) {
+            this(lafName, true);
+        }
+
+        private LAFTest(String lafName, boolean crossPlatform) {
+            this.lafName = lafName;
+            this.isSupported = crossPlatform;
+        }
+    }
+}
diff --git a/jdk/test/javax/swing/plaf/basic/BasicComboPopup/7072653/bug7072653.java b/jdk/test/javax/swing/plaf/basic/BasicComboPopup/7072653/bug7072653.java
index ccecdc2..d983cd5 100644
--- a/jdk/test/javax/swing/plaf/basic/BasicComboPopup/7072653/bug7072653.java
+++ b/jdk/test/javax/swing/plaf/basic/BasicComboPopup/7072653/bug7072653.java
@@ -22,106 +22,153 @@
  */
 
 /* @test
-   @bug 7072653
-   @summary JComboBox popup mispositioned if its height exceeds the screen height
-   @author Semyon Sadetsky
-  */
-
-
-import javax.swing.*;
+ * @bug 7072653 8144161
+ * @summary JComboBox popup mispositioned if its height exceeds the screen height
+ * @run main bug7072653
+ */
+import java.awt.FlowLayout;
+import java.awt.GraphicsConfiguration;
+import java.awt.Insets;
+import java.awt.Robot;
 import javax.swing.event.PopupMenuEvent;
 import javax.swing.event.PopupMenuListener;
-import java.awt.*;
 import java.awt.Toolkit;
+import java.awt.Window;
+import java.util.Arrays;
+import javax.swing.DefaultComboBoxModel;
+import javax.swing.JComboBox;
+import javax.swing.JFrame;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+import javax.swing.UnsupportedLookAndFeelException;
 
 public class bug7072653 {
 
     private static JComboBox combobox;
     private static JFrame frame;
+    private static Robot robot;
+    private static volatile String errorString = "";
 
     public static void main(String[] args) throws Exception {
-        try {
+        robot = new Robot();
+        robot.delay(100);
+        UIManager.LookAndFeelInfo[] lookAndFeelArray
+                = UIManager.getInstalledLookAndFeels();
+        for (UIManager.LookAndFeelInfo lookAndFeelItem : lookAndFeelArray) {
+            executeCase(lookAndFeelItem.getClassName());
+            robot.delay(1000);
+        }
+        if (!"".equals(errorString)) {
+
+            throw new RuntimeException("Error Log:\n" + errorString);
+        }
+    }
+
+    private static void executeCase(String lookAndFeelString) throws Exception {
+        if (tryLookAndFeel(lookAndFeelString)) {
             SwingUtilities.invokeAndWait(new Runnable() {
                 @Override
                 public void run() {
-                    frame = new JFrame("JComboBox Test");
-                    setup(frame);
+                    try {
+                        setup(lookAndFeelString);
+                        test();
+                    } catch (Exception ex) {
+                        errorString += "\n";
+                        errorString += Arrays.toString(ex.getStackTrace());
+                    }
+                    finally {
+                        frame.dispose();
+                    }
                 }
             });
-            test();
-        }
-        finally {
-            frame.dispose();
         }
 
     }
 
-    static void setup(JFrame frame)  {
+    private static void setup(String lookAndFeelString)
+            throws Exception {
 
-
-        frame.setUndecorated(true);
+        frame = new JFrame("JComboBox Test " + lookAndFeelString);
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
         frame.setSize(320, 200);
-
         frame.getContentPane().setLayout(new FlowLayout());
-
+        frame.setLocationRelativeTo(null);
         combobox = new JComboBox(new DefaultComboBoxModel() {
-            public Object getElementAt(int index) { return "Element " + index; }
+            @Override
+            public Object getElementAt(int index) {
+                return "Element " + index;
+            }
+
+            @Override
             public int getSize() {
-                return 1000;
+                return 100;
             }
         });
 
-
         combobox.setMaximumRowCount(100);
         frame.getContentPane().add(combobox);
-
         frame.setVisible(true);
-
-    }
-
-    static void test() throws Exception{
-        SwingUtilities.invokeAndWait(new Runnable() {
+        combobox.addPopupMenuListener(new PopupMenuListener() {
             @Override
-            public void run() {
-                combobox.addPopupMenuListener(new PopupMenuListener() {
-                    @Override
-                    public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
-                    }
-
-                    @Override
-                    public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
-                        int height = 0;
-                        for (Window window : JFrame.getWindows()) {
-                            if (Window.Type.POPUP == window.getType()) {
-                                height = window.getSize().height;
-                                break;
-                            }
-                        }
-                        GraphicsConfiguration gc =
-                                combobox.getGraphicsConfiguration();
-                        Insets screenInsets = Toolkit.getDefaultToolkit()
-                                .getScreenInsets(gc);
-
-                        if (height == gc.getBounds().height - screenInsets.top -
-                                screenInsets.bottom ) {
-                            System.out.println("ok");
-                            return;
-                        }
-                        throw new RuntimeException(
-                                "Popup window height is wrong " + height);
-                    }
-
-                    @Override
-                    public void popupMenuCanceled(PopupMenuEvent e) {
-                    }
-                });
-                combobox.setPopupVisible(true);
-                combobox.setPopupVisible(false);
+            public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
             }
+
+            @Override
+            public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
+                int height = 0;
+                for (Window window : JFrame.getWindows()) {
+                    if (Window.Type.POPUP == window.getType()) {
+                        height = window.getSize().height;
+                        break;
+                    }
+                }
+                GraphicsConfiguration gc
+                        = combobox.getGraphicsConfiguration();
+                Insets screenInsets = Toolkit.getDefaultToolkit()
+                        .getScreenInsets(gc);
+                int gcHeight = gc.getBounds().height;
+                if (lookAndFeelString.contains("aqua")) {
+                    gcHeight = gcHeight - screenInsets.top;
+                    //For Aqua LAF
+                } else {
+                    gcHeight = gcHeight - screenInsets.top
+                            - screenInsets.bottom;
+                }
+                if (height == gcHeight) {
+                    return;
+                }
+
+                String exception = "Popup window height "
+                        + "For LookAndFeel" + lookAndFeelString + " is wrong"
+                        + "\nShould be " + height + "Actually " + gcHeight;
+                errorString += exception;
+            }
+
+            @Override
+            public void popupMenuCanceled(PopupMenuEvent e) {
+            }
+
         });
+
     }
 
+    private static void test() throws Exception {
+        combobox.setPopupVisible(true);
+        combobox.setPopupVisible(false);
+    }
 
+    private static boolean tryLookAndFeel(String lookAndFeelString)
+            throws Exception {
+        try {
+            UIManager.setLookAndFeel(
+                    lookAndFeelString);
+
+        } catch (UnsupportedLookAndFeelException
+                | ClassNotFoundException
+                | InstantiationException
+                | IllegalAccessException e) {
+            return false;
+        }
+        return true;
+    }
 }
diff --git a/jdk/test/javax/swing/plaf/basic/BasicRootPaneUI/HiddenDefaultButtonTest.java b/jdk/test/javax/swing/plaf/basic/BasicRootPaneUI/HiddenDefaultButtonTest.java
new file mode 100644
index 0000000..040126c
--- /dev/null
+++ b/jdk/test/javax/swing/plaf/basic/BasicRootPaneUI/HiddenDefaultButtonTest.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 6827800
+ * @summary Test to check hidden default button does not respond to 'Enter' key
+ * @run main HiddenDefaultButtonTest
+ */
+
+import java.awt.AWTException;
+import java.awt.Robot;
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+import java.awt.event.KeyEvent;
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.SwingUtilities;
+
+public class HiddenDefaultButtonTest {
+
+    private static int ButtonClickCount = 0;
+    private static JFrame frame;
+
+    private static void createGUI() {
+        frame = new JFrame();
+        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+
+        JButton button = new JButton("Default button");
+        button.setDefaultCapable(true);
+        button.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+                ButtonClickCount++;
+            }
+        });
+
+        frame.add(button);
+        button.setVisible(false);
+
+        frame.getRootPane().setDefaultButton(button);
+
+        frame.setSize(200, 200);
+        frame.setLocationRelativeTo(null);
+        frame.setVisible(true);
+    }
+
+    private static void disposeTestUI() throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            frame.dispose();
+        });
+    }
+
+    private static void test() throws Exception {
+        // Create Robot
+        Robot testRobot = new Robot();
+
+        testRobot.waitForIdle();
+
+        testRobot.keyPress(KeyEvent.VK_ENTER);
+        testRobot.delay(20);
+        testRobot.keyRelease(KeyEvent.VK_ENTER);
+        testRobot.delay(200);
+        testRobot.keyPress(KeyEvent.VK_ENTER);
+        testRobot.delay(20);
+        testRobot.keyRelease(KeyEvent.VK_ENTER);
+
+        testRobot.waitForIdle();
+
+        if (ButtonClickCount != 0) {
+            disposeTestUI();
+            throw new RuntimeException("DefaultButton is pressed even if it is invisible");
+        }
+
+    }
+
+    public static void main(String[] args) throws Exception {
+        // create UI
+        SwingUtilities.invokeAndWait(new Runnable() {
+            public void run() {
+                HiddenDefaultButtonTest.createGUI();
+            }
+        });
+
+        // Test default button press by pressing EnterKey using Robot
+        test();
+
+        // dispose UI
+        HiddenDefaultButtonTest.disposeTestUI();
+    }
+}
+
diff --git a/jdk/test/javax/swing/plaf/synth/SynthScrollbarThumbPainter/SynthScrollbarThumbPainterTest.java b/jdk/test/javax/swing/plaf/synth/SynthScrollbarThumbPainter/SynthScrollbarThumbPainterTest.java
new file mode 100644
index 0000000..39601d1
--- /dev/null
+++ b/jdk/test/javax/swing/plaf/synth/SynthScrollbarThumbPainter/SynthScrollbarThumbPainterTest.java
@@ -0,0 +1,203 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 7172750
+ * @summary Test to check Synth ScrollBar:ScrollBarThumb[].backgroundPainter is invoked
+ * @run main SynthScrollbarThumbPainterTest
+ */
+
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.Graphics2D;
+import java.awt.Point;
+import java.awt.Robot;
+import java.awt.event.InputEvent;
+import java.awt.image.BufferedImage;
+import javax.swing.JComponent;
+import javax.swing.JEditorPane;
+import javax.swing.JFrame;
+import javax.swing.JScrollPane;
+import javax.swing.Painter;
+import javax.swing.SwingUtilities;
+import javax.swing.UIManager;
+
+public class SynthScrollbarThumbPainterTest {
+
+    private static Robot testRobot;
+    private static Point pos = new Point();
+    private static MyFrame testFrame;
+
+    public static void main(String[] args) throws Exception {
+        // Create Robot
+        testRobot = new Robot();
+
+        // Create test UI
+        String lookAndFeelString = "javax.swing.plaf.nimbus.NimbusLookAndFeel";
+        SwingUtilities.invokeAndWait(new Runnable() {
+            @Override
+            public void run() {
+                try {
+                    constructTestUI(lookAndFeelString);
+                } catch (Exception ex) {
+                    throw new RuntimeException("Exception creating test UI");
+                }
+            }
+        });
+
+        testRobot.waitForIdle();
+        testRobot.delay(200);
+
+        // Run test method
+        testScrollBarThumbPainter();
+
+        // Dispose test UI
+        disposeTestUI();
+    }
+
+    private static void disposeTestUI() throws Exception {
+        SwingUtilities.invokeAndWait(() -> {
+            testFrame.dispose();
+        });
+    }
+
+
+    private static void constructTestUI(String lookAndFeelString) throws Exception {
+        // Set look and feel
+        UIManager.setLookAndFeel(lookAndFeelString);
+
+        // Set ScrollBarThumb background painters
+        UIManager.getLookAndFeelDefaults().put("ScrollBar:ScrollBarThumb[Enabled].backgroundPainter", new FillPainter(Color.RED));
+        UIManager.getLookAndFeelDefaults().put("ScrollBar:ScrollBarThumb[MouseOver].backgroundPainter", new FillPainter(Color.GREEN));
+        UIManager.getLookAndFeelDefaults().put("ScrollBar:ScrollBarThumb[Pressed].backgroundPainter", new FillPainter(Color.BLUE));
+
+        // Create UI
+        testFrame = new MyFrame();
+    }
+
+   private static void testScrollBarThumbPainter() throws Exception {
+        Point p = testFrame.getLocation();
+        pos.setLocation(p.x + 185, p.y + 80); // offset where scrollbar exists
+
+        testRobot.delay(200);
+
+        // Get the scrollbar color
+        Color ScrollbarColor = testFrame.getPixelColor(pos.x - p.x, pos.y - p.y);
+
+        // Assert ScrollbarThumb 'Enable' state color
+        if (!ScrollbarColor.equals(Color.RED)) {
+            disposeTestUI();
+            throw new RuntimeException("ScrollbarThumb 'Enable' state color does not match expected color");
+        }
+
+        // Move the mouse over scrollbar
+        testRobot.mouseMove(pos.x, pos.y);
+        testRobot.delay(200);
+
+        ScrollbarColor = testFrame.getPixelColor(pos.x - p.x, pos.y - p.y);
+
+        //Assert ScrollbarThumb 'MouseOver' state color
+        if (!ScrollbarColor.equals(Color.GREEN)) {
+            disposeTestUI();
+            throw new RuntimeException("ScrollbarThumb 'MouseOver' state color does not match expected color");
+        }
+
+        // Mouse Press on scrollbar
+        testRobot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
+        testRobot.delay(200);
+
+        ScrollbarColor = testFrame.getPixelColor(pos.x - p.x, pos.y - p.y);
+
+        testRobot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
+        testRobot.delay(200);
+
+        //Assert ScrollbarThumb 'Pressed' state color
+        if (!ScrollbarColor.equals(Color.BLUE)) {
+            disposeTestUI();
+            throw new RuntimeException("ScrollbarThumb 'Pressed' state color does not match expected color");
+        }
+    }
+
+}
+
+
+class FillPainter implements Painter<JComponent> {
+
+    private final Color color;
+
+    FillPainter(Color c) {
+        color = c;
+    }
+
+    @Override
+    public void paint(Graphics2D g, JComponent object, int width, int height) {
+        g.setColor(color);
+        g.fillRect(0, 0, width - 1, height - 1);
+    }
+}
+
+class MyFrame extends JFrame {
+
+    private BufferedImage bi;
+    private final String content = "A\nB\nC\nD\nE\nF\nG\nH\nI\nJ\nK\nL\nM\nN\nO";
+
+    public MyFrame() {
+        JEditorPane editpane = new JEditorPane();
+        editpane.setEditable(false);
+        editpane.setText(content);
+        editpane.setCaretPosition(0);
+
+        JScrollPane scrollpane = new JScrollPane(editpane);
+
+        add(scrollpane);
+
+        setDefaultCloseOperation(DISPOSE_ON_CLOSE);
+
+        setSize(new Dimension(200, 200));
+        bi = new BufferedImage(200, 200, BufferedImage.TYPE_INT_ARGB);
+        setResizable(false);
+        setVisible(true);
+    }
+
+
+    public Color getPixelColor(int x, int y) {
+
+        paintFrameToBufferedImage(this);
+
+        int pixel = bi.getRGB(x, y);
+
+        int alpha = (pixel >> 24) & 0xff;
+        int red = (pixel >> 16) & 0xff;
+        int green = (pixel >> 8) & 0xff;
+        int blue = (pixel) & 0xff;
+
+        Color pixelColor = new Color(red, green, blue, alpha);
+        return pixelColor;
+    }
+
+    private void paintFrameToBufferedImage(Component component) {
+       component.paint(bi.getGraphics());
+    }
+} //MyFrame
+
diff --git a/jdk/test/javax/swing/plaf/synth/Test6660049.java b/jdk/test/javax/swing/plaf/synth/Test6660049.java
index 234452d..a7486eb 100644
--- a/jdk/test/javax/swing/plaf/synth/Test6660049.java
+++ b/jdk/test/javax/swing/plaf/synth/Test6660049.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6660049 6849518
  * @summary Tests the Region initialization
  * @author Sergey Malenkov
diff --git a/jdk/test/javax/swing/text/AbstractDocument/DocumentInsert/DocumentInsertAtWrongPositionTest.java b/jdk/test/javax/swing/text/AbstractDocument/DocumentInsert/DocumentInsertAtWrongPositionTest.java
new file mode 100644
index 0000000..a6da386
--- /dev/null
+++ b/jdk/test/javax/swing/text/AbstractDocument/DocumentInsert/DocumentInsertAtWrongPositionTest.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  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.
+ */
+
+import javax.swing.*;
+import javax.swing.text.*;
+
+/*
+ * @test
+ * @bug 8151015
+ * @summary JTextArea.insert() does not behave as expected with invalid position
+ * @run main DocumentInsertAtWrongPositionTest
+ */
+public class DocumentInsertAtWrongPositionTest {
+    public static void main(String[] args) throws Exception {
+        JTextField te = new JTextField("1234567890");
+        JTextPane tp = new JTextPane();
+        tp.setText("1234567890");
+        JTextArea ta = new JTextArea("1234567890");
+
+        try {
+            ta.insert("abc", 11);
+
+            throw new RuntimeException("failed");
+        } catch (IllegalArgumentException e) {
+        }
+        try {
+
+            te.getDocument().insertString(11, "abc", new SimpleAttributeSet());
+
+            throw new RuntimeException("failed");
+        } catch (BadLocationException e) {
+        }
+        try {
+            tp.getDocument().insertString(11, "abc", new SimpleAttributeSet());
+            throw new RuntimeException("failed");
+        } catch (BadLocationException e) {
+        }
+    }
+}
diff --git a/jdk/test/javax/swing/text/GapContent/4496801/bug4496801.java b/jdk/test/javax/swing/text/GapContent/4496801/bug4496801.java
new file mode 100644
index 0000000..aa258a8
--- /dev/null
+++ b/jdk/test/javax/swing/text/GapContent/4496801/bug4496801.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 4496801 8151015
+   @summary Tests HTMLDocument.insertBeforeEnd() method
+   @author Peter Zhelezniakov
+   @run main bug4496801
+*/
+
+import javax.swing.text.html.parser.ParserDelegator;
+import javax.swing.text.html.*;
+import javax.swing.text.*;
+import java.io.IOException;
+
+public class bug4496801 {
+    public static void main(String[] args) {
+        HTMLDocument doc = new HTMLDocument();
+        doc.setParser(new ParserDelegator());
+
+        Element html = doc.getRootElements()[0];
+        Element body = html.getElement(0);
+
+        try {
+            doc.insertBeforeEnd(body, "<h2>foo</h2>");
+        } catch (IOException e) {
+        } catch (BadLocationException e) {
+            throw new RuntimeException("Insertion failed");
+        }
+    }
+}
diff --git a/jdk/test/javax/swing/text/StyledEditorKit/4506788/bug4506788.java b/jdk/test/javax/swing/text/StyledEditorKit/4506788/bug4506788.java
index 8e9186d..3c9e71f 100644
--- a/jdk/test/javax/swing/text/StyledEditorKit/4506788/bug4506788.java
+++ b/jdk/test/javax/swing/text/StyledEditorKit/4506788/bug4506788.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,15 @@
  * questions.
  */
 
-/* @test
- @bug 4506788 7147408
- @summary  Tests if cursor gets stuck after insertion a character
- @author Denis Sharypov
- @run applet bug4506788.html
+/*
+ * @test
+ * @key headful
+ * @bug 4506788 7147408
+ * @summary  Tests if cursor gets stuck after insertion a character
+ * @author Denis Sharypov
+ * @run applet bug4506788.html
  */
+
 import java.awt.*;
 import java.awt.event.*;
 import java.lang.reflect.InvocationTargetException;
diff --git a/jdk/test/javax/swing/text/html/parser/Parser/7165725/bug7165725.java b/jdk/test/javax/swing/text/html/parser/Parser/7165725/bug7165725.java
index 339e52f..f2f00e7 100644
--- a/jdk/test/javax/swing/text/html/parser/Parser/7165725/bug7165725.java
+++ b/jdk/test/javax/swing/text/html/parser/Parser/7165725/bug7165725.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -21,12 +21,14 @@
  * questions.
  */
 
-/* @test
-   @bug 7165725
-   @summary  Tests if HTML parser can handle successive script tags in a line
-             and it does not call false text callback after script tags.
-   @run main bug7165725
-*/
+/*
+ * @test
+ * @key headful
+ * @bug 7165725
+ * @summary  Tests if HTML parser can handle successive script tags in a line
+ *           and it does not call false text callback after script tags.
+ * @run main bug7165725
+ */
 
 import java.awt.BorderLayout;
 import java.awt.Robot;
diff --git a/jdk/test/javax/swing/text/html/parser/Parser/8078268/bug8078268.java b/jdk/test/javax/swing/text/html/parser/Parser/8078268/bug8078268.java
new file mode 100644
index 0000000..216919b
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/parser/Parser/8078268/bug8078268.java
@@ -0,0 +1,72 @@
+/*
+* Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* This code is free software; you can redistribute it and/or modify it
+* under the terms of the GNU General Public License version 2 only, as
+* published by the Free Software Foundation.
+*
+* This code is distributed in the hope that it will be useful, but WITHOUT
+* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+* FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+* version 2 for more details (a copy is included in the LICENSE file that
+* accompanied this code).
+*
+* You should have received a copy of the GNU General Public License version
+* 2 along with this work; if not, write to the Free Software Foundation,
+* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+*
+* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+* or visit www.oracle.com if you need additional information or have any
+* questions.
+*/
+
+
+import java.io.File;
+import java.io.FileReader;
+import javax.swing.SwingUtilities;
+import javax.swing.text.Document;
+import javax.swing.text.html.HTMLEditorKit;
+
+/* @test
+   @bug 8078268
+   @summary  javax.swing.text.html.parser.Parser parseScript incorrectly optimized
+   @author Mikhail Cherkasov
+   @run main bug8078268
+*/
+public class bug8078268 {
+    static volatile boolean parsingDone = false;
+    static volatile Exception exception;
+
+    public static void main(String[] args) throws Exception {
+        long s = System.currentTimeMillis();
+        SwingUtilities.invokeLater(new Runnable() {
+            @Override
+            public void run() {
+                HTMLEditorKit htmlKit = new HTMLEditorKit();
+                Document doc = htmlKit.createDefaultDocument();
+                try {
+                    htmlKit.read(new FileReader(getDirURL() + "slowparse.html"), doc, 0);
+                    parsingDone = true;
+                } catch (Exception e) {
+                    exception = e;
+                }
+            }
+        });
+        while (!parsingDone && exception == null && System.currentTimeMillis() - s < 5_000) {
+            Thread.sleep(200);
+        }
+        final long took = System.currentTimeMillis() - s;
+        if (exception != null) {
+            throw exception;
+        }
+        if (took > 5_000) {
+            throw new RuntimeException("Parsing takes too long.");
+        }
+    }
+
+    static String getDirURL() {
+        return new File(System.getProperty("test.src", ".")).getAbsolutePath() +
+                File.separator;
+    }
+}
diff --git a/jdk/test/javax/swing/text/html/parser/Parser/8078268/slowparse.html b/jdk/test/javax/swing/text/html/parser/Parser/8078268/slowparse.html
new file mode 100644
index 0000000..e6c446c
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/parser/Parser/8078268/slowparse.html
@@ -0,0 +1,3539 @@
+<html>
+<head>
+		<script type="text/javascript">
+            var a = 1;
+            <!--
+            </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script> </script>  </script>  </script>  </script>  </script>  </script>
+    -->
+    var b = 2;
+    </script>
+</head>
+<body>
+</body>
+</html>
diff --git a/jdk/test/jdk/internal/misc/VM/RuntimeArguments.java b/jdk/test/jdk/internal/misc/VM/RuntimeArguments.java
new file mode 100644
index 0000000..cde316e
--- /dev/null
+++ b/jdk/test/jdk/internal/misc/VM/RuntimeArguments.java
@@ -0,0 +1,89 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/**
+ * @test
+ * @summary Basic test of VM::getRuntimeArguments
+ * @library /lib/testlibrary
+ * @modules java.base/jdk.internal.misc
+ * @run testng RuntimeArguments
+ */
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Stream;
+import jdk.internal.misc.VM;
+import jdk.testlibrary.ProcessTools;
+import org.testng.annotations.DataProvider;
+import org.testng.annotations.Test;
+import static org.testng.Assert.*;
+
+public class RuntimeArguments {
+    static final String TEST_CLASSES = System.getProperty("test.classes");
+
+    @DataProvider(name = "options")
+    public Object[][] options() {
+        return new Object[][] {
+            { // CLI options
+              List.of("-XaddExports:java.base/jdk.internal.misc=ALL-UNNAMED",
+                      "-XaddExports:java.base/jdk.internal.perf=ALL-UNNAMED",
+                      "-addmods", "jdk.zipfs"),
+              // expected runtime arguments
+              List.of("-Djdk.launcher.addexports.0=java.base/jdk.internal.misc=ALL-UNNAMED",
+                      "-Djdk.launcher.addexports.1=java.base/jdk.internal.perf=ALL-UNNAMED",
+                      "-Djdk.launcher.addmods=jdk.zipfs")
+            },
+            { // CLI options
+              List.of("-XaddExports:java.base/jdk.internal.misc=ALL-UNNAMED",
+                      "-addmods", "jdk.zipfs",
+                      "-limitmods", "java.compact3"),
+              // expected runtime arguments
+              List.of("-Djdk.launcher.addexports.0=java.base/jdk.internal.misc=ALL-UNNAMED",
+                      "-Djdk.launcher.addmods=jdk.zipfs", "-Djdk.launcher.limitmods=java.compact3")
+            },
+        };
+    };
+
+    public static void main(String... expected) {
+        String[] vmArgs = VM.getRuntimeArguments();
+        if (!Arrays.equals(vmArgs, expected)) {
+            throw new RuntimeException(Arrays.toString(vmArgs) +
+                " != " + Arrays.toString(expected));
+        }
+    }
+
+    @Test(dataProvider = "options")
+    public void test(List<String> args, List<String> expected) throws Exception {
+        // launch a test program
+        // $ java <runtime-arguments> -classpath <cpath> RuntimeArguments <expected>
+
+        Stream<String> options = Stream.concat(args.stream(),
+            Stream.of("-classpath", TEST_CLASSES, "RuntimeArguments"));
+
+        ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
+            Stream.concat(options, expected.stream())
+                  .toArray(String[]::new)
+        );
+        ProcessTools.executeProcess(pb).shouldHaveExitValue(0);
+    }
+}
diff --git a/jdk/test/jdk/lambda/LambdaTranslationTest1.java b/jdk/test/jdk/lambda/LambdaTranslationTest1.java
index 28ad3b6..4f3c448 100644
--- a/jdk/test/jdk/lambda/LambdaTranslationTest1.java
+++ b/jdk/test/jdk/lambda/LambdaTranslationTest1.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -137,7 +137,7 @@
 
         LT1IA da = LambdaTranslationTest1::deye;
         da.doit(1234);
-        assertResult("d:1234.000000");
+        assertResult(String.format("d:%f", 1234.0));
 
         LT1SA a = LambdaTranslationTest1::count;
         assertEquals((Integer) 5, a.doit("howdy"));
diff --git a/jdk/test/jdk/lambda/LambdaTranslationTest2.java b/jdk/test/jdk/lambda/LambdaTranslationTest2.java
index 4b1c8a1..55f6d5b 100644
--- a/jdk/test/jdk/lambda/LambdaTranslationTest2.java
+++ b/jdk/test/jdk/lambda/LambdaTranslationTest2.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -200,7 +200,7 @@
         assertEquals("b1 s2", ws1.m((byte) 1, (short) 2));
 
         WidenD wd1 = LambdaTranslationTest2::pwD1;
-        assertEquals("f1.000000 d2.000000", wd1.m(1.0f, 2.0));
+        assertEquals(String.format("f%f d%f", 1.0f, 2.0), wd1.m(1.0f, 2.0));
 
         WidenI wi1 = LambdaTranslationTest2::pwI1;
         assertEquals("b1 s2 c3 i4", wi1.m((byte) 1, (short) 2, (char) 3, 4));
@@ -221,12 +221,16 @@
 
     public void testUnboxing() {
         Unbox u = LambdaTranslationTest2::pu;
-        assertEquals("b1 s2 cA i4 j5 ztrue f6.000000 d7.000000", u.m((byte)1, (short) 2, 'A', 4, 5L, true, 6.0f, 7.0));
+        String expected = String.format("b%d s%d c%c i%d j%d z%b f%f d%f",
+                                    (byte)1, (short) 2, 'A', 4, 5L, true, 6.0f, 7.0);
+        assertEquals(expected, u.m((byte)1, (short) 2, 'A', 4, 5L, true, 6.0f, 7.0));
     }
 
     public void testBoxing() {
         Box b = LambdaTranslationTest2::pb;
-        assertEquals("b1 s2 cA i4 j5 ztrue f6.000000 d7.000000", b.m((byte) 1, (short) 2, 'A', 4, 5L, true, 6.0f, 7.0));
+        String expected = String.format("b%d s%d c%c i%d j%d z%b f%f d%f",
+                                    (byte) 1, (short) 2, 'A', 4, 5L, true,  6.0f, 7.0);
+        assertEquals(expected, b.m((byte) 1, (short) 2, 'A', 4, 5L, true, 6.0f, 7.0));
     }
 
     static boolean cc(Object o) {
diff --git a/jdk/test/sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java b/jdk/test/sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java
index 6102233..582dc6a 100644
--- a/jdk/test/sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java
@@ -38,7 +38,7 @@
 
 /*
  * @test
- * @key headful screenshots
+ * @key headful screenshots intermittent
  * @summary Verifies buttons on SwingSet3 ButtonDemo page by clicking each
  *          button, taking its screenshots and checking that pressed button
  *          image is different from initial button image.
@@ -46,6 +46,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.button.ButtonDemo
  * @run testng ButtonDemoScreenshotTest
diff --git a/jdk/test/sanity/client/SwingSet/src/ButtonDemoTest.java b/jdk/test/sanity/client/SwingSet/src/ButtonDemoTest.java
index da540db..71db396 100644
--- a/jdk/test/sanity/client/SwingSet/src/ButtonDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ButtonDemoTest.java
@@ -51,6 +51,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.button.ButtonDemo
  * @run testng ButtonDemoTest
diff --git a/jdk/test/sanity/client/SwingSet/src/ComboBoxDemoTest.java b/jdk/test/sanity/client/SwingSet/src/ComboBoxDemoTest.java
index 790bc9d..9ed9f74 100644
--- a/jdk/test/sanity/client/SwingSet/src/ComboBoxDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ComboBoxDemoTest.java
@@ -40,6 +40,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.combobox.ComboBoxDemo
  * @run testng ComboBoxDemoTest
@@ -76,7 +78,7 @@
         JComboBoxOperator jcbo = new JComboBoxOperator(jfo, comboBoxInfo.ordinal());
         for (int i = 0; i < jcbo.getItemCount(); i++) {
             jcbo.selectItem(i);
-            assertEquals(comboBoxInfo.comboBoxName + " ComboBox SelectedIndex is correct", i, jcbo.getSelectedIndex());
+            jcbo.waitItemSelected(i);
         }
     }
 
diff --git a/jdk/test/sanity/client/SwingSet/src/ListDemoTest.java b/jdk/test/sanity/client/SwingSet/src/ListDemoTest.java
index c977385..b7f757d 100644
--- a/jdk/test/sanity/client/SwingSet/src/ListDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ListDemoTest.java
@@ -21,17 +21,25 @@
  * questions.
  */
 
-import org.jtregext.GuiTestListener;
 import com.sun.swingset3.demos.list.ListDemo;
 import static com.sun.swingset3.demos.list.ListDemo.DEMO_TITLE;
-import static org.testng.AssertJUnit.*;
-import org.testng.annotations.Test;
-import static org.jemmy2ext.JemmyExt.getLabeledContainerOperator;
+
+import java.awt.Component;
+import javax.swing.JList;
+
 import org.netbeans.jemmy.ClassReference;
+import org.netbeans.jemmy.ComponentChooser;
 import org.netbeans.jemmy.operators.JCheckBoxOperator;
 import org.netbeans.jemmy.operators.JFrameOperator;
 import org.netbeans.jemmy.operators.JListOperator;
+
+import static org.jemmy2ext.JemmyExt.*;
+
+import org.jtregext.GuiTestListener;
+
 import org.testng.annotations.Listeners;
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.*;
 
 /*
  * @test
@@ -43,6 +51,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.list.ListDemo
  * @run testng ListDemoTest
@@ -52,6 +62,17 @@
 
     private static final int CHECKBOX_COUNT = 50;
 
+    private void waitModelSize(JListOperator listOp, int size) {
+        listOp.waitState(new ComponentChooser() {
+            public boolean checkComponent(Component comp) {
+                return getUIValue(listOp, (JList list) -> list.getModel().getSize()) == size;
+            }
+            public String getDescription() {
+                return "Model size to be equal to " + size;
+            }
+        });
+    }
+
     @Test
     public void test() throws Exception {
 
@@ -65,16 +86,14 @@
             JCheckBoxOperator checkBox = getJCheckBoxOperator(frame, i);
             checkBox.changeSelection(false);
         }
-        System.out.println("######## Number of Items = " + listOp.getModel().getSize());
-        assertEquals("Select None number of items is correct", 0, listOp.getModel().getSize());
+        waitModelSize(listOp, 0);
 
         // Check *ALL* Prefix and Suffixes Marked
         for (int i = 0; i < CHECKBOX_COUNT; i++) {
             JCheckBoxOperator checkBox = getJCheckBoxOperator(frame, i);
             checkBox.changeSelection(true);
         }
-        System.out.println("######## Number of Items = " + listOp.getModel().getSize());
-        assertEquals("Select All number of items is correct", CHECKBOX_COUNT / 2 * CHECKBOX_COUNT / 2, listOp.getModel().getSize());
+        waitModelSize(listOp, CHECKBOX_COUNT * CHECKBOX_COUNT / 4);
 
         // Check *ALL* Prefix and *NO* Suffixes Marked
         for (int i = 0; i < CHECKBOX_COUNT; i++) {
@@ -85,8 +104,7 @@
                 checkBox.changeSelection(false);
             }
         }
-        System.out.println("######## Number of Items = " + listOp.getModel().getSize());
-        assertEquals("Select All Prefixes and NO Suffixes number of items is correct", 0, listOp.getModel().getSize());
+        waitModelSize(listOp, 0);
 
         // Check *NO* Prefix and *ALL* Suffixes Marked
         for (int i = 0; i < CHECKBOX_COUNT; i++) {
@@ -97,8 +115,7 @@
                 checkBox.changeSelection(true);
             }
         }
-        System.out.println("######## Number of Items = " + listOp.getModel().getSize());
-        assertEquals("Select NO Prefixes and All Suffixes number of items is correct", 0, listOp.getModel().getSize());
+        waitModelSize(listOp, 0);
     }
 
     private JCheckBoxOperator getJCheckBoxOperator(JFrameOperator frame, int index) {
@@ -115,7 +132,9 @@
             subindex = index - CHECKBOX_COUNT / 2;
         }
 
-        return new JCheckBoxOperator(getLabeledContainerOperator(frame, labelText), subindex);
+        JCheckBoxOperator result = new JCheckBoxOperator(getLabeledContainerOperator(frame, labelText), subindex);
+        result.setVerification(true);
+        return result;
     }
 
 }
diff --git a/jdk/test/sanity/client/SwingSet/src/OptionPaneDemoTest.java b/jdk/test/sanity/client/SwingSet/src/OptionPaneDemoTest.java
index 9ac377f..c47017f 100644
--- a/jdk/test/sanity/client/SwingSet/src/OptionPaneDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/OptionPaneDemoTest.java
@@ -21,20 +21,25 @@
  * questions.
  */
 
-import org.jtregext.GuiTestListener;
 import com.sun.swingset3.demos.optionpane.OptionPaneDemo;
 import static com.sun.swingset3.demos.optionpane.OptionPaneDemo.*;
+
 import javax.swing.UIManager;
-import static org.testng.AssertJUnit.*;
-import org.testng.annotations.Test;
+
+import org.jtregext.GuiTestListener;
+
 import org.netbeans.jemmy.ClassReference;
+import org.netbeans.jemmy.operators.Operator.DefaultStringComparator;
 import org.netbeans.jemmy.operators.JButtonOperator;
 import org.netbeans.jemmy.operators.JComboBoxOperator;
 import org.netbeans.jemmy.operators.JDialogOperator;
 import org.netbeans.jemmy.operators.JFrameOperator;
 import org.netbeans.jemmy.operators.JLabelOperator;
 import org.netbeans.jemmy.operators.JTextFieldOperator;
+
 import org.testng.annotations.Listeners;
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.*;
 
 
 /*
@@ -46,6 +51,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.optionpane.OptionPaneDemo
  * @run testng OptionPaneDemoTest
@@ -77,70 +84,44 @@
         showConfirmationDialog(frame);
     }
 
+    private void checkMessage(String message) {
+        JDialogOperator jdo = new JDialogOperator(MESSAGE);
+        new JLabelOperator(jdo, message);
+        new JButtonOperator(jdo, OK).push();
+        jdo.waitClosed();
+    }
+
+    private void useInputDialog(JFrameOperator jfo, String textToType, String buttonToPush) {
+        new JButtonOperator(jfo, INPUT_BUTTON).pushNoBlock();
+        JDialogOperator jdo = new JDialogOperator(INPUT);
+        if(textToType != null) {
+            JTextFieldOperator jto = new JTextFieldOperator(jdo);
+            jto.typeText(textToType);
+            jto.waitText(textToType);
+        }
+        new JButtonOperator(jdo, buttonToPush).push();
+        jdo.waitClosed();
+    }
+
     public void showInputDialog(JFrameOperator jfo) throws Exception {
         // Cancel with text case
-        {
-            new JButtonOperator(jfo, INPUT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(INPUT);
-            JTextFieldOperator jto = new JTextFieldOperator(jdo);
-            jto.setText(SOME_TEXT_TO_TYPE);
-
-            assertTrue("Show Input Dialog cancel w/ Text", jdo.isShowing());
-
-            new JButtonOperator(jdo, CANCEL).push();
-
-            assertFalse("Show Input Dialog cancel w/ Text", jdo.isShowing());
-        }
+        useInputDialog(jfo, SOME_TEXT_TO_TYPE, CANCEL);
+        //TODO: wait for no dialog displayed
 
         // Cancel with *NO* text case
-        {
-            new JButtonOperator(jfo, INPUT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(INPUT);
-
-            assertTrue("Show Input Dialog cancel w/o Text", jdo.isShowing());
-
-            new JButtonOperator(jdo, CANCEL).push();
-
-            assertFalse("Show Input Dialog cancel w/o Text", jdo.isShowing());
-        }
+        useInputDialog(jfo, null, CANCEL);
+        //TODO: wait for no dialog displayed
 
         // Text field has *NO* input
-        {
-            new JButtonOperator(jfo, INPUT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(INPUT);
-
-            assertTrue("Show Input Dialog w/o Input", jdo.isShowing());
-
-            new JButtonOperator(jdo, OK).push();
-
-            assertFalse("Show Input Dialog w/o Input", jdo.isShowing());
-        }
+        useInputDialog(jfo, null, OK);
+        //TODO: wait for no dialog displayed
 
         // Text field has input
         {
             final String enteredText = "Rambo";
 
-            new JButtonOperator(jfo, INPUT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(INPUT);
-            JTextFieldOperator jto = new JTextFieldOperator(jdo);
-            jto.setText(enteredText);
-            new JButtonOperator(jdo, OK).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Show Input Dialog w/ Input", jdo1.isShowing());
-
-            final String labelText = enteredText + INPUT_RESPONSE;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Text from the field made it into the dialog", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Show Input Dialog w/ Input", jdo1.isShowing());
+            useInputDialog(jfo, enteredText, OK);
+            checkMessage(enteredText + INPUT_RESPONSE);
         }
     }
 
@@ -149,11 +130,9 @@
 
         JDialogOperator jdo = new JDialogOperator(WARNING_TITLE);
 
-        assertTrue("Show Warning Dialog", jdo.isShowing());
-
         new JButtonOperator(jdo, OK).push();
 
-        assertFalse("Show Warning Dialog", jdo.isShowing());
+        jdo.waitClosed();
     }
 
     public void showMessageDialog(JFrameOperator jfo) throws Exception {
@@ -161,105 +140,46 @@
 
         JDialogOperator jdo = new JDialogOperator(MESSAGE);
 
-        assertTrue("Show Message Dialog", jdo.isShowing());
-
         new JButtonOperator(jdo, OK).push();
 
-        assertFalse("Show Message Dialog", jdo.isShowing());
+        jdo.waitClosed();
+    }
+
+    private void callADialogAndClose(JFrameOperator jfo, String buttonToOpenDialog,
+                                     String dialogTitle, String buttonToPush) {
+        new JButtonOperator(jfo, buttonToOpenDialog).pushNoBlock();
+        JDialogOperator jdo = new JDialogOperator(dialogTitle);
+        new JButtonOperator(jdo, buttonToPush).push();
+        jdo.waitClosed();
     }
 
     public void showComponentDialog(JFrameOperator jfo) throws Exception {
         // Case: Cancel
-        {
-            new JButtonOperator(jfo, COMPONENT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(COMPONENT_TITLE);
-
-            assertTrue("Show Component Dialog Cancel Option", jdo.isShowing());
-
-            new JButtonOperator(jdo, COMPONENT_OP5).push();
-
-            assertFalse("Show Component Dialog Cancel Option", jdo.isShowing());
-        }
+        callADialogAndClose(jfo, COMPONENT_BUTTON, COMPONENT_TITLE, COMPONENT_OP5);
+        //TODO: wait for no dialog displayed
 
         // Case: Yes option selected
         {
-            new JButtonOperator(jfo, COMPONENT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(COMPONENT_TITLE);
-            new JButtonOperator(jdo, COMPONENT_OP1).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Component Dialog Example Yes Option", jdo1.isShowing());
-
-            final String labelText = COMPONENT_R1;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Dialog contains appropriate text", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Component Dialog Example Yes Option", jdo1.isShowing());
+            callADialogAndClose(jfo, COMPONENT_BUTTON, COMPONENT_TITLE, COMPONENT_OP1);
+            checkMessage(COMPONENT_R1);
         }
 
         // Case: No option selected
         {
-            new JButtonOperator(jfo, COMPONENT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(COMPONENT_TITLE);
-            new JButtonOperator(jdo, COMPONENT_OP2).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Component Dialog Example No Option", jdo1.isShowing());
-
-            final String labelText = COMPONENT_R2;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Dialog contains appropriate text", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Component Dialog Example No Option", jdo1.isShowing());
+            callADialogAndClose(jfo, COMPONENT_BUTTON, COMPONENT_TITLE, COMPONENT_OP2);
+            checkMessage(COMPONENT_R2);
         }
 
         // Case: Maybe option selected
         {
-            new JButtonOperator(jfo, COMPONENT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(COMPONENT_TITLE);
-            new JButtonOperator(jdo, COMPONENT_OP3).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Component Dialog Maybe Yes Option", jdo1.isShowing());
-
-            final String labelText = COMPONENT_R3;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Dialog contains appropriate text", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Component Dialog Maybe Yes Option", jdo1.isShowing());
+            callADialogAndClose(jfo, COMPONENT_BUTTON, COMPONENT_TITLE, COMPONENT_OP3);
+            checkMessage(COMPONENT_R3);
         }
 
         // Case: Probably option selected
         {
-            new JButtonOperator(jfo, COMPONENT_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(COMPONENT_TITLE);
-            new JButtonOperator(jdo, COMPONENT_OP4).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Component Dialog Example Probably Option", jdo1.isShowing());
-
-            final String labelText = COMPONENT_R4;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Dialog contains appropriate text", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Component Dialog Example Probably Option", jdo1.isShowing());
+            callADialogAndClose(jfo, COMPONENT_BUTTON, COMPONENT_TITLE, COMPONENT_OP4);
+            checkMessage(COMPONENT_R4);
         }
 
         // Case TextField and ComboBox functional
@@ -271,69 +191,35 @@
             JTextFieldOperator jto = new JTextFieldOperator(jdo);
             jto.clearText();
             jto.typeText(TEXT_TO_TYPE);
+            jto.waitText(TEXT_TO_TYPE);
 
             JComboBoxOperator jcbo = new JComboBoxOperator(jdo);
             jcbo.selectItem(2);
+            jcbo.waitItemSelected(2);
 
-            assertEquals("Show Component Dialog TextField", TEXT_TO_TYPE, jto.getText());
-            assertEquals("Show Component Dialog ComboBox", 2, jcbo.getSelectedIndex());
-
-            new JButtonOperator(jdo, "cancel").push();
+            new JButtonOperator(jdo, COMPONENT_OP5).push();
+            jdo.waitClosed();
+            //TODO: wait for no dialog displayed
         }
     }
 
     public void showConfirmationDialog(JFrameOperator jfo) throws Exception {
         // Case: Yes option selected
         {
-            new JButtonOperator(jfo, CONFIRM_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(SELECT_AN_OPTION);
-            new JButtonOperator(jdo, YES).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Show Confirmation Dialog Yes Option", jdo1.isShowing());
-
-            final String labelText = CONFIRM_YES;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Dialog contains appropriate text", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Show Confirmation Dialog Yes Option", jdo1.isShowing());
+            callADialogAndClose(jfo, CONFIRM_BUTTON, SELECT_AN_OPTION, YES);
+            checkMessage(CONFIRM_YES);
         }
 
         // Case: No option selected
         {
-            new JButtonOperator(jfo, CONFIRM_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(SELECT_AN_OPTION);
-            new JButtonOperator(jdo, NO).pushNoBlock();
-
-            JDialogOperator jdo1 = new JDialogOperator(MESSAGE);
-
-            assertTrue("Show Confirmation Dialog No Option", jdo1.isShowing());
-
-            final String labelText = CONFIRM_NO;
-            JLabelOperator jLabelOperator = new JLabelOperator(jdo1, labelText);
-            assertEquals("Dialog contains appropriate text", labelText, jLabelOperator.getText());
-
-            new JButtonOperator(jdo1, OK).push();
-
-            assertFalse("Show Confirmation Dialog No Option", jdo1.isShowing());
+            callADialogAndClose(jfo, CONFIRM_BUTTON, SELECT_AN_OPTION, NO);
+            checkMessage(CONFIRM_NO);
         }
 
         // Case: Cancel option selected
         {
-            new JButtonOperator(jfo, CONFIRM_BUTTON).pushNoBlock();
-
-            JDialogOperator jdo = new JDialogOperator(SELECT_AN_OPTION);
-
-            assertTrue("Show Confirmation Dialog Cancel Option", jdo.isShowing());
-
-            new JButtonOperator(jdo, CANCEL).push();
-
-            assertFalse("Show Confirmation Dialog Cancel Option", jdo.isShowing());
+            callADialogAndClose(jfo, CONFIRM_BUTTON, SELECT_AN_OPTION, CANCEL);
+            //TODO: wait for no dialog displayed
         }
     }
 
diff --git a/jdk/test/sanity/client/SwingSet/src/ProgressBarDemoTest.java b/jdk/test/sanity/client/SwingSet/src/ProgressBarDemoTest.java
index b705974..54721ba 100644
--- a/jdk/test/sanity/client/SwingSet/src/ProgressBarDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ProgressBarDemoTest.java
@@ -43,6 +43,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.progressbar.ProgressBarDemo
  * @run testng ProgressBarDemoTest
@@ -81,7 +83,6 @@
             @Override
             public boolean checkComponent(Component comp) {
                 int value = progressBar.getValue();
-                System.out.println("checkComponent1 value = " + value);
                 return value < maximum;
             }
 
@@ -98,7 +99,6 @@
             @Override
             public boolean checkComponent(Component comp) {
                 int value = progressBar.getValue();
-                System.out.println("checkComponent2 value = " + value);
                 return value > 0;
             }
 
diff --git a/jdk/test/sanity/client/SwingSet/src/ScrollPaneDemoTest.java b/jdk/test/sanity/client/SwingSet/src/ScrollPaneDemoTest.java
index 2023eff..df2f416 100644
--- a/jdk/test/sanity/client/SwingSet/src/ScrollPaneDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ScrollPaneDemoTest.java
@@ -40,6 +40,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.scrollpane.ScrollPaneDemo
  * @run testng ScrollPaneDemoTest
diff --git a/jdk/test/sanity/client/SwingSet/src/SpinnerDemoTest.java b/jdk/test/sanity/client/SwingSet/src/SpinnerDemoTest.java
index 1b44efa..202633c 100644
--- a/jdk/test/sanity/client/SwingSet/src/SpinnerDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/SpinnerDemoTest.java
@@ -42,6 +42,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.spinner.SpinnerDemo
  * @run testng SpinnerDemoTest
diff --git a/jdk/test/sanity/client/SwingSet/src/SplitPaneDemoTest.java b/jdk/test/sanity/client/SwingSet/src/SplitPaneDemoTest.java
index 9993d10..ace24fd 100644
--- a/jdk/test/sanity/client/SwingSet/src/SplitPaneDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/SplitPaneDemoTest.java
@@ -21,22 +21,29 @@
  * questions.
  */
 
-import org.jtregext.GuiTestListener;
 import com.sun.swingset3.demos.splitpane.SplitPaneDemo;
 import static com.sun.swingset3.demos.splitpane.SplitPaneDemo.*;
+
+import java.awt.Component;
 import java.awt.event.KeyEvent;
 import javax.swing.JSplitPane;
-import static org.testng.AssertJUnit.*;
-import org.testng.annotations.Test;
+
+import static org.jemmy2ext.JemmyExt.*;
+
+import org.jtregext.GuiTestListener;
+
 import org.netbeans.jemmy.ClassReference;
+import org.netbeans.jemmy.ComponentChooser;
 import org.netbeans.jemmy.operators.JButtonOperator;
 import org.netbeans.jemmy.operators.JCheckBoxOperator;
 import org.netbeans.jemmy.operators.JFrameOperator;
 import org.netbeans.jemmy.operators.JRadioButtonOperator;
 import org.netbeans.jemmy.operators.JSplitPaneOperator;
 import org.netbeans.jemmy.operators.JTextFieldOperator;
-import static org.jemmy2ext.JemmyExt.*;
+
 import org.testng.annotations.Listeners;
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.*;
 
 /*
  * @test
@@ -48,6 +55,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.splitpane.SplitPaneDemo
  * @run testng SplitPaneDemoTest
@@ -115,14 +124,33 @@
                 (splitPane.getMaximumDividerLocation() + splitPane.getMinimumDividerLocation()) / 2, splitPane.getDividerLocation());
     }
 
+    private void waitDividerSize(JSplitPaneOperator splitPane, int size) {
+        splitPane.waitState(new ComponentChooser() {
+            public boolean checkComponent(Component c) {
+                return splitPane.getDividerSize() == size;
+            }
+            public String getDescription() {
+                return "Divider size to be " + size;
+            }
+        });
+    }
+
     // Check changing the size of the divider
     public void changeDividerSize(JFrameOperator frame, JSplitPaneOperator splitPane, int amount) throws Exception {
         JTextFieldOperator size = new JTextFieldOperator(getLabeledContainerOperator(frame, DIVIDER_SIZE));
-        size.clearText();
-        size.typeText(Integer.toString(amount));
-        size.pressKey(KeyEvent.VK_ENTER);
+        size.enterText(Integer.toString(amount));
+        waitDividerSize(splitPane, amount);
+    }
 
-        assertEquals("Change Divider Size", amount, splitPane.getDividerSize());
+    private void waitDividerLocation(JSplitPaneOperator splitPane, int location) {
+        splitPane.waitState(new ComponentChooser() {
+            public boolean checkComponent(Component c) {
+                return splitPane.getDividerLocation() == location;
+            }
+            public String getDescription() {
+                return "Divider location to be " + location;
+            }
+        });
     }
 
     public void checkOneTouch(JFrameOperator frame, JSplitPaneOperator splitPane, boolean oneTouch) throws Exception {
@@ -144,23 +172,19 @@
 
             // expand full left
             buttonLeft.push();
-            assertEquals("Expandable Left", left, splitPane.getDividerLocation());
+            waitDividerLocation(splitPane, left);
 
             // expand back from full left
             buttonRight.push();
-            assertEquals("Expandable Back to Original from Left",
-                    initDividerLocation, splitPane.getDividerLocation());
+            waitDividerLocation(splitPane, initDividerLocation);
 
             // expand all the way right
             buttonRight.push();
-            assertEquals("Expandable Right",
-                    splitPane.getWidth() - splitPane.getDividerSize() - right,
-                    splitPane.getDividerLocation());
+            waitDividerLocation(splitPane, splitPane.getWidth() - splitPane.getDividerSize() - right);
 
             // Click to move back from right expansion
             buttonLeft.push();
-            assertEquals("Expandable Back to Original from Right",
-                    initDividerLocation, splitPane.getDividerLocation());
+            waitDividerLocation(splitPane, initDividerLocation);
         }
 
         // Test for case where one touch expandable is disabled
@@ -169,7 +193,14 @@
                 // uncheck
                 checkBox.doClick();
             }
-            assertFalse("One Touch Expandable Off", splitPane.isOneTouchExpandable());
+            splitPane.waitState(new ComponentChooser() {
+                public boolean checkComponent(Component c) {
+                    return !splitPane.isOneTouchExpandable();
+                }
+                public String getDescription() {
+                    return "Split pane not to be one touch expandable";
+                }
+            });
         }
     }
 
diff --git a/jdk/test/sanity/client/SwingSet/src/TabbedPaneDemoTest.java b/jdk/test/sanity/client/SwingSet/src/TabbedPaneDemoTest.java
index 9b2e16b..3a954c9 100644
--- a/jdk/test/sanity/client/SwingSet/src/TabbedPaneDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/TabbedPaneDemoTest.java
@@ -43,6 +43,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.tabbedpane.TabbedPaneDemo
  * @run testng TabbedPaneDemoTest
@@ -69,9 +71,8 @@
         for (int i = 0; i < tabTitles.length; i++) {
             String pageTitle = tabTitles[i];
             JTabbedPaneOperator tabOperator = new JTabbedPaneOperator(mainFrame);
+            tabOperator.setVerification(true);
             tabOperator.selectPage(pageTitle);
-
-            assertEquals("Selected tab is selected", i, tabOperator.getSelectedIndex());
         }
     }
 
diff --git a/jdk/test/sanity/client/SwingSet/src/TextFieldDemoTest.java b/jdk/test/sanity/client/SwingSet/src/TextFieldDemoTest.java
index b46abaa..ef5e9ec 100644
--- a/jdk/test/sanity/client/SwingSet/src/TextFieldDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/TextFieldDemoTest.java
@@ -21,20 +21,22 @@
  * questions.
  */
 
-import org.jtregext.GuiTestListener;
 import com.sun.swingset3.demos.textfield.JHistoryTextField;
 import com.sun.swingset3.demos.textfield.TextFieldDemo;
 import static com.sun.swingset3.demos.textfield.TextFieldDemo.*;
+
 import java.awt.Color;
+import java.awt.Component;
 import java.awt.event.KeyEvent;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.Locale;
 import javax.swing.JFormattedTextField;
+
 import static org.jemmy2ext.JemmyExt.*;
-import static org.testng.AssertJUnit.*;
-import org.testng.annotations.Test;
+
 import org.netbeans.jemmy.ClassReference;
+import org.netbeans.jemmy.ComponentChooser;
 import org.netbeans.jemmy.QueueTool;
 import org.netbeans.jemmy.operators.ContainerOperator;
 import org.netbeans.jemmy.operators.JButtonOperator;
@@ -42,7 +44,12 @@
 import org.netbeans.jemmy.operators.JLabelOperator;
 import org.netbeans.jemmy.operators.JPasswordFieldOperator;
 import org.netbeans.jemmy.operators.JTextFieldOperator;
+
+import org.jtregext.GuiTestListener;
+
 import org.testng.annotations.Listeners;
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.*;
 
 /*
  * @test
@@ -53,6 +60,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.textfield.TextFieldDemo
  * @run testng TextFieldDemoTest
@@ -95,9 +104,7 @@
 
         // Check default date Day of the Week
         jbo.push();
-        assertEquals("Default DOW",
-                calendar.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.LONG, Locale.ENGLISH),
-                dowLabel.getText());
+        dowLabel.waitText(calendar.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.LONG, Locale.ENGLISH));
 
         // Check Custom Day of the Week
         calendar.set(2012, 9, 11); // Represents "Oct 11, 2012"
@@ -114,7 +121,7 @@
         jtfo.enterText(dateString);
 
         jbo.push();
-        assertEquals("Custom DOW", "Thursday", dowLabel.getText());
+        dowLabel.waitText("Thursday");
     }
 
     public void passwordField(JFrameOperator jfo) throws Exception {
@@ -125,13 +132,27 @@
         password2.typeText("password");
 
         // Check Matching Passwords
-        assertEquals("Matching Passwords", Color.green, password1.getBackground());
-        assertEquals("Matching Passwords", Color.green, password2.getBackground());
+        password1.waitState(new ComponentChooser() {
+            public boolean checkComponent(Component comp) {
+                return password1.getBackground().equals(Color.green) &&
+                       password2.getBackground().equals(Color.green);
+            }
+            public String getDescription() {
+                return "Passwords to match";
+            }
+        });
 
         // Check non-matching passwords
         password2.typeText("passwereertegrs");
-        assertEquals("Non-Matching Passwords", Color.white, password1.getBackground());
-        assertEquals("Non-Matching Passwords", Color.white, password2.getBackground());
+        password1.waitState(new ComponentChooser() {
+            public boolean checkComponent(Component comp) {
+                return password1.getBackground().equals(Color.white) &&
+                       password2.getBackground().equals(Color.white);
+            }
+            public String getDescription() {
+                return "Passwords not to match";
+            }
+        });
     }
 
 }
diff --git a/jdk/test/sanity/client/SwingSet/src/ToggleButtonDemoTest.java b/jdk/test/sanity/client/SwingSet/src/ToggleButtonDemoTest.java
index 2f1b6f0..f246681 100644
--- a/jdk/test/sanity/client/SwingSet/src/ToggleButtonDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/ToggleButtonDemoTest.java
@@ -56,6 +56,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.togglebutton.ToggleButtonDemo
  * @run testng ToggleButtonDemoTest
@@ -125,12 +127,12 @@
         }
 
         for (int i = 0; i < radioButtonCount; i++) {
-            jrbo[i].doClick();
-            assertTrue("Radio Button " + i + " is selected", jrbo[i].isSelected());
+            jrbo[i].push();
+            jrbo[i].waitSelected(true);
 
             for (int j = 0; j < radioButtonCount; j++) {
                 if (i != j) {
-                    assertFalse("Radio Button " + j + " is not selected", jrbo[j].isSelected());
+                    jrbo[j].waitSelected(false);
                 }
             }
         }
@@ -146,23 +148,17 @@
      */
     private void testCheckBox(ContainerOperator<?> parent, String text, boolean expectedValue) {
 
+        System.out.println("Testing " + text);
         parent.setComparator(EXACT_STRING_COMPARATOR);
         JCheckBoxOperator jcbo = new JCheckBoxOperator(parent, text);
-        assertEquals("Initial selection state of the checkbox '" + text + "'", expectedValue, jcbo.isSelected());
+        jcbo.waitSelected(expectedValue);
 
         // click check box (toggle the state)
-        jcbo.doClick();
-        assertEquals("Selection state of the checkbox '" + text + "' after click", !expectedValue, jcbo.isSelected());
-        if (jcbo.isSelected()) {
-            // toggle back to not-selected state
-            jcbo.doClick();
-            assertFalse("Check Box '" + text + "' is not selected", jcbo.isSelected());
-        } else {
-            // toggle back to selected state
-            jcbo.doClick();
+        jcbo.push();
+        jcbo.waitSelected(!expectedValue);
 
-            assertTrue("Check Box '" + text + "' is selected", jcbo.isSelected());
-        }
+        jcbo.push();
+        jcbo.waitSelected(expectedValue);
     }
 
 
diff --git a/jdk/test/sanity/client/SwingSet/src/TreeDemoTest.java b/jdk/test/sanity/client/SwingSet/src/TreeDemoTest.java
index 31166c12..473d2cf 100644
--- a/jdk/test/sanity/client/SwingSet/src/TreeDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/TreeDemoTest.java
@@ -21,16 +21,22 @@
  * questions.
  */
 
-import org.jtregext.GuiTestListener;
 import com.sun.swingset3.demos.tree.TreeDemo;
 import static com.sun.swingset3.demos.tree.TreeDemo.DEMO_TITLE;
+
+import java.awt.Component;
 import javax.swing.tree.TreePath;
-import static org.testng.AssertJUnit.*;
-import org.testng.annotations.Test;
+
+import org.jtregext.GuiTestListener;
+
 import org.netbeans.jemmy.ClassReference;
+import org.netbeans.jemmy.ComponentChooser;
 import org.netbeans.jemmy.operators.JFrameOperator;
 import org.netbeans.jemmy.operators.JTreeOperator;
+
 import org.testng.annotations.Listeners;
+import org.testng.annotations.Test;
+import static org.testng.AssertJUnit.*;
 
 /*
  * @test
@@ -45,6 +51,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.tree.TreeDemo
  * @run testng TreeDemoTest
@@ -52,6 +60,20 @@
 @Listeners(GuiTestListener.class)
 public class TreeDemoTest {
 
+    private static final int NODES_TO_EXPAND = 75;
+    private static final int NODES_TOTAL = 616;
+
+    private void waitRowCount(JTreeOperator tree, int count) {
+        tree.waitState(new ComponentChooser() {
+            public boolean checkComponent(Component comp) {
+                return tree.getRowCount() == count;
+            }
+            public String getDescription() {
+                return "A tree to have " + count + " rows";
+            }
+        });
+    }
+
     @Test
     public void test() throws Exception {
 
@@ -75,9 +97,8 @@
             }
         }
 
-        assertEquals("Number of rows expanded", 75, expandsCount);
-        assertEquals("Number of rows in the tree after expanding all of them",
-                616, tree.getRowCount());
+        assertEquals("Number of rows expanded", NODES_TO_EXPAND, expandsCount);
+        waitRowCount(tree, NODES_TOTAL);
 
         int expandedTreeHeight = tree.getHeight();
         assertTrue("Expanded tree height has increased, current "
@@ -94,9 +115,8 @@
             }
         }
 
-        assertEquals("Number of rows collapsed", 76, collapsesCount);
-        assertEquals("Number of rows in the tree after collapsing all of them",
-                1, tree.getRowCount());
+        assertEquals("Number of rows collapsed", NODES_TO_EXPAND + 1, collapsesCount);
+        waitRowCount(tree, 1);
 
         int collapsedTreeHeight = tree.getHeight();
         assertTrue("Collpased tree height is not longer than initial, "
diff --git a/jdk/test/sanity/client/SwingSet/src/WindowDemoTest.java b/jdk/test/sanity/client/SwingSet/src/WindowDemoTest.java
index 57b3ead..014f3ca 100644
--- a/jdk/test/sanity/client/SwingSet/src/WindowDemoTest.java
+++ b/jdk/test/sanity/client/SwingSet/src/WindowDemoTest.java
@@ -44,6 +44,8 @@
  * @library /sanity/client/lib/jemmy/src
  * @library /sanity/client/lib/Extensions/src
  * @library /sanity/client/lib/SwingSet3/src
+ * @modules java.desktop
+ *          java.logging
  * @build org.jemmy2ext.JemmyExt
  * @build com.sun.swingset3.demos.window.WindowDemo
  * @run testng WindowDemoTest
diff --git a/jdk/test/sun/awt/image/OffScreenImageSource/ImageFilterTest.java b/jdk/test/sun/awt/image/OffScreenImageSource/ImageFilterTest.java
new file mode 100644
index 0000000..7e74186
--- /dev/null
+++ b/jdk/test/sun/awt/image/OffScreenImageSource/ImageFilterTest.java
@@ -0,0 +1,136 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+ * @bug 8139192
+ * @summary Test to check OffScreenImageSource handles
+ *          ImageFilter.imageComplete() behaviors
+ * @run main ImageFilterTest
+ */
+
+import java.awt.Image;
+import java.awt.Toolkit;
+import java.awt.image.BufferedImage;
+import java.awt.image.FilteredImageSource;
+import java.awt.image.ImageFilter;
+
+
+public class ImageFilterTest {
+
+    public static void main(String[] args) {
+        String[] scenarios = {
+            "SUCCESS",
+            "SINGLEFRAMEDONE exception",
+            "STATICIMAGEDONE exception"
+        };
+
+        for (String str : scenarios) {
+            MyImageFilter testFilter = new MyImageFilter(str);
+            test(testFilter);
+        }
+    }
+
+    public static void test(MyImageFilter testFilter) {
+        Image image = new BufferedImage(10, 10, BufferedImage.TYPE_INT_ARGB);
+        FilteredImageSource filtered =
+                new FilteredImageSource(image.getSource(), testFilter);
+
+        Image img = Toolkit.getDefaultToolkit().createImage(filtered);
+
+        BufferedImage buffImage = new BufferedImage(img.getWidth(null),
+                img.getHeight(null), BufferedImage.TYPE_INT_ARGB);
+    }
+}
+
+class MyImageFilter extends ImageFilter {
+
+    private String testScenario;
+    private boolean intermediateStatus;
+
+    public MyImageFilter(String scenario) {
+        super();
+
+        testScenario = scenario;
+        intermediateStatus = false;
+    }
+
+    @Override
+    public void imageComplete(int status) {
+        switch (testScenario) {
+            case "SUCCESS":
+                if (status == SINGLEFRAMEDONE) {
+                    intermediateStatus = true;
+                }
+
+                if (status == STATICIMAGEDONE) {
+                    if (!intermediateStatus) {
+                        throw new RuntimeException("STATICIMAGEDONE is not expected");
+                    }
+                }
+
+                if (status == IMAGEERROR) {
+                    throw new RuntimeException("IMAGEERROR is not expected");
+                }
+                break;
+
+            case "SINGLEFRAMEDONE exception":
+                if (status == SINGLEFRAMEDONE) {
+                    intermediateStatus = true;
+
+                    throw new NullPointerException("NullPointerException for testing purpose");
+                }
+
+                if (status == IMAGEERROR) {
+                    if (!intermediateStatus) {
+                        throw new RuntimeException("IMAGEERROR is not expected");
+                    }
+                }
+
+                if (status == STATICIMAGEDONE) {
+                    throw new RuntimeException("STATICIMAGEDONE is not expected");
+                }
+                break;
+
+            case "STATICIMAGEDONE exception":
+                if (status == SINGLEFRAMEDONE) {
+                    intermediateStatus = true;
+                }
+
+                if (status == STATICIMAGEDONE) {
+                    if (intermediateStatus) {
+                        throw new RuntimeException("RuntimeException for testing purpose");
+                    }
+                }
+
+                if (status == IMAGEERROR) {
+                    throw new RuntimeException("IMAGEERROR is not expected");
+                }
+                break;
+
+            default:
+                throw new RuntimeException("Invalid Test Scenario");
+        }
+    }
+}
+
+
diff --git a/jdk/test/sun/java2d/AcceleratedXORModeTest.java b/jdk/test/sun/java2d/AcceleratedXORModeTest.java
index edde80e..decc0d7 100644
--- a/jdk/test/sun/java2d/AcceleratedXORModeTest.java
+++ b/jdk/test/sun/java2d/AcceleratedXORModeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,12 +22,13 @@
  */
 
 /*
-* @test
-* @bug     8024343 8042098
-* @summary Test verifies that accelerated pipelines
-*          correctly draws primitives in XOR mode.
-* @run main/othervm -Dsun.java2d.xrender=True AcceleratedXORModeTest
-*/
+ * @test
+ * @key headful
+ * @bug     8024343 8042098
+ * @summary Test verifies that accelerated pipelines
+ *          correctly draws primitives in XOR mode.
+ * @run main/othervm -Dsun.java2d.xrender=True AcceleratedXORModeTest
+ */
 
 import java.awt.Color;
 import java.awt.Graphics2D;
diff --git a/jdk/test/sun/java2d/ClassCastExceptionForInvalidSurface.java b/jdk/test/sun/java2d/ClassCastExceptionForInvalidSurface.java
new file mode 100644
index 0000000..956815e
--- /dev/null
+++ b/jdk/test/sun/java2d/ClassCastExceptionForInvalidSurface.java
@@ -0,0 +1,129 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.awt.Font;
+import java.awt.Graphics2D;
+import java.awt.GraphicsConfiguration;
+import java.awt.GraphicsEnvironment;
+import java.awt.Image;
+import java.awt.Rectangle;
+import java.awt.RenderingHints;
+import java.awt.font.FontRenderContext;
+import java.awt.font.GlyphVector;
+import java.awt.image.BufferedImage;
+import java.awt.image.VolatileImage;
+import java.util.concurrent.ArrayBlockingQueue;
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.TimeUnit;
+
+import static java.awt.image.BufferedImage.TYPE_INT_ARGB;
+
+/**
+ * @test
+ * @bug 8158072 7172749
+ */
+public final class ClassCastExceptionForInvalidSurface {
+
+    static GraphicsEnvironment ge
+            = GraphicsEnvironment.getLocalGraphicsEnvironment();
+
+    static GraphicsConfiguration gc
+            = ge.getDefaultScreenDevice().getDefaultConfiguration();
+
+    static volatile VolatileImage vi = gc.createCompatibleVolatileImage(10, 10);
+
+    static volatile Throwable failed;
+
+    static BlockingQueue<VolatileImage> list = new ArrayBlockingQueue<>(50);
+
+    // Will run the test no more than 15 seconds
+    static long endtime = System.nanoTime() + TimeUnit.SECONDS.toNanos(15);
+
+    public static void main(final String[] args) throws InterruptedException {
+
+        // Catch all uncaught exceptions and treat them as test failure
+        Thread.setDefaultUncaughtExceptionHandler((t, e) -> failed = e);
+
+        // Data for rendering
+        BufferedImage bi = new BufferedImage(10, 10, TYPE_INT_ARGB);
+        FontRenderContext frc = new FontRenderContext(null, false, false);
+        Font font = new Font("Serif", Font.PLAIN, 12);
+        GlyphVector gv = font.createGlyphVector(frc, new char[]{'a', '1'});
+
+        Thread t1 = new Thread(() -> {
+            while (!isComplete()) {
+                vi = gc.createCompatibleVolatileImage(10, 10);
+                if (!list.offer(vi)) {
+                    vi.flush();
+                }
+            }
+            list.forEach(Image::flush);
+        });
+        Thread t2 = new Thread(() -> {
+            while (!isComplete()) {
+                VolatileImage vi = list.poll();
+                if (vi != null) {
+                    vi.flush();
+                }
+            }
+        });
+
+        Thread t3 = new Thread(() -> {
+            while (!isComplete()) {
+                vi.createGraphics().drawImage(bi, 1, 1, null);
+            }
+        });
+        Thread t4 = new Thread(() -> {
+            while (!isComplete()) {
+                vi.createGraphics().drawGlyphVector(gv, 0, 0);
+                vi.createGraphics().drawOval(0, 0, 10, 10);
+                vi.createGraphics().drawLine(0, 0, 10, 10);
+                vi.createGraphics().drawString("123", 1, 1);
+                vi.createGraphics().draw(new Rectangle(0, 0, 10, 10));
+                vi.createGraphics().fillOval(0, 0, 10, 10);
+                final Graphics2D graphics = vi.createGraphics();
+                graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
+                                          RenderingHints.VALUE_ANTIALIAS_ON);
+                graphics.fillPolygon(new int[] {0, 10, 10, 0},
+                                     new int [] {0, 0, 10, 10}, 4);
+            }
+        });
+        t1.start();
+        t2.start();
+        t3.start();
+        t4.start();
+        t1.join();
+        t2.join();
+        t3.join();
+        t4.join();
+
+        if (failed != null) {
+            System.err.println("Test failed");
+            failed.printStackTrace();
+        }
+    }
+
+    private static boolean isComplete() {
+        return endtime - System.nanoTime() < 0 || failed != null;
+    }
+}
diff --git a/jdk/test/sun/java2d/DirectX/AccelPaintsTest/AccelPaintsTest.java b/jdk/test/sun/java2d/DirectX/AccelPaintsTest/AccelPaintsTest.java
index 59b6e31..5c52593 100644
--- a/jdk/test/sun/java2d/DirectX/AccelPaintsTest/AccelPaintsTest.java
+++ b/jdk/test/sun/java2d/DirectX/AccelPaintsTest/AccelPaintsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6659345
  * @summary Tests that various paints work correctly when preceeded by a
  * textured operaiton.
diff --git a/jdk/test/sun/java2d/DirectX/AcceleratedScaleTest/AcceleratedScaleTest.java b/jdk/test/sun/java2d/DirectX/AcceleratedScaleTest/AcceleratedScaleTest.java
index 4057633..e94ea5c 100644
--- a/jdk/test/sun/java2d/DirectX/AcceleratedScaleTest/AcceleratedScaleTest.java
+++ b/jdk/test/sun/java2d/DirectX/AcceleratedScaleTest/AcceleratedScaleTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,6 +37,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6429665
  * @bug 6588884
  * @summary Tests that the transform is correctly handled
diff --git a/jdk/test/sun/java2d/DirectX/DrawBitmaskToSurfaceTest.java b/jdk/test/sun/java2d/DirectX/DrawBitmaskToSurfaceTest.java
index 3f37e5c..2e4ed68 100644
--- a/jdk/test/sun/java2d/DirectX/DrawBitmaskToSurfaceTest.java
+++ b/jdk/test/sun/java2d/DirectX/DrawBitmaskToSurfaceTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     6997116
  * @summary Test verifies that rendering of images with bitmap transparency
  *          to a D3D surface does not cause an ClassCastException.
diff --git a/jdk/test/sun/java2d/DirectX/InfiniteValidationLoopTest/InfiniteValidationLoopTest.java b/jdk/test/sun/java2d/DirectX/InfiniteValidationLoopTest/InfiniteValidationLoopTest.java
index b732fd4..79dbd68 100644
--- a/jdk/test/sun/java2d/DirectX/InfiniteValidationLoopTest/InfiniteValidationLoopTest.java
+++ b/jdk/test/sun/java2d/DirectX/InfiniteValidationLoopTest/InfiniteValidationLoopTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6648018
  * @summary Tests that we don't run into infinite validation loop when copying
             a VolatileImage to the screen
diff --git a/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java b/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java
index be6c97f..b57d8b4 100644
--- a/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java
+++ b/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug 6664068 6666931
  * @summary Tests that resizing a window to which a tight loop is rendering
  * doesn't produce artifacts or crashes
diff --git a/jdk/test/sun/java2d/DirectX/OpaqueImageToSurfaceBlitTest/OpaqueImageToSurfaceBlitTest.java b/jdk/test/sun/java2d/DirectX/OpaqueImageToSurfaceBlitTest/OpaqueImageToSurfaceBlitTest.java
index afe3648..6b637ab 100644
--- a/jdk/test/sun/java2d/DirectX/OpaqueImageToSurfaceBlitTest/OpaqueImageToSurfaceBlitTest.java
+++ b/jdk/test/sun/java2d/DirectX/OpaqueImageToSurfaceBlitTest/OpaqueImageToSurfaceBlitTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6764257
  * @summary Tests that the alpha in opaque images doesn't affect result of alpha
  * compositing
diff --git a/jdk/test/sun/java2d/DirectX/OverriddenInsetsTest/OverriddenInsetsTest.java b/jdk/test/sun/java2d/DirectX/OverriddenInsetsTest/OverriddenInsetsTest.java
index d223aa1..f6f22bf 100644
--- a/jdk/test/sun/java2d/DirectX/OverriddenInsetsTest/OverriddenInsetsTest.java
+++ b/jdk/test/sun/java2d/DirectX/OverriddenInsetsTest/OverriddenInsetsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6694230
  * @summary Tests that components overriding getInsets paint correctly
  * @author Dmitri.Trembovetski@sun.com: area=Graphics
diff --git a/jdk/test/sun/java2d/DirectX/RenderingToCachedGraphicsTest/RenderingToCachedGraphicsTest.java b/jdk/test/sun/java2d/DirectX/RenderingToCachedGraphicsTest/RenderingToCachedGraphicsTest.java
index 996a7ac..479e08f 100644
--- a/jdk/test/sun/java2d/DirectX/RenderingToCachedGraphicsTest/RenderingToCachedGraphicsTest.java
+++ b/jdk/test/sun/java2d/DirectX/RenderingToCachedGraphicsTest/RenderingToCachedGraphicsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6648018 6652662
  * @summary Verifies that rendering to a cached onscreen Graphics works
  * @author Dmitri.Trembovetski@sun.com: area=Graphics
diff --git a/jdk/test/sun/java2d/DirectX/StrikeDisposalCrashTest/StrikeDisposalCrashTest.java b/jdk/test/sun/java2d/DirectX/StrikeDisposalCrashTest/StrikeDisposalCrashTest.java
index 27dc333..ee1903e 100644
--- a/jdk/test/sun/java2d/DirectX/StrikeDisposalCrashTest/StrikeDisposalCrashTest.java
+++ b/jdk/test/sun/java2d/DirectX/StrikeDisposalCrashTest/StrikeDisposalCrashTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6705443
  * @summary tests that we don't crash during exit if font strikes were disposed
  * during the lifetime of the application
diff --git a/jdk/test/sun/java2d/DirectX/SwingOnScreenScrollingTest/SwingOnScreenScrollingTest.java b/jdk/test/sun/java2d/DirectX/SwingOnScreenScrollingTest/SwingOnScreenScrollingTest.java
index 4363718..5cacddf 100644
--- a/jdk/test/sun/java2d/DirectX/SwingOnScreenScrollingTest/SwingOnScreenScrollingTest.java
+++ b/jdk/test/sun/java2d/DirectX/SwingOnScreenScrollingTest/SwingOnScreenScrollingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug 6630702
  * @summary Tests that scrolling after paint() is performed correctly.
  *          This is really only applicable to Vista
diff --git a/jdk/test/sun/java2d/DirectX/TransformedPaintTest/TransformedPaintTest.java b/jdk/test/sun/java2d/DirectX/TransformedPaintTest/TransformedPaintTest.java
index 90b50f2..beb64c0 100644
--- a/jdk/test/sun/java2d/DirectX/TransformedPaintTest/TransformedPaintTest.java
+++ b/jdk/test/sun/java2d/DirectX/TransformedPaintTest/TransformedPaintTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6689025 8023483
  * @summary Tests that transformed Paints are rendered correctly
  * @author Dmitri.Trembovetski@sun.com: area=Graphics
diff --git a/jdk/test/sun/java2d/DrawCachedImageAndTransform.java b/jdk/test/sun/java2d/DrawCachedImageAndTransform.java
index f560c43..96e04e8 100644
--- a/jdk/test/sun/java2d/DrawCachedImageAndTransform.java
+++ b/jdk/test/sun/java2d/DrawCachedImageAndTransform.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8039774
  * @summary Verifies that we get no exception, when we draw with scale
  *          BufferedImage to VolatileImage via intermediate texture.
diff --git a/jdk/test/sun/java2d/DrawXORModeTest.java b/jdk/test/sun/java2d/DrawXORModeTest.java
index 973c9a4..83fe3cc 100644
--- a/jdk/test/sun/java2d/DrawXORModeTest.java
+++ b/jdk/test/sun/java2d/DrawXORModeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     8036022
  * @summary Test verifies that drawing shapes with XOR composite
  *          does not trigger an InternalError in GDI surface data.
diff --git a/jdk/test/sun/java2d/GdiRendering/InsetClipping.java b/jdk/test/sun/java2d/GdiRendering/InsetClipping.java
index f49a727..6f7f9f5 100644
--- a/jdk/test/sun/java2d/GdiRendering/InsetClipping.java
+++ b/jdk/test/sun/java2d/GdiRendering/InsetClipping.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 4873505 6588884
  * @author cheth
  * @summary verifies that drawImage behaves the bounds of a complex
diff --git a/jdk/test/sun/java2d/OpenGL/CopyAreaOOB.java b/jdk/test/sun/java2d/OpenGL/CopyAreaOOB.java
index 9129bb1..d429a34 100644
--- a/jdk/test/sun/java2d/OpenGL/CopyAreaOOB.java
+++ b/jdk/test/sun/java2d/OpenGL/CopyAreaOOB.java
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6430601
  * @summary Verifies that copyArea() works properly when the
  * destination parameters are outside the destination bounds.
diff --git a/jdk/test/sun/java2d/OpenGL/CustomCompositeTest.java b/jdk/test/sun/java2d/OpenGL/CustomCompositeTest.java
index 3977270..2dbe001 100644
--- a/jdk/test/sun/java2d/OpenGL/CustomCompositeTest.java
+++ b/jdk/test/sun/java2d/OpenGL/CustomCompositeTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug     7124347
  * @summary Verifies that rendering with XOR composite, and arbitraty
  *          custom composite doesn not cause internal errors.
diff --git a/jdk/test/sun/java2d/OpenGL/DrawBufImgOp.java b/jdk/test/sun/java2d/OpenGL/DrawBufImgOp.java
index b0bed6f..9ae8c5b 100644
--- a/jdk/test/sun/java2d/OpenGL/DrawBufImgOp.java
+++ b/jdk/test/sun/java2d/OpenGL/DrawBufImgOp.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug 6514990
  * @summary Verifies that calling
  * Graphics2D.drawImage(BufferedImage, BufferedImageOp, x, y) to an
diff --git a/jdk/test/sun/java2d/OpenGL/DrawHugeImageTest.java b/jdk/test/sun/java2d/OpenGL/DrawHugeImageTest.java
index f435682..a92fbf1 100644
--- a/jdk/test/sun/java2d/OpenGL/DrawHugeImageTest.java
+++ b/jdk/test/sun/java2d/OpenGL/DrawHugeImageTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug     8040617
  * @summary Test verifies that an attempt to get an accelerated copy of
  *          a huge buffered image does not result in an OOME.
diff --git a/jdk/test/sun/java2d/OpenGL/GradientPaints.java b/jdk/test/sun/java2d/OpenGL/GradientPaints.java
index 7e8736a..fc7062c 100644
--- a/jdk/test/sun/java2d/OpenGL/GradientPaints.java
+++ b/jdk/test/sun/java2d/OpenGL/GradientPaints.java
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6521533 6525997 7102282
  * @summary Verifies that the OGL-accelerated codepaths for GradientPaint,
  * LinearGradientPaint, and RadialGradientPaint produce results that are
diff --git a/jdk/test/sun/java2d/OpenGL/bug7181438.java b/jdk/test/sun/java2d/OpenGL/bug7181438.java
index 3aa6738..be6021f 100644
--- a/jdk/test/sun/java2d/OpenGL/bug7181438.java
+++ b/jdk/test/sun/java2d/OpenGL/bug7181438.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 7181438
  * @summary Verifies that we get correct alpha, when we draw opaque
  * BufferedImage to non opaque VolatileImage via intermediate opaque texture.
diff --git a/jdk/test/sun/java2d/SunGraphics2D/DrawImageBilinear.java b/jdk/test/sun/java2d/SunGraphics2D/DrawImageBilinear.java
index 4dd829c..cd1518e 100644
--- a/jdk/test/sun/java2d/SunGraphics2D/DrawImageBilinear.java
+++ b/jdk/test/sun/java2d/SunGraphics2D/DrawImageBilinear.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug 5009033 6603000 6666362
  * @summary Verifies that images transformed with bilinear filtering do not
  * leave artifacts at the edges.
diff --git a/jdk/test/sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java b/jdk/test/sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java
index 60f6ccc..e4389fc 100644
--- a/jdk/test/sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java
+++ b/jdk/test/sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -47,6 +47,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6335200 6419610
  * @summary Tests that we don't render anything if specific empty clip is set
  * @author Dmitri.Trembovetski@Sun.COM: area=Graphics
diff --git a/jdk/test/sun/java2d/SunGraphics2D/PolyVertTest.java b/jdk/test/sun/java2d/SunGraphics2D/PolyVertTest.java
index f934f6c..4c8ff58 100644
--- a/jdk/test/sun/java2d/SunGraphics2D/PolyVertTest.java
+++ b/jdk/test/sun/java2d/SunGraphics2D/PolyVertTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4678208 4771101 6328481 6588884
  * @summary verify the pixelization of degenerate polylines and polygons
  * @run main PolyVertTest
diff --git a/jdk/test/sun/java2d/SunGraphics2D/SimplePrimQuality.java b/jdk/test/sun/java2d/SunGraphics2D/SimplePrimQuality.java
index 65ce3ce..a3c0d1b 100644
--- a/jdk/test/sun/java2d/SunGraphics2D/SimplePrimQuality.java
+++ b/jdk/test/sun/java2d/SunGraphics2D/SimplePrimQuality.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 4832224 6322584 6328478 6328481 6322580 6588884 6587863
  * @summary Verifies that the pixelization of simple primitives (drawLine,
  * fillRect, drawRect, fill, draw) with the OGL pipeline enabled
diff --git a/jdk/test/sun/java2d/SunGraphics2D/SurfaceDestination/SurfaceDestination.java b/jdk/test/sun/java2d/SunGraphics2D/SurfaceDestination/SurfaceDestination.java
index 34ea84f..d5a1f53 100644
--- a/jdk/test/sun/java2d/SunGraphics2D/SurfaceDestination/SurfaceDestination.java
+++ b/jdk/test/sun/java2d/SunGraphics2D/SurfaceDestination/SurfaceDestination.java
@@ -41,6 +41,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 8134603
  * @modules java.desktop/sun.java2d
  * @run main/othervm SurfaceDestination
diff --git a/jdk/test/sun/java2d/X11SurfaceData/DrawImageBgTest/DrawImageBgTest.java b/jdk/test/sun/java2d/X11SurfaceData/DrawImageBgTest/DrawImageBgTest.java
index e4cd483..007a9c6 100644
--- a/jdk/test/sun/java2d/X11SurfaceData/DrawImageBgTest/DrawImageBgTest.java
+++ b/jdk/test/sun/java2d/X11SurfaceData/DrawImageBgTest/DrawImageBgTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6603887
  * @summary Verifies that drawImage with bg color works correctly for ICM image
  * @run main/othervm DrawImageBgTest
diff --git a/jdk/test/sun/java2d/XRenderBlitsTest.java b/jdk/test/sun/java2d/XRenderBlitsTest.java
index bcab57e..b2f31e9 100644
--- a/jdk/test/sun/java2d/XRenderBlitsTest.java
+++ b/jdk/test/sun/java2d/XRenderBlitsTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,12 +22,13 @@
  */
 
 /*
-* @test
-* @bug     6985593
-* @summary Test verifies that rendering standard images to screen does
-*          not caiuse a crash in case of XRender.
-* @run main/othervm -Dsun.java2d.xrender=True XRenderBlitsTest
-*/
+ * @test
+ * @key headful
+ * @bug     6985593
+ * @summary Test verifies that rendering standard images to screen does
+ *          not caiuse a crash in case of XRender.
+ * @run main/othervm -Dsun.java2d.xrender=True XRenderBlitsTest
+ */
 
 import java.awt.Color;
 import java.awt.Component;
diff --git a/jdk/test/sun/java2d/cmm/ColorConvertOp/ConstructorsNullTest/ConstructorsNullTest.html b/jdk/test/sun/java2d/cmm/ColorConvertOp/ConstructorsNullTest/ConstructorsNullTest.html
index 66c87ce..69ef1b8 100644
--- a/jdk/test/sun/java2d/cmm/ColorConvertOp/ConstructorsNullTest/ConstructorsNullTest.html
+++ b/jdk/test/sun/java2d/cmm/ColorConvertOp/ConstructorsNullTest/ConstructorsNullTest.html
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
  This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,7 @@
 <html>
 <!--  
   @test
+  @key headful
   @bug 4185854
   @summary Checks that constructors do not accept nulls and throw NPE
   @author tdv@eng.sun.com: area= 
diff --git a/jdk/test/sun/java2d/pipe/InterpolationQualityTest.java b/jdk/test/sun/java2d/pipe/InterpolationQualityTest.java
index 8492f1b..4fa82e3 100644
--- a/jdk/test/sun/java2d/pipe/InterpolationQualityTest.java
+++ b/jdk/test/sun/java2d/pipe/InterpolationQualityTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 7188093 8000176
  * @summary Tests each of the 3 possible methods for rendering an upscaled
  * image via rendering hints for default, xrender and opengl pipelines.
diff --git a/jdk/test/sun/java2d/pipe/MutableColorTest/MutableColorTest.java b/jdk/test/sun/java2d/pipe/MutableColorTest/MutableColorTest.java
index df1fa2a..a08394e 100644
--- a/jdk/test/sun/java2d/pipe/MutableColorTest/MutableColorTest.java
+++ b/jdk/test/sun/java2d/pipe/MutableColorTest/MutableColorTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /**
  * @test
+ * @key headful
  * @bug 6613860 6691934
  * @summary Tests that the pipelines can handle (in somewhat limited
  * manner) mutable Colors
diff --git a/jdk/test/sun/java2d/pipe/hw/RSLAPITest/RSLAPITest.java b/jdk/test/sun/java2d/pipe/hw/RSLAPITest/RSLAPITest.java
index b5d813f..25c6b0be 100644
--- a/jdk/test/sun/java2d/pipe/hw/RSLAPITest/RSLAPITest.java
+++ b/jdk/test/sun/java2d/pipe/hw/RSLAPITest/RSLAPITest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -22,6 +22,7 @@
  */
 /*
  * @test
+ * @key headful
  * @bug 6635805 6653780 6667607
  * @summary Tests that the resource sharing layer API is not broken
  * @author Dmitri.Trembovetski@sun.com: area=Graphics
diff --git a/jdk/test/sun/java2d/pipe/hw/RSLContextInvalidationTest/RSLContextInvalidationTest.java b/jdk/test/sun/java2d/pipe/hw/RSLContextInvalidationTest/RSLContextInvalidationTest.java
index b7b44eb..e203de9 100644
--- a/jdk/test/sun/java2d/pipe/hw/RSLContextInvalidationTest/RSLContextInvalidationTest.java
+++ b/jdk/test/sun/java2d/pipe/hw/RSLContextInvalidationTest/RSLContextInvalidationTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /*
  * @test
+ * @key headful
  * @bug 6764257
  * @summary Tests that the color is reset properly after save/restore context
  * @author Dmitri.Trembovetski@sun.com: area=Graphics
diff --git a/jdk/test/sun/net/www/protocol/jar/MultiReleaseJarURLConnection.java b/jdk/test/sun/net/www/protocol/jar/MultiReleaseJarURLConnection.java
index e97de71..fe9ce71 100644
--- a/jdk/test/sun/net/www/protocol/jar/MultiReleaseJarURLConnection.java
+++ b/jdk/test/sun/net/www/protocol/jar/MultiReleaseJarURLConnection.java
@@ -23,7 +23,7 @@
 
 /*
  * @test
- * @bug 8132734 8144062
+ * @bug 8132734 8144062 8159785
  * @summary Test that URL connections to multi-release jars can be runtime versioned
  * @library /lib/testlibrary/java/util/jar
  * @modules java.compiler
@@ -44,6 +44,7 @@
 import java.net.URLConnection;
 import java.nio.file.Files;
 import java.nio.file.Paths;
+import java.util.Enumeration;
 import java.util.jar.JarFile;
 
 import org.testng.Assert;
@@ -191,26 +192,36 @@
                 style.equals("unversioned") ? 8 : Runtime.version().major());
 
         // now get a resource and verify that we don't have a fragment attached
-        URL vclsUrl = vcls.getResource("/version/Version.class");
-        String fragment = vclsUrl.getRef();
-        Assert.assertNull(fragment);
+        Enumeration<URL> vclsUrlEnum = cldr.getResources("version/Version.class");
+        Assert.assertTrue(vclsUrlEnum.hasMoreElements());
+        URL vclsUrls[] = new URL[] {
+            vcls.getResource("/version/Version.class"),
+            vcls.getResource("Version.class"),
+            cldr.getResource("version/Version.class"),
+            vclsUrlEnum.nextElement()
+        };
+        Assert.assertFalse(vclsUrlEnum.hasMoreElements());
+        for (URL vclsUrl : vclsUrls) {
+            String fragment = vclsUrl.getRef();
+            Assert.assertNull(fragment);
 
-        // and verify that the the url is a reified pointer to the runtime entry
-        String rep = vclsUrl.toString();
-        //System.out.println("    getResource(\"/version/Version.class\") returned: " + rep);
-        if (style.equals("http")) {
-            Assert.assertTrue(rep.startsWith("jar:http:"));
-        } else {
-            Assert.assertTrue(rep.startsWith("jar:file:"));
+            // and verify that the the url is a reified pointer to the runtime entry
+            String rep = vclsUrl.toString();
+            //System.out.println("    getResource(\"/version/Version.class\") returned: " + rep);
+            if (style.equals("http")) {
+                Assert.assertTrue(rep.startsWith("jar:http:"));
+            } else {
+                Assert.assertTrue(rep.startsWith("jar:file:"));
+            }
+            String suffix;
+            if (style.equals("unversioned")) {
+                suffix = ".jar!/version/Version.class";
+            } else {
+                suffix = ".jar!/META-INF/versions/" + Runtime.version().major()
+                        + "/version/Version.class";
+            }
+            Assert.assertTrue(rep.endsWith(suffix));
         }
-        String suffix;
-        if (style.equals("unversioned")) {
-            suffix = ".jar!/version/Version.class";
-        } else {
-            suffix = ".jar!/META-INF/versions/" + Runtime.version().major()
-                    + "/version/Version.class";
-        }
-        Assert.assertTrue(rep.endsWith(suffix));
         cldr.close();
     }
 
diff --git a/jdk/test/sun/security/krb5/auto/KDC.java b/jdk/test/sun/security/krb5/auto/KDC.java
index 073e964..b426d3d 100644
--- a/jdk/test/sun/security/krb5/auto/KDC.java
+++ b/jdk/test/sun/security/krb5/auto/KDC.java
@@ -219,8 +219,10 @@
     };
 
     static {
-        String hostsFileName = System.getProperty("test.src", ".") + "/TestHosts";
-        System.setProperty("jdk.net.hosts.file", hostsFileName);
+        if (System.getProperty("jdk.net.hosts.file") == null) {
+            String hostsFileName = System.getProperty("test.src", ".") + "/TestHosts";
+            System.setProperty("jdk.net.hosts.file", hostsFileName);
+        }
     }
 
     /**
diff --git a/jdk/test/sun/security/krb5/auto/NoAddresses.java b/jdk/test/sun/security/krb5/auto/NoAddresses.java
index cce5300..298dc03 100644
--- a/jdk/test/sun/security/krb5/auto/NoAddresses.java
+++ b/jdk/test/sun/security/krb5/auto/NoAddresses.java
@@ -25,9 +25,9 @@
  * @test
  * @bug 7032354
  * @run main/othervm NoAddresses setup
- * @run main/othervm NoAddresses 1
- * @run main/othervm NoAddresses 2
- * @run main/othervm/fail NoAddresses 3
+ * @run main/othervm -Djdk.net.hosts.file=TestHosts NoAddresses 1
+ * @run main/othervm -Djdk.net.hosts.file=TestHosts NoAddresses 2
+ * @run main/othervm/fail -Djdk.net.hosts.file=TestHosts NoAddresses 3
  * @summary no-addresses should not be used on acceptor side
  */
 
@@ -38,6 +38,7 @@
 import java.io.PrintWriter;
 import java.io.FileWriter;
 import java.io.BufferedWriter;
+import java.nio.file.*;
 
 public class NoAddresses {
 
@@ -49,9 +50,10 @@
             InetAddress localHost = InetAddress.getLocalHost();
             String localHostName = localHost.getHostName();
             String hostsFileName = System.getProperty("test.src", ".") + "/TestHosts";
+            String hostsFileNameLocal = "TestHosts";
             String loopBackAddress = "127.0.0.1";
-            System.setProperty("jdk.net.hosts.file", hostsFileName);
-            addMappingToHostsFile(localHostName, loopBackAddress, hostsFileName, true);
+            Files.copy(Paths.get(hostsFileName), Paths.get(hostsFileNameLocal));
+            addMappingToHostsFile(localHostName, loopBackAddress, hostsFileNameLocal, true);
         } else {
         OneKDC kdc = new OneKDC(null);
         kdc.writeJAASConf();
diff --git a/jdk/test/sun/security/provider/SecureRandom/StrongSecureRandom.java b/jdk/test/sun/security/provider/SecureRandom/StrongSecureRandom.java
index fd0b20c..bdd3ab0 100644
--- a/jdk/test/sun/security/provider/SecureRandom/StrongSecureRandom.java
+++ b/jdk/test/sun/security/provider/SecureRandom/StrongSecureRandom.java
@@ -36,9 +36,6 @@
 public class StrongSecureRandom {
 
     private static final String os = System.getProperty("os.name", "unknown");
-    private static final String DRBG_CONFIG = "securerandom.drbg.config";
-    private static final String DRBG_CONFIG_VALUE
-            = Security.getProperty(DRBG_CONFIG);
 
     private static void testDefaultEgd() throws Exception {
         // No SecurityManager installed.
@@ -50,55 +47,6 @@
         }
     }
 
-    /**
-     * Verify if the mechanism is DRBG type.
-     * @param mech Mechanism name
-     * @return True if the mechanism name is DRBG type else False.
-     */
-    private static boolean isDRBG(String mech) {
-        return mech.contains("_DRBG");
-    }
-
-    private static void testSecureRandomImpl(String algo, boolean drbg)
-            throws Exception {
-
-        byte[] ba;
-        final String secureRandomSource
-                = Security.getProperty("securerandom.source");
-        try {
-            String urandom = "file:/dev/urandom";
-
-            System.out.println("Testing new SeedGenerator and EGD");
-
-            Security.setProperty("securerandom.source", urandom);
-            if (!Security.getProperty("securerandom.source").equals(urandom)) {
-                throw new Exception("Couldn't set securerandom.source");
-            }
-
-            /*
-             * Take out a large number of bytes in hopes of blocking.
-             * Don't expect this to happen, unless something is broken on Linux
-             */
-            SecureRandom sr = null;
-            if (drbg) {
-                Security.setProperty(DRBG_CONFIG, algo);
-                sr = SecureRandom.getInstance("DRBG");
-            } else {
-                sr = SecureRandom.getInstance(algo);
-            }
-            if (!sr.getAlgorithm().equals(isDRBG(algo) ? "DRBG" : algo)) {
-                throw new Exception("sr.getAlgorithm(): " + sr.getAlgorithm());
-            }
-
-            ba = sr.generateSeed(4096);
-            sr.nextBytes(ba);
-            sr.setSeed(ba);
-        } finally {
-            Security.setProperty("securerandom.source", secureRandomSource);
-            Security.setProperty(DRBG_CONFIG, DRBG_CONFIG_VALUE);
-        }
-    }
-
     private static void testNativePRNGImpls() throws Exception {
         SecureRandom sr;
         byte[] ba;
@@ -259,10 +207,7 @@
 
     public static void main(String args[]) throws Exception {
         testDefaultEgd();
-        for (String algo : new String[]{
-            "SHA1PRNG", "Hash_DRBG", "HMAC_DRBG", "CTR_DRBG"}) {
-            testSecureRandomImpl(algo, isDRBG(algo));
-        }
+
         testNativePRNGImpls();
         testAllImpls();
 
diff --git a/jdk/test/sun/security/tools/jarsigner/concise_jarsigner.sh b/jdk/test/sun/security/tools/jarsigner/concise_jarsigner.sh
index a60a38c..ebc3e7f 100644
--- a/jdk/test/sun/security/tools/jarsigner/concise_jarsigner.sh
+++ b/jdk/test/sun/security/tools/jarsigner/concise_jarsigner.sh
@@ -25,7 +25,7 @@
 # @bug 6802846
 # @summary jarsigner needs enhanced cert validation(options)
 #
-# @run shell concise_jarsigner.sh
+# @run shell/timeout=240 concise_jarsigner.sh
 #
 
 if [ "${TESTJAVA}" = "" ] ; then
diff --git a/jdk/test/sun/security/tools/jarsigner/warnings/Test.java b/jdk/test/sun/security/tools/jarsigner/warnings/Test.java
index e9dd7e3..774dae0 100644
--- a/jdk/test/sun/security/tools/jarsigner/warnings/Test.java
+++ b/jdk/test/sun/security/tools/jarsigner/warnings/Test.java
@@ -121,10 +121,10 @@
             + "(%1$tY-%1$tm-%1$td).";
 
     static final String NO_TIMESTAMP_VERIFYING_WARN_TEMPLATE
-            = "This jar contains signatures that does not include a timestamp. "
+            = "This jar contains signatures that do not include a timestamp. "
             + "Without a timestamp, users may not be able to validate this jar "
-            + "after the signer certificate's expiration date "
-            + "(%1$tY-%1$tm-%1$td).";
+            + "after any of the signer certificates expire "
+            + "(as early as %1$tY-%1$tm-%1$td).";
 
     static final String NOT_YET_VALID_CERT_SIGNING_WARNING
             = "The signer certificate is not yet valid.";
diff --git a/jdk/test/sun/security/tools/keytool/DupImport.java b/jdk/test/sun/security/tools/keytool/DupImport.java
new file mode 100644
index 0000000..612f78b
--- /dev/null
+++ b/jdk/test/sun/security/tools/keytool/DupImport.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 6968542
+ * @summary keytool -importcert cannot deal with duplicate certs
+ * @modules java.base/sun.security.tools.keytool
+ * @compile -XDignore.symbol.file DupImport.java
+ * @run main DupImport pkcs12
+ * @run main DupImport jks
+ */
+
+import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.security.KeyStore;
+import java.security.cert.Certificate;
+import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+public class DupImport {
+
+    static String storeType = null;
+
+    public static void main(String[] args) throws Exception {
+
+        storeType = args[0];
+        Files.deleteIfExists(Paths.get("dup.ks"));
+
+        // Create chain: root -> int -> me
+        run("-genkeypair -alias me -dname CN=Me");
+        run("-genkeypair -alias int -dname CN=Int");
+        run("-genkeypair -alias root -dname CN=Root");
+
+        run("-certreq -alias int -file int.req");
+        run("-gencert -infile int.req -alias root -rfc -outfile int.resp");
+        run("-importcert -file int.resp -alias int");
+
+        run("-certreq -alias me -file me.req");
+        run("-gencert -infile me.req -alias int -rfc -outfile me.resp");
+        run("-importcert -file me.resp -alias me");
+
+        // Export certs
+        run("-exportcert -alias me -file me -rfc");
+        run("-exportcert -alias int -file int -rfc");
+        run("-exportcert -alias root -file root -rfc");
+
+        // test 1: just the 3 certs
+        test("me", "int", "root");
+
+        // test 2: 3 chains (without root) concatenated
+        test("me", "int", "int", "root");
+
+        // test 3: 3 full chains concatenated
+        test("me", "int", "root", "int", "root", "root");
+
+        // test 4: a mess
+        test("root", "me", "int", "int", "me", "me", "root", "int");
+    }
+
+    // Run keytool command with common options
+    static void run(String s) throws Exception {
+        sun.security.tools.keytool.Main.main((
+                "-keystore dup.ks -storepass changeit -keypass changeit "
+                        + "-storetype " + storeType + " -debug "
+                        + s).split(" "));
+    }
+
+    // Test "cat files... | keytool -import"
+    static void test(String... files) throws Exception {
+
+        System.out.println("Testing " + Arrays.toString(files));
+
+        List<String> all = new ArrayList<>();
+        for (String file : files) {
+            all.addAll(Files.readAllLines(Paths.get(file)));
+        }
+        Files.write(Paths.get("reply"), all);
+
+        run("-importcert -file reply -alias me");
+        KeyStore ks = KeyStore.getInstance(
+                new File("dup.ks"), "changeit".toCharArray());
+        Certificate[] chain = ks.getCertificateChain("me");
+        if (chain.length != 3) {
+            throw new Exception("Length is " + chain.length);
+        }
+
+        checkName(chain[0], "CN=Me");
+        checkName(chain[1], "CN=Int");
+        checkName(chain[2], "CN=Root");
+    }
+
+    // Check if c's dname is expected
+    static void checkName(Certificate c, String expected) throws Exception {
+        X509Certificate x = (X509Certificate)c;
+        String name = x.getSubjectX500Principal().toString();
+        if (!expected.equals(name)) {
+            throw new Exception("Expected " + expected + ", but " + name);
+        }
+    }
+}
diff --git a/jdk/test/sun/security/util/Pem/PemEncoding.java b/jdk/test/sun/security/util/Pem/PemEncoding.java
new file mode 100644
index 0000000..e840929
--- /dev/null
+++ b/jdk/test/sun/security/util/Pem/PemEncoding.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.io.FileInputStream;
+import java.security.cert.CertificateFactory;
+
+public class PemEncoding {
+    public static void main(String[] args) throws Exception {
+        try (FileInputStream fis = new FileInputStream(args[0])) {
+            CertificateFactory cf = CertificateFactory.getInstance("X.509");
+            System.out.println(cf.generateCertificate(fis));
+        }
+    }
+}
diff --git a/jdk/test/sun/security/util/Pem/encoding.sh b/jdk/test/sun/security/util/Pem/encoding.sh
new file mode 100644
index 0000000..2bc3950
--- /dev/null
+++ b/jdk/test/sun/security/util/Pem/encoding.sh
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# @test
+# @bug 8158633
+# @summary BASE64 encoded cert not correctly parsed with UTF-16
+# @build PemEncoding
+# @run shell encoding.sh
+
+# jtreg does not like -Dfile.encoding=UTF-16 inside a @run main line,
+# therefore a shell test is written.
+
+$TESTJAVA/bin/java $TESTVMOPTS -cp $TESTCLASSES \
+        -Dfile.encoding=UTF-16 \
+        PemEncoding $TESTSRC/../HostnameMatcher/cert5.crt
diff --git a/jdk/test/sun/tools/jhsdb/BasicLauncherTest.java b/jdk/test/sun/tools/jhsdb/BasicLauncherTest.java
index 6d8d59d..04701af 100644
--- a/jdk/test/sun/tools/jhsdb/BasicLauncherTest.java
+++ b/jdk/test/sun/tools/jhsdb/BasicLauncherTest.java
@@ -146,6 +146,16 @@
         launch(expectedMessage, Arrays.asList(toolArgs));
     }
 
+    public static void launchNotOSX(String expectedMessage, String... toolArgs)
+        throws IOException {
+
+        if (Platform.isOSX()) {
+            // Coredump stackwalking is not implemented for Darwin
+            System.out.println("This test is not expected to work on OS X. Skipping");
+            return;
+        }
+    }
+
     public static void testHeapDump() throws IOException {
         File dump = new File("jhsdb.jmap.dump." +
                              System.currentTimeMillis() + ".hprof");
@@ -172,7 +182,7 @@
 
         launchCLHSDB();
 
-        launch("No deadlocks found", "jstack");
+        launchNotOSX("No deadlocks found", "jstack");
         launch("compiler detected", "jmap");
         launch("Java System Properties", "jinfo");
         launch("java.threads", "jsnap");
diff --git a/jdk/test/sun/tools/jinfo/JInfoTest.java b/jdk/test/sun/tools/jinfo/JInfoTest.java
new file mode 100644
index 0000000..4710cfb
--- /dev/null
+++ b/jdk/test/sun/tools/jinfo/JInfoTest.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.io.IOException;
+
+import jdk.test.lib.JDKToolLauncher;
+import jdk.test.lib.process.OutputAnalyzer;
+import jdk.test.lib.process.ProcessTools;
+import jdk.test.lib.apps.LingeredApp;
+
+/*
+ * @test
+ * @summary Unit test for jinfo utility
+ * @modules java.base/jdk.internal.misc
+ * @library /test/lib/share/classes
+ * @build jdk.test.lib.*
+ * @build jdk.test.lib.apps.*
+ * @build jdk.test.lib.process.*
+ * @run main JInfoTest
+ */
+public class JInfoTest {
+
+    private static ProcessBuilder processBuilder = new ProcessBuilder();
+
+    public static void main(String[] args) throws Exception {
+        classNameMatch();
+        setMultipleFlags();
+        setFlag();
+    }
+
+    private static void setFlag() throws Exception {
+        System.out.println("#### setFlag ####");
+        LingeredApp app1 = new JInfoTestLingeredApp();
+        LingeredApp app2 = new JInfoTestLingeredApp();
+        try {
+            ArrayList<String> params = new ArrayList<String>();
+            LingeredApp.startApp(params, app1);
+            LingeredApp.startApp(params, app2);
+            OutputAnalyzer output = jinfo("-flag", "MinHeapFreeRatio=1", "JInfoTestLingeredApp");
+            output.shouldHaveExitValue(0);
+            output = jinfo("-flag", "MinHeapFreeRatio", "JInfoTestLingeredApp");
+            output.shouldHaveExitValue(0);
+            documentMatch(output.getStdout(), ".*MinHeapFreeRatio=1.*MinHeapFreeRatio=1.*");
+        } finally {
+            JInfoTestLingeredApp.stopApp(app1);
+            JInfoTestLingeredApp.stopApp(app2);
+        }
+    }
+
+    private static void setMultipleFlags() throws Exception {
+        System.out.println("#### setMultipleFlags ####");
+        OutputAnalyzer output = jinfo("-sysprops", "-flag", "MinHeapFreeRatio=1", "-flags", "JInfoTestLingeredApp");
+        output.shouldHaveExitValue(1);
+    }
+
+    private static void classNameMatch() throws Exception {
+        System.out.println("#### classNameMatch ####");
+        LingeredApp app1 = new JInfoTestLingeredApp();
+        LingeredApp app2 = new JInfoTestLingeredApp();
+        try {
+            ArrayList<String> params = new ArrayList<String>();
+            LingeredApp.startApp(params, app1);
+            LingeredApp.startApp(params, app2);
+            OutputAnalyzer output = jinfo("JInfoTestLingeredApp");
+            output.shouldHaveExitValue(0);
+            // "HotSpot(TM)" written once per proc
+            documentMatch(output.getStdout(), ".*HotSpot\\(TM\\).*HotSpot\\(TM\\).*");
+        } finally {
+            JInfoTestLingeredApp.stopApp(app1);
+            JInfoTestLingeredApp.stopApp(app2);
+        }
+    }
+
+    private static void documentMatch(String data, String pattern){
+        Matcher matcher = Pattern.compile(pattern, Pattern.DOTALL).matcher(data);
+        if (!matcher.find()) {
+            throw new RuntimeException("'" + pattern + "' missing from stdout \n");
+        }
+    }
+
+    private static OutputAnalyzer jinfo(String... toolArgs) throws Exception {
+        JDKToolLauncher launcher = JDKToolLauncher.createUsingTestJDK("jinfo");
+        if (toolArgs != null) {
+            for (String toolArg : toolArgs) {
+                launcher.addToolArg(toolArg);
+            }
+        }
+
+        processBuilder.command(launcher.getCommand());
+        OutputAnalyzer output = ProcessTools.executeProcess(processBuilder);
+
+        return output;
+    }
+}
+
+// Sometime there is LingeredApp's from other test still around
+class JInfoTestLingeredApp extends LingeredApp {
+}
+
diff --git a/jdk/test/sun/tools/jps/TestJpsSanity.java b/jdk/test/sun/tools/jps/TestJpsSanity.java
index 1395abf..457a667 100644
--- a/jdk/test/sun/tools/jps/TestJpsSanity.java
+++ b/jdk/test/sun/tools/jps/TestJpsSanity.java
@@ -23,15 +23,17 @@
 
 import jdk.testlibrary.Asserts;
 import jdk.testlibrary.OutputAnalyzer;
+import jdk.test.lib.apps.LingeredApp;
 
 /*
  * @test
  * @summary This test verifies jps usage and checks that appropriate error message is shown
  *          when running jps with illegal arguments.
- * @library /lib/testlibrary
+ * @library /lib/testlibrary /test/lib/share/classes
  * @modules jdk.jartool/sun.tools.jar
  *          java.management
- * @build jdk.testlibrary.* JpsHelper
+ *          java.base/jdk.internal.misc
+ * @build jdk.testlibrary.* jdk.test.lib.apps.* JpsHelper
  * @run driver TestJpsSanity
  */
 public class TestJpsSanity {
@@ -40,6 +42,42 @@
         testJpsUsage();
         testJpsVersion();
         testJpsUnknownHost();
+        testJpsShort();
+        testJpsLong();
+        testJpsShortPkg();
+        testJpsLongPkg();
+    }
+
+    private static void testJpsShort() throws Exception {
+        OutputAnalyzer output = JpsHelper.jps();
+        output.shouldMatch("^[0-9]+ Jps$");
+    }
+
+    private static void testJpsLong() throws Exception {
+        OutputAnalyzer output = JpsHelper.jps("-l");
+        output.shouldMatch("^[0-9]+ jdk\\.jcmd/sun\\.tools\\.jps\\.Jps$");
+    }
+
+    private static void testJpsShortPkg() throws Exception {
+        LingeredApp app = null;
+        try {
+            app = LingeredApp.startApp();
+            OutputAnalyzer output = JpsHelper.jps();
+            output.shouldMatch("^[0-9]+ LingeredApp$");
+        } finally {
+            LingeredApp.stopApp(app);
+        }
+    }
+
+    private static void testJpsLongPkg() throws Exception {
+        LingeredApp app = null;
+        try {
+            app = LingeredApp.startApp();
+            OutputAnalyzer output = JpsHelper.jps("-l");
+            output.shouldMatch("^[0-9]+ jdk\\.test\\.lib\\.apps\\.LingeredApp$");
+        } finally {
+            LingeredApp.stopApp(app);
+        }
     }
 
     private static void testJpsUsage() throws Exception {
diff --git a/jdk/test/tools/jlink/JLinkOptimTest.java b/jdk/test/tools/jlink/JLinkOptimTest.java
index acc089c..f41e418 100644
--- a/jdk/test/tools/jlink/JLinkOptimTest.java
+++ b/jdk/test/tools/jlink/JLinkOptimTest.java
@@ -332,17 +332,6 @@
             helper.checkImage(imageDir, "optim1", null, null);
         }
 
-        /*{
-         Path dir = Paths.get("dir.log");
-         Files.createDirectory(dir);
-         String[] userOptions = {"--class-optim=all:log=" + dir.toString()};
-         helper.generateDefaultImage(userOptions, "optim1")
-         .assertFailure("java.io.FileNotFoundException: dir.log (Is a directory)");
-         }*/
- /*{
-         String[] userOptions = {"--class-optim", "UNKNOWN"};
-         helper.generateDefaultImage(userOptions, "optim1").assertFailure("Unknown optimization");
-         }*/
         {
             String[] userOptions = {"--class-optim=forName-folding:log=./class-optim-log.txt"};
             Path imageDir = helper.generateDefaultImage(userOptions, "optim1").assertSuccess();
diff --git a/jdk/test/tools/jlink/plugins/CompressorPluginTest.java b/jdk/test/tools/jlink/plugins/CompressorPluginTest.java
index d37bf1b..ff616ca 100644
--- a/jdk/test/tools/jlink/plugins/CompressorPluginTest.java
+++ b/jdk/test/tools/jlink/plugins/CompressorPluginTest.java
@@ -103,13 +103,12 @@
 
         // compress == ZIP + String sharing + filter
         options.setProperty(DefaultCompressPlugin.FILTER,
-                "*Exception.class,^*IOException.class");
+                "**Exception.class");
         checkCompress(classes, new DefaultCompressPlugin(), options,
                 new ResourceDecompressorFactory[]{
                     new ZipDecompressorFactory(),
                     new StringSharingDecompressorFactory()
-                }, Collections.singletonList(".*Exception.class"),
-                Collections.singletonList(".*IOException.class"));
+                }, Collections.singletonList(".*Exception.class"));
 
         // compress level 1 == ZIP
         Properties options1 = new Properties();
@@ -123,13 +122,12 @@
 
         // compress level 1 == ZIP
         options1.setProperty(DefaultCompressPlugin.FILTER,
-                "*Exception.class,^*IOException.class");
+                "**Exception.class");
         checkCompress(classes, new DefaultCompressPlugin(),
                 options1,
                 new ResourceDecompressorFactory[]{
                     new ZipDecompressorFactory()
-                }, Collections.singletonList(".*Exception.class"),
-                Collections.singletonList(".*IOException.class"));
+                }, Collections.singletonList(".*Exception.class"));
 
         // compress level 2 == ZIP + String sharing
         Properties options2 = new Properties();
@@ -144,14 +142,13 @@
 
         // compress level 2 == ZIP + String sharing + filter
         options2.setProperty(DefaultCompressPlugin.FILTER,
-                "*Exception.class,^*IOException.class");
+                "**Exception.class");
         checkCompress(classes, new DefaultCompressPlugin(),
                 options2,
                 new ResourceDecompressorFactory[]{
                     new ZipDecompressorFactory(),
                     new StringSharingDecompressorFactory()
-                }, Collections.singletonList(".*Exception.class"),
-                Collections.singletonList(".*IOException.class"));
+                }, Collections.singletonList(".*Exception.class"));
 
         // compress level 0 == String sharing
         Properties options0 = new Properties();
@@ -164,13 +161,12 @@
 
         // compress level 0 == String sharing + filter
         options0.setProperty(DefaultCompressPlugin.FILTER,
-                "*Exception.class,^*IOException.class");
+                "**Exception.class");
         checkCompress(classes, new DefaultCompressPlugin(),
                 options0,
                 new ResourceDecompressorFactory[]{
                     new StringSharingDecompressorFactory()
-                }, Collections.singletonList(".*Exception.class"),
-                Collections.singletonList(".*IOException.class"));
+                }, Collections.singletonList(".*Exception.class"));
     }
 
     private ModulePool gatherResources(Path module) throws Exception {
@@ -226,23 +222,19 @@
     private void checkCompress(ModulePool resources, Plugin prov,
             Properties config,
             ResourceDecompressorFactory[] factories) throws Exception {
-        checkCompress(resources, prov, config, factories, Collections.emptyList(), Collections.emptyList());
+        checkCompress(resources, prov, config, factories, Collections.emptyList());
     }
 
     private void checkCompress(ModulePool resources, Plugin prov,
             Properties config,
             ResourceDecompressorFactory[] factories,
-            List<String> includes,
-            List<String> excludes) throws Exception {
+            List<String> includes) throws Exception {
         long[] original = new long[1];
         long[] compressed = new long[1];
         resources.entries().forEach(resource -> {
             List<Pattern> includesPatterns = includes.stream()
                     .map(Pattern::compile)
                     .collect(Collectors.toList());
-            List<Pattern> excludesPatterns = excludes.stream()
-                    .map(Pattern::compile)
-                    .collect(Collectors.toList());
 
             Map<String, String> props = new HashMap<>();
             if (config != null) {
@@ -267,10 +259,10 @@
                 }
             });
             inputResources.add(resource);
-            ModulePool compressedResources = applyCompressor(prov, inputResources, resource, includesPatterns, excludesPatterns);
+            ModulePool compressedResources = applyCompressor(prov, inputResources, resource, includesPatterns);
             original[0] += resource.getLength();
             compressed[0] += compressedResources.findEntry(resource.getPath()).get().getLength();
-            applyDecompressors(factories, inputResources, compressedResources, strings, includesPatterns, excludesPatterns);
+            applyDecompressors(factories, inputResources, compressedResources, strings, includesPatterns);
         });
         String compressors = Stream.of(factories)
                 .map(Object::getClass)
@@ -286,8 +278,7 @@
     private ModulePool applyCompressor(Plugin plugin,
             ModulePoolImpl inputResources,
             ModuleEntry res,
-            List<Pattern> includesPatterns,
-            List<Pattern> excludesPatterns) {
+            List<Pattern> includesPatterns) {
         TransformerPlugin compressor = (TransformerPlugin) plugin;
         ModulePool compressedModulePool = new ModulePoolImpl(ByteOrder.nativeOrder(), inputResources.getStringTable());
         compressor.visit(inputResources, compressedModulePool);
@@ -295,7 +286,7 @@
         ModuleEntry compressed = compressedModulePool.findEntry(path).get();
         CompressedResourceHeader header
                 = CompressedResourceHeader.readFromResource(ByteOrder.nativeOrder(), compressed.getBytes());
-        if (isIncluded(includesPatterns, excludesPatterns, path)) {
+        if (isIncluded(includesPatterns, path)) {
             if (header == null) {
                 throw new AssertionError("Path should be compressed: " + path);
             }
@@ -317,14 +308,13 @@
             ModulePool inputResources,
             ModulePool compressedResources,
             Map<Integer, String> strings,
-            List<Pattern> includesPatterns,
-            List<Pattern> excludesPatterns) {
+            List<Pattern> includesPatterns) {
         compressedResources.entries().forEach(compressed -> {
             CompressedResourceHeader header = CompressedResourceHeader.readFromResource(
                     ByteOrder.nativeOrder(), compressed.getBytes());
             String path = compressed.getPath();
             ModuleEntry orig = inputResources.findEntry(path).get();
-            if (!isIncluded(includesPatterns, excludesPatterns, path)) {
+            if (!isIncluded(includesPatterns, path)) {
                 return;
             }
             byte[] decompressed = compressed.getBytes();
@@ -352,9 +342,8 @@
         });
     }
 
-    private boolean isIncluded(List<Pattern> includesPatterns, List<Pattern> excludesPatterns, String path) {
-        return !excludesPatterns.stream().anyMatch((pattern) -> pattern.matcher(path).matches())
-                && (includesPatterns.isEmpty()
-                || includesPatterns.stream().anyMatch((pattern) -> pattern.matcher(path).matches()));
+    private boolean isIncluded(List<Pattern> includesPatterns, String path) {
+        return includesPatterns.isEmpty() ||
+               includesPatterns.stream().anyMatch((pattern) -> pattern.matcher(path).matches());
     }
 }
diff --git a/jdk/test/tools/jlink/plugins/ExcludeFilesPluginTest.java b/jdk/test/tools/jlink/plugins/ExcludeFilesPluginTest.java
index 744d7a2..52b9573 100644
--- a/jdk/test/tools/jlink/plugins/ExcludeFilesPluginTest.java
+++ b/jdk/test/tools/jlink/plugins/ExcludeFilesPluginTest.java
@@ -48,23 +48,23 @@
     }
 
     public void test() throws Exception {
-        checkFiles("*.jcov", "num/toto.jcov", "", true);
-        checkFiles("*.jcov", "/toto.jcov", "", true);
-        checkFiles("*.jcov", "toto.jcov/tutu/tata", "", false);
+        checkFiles("**.jcov", "num/toto.jcov", "", true);
+        checkFiles("**.jcov", "/toto.jcov", "", true);
+        checkFiles("**.jcov", "toto.jcov/tutu/tata", "", false);
         checkFiles("/java.base/*.jcov", "toto.jcov", "java.base", true);
         checkFiles("/java.base/toto.jcov", "iti.jcov", "t/java.base", false);
         checkFiles("/java.base/*/toto.jcov", "toto.jcov", "java.base", false);
         checkFiles("/java.base/*/toto.jcov", "tutu/toto.jcov", "java.base", true);
-        checkFiles("*/java.base/*/toto.jcov", "java.base/tutu/toto.jcov", "/tutu", true);
+        checkFiles("**/java.base/*/toto.jcov", "java.base/tutu/toto.jcov", "/tutu", true);
 
-        checkFiles("/*$*.properties", "tutu/Toto$Titi.properties", "java.base", true);
-        checkFiles("*$*.properties", "tutu/Toto$Titi.properties", "java.base", true);
+        checkFiles("/**$*.properties", "tutu/Toto$Titi.properties", "java.base", true);
+        checkFiles("**$*.properties", "tutu/Toto$Titi.properties", "java.base", true);
 
         // Excluded files list in a file
         File order = new File("files.exc");
         order.createNewFile();
-        Files.write(order.toPath(), "*.jcov".getBytes());
-        checkFiles(order.getAbsolutePath(), "/num/toto.jcov", "", true);
+        Files.write(order.toPath(), "**.jcov".getBytes());
+        checkFiles("@" + order.getAbsolutePath(), "/num/toto.jcov", "", true);
     }
 
     public void checkFiles(String s, String sample, String module, boolean exclude) throws Exception {
diff --git a/jdk/test/tools/jlink/plugins/ExcludePluginTest.java b/jdk/test/tools/jlink/plugins/ExcludePluginTest.java
index c39e738..8832fc4 100644
--- a/jdk/test/tools/jlink/plugins/ExcludePluginTest.java
+++ b/jdk/test/tools/jlink/plugins/ExcludePluginTest.java
@@ -47,27 +47,27 @@
     }
 
     public void test() throws Exception {
-        check("*.jcov", "/num/toto.jcov", true);
-        check("*.jcov", "//toto.jcov", true);
-        check("*.jcov", "/toto.jcov/tutu/tata", false);
+        check("**.jcov", "/num/toto.jcov", true);
+        check("**.jcov", "//toto.jcov", true);
+        check("**.jcov", "/toto.jcov/tutu/tata", false);
         check("/java.base/*.jcov", "/java.base/toto.jcov", true);
         check("/java.base/toto.jcov", "t/java.base/iti.jcov", false);
         check("/java.base/*/toto.jcov", "/java.base/toto.jcov", false);
         check("/java.base/*/toto.jcov", "/java.base/tutu/toto.jcov", true);
-        check("*/java.base/*/toto.jcov", "/tutu/java.base/tutu/toto.jcov", true);
-        check("*/META-INF/*", "/META-INF/services/  MyProvider ", false);
-        check("*/META-INF/*", "/META-INF/services/MyProvider", false);
-        check("*/META-INF", " /META-INF/services/MyProvider", false);
-        check("*/META-INF/*", "/java.base//META-INF/services/MyProvider", true);
+        check("**/java.base/*/toto.jcov", "/tutu/java.base/tutu/toto.jcov", true);
+        check("/META-INF/**", "/META-INF/services/  MyProvider ", true);
+        check("/META-INF/**", "/META-INF/services/MyProvider", true);
+        check("**/META-INF", " /META-INF/services/MyProvider", false);
+        check("**/META-INF/**", "/java.base//META-INF/services/MyProvider", true);
         check("/java.base/*/Toto$Titi.class", "/java.base/tutu/Toto$Titi.class", true);
-        check("/*$*.class", "/java.base/tutu/Toto$Titi.class", true);
-        check("*$*.class", "/java.base/tutu/Toto$Titi.class", true);
+        check("/**$**.class", "/java.base/tutu/Toto$Titi.class", true);
+        check("**$**.class", "/java.base/tutu/Toto$Titi.class", true);
 
         // Excluded resource list in a file
         File order = new File("resources.exc");
         order.createNewFile();
-        Files.write(order.toPath(), "*.jcov".getBytes());
-        check(order.getAbsolutePath(), "/num/toto.jcov", true);
+        Files.write(order.toPath(), "**.jcov".getBytes());
+        check("@" + order.getAbsolutePath(), "/num/toto.jcov", true);
     }
 
     public void check(String s, String sample, boolean exclude) throws Exception {
diff --git a/jdk/test/tools/jlink/plugins/GetAvailableLocales.java b/jdk/test/tools/jlink/plugins/GetAvailableLocales.java
index 5752f01..56605d7 100644
--- a/jdk/test/tools/jlink/plugins/GetAvailableLocales.java
+++ b/jdk/test/tools/jlink/plugins/GetAvailableLocales.java
@@ -23,20 +23,36 @@
 
 import java.util.Arrays;
 import java.util.Locale;
+import java.util.Set;
+import java.util.TreeSet;
 import java.util.stream.Collectors;
 
 class GetAvailableLocales {
 
     public static void main(String[] args) {
-        String availableLocales = Arrays.stream(Locale.getAvailableLocales())
-            .map(l -> l.toString())
-            .sorted()
-            .collect(Collectors.joining(" "));
+        Set<String> expected = Set.of(args);
+        Set<String> actual =
+            Arrays.stream(Locale.getAvailableLocales())
+                  // "(root)" for Locale.ROOT rather than ""
+                  .map(loc -> loc.equals(Locale.ROOT) ? "(root)" : loc.toString())
+                  .collect(Collectors.toSet());
 
-        if (!availableLocales.equals(args[0])) {
-            throw new RuntimeException("Available locales are not equal to the expected ones.\n" +
-                "Expected: " + args[0] + "\n" +
-                "Actual:   " + availableLocales);
+        if (!expected.equals(actual)) {
+            diff(expected, actual);
+            System.exit(1);
+        }
+    }
+
+    private static void diff(Set<String> expected, Set<String> actual) {
+        Set<String> s1 = new TreeSet<>(expected);
+        s1.removeAll(actual);
+        if (!s1.isEmpty()) {
+            System.out.println("\tMissing locale(s): " + s1);
+        }
+        Set<String> s2 = new TreeSet<>(actual);
+        s2.removeAll(expected);
+        if (!s2.isEmpty()) {
+            System.out.println("\tExtra locale(s): " + s2);
         }
     }
 }
diff --git a/jdk/test/tools/jlink/plugins/IncludeLocalesPluginTest.java b/jdk/test/tools/jlink/plugins/IncludeLocalesPluginTest.java
index 4fe653b..6f84285 100644
--- a/jdk/test/tools/jlink/plugins/IncludeLocalesPluginTest.java
+++ b/jdk/test/tools/jlink/plugins/IncludeLocalesPluginTest.java
@@ -22,7 +22,11 @@
  */
 
 import java.nio.file.Path;
+import java.util.Arrays;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Locale;
+import java.util.stream.Collectors;
 
 import jdk.tools.jlink.plugin.Plugin;
 import jdk.tools.jlink.plugin.PluginException;
@@ -49,7 +53,7 @@
  *          jdk.compiler
  * @build tests.*
  * @build tools.jlink.plugins.GetAvailableLocales
- * @run main/othervm -verbose:gc -Xmx1g IncludeLocalesPluginTest
+ * @run main/othervm -Xmx1g IncludeLocalesPluginTest
  */
 public class IncludeLocalesPluginTest {
 
@@ -62,6 +66,8 @@
     private final static int AVAILABLE_LOCALES      = 4;
     private final static int ERROR_MESSAGE          = 5;
 
+    private static int errors;
+
     private final static Object[][] testData = {
         // without --include-locales option: should include all locales
         {
@@ -77,74 +83,14 @@
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_th.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_zh.class"),
             List.of(),
-            " af af_NA af_ZA agq agq_CM ak ak_GH am am_ET ar ar_001 ar_AE ar_BH " +
-            "ar_DJ ar_DZ ar_EG ar_EH ar_ER ar_IL ar_IQ ar_JO ar_KM ar_KW ar_LB " +
-            "ar_LY ar_MA ar_MR ar_OM ar_PS ar_QA ar_SA ar_SD ar_SO ar_SS ar_SY " +
-            "ar_TD ar_TN ar_YE as as_IN asa asa_TZ ast ast_ES az az_AZ_#Cyrl " +
-            "az_AZ_#Latn az__#Cyrl az__#Latn bas bas_CM be be_BY bem bem_ZM bez " +
-            "bez_TZ bg bg_BG bm bm_ML_#Latn bm__#Latn bn bn_BD bn_IN bo bo_CN " +
-            "bo_IN br br_FR brx brx_IN bs bs_BA_#Cyrl bs_BA_#Latn bs__#Cyrl " +
-            "bs__#Latn ca ca_AD ca_ES ca_ES_VALENCIA ca_FR ca_IT cgg cgg_UG chr " +
-            "chr_US cs cs_CZ cy cy_GB da da_DK da_GL dav dav_KE de de_AT de_BE " +
-            "de_CH de_DE de_GR de_LI de_LU dje dje_NE dsb dsb_DE dua dua_CM dyo " +
-            "dyo_SN dz dz_BT ebu ebu_KE ee ee_GH ee_TG el el_CY el_GR en en_001 " +
-            "en_150 en_AG en_AI en_AS en_AU en_BB en_BE en_BM en_BS en_BW en_BZ " +
-            "en_CA en_CC en_CK en_CM en_CX en_DG en_DM en_ER en_FJ en_FK en_FM " +
-            "en_GB en_GD en_GG en_GH en_GI en_GM en_GU en_GY en_HK en_IE en_IM " +
-            "en_IN en_IO en_JE en_JM en_KE en_KI en_KN en_KY en_LC en_LR en_LS " +
-            "en_MG en_MH en_MO en_MP en_MS en_MT en_MU en_MW en_MY en_NA en_NF " +
-            "en_NG en_NR en_NU en_NZ en_PG en_PH en_PK en_PN en_PR en_PW en_RW " +
-            "en_SB en_SC en_SD en_SG en_SH en_SL en_SS en_SX en_SZ en_TC en_TK " +
-            "en_TO en_TT en_TV en_TZ en_UG en_UM en_US en_US_POSIX en_VC en_VG " +
-            "en_VI en_VU en_WS en_ZA en_ZM en_ZW eo eo_001 es es_419 es_AR es_BO " +
-            "es_CL es_CO es_CR es_CU es_DO es_EA es_EC es_ES es_GQ es_GT es_HN " +
-            "es_IC es_MX es_NI es_PA es_PE es_PH es_PR es_PY es_SV es_US es_UY " +
-            "es_VE et et_EE eu eu_ES ewo ewo_CM fa fa_AF fa_IR ff ff_CM ff_GN " +
-            "ff_MR ff_SN fi fi_FI fil fil_PH fo fo_FO fr fr_BE fr_BF fr_BI fr_BJ " +
-            "fr_BL fr_CA fr_CD fr_CF fr_CG fr_CH fr_CI fr_CM fr_DJ fr_DZ fr_FR " +
-            "fr_GA fr_GF fr_GN fr_GP fr_GQ fr_HT fr_KM fr_LU fr_MA fr_MC fr_MF " +
-            "fr_MG fr_ML fr_MQ fr_MR fr_MU fr_NC fr_NE fr_PF fr_PM fr_RE fr_RW " +
-            "fr_SC fr_SN fr_SY fr_TD fr_TG fr_TN fr_VU fr_WF fr_YT fur fur_IT fy " +
-            "fy_NL ga ga_IE gd gd_GB gl gl_ES gsw gsw_CH gsw_FR gsw_LI gu gu_IN " +
-            "guz guz_KE gv gv_IM ha ha_GH_#Latn ha_NE_#Latn ha_NG_#Latn ha__#Latn " +
-            "haw haw_US hi hi_IN hr hr_BA hr_HR hsb hsb_DE hu hu_HU hy hy_AM ig " +
-            "ig_NG ii ii_CN in in_ID is is_IS it it_CH it_IT it_SM iw iw_IL ja " +
-            "ja_JP ja_JP_JP_#u-ca-japanese jgo jgo_CM ji ji_001 jmc jmc_TZ ka " +
-            "ka_GE kab kab_DZ kam kam_KE kde kde_TZ kea kea_CV khq khq_ML ki " +
-            "ki_KE kk kk_KZ_#Cyrl kk__#Cyrl kkj kkj_CM kl kl_GL kln kln_KE km " +
-            "km_KH kn kn_IN ko ko_KP ko_KR kok kok_IN ks ks_IN_#Arab ks__#Arab " +
-            "ksb ksb_TZ ksf ksf_CM ksh ksh_DE kw kw_GB ky ky_KG_#Cyrl ky__#Cyrl " +
-            "lag lag_TZ lb lb_LU lg lg_UG lkt lkt_US ln ln_AO ln_CD ln_CF ln_CG " +
-            "lo lo_LA lt lt_LT lu lu_CD luo luo_KE luy luy_KE lv lv_LV mas " +
-            "mas_KE mas_TZ mer mer_KE mfe mfe_MU mg mg_MG mgh mgh_MZ mgo mgo_CM " +
-            "mk mk_MK ml ml_IN mn mn_MN_#Cyrl mn__#Cyrl mr mr_IN ms ms_BN_#Latn " +
-            "ms_MY ms_MY_#Latn ms_SG_#Latn ms__#Latn mt mt_MT mua mua_CM my " +
-            "my_MM naq naq_NA nb nb_NO nb_SJ nd nd_ZW ne ne_IN ne_NP nl nl_AW " +
-            "nl_BE nl_BQ nl_CW nl_NL nl_SR nl_SX nmg nmg_CM nn nn_NO nnh nnh_CM " +
-            "no no_NO no_NO_NY nus nus_SD nyn nyn_UG om om_ET om_KE or or_IN os " +
-            "os_GE os_RU pa pa_IN_#Guru pa_PK_#Arab pa__#Arab pa__#Guru pl pl_PL " +
-            "ps ps_AF pt pt_AO pt_BR pt_CV pt_GW pt_MO pt_MZ pt_PT pt_ST pt_TL qu " +
-            "qu_BO qu_EC qu_PE rm rm_CH rn rn_BI ro ro_MD ro_RO rof rof_TZ ru " +
-            "ru_BY ru_KG ru_KZ ru_MD ru_RU ru_UA rw rw_RW rwk rwk_TZ sah sah_RU " +
-            "saq saq_KE sbp sbp_TZ se se_FI se_NO se_SE seh seh_MZ ses ses_ML sg " +
-            "sg_CF shi shi_MA_#Latn shi_MA_#Tfng shi__#Latn shi__#Tfng si si_LK " +
-            "sk sk_SK sl sl_SI smn smn_FI sn sn_ZW so so_DJ so_ET so_KE so_SO sq " +
-            "sq_AL sq_MK sq_XK sr sr_BA sr_BA_#Cyrl sr_BA_#Latn sr_CS sr_ME " +
-            "sr_ME_#Cyrl sr_ME_#Latn sr_RS sr_RS_#Cyrl sr_RS_#Latn sr_XK_#Cyrl " +
-            "sr_XK_#Latn sr__#Cyrl sr__#Latn sv sv_AX sv_FI sv_SE sw sw_CD sw_KE " +
-            "sw_TZ sw_UG ta ta_IN ta_LK ta_MY ta_SG te te_IN teo teo_KE teo_UG " +
-            "th th_TH th_TH_TH_#u-nu-thai ti ti_ER ti_ET to to_TO tr tr_CY tr_TR " +
-            "twq twq_NE tzm tzm_MA_#Latn tzm__#Latn ug ug_CN_#Arab ug__#Arab uk " +
-            "uk_UA ur ur_IN ur_PK uz uz_AF_#Arab uz_UZ_#Cyrl uz_UZ_#Latn " +
-            "uz__#Arab uz__#Cyrl uz__#Latn vai vai_LR_#Latn vai_LR_#Vaii " +
-            "vai__#Latn vai__#Vaii vi vi_VN vun vun_TZ wae wae_CH xog xog_UG yav " +
-            "yav_CM yo yo_BJ yo_NG zgh zgh_MA zh zh_CN zh_CN_#Hans zh_HK " +
-            "zh_HK_#Hans zh_HK_#Hant zh_MO_#Hans zh_MO_#Hant zh_SG zh_SG_#Hans " +
-            "zh_TW zh_TW_#Hant zh__#Hans zh__#Hant zu zu_ZA",
+            Arrays.stream(Locale.getAvailableLocales())
+                  // "(root)" for Locale.ROOT rather than ""
+                  .map(loc -> loc.equals(Locale.ROOT) ? "(root)" : loc.toString())
+                  .collect(Collectors.toList()),
             "",
         },
 
-        // All English/Japanese locales
+        // All English and Japanese locales
         {
             "--include-locales=en,ja",
             "jdk.localedata",
@@ -163,15 +109,22 @@
                 "/jdk.localedata/sun/text/resources/ext/FormatData_zh.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_th.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_zh.class"),
-            " en en_001 en_150 en_AG en_AI en_AS en_AU en_BB en_BE en_BM en_BS " +
-            "en_BW en_BZ en_CA en_CC en_CK en_CM en_CX en_DG en_DM en_ER en_FJ " +
-            "en_FK en_FM en_GB en_GD en_GG en_GH en_GI en_GM en_GU en_GY en_HK " +
-            "en_IE en_IM en_IN en_IO en_JE en_JM en_KE en_KI en_KN en_KY en_LC " +
-            "en_LR en_LS en_MG en_MH en_MO en_MP en_MS en_MT en_MU en_MW en_MY " +
-            "en_NA en_NF en_NG en_NR en_NU en_NZ en_PG en_PH en_PK en_PN en_PR " +
-            "en_PW en_RW en_SB en_SC en_SD en_SG en_SH en_SL en_SS en_SX en_SZ " +
-            "en_TC en_TK en_TO en_TT en_TV en_TZ en_UG en_UM en_US en_US_POSIX " +
-            "en_VC en_VG en_VI en_VU en_WS en_ZA en_ZM en_ZW ja ja_JP ja_JP_JP_#u-ca-japanese",
+            List.of(
+                "(root)", "en", "en_001", "en_150", "en_AG", "en_AI", "en_AS", "en_AT",
+                "en_AU", "en_BB", "en_BE", "en_BI", "en_BM", "en_BS", "en_BW", "en_BZ",
+                "en_CA", "en_CC", "en_CH", "en_CK", "en_CM", "en_CX", "en_CY", "en_DE",
+                "en_DG", "en_DK", "en_DM", "en_ER", "en_FI", "en_FJ", "en_FK", "en_FM",
+                "en_GB", "en_GD", "en_GG", "en_GH", "en_GI", "en_GM", "en_GU", "en_GY",
+                "en_HK", "en_IE", "en_IL", "en_IM", "en_IN", "en_IO", "en_JE", "en_JM",
+                "en_KE", "en_KI", "en_KN", "en_KY", "en_LC", "en_LR", "en_LS", "en_MG",
+                "en_MH", "en_MO", "en_MP", "en_MS", "en_MT", "en_MU", "en_MW", "en_MY",
+                "en_NA", "en_NF", "en_NG", "en_NL", "en_NR", "en_NU", "en_NZ", "en_PG",
+                "en_PH", "en_PK", "en_PN", "en_PR", "en_PW", "en_RW", "en_SB", "en_SC",
+                "en_SD", "en_SE", "en_SG", "en_SH", "en_SI", "en_SL", "en_SS", "en_SX",
+                "en_SZ", "en_TC", "en_TK", "en_TO", "en_TT", "en_TV", "en_TZ", "en_UG",
+                "en_UM", "en_US", "en_US_POSIX", "en_VC", "en_VG", "en_VI", "en_VU",
+                "en_WS", "en_ZA", "en_ZM", "en_ZW", "ja", "ja_JP",
+                "ja_JP_JP_#u-ca-japanese"),
             "",
         },
 
@@ -200,8 +153,11 @@
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_ja.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_th.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_zh.class"),
-            " as_IN bn_IN bo_IN brx_IN en en_IN en_US en_US_POSIX gu_IN hi_IN kn_IN " +
-            "kok_IN ks_IN_#Arab ml_IN mr_IN ne_IN or_IN pa_IN_#Guru ta_IN te_IN ur_IN",
+            List.of(
+                "(root)", "as_IN", "bn_IN", "bo_IN", "brx_IN", "en", /* "en_001", */
+                "en_IN", "en_US", "en_US_POSIX", "gu_IN", "hi_IN", "kn_IN", "kok_IN",
+                "ks_IN", "ml_IN", "mr_IN", "ne_IN", "or_IN", "pa_IN", "pa_IN_#Guru",
+                "ta_IN", "te_IN", "ur_IN"),
             "",
         },
 
@@ -223,7 +179,9 @@
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_en_001.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_ja.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_zh.class"),
-            " en en_US en_US_POSIX th th_TH th_TH_TH_#u-nu-thai",
+            List.of(
+                "(root)", "en", "en_US", "en_US_POSIX", "th", "th_TH",
+                "th_TH_TH_#u-nu-thai"),
             "",
         },
 
@@ -248,7 +206,9 @@
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_en_001.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_ja.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_th.class"),
-            " en en_US en_US_POSIX zh_HK zh_HK_#Hans zh_HK_#Hant",
+            List.of(
+                "(root)", "en", "en_US", "en_US_POSIX", "zh_HK", "zh_HK_#Hans",
+                "zh_HK_#Hant"),
             "",
         },
 
@@ -274,7 +234,9 @@
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_en_001.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_ja.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_th.class"),
-            " en en_US en_US_POSIX nb nb_NO nb_SJ nn nn_NO no no_NO no_NO_NY",
+            List.of(
+                "(root)", "en", "en_US", "en_US_POSIX", "nb", "nb_NO", "nb_SJ", "nn",
+                "nn_NO", "no", "no_NO", "no_NO_NY"),
             "",
         },
 
@@ -302,7 +264,9 @@
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_en_001.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_ja.class",
                 "/jdk.localedata/sun/text/resources/cldr/ext/FormatData_th.class"),
-            " en en_US en_US_POSIX in in_ID iw iw_IL ji ji_001",
+            List.of(
+                "(root)", "en", "en_US", "en_US_POSIX", "in", "in_ID", "iw", "iw_IL",
+                "ji", "ji_001"),
             "",
         },
 
@@ -349,50 +313,76 @@
             System.err.println("Test not run");
             return;
         }
-
         helper.generateDefaultModules();
 
         for (Object[] data : testData) {
             // create image for each test data
+            System.out.println("Invoking jlink with \"" + data[INCLUDE_LOCALES_OPTION] + "\"");
             Result result = JImageGenerator.getJLinkTask()
                     .modulePath(helper.defaultModulePath())
                     .output(helper.createNewImageDir(moduleName))
-                    .addMods((String)data[ADDMODS_OPTION])
-                    .option((String)data[INCLUDE_LOCALES_OPTION])
+                    .addMods((String) data[ADDMODS_OPTION])
+                    .option((String) data[INCLUDE_LOCALES_OPTION])
                     .call();
 
-            String errorMsg = (String)data[ERROR_MESSAGE];
+            String errorMsg = (String) data[ERROR_MESSAGE];
             if (errorMsg.isEmpty()) {
                 Path image = result.assertSuccess();
 
                 // test locale data entries
                 testLocaleDataEntries(image,
-                    (List<String>)data[EXPECTED_LOCATIONS],
-                    (List<String>)data[UNEXPECTED_PATHS]);
+                    (List<String>) data[EXPECTED_LOCATIONS],
+                    (List<String>) data[UNEXPECTED_PATHS]);
 
                 // test available locales
-                testAvailableLocales(image, (String)data[AVAILABLE_LOCALES]);
+                testAvailableLocales(image, (List<String>) data[AVAILABLE_LOCALES]);
             } else {
                 result.assertFailure(new TaskHelper(TaskHelper.JLINK_BUNDLE)
                     .getMessage("error.prefix") + " " +errorMsg);
+                System.out.println("\tExpected failure: " + result.getMessage());
             }
         }
+
+        if (errors > 0) {
+            throw new RuntimeException("Test failed");
+        }
     }
 
     private static void testLocaleDataEntries(Path image, List<String> expectedLocations,
                         List<String> unexpectedPaths) throws Exception {
-        JImageValidator.validate(
-            image.resolve("lib").resolve("modules"),
-            expectedLocations, unexpectedPaths);
+        System.out.println("testLocaleDataEntries:");
+        try {
+            JImageValidator.validate(
+                image.resolve("lib").resolve("modules"),
+                expectedLocations, unexpectedPaths);
+        } catch (Exception e) {
+            System.out.println("\tFailed with: " + e);
+            e.printStackTrace();
+            errors++;
+        }
     }
 
-    private static void testAvailableLocales(Path image, String availableLocales) throws Exception {
+    private static void testAvailableLocales(Path image, List<String> availableLocales) throws Exception {
+        System.out.println("testAvailableLocales:");
         Path launcher = image.resolve("bin/java" +
             (System.getProperty("os.name").startsWith("Windows") ? ".exe" : ""));
-        System.out.print(launcher);
-        ProcessBuilder pb = new ProcessBuilder(launcher.toString(),
-            "GetAvailableLocales", availableLocales);
-        int ret = pb.start().waitFor();
-        System.out.println(" Return code: " + ret);
+        List<String> args = new ArrayList<>(availableLocales.size() + 2);
+        args.add(launcher.toString());
+        args.add("GetAvailableLocales");
+        args.addAll(availableLocales);
+        Process proc = new ProcessBuilder(args).inheritIO().start();
+
+        int len = Math.min(10, args.size());
+        String command = args.subList(0, len).stream().collect(Collectors.joining(" "))
+                         + (len < availableLocales.size() ? " ..." : "");
+
+        int status = proc.waitFor();
+        if (status == 0) {
+            System.out.println("\tDone\t" + command);
+        } else {
+            System.out.println("\tExit " + status + "\t" + command);
+            errors++;
+        }
+        System.out.println();
     }
 }
diff --git a/jdk/test/tools/jlink/plugins/OrderResourcesPluginTest.java b/jdk/test/tools/jlink/plugins/OrderResourcesPluginTest.java
index 7017361..5fc96d6 100644
--- a/jdk/test/tools/jlink/plugins/OrderResourcesPluginTest.java
+++ b/jdk/test/tools/jlink/plugins/OrderResourcesPluginTest.java
@@ -92,7 +92,7 @@
         {
             ModulePool out = new ModulePoolImpl();
             Map<String, String> config = new HashMap<>();
-            config.put(OrderResourcesPlugin.NAME, "/zazou/*,*/module-info.class");
+            config.put(OrderResourcesPlugin.NAME, "/zazou/**,**/module-info.class");
             TransformerPlugin p = new OrderResourcesPlugin();
             p.configure(config);
             p.visit(resources, out);
diff --git a/jdk/test/tools/jlink/plugins/ResourceFilterTest.java b/jdk/test/tools/jlink/plugins/ResourceFilterTest.java
index b7b0f2b..47554db 100644
--- a/jdk/test/tools/jlink/plugins/ResourceFilterTest.java
+++ b/jdk/test/tools/jlink/plugins/ResourceFilterTest.java
@@ -24,13 +24,13 @@
 /*
  * @test
  * @summary Test ResourceFilter class
- * @author Jean-Francois Denise
  * @modules jdk.jlink/jdk.tools.jlink.internal.plugins
  * @run main ResourceFilterTest
  */
 
 import java.io.File;
 import java.nio.file.Files;
+import java.util.Arrays;
 import jdk.tools.jlink.internal.plugins.ResourceFilter;
 
 public class ResourceFilterTest {
@@ -41,14 +41,16 @@
 
     public void test() throws Exception {
         String[] samples = {"toto.jcov", "/module/META-INF/services/MyProvider"};
-        String[] patterns = {"*.jcov", "*/META-INF/*"};
-        ResourceFilter rf = new ResourceFilter(patterns);
+        String[] patterns = {"*.jcov", "**/META-INF/**",
+                             "glob:*.jcov", "glob:**/META-INF/**",
+                             "regex:.*\\.jcov", "regex:.*/META-INF/.*"};
+        ResourceFilter rf = ResourceFilter.includeFilter(Arrays.asList(patterns));
         for (String s : samples) {
             if (!rf.test(s)) {
                 throw new Exception("Sample " + s + "not accepted");
             }
         }
-        ResourceFilter rf2 = new ResourceFilter(patterns, true);
+        ResourceFilter rf2 = ResourceFilter.excludeFilter(Arrays.asList(patterns));
         for (String s : samples) {
             if (rf2.test(s)) {
                 throw new Exception("Sample " + s + " accepted");
@@ -64,14 +66,14 @@
         }
         Files.write(resources.toPath(), builder.toString().getBytes());
 
-        String[] input = {resources.getAbsolutePath()};
-        ResourceFilter rf3 = new ResourceFilter(input);
+        String[] input = {"@" + resources.getAbsolutePath()};
+        ResourceFilter rf3 = ResourceFilter.includeFilter(Arrays.asList(input));
         for (String s : samples) {
             if (!rf3.test(s)) {
                 throw new Exception("Sample " + s + "not accepted");
             }
         }
-        ResourceFilter rf4 = new ResourceFilter(input, true);
+        ResourceFilter rf4 = ResourceFilter.excludeFilter(Arrays.asList(input));
         for (String s : samples) {
             if (rf4.test(s)) {
                 throw new Exception("Sample " + s + " accepted");
diff --git a/langtools/.hgtags b/langtools/.hgtags
index 90743b9..280f72a 100644
--- a/langtools/.hgtags
+++ b/langtools/.hgtags
@@ -365,3 +365,4 @@
 0f81cdd51b42ad38fbceae40985e9bd0bca12180 jdk-9+120
 095bd53bdd1ef211a473553a95ee625fcfbc3f59 jdk-9+121
 203a9e1b82b6cc7918f96a92e5a7eb28eafcdd18 jdk-9+122
+d0c742ddfb01ebe427720798c4c8335023ae20f8 jdk-9+123
diff --git a/langtools/make/netbeans/langtools/build.xml b/langtools/make/netbeans/langtools/build.xml
index 20de2fc..a8bb2e9 100644
--- a/langtools/make/netbeans/langtools/build.xml
+++ b/langtools/make/netbeans/langtools/build.xml
@@ -218,7 +218,11 @@
 
             <sequential>
                 <java fork="true" jvm="${langtools.jdk.home}/bin/java" classname="@{mainclass}">
-                    <jvmarg line="-Xpatch:@{build.modules}"/>
+                    <jvmarg line="-Xpatch:java.compiler=@{build.modules}/java.compiler"/>
+                    <jvmarg line="-Xpatch:jdk.compiler=@{build.modules}/jdk.compiler"/>
+                    <jvmarg line="-Xpatch:jdk.javadoc=@{build.modules}/jdk.javadoc"/>
+                    <jvmarg line="-Xpatch:jdk.jdeps=@{build.modules}/jdk.jdeps"/>
+                    <jvmarg line="-Xpatch:jdk.jshell=@{build.modules}/jdk.jshell"/>
                     <jvmarg line="@{jpda.jvmargs}"/>
                     <arg line="@{args}"/>
                 </java>
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_ja.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_ja.properties
index 9bc02c3..c419bcc 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_ja.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,13 +23,16 @@
 # questions.
 #
 
-dc.anchor.already.defined = \u30A2\u30F3\u30AB\u30FC\u304C\u3059\u3067\u306B\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u3059: {0}
+dc.anchor.already.defined = \u30A2\u30F3\u30AB\u30FC\u304C\u3059\u3067\u306B\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u3059: "{0}"
 dc.anchor.value.missing = \u30A2\u30F3\u30AB\u30FC\u306B\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 dc.attr.lacks.value = \u5C5E\u6027\u306B\u5024\u304C\u3042\u308A\u307E\u305B\u3093
 dc.attr.not.number = \u5C5E\u6027\u5024\u304C\u6570\u5B57\u3067\u306F\u3042\u308A\u307E\u305B\u3093
+dc.attr.not.supported.html4 = \u5C5E\u6027\u306FHTML4\u3067\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}
+dc.attr.not.supported.html5 = \u5C5E\u6027\u306FHTML5\u3067\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}
 dc.attr.obsolete = \u5C5E\u6027\u306F\u5EC3\u6B62\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 dc.attr.obsolete.use.css = \u5C5E\u6027\u306F\u5EC3\u6B62\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u304B\u308F\u308A\u306BCSS\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044: {0}
 dc.attr.repeated = \u7E70\u308A\u8FD4\u3055\u308C\u305F\u5C5E\u6027: {0}
+dc.attr.table.border.html5 = \u8868\u306E\u5C5E\u6027\u30DC\u30FC\u30C0\u30FC\u306F""\u307E\u305F\u306F"1"\u306E\u307F\u53D7\u3051\u5165\u308C\u307E\u3059\u3002\u304B\u308F\u308A\u306BCSS\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044: {0}
 dc.attr.unknown = \u4E0D\u660E\u306A\u5C5E\u6027: {0}
 dc.bad.option = \u7121\u52B9\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
 dc.bad.value.for.option = \u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5024\u304C\u4E0D\u6B63\u3067\u3059: {0} {1}
@@ -63,9 +66,11 @@
 dc.tag.not.allowed.inline.other = \u3053\u3053\u3067\u306F\u30D6\u30ED\u30C3\u30AF\u8981\u7D20\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093: {0}
 dc.tag.not.closed= \u8981\u7D20\u304C\u9589\u3058\u3089\u308C\u3066\u3044\u307E\u305B\u3093: {0}
 dc.tag.p.in.pre= <pre>\u8981\u7D20\u5185\u3067\u4E88\u671F\u3057\u306A\u3044<p>\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059
+dc.tag.requires.heading = </{0}>\u306E\u898B\u51FA\u3057\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
 dc.tag.self.closing = \u81EA\u5DF1\u7D42\u4E86\u8981\u7D20\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 dc.tag.start.unmatched = \u7D42\u4E86\u30BF\u30B0\u304C\u3042\u308A\u307E\u305B\u3093: </{0}>
 dc.tag.unknown = \u4E0D\u660E\u306A\u30BF\u30B0: {0}
+dc.tag.not.supported = \u30BF\u30B0\u306F\u3001\u751F\u6210\u6E08HTML\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {0}
 dc.text.not.allowed = <{0}>\u8981\u7D20\u3067\u306F\u30C6\u30AD\u30B9\u30C8\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 dc.type.arg.not.allowed = \u578B\u5F15\u6570\u306F\u3053\u3053\u3067\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 dc.unexpected.comment=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u30FB\u30B3\u30E1\u30F3\u30C8\u306F\u3053\u3053\u3067\u306F\u5FC5\u8981\u3042\u308A\u307E\u305B\u3093
@@ -74,5 +79,5 @@
 
 dc.main.ioerror=IO\u30A8\u30E9\u30FC: {0}
 dc.main.no.files.given=\u30D5\u30A1\u30A4\u30EB\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
-dc.main.usage=\u4F7F\u7528\u65B9\u6CD5:\n    doclint [options] source-files...\n\n\u30AA\u30D7\u30B7\u30E7\u30F3:\n  -Xmsgs  \n    -Xmsgs:all\u3068\u540C\u3058\n  -Xmsgs:values\n    \u30C1\u30A7\u30C3\u30AF\u3059\u308B\u554F\u984C\u306E\u30AB\u30C6\u30B4\u30EA\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002\u3053\u3053\u3067\u306E''values''\u306F\u3001\n    \u30AB\u30F3\u30DE\u3067\u533A\u5207\u3089\u308C\u305F\u6B21\u306E\u5024\u306E\u30EA\u30B9\u30C8\u3067\u3059:\n      reference      Java\u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u8981\u7D20\u3078\u306E\u4E0D\u6B63\u306A\u53C2\u7167\u3092\u542B\u3080\u30B3\u30E1\u30F3\u30C8\u306E\n                     \u5834\u6240\u3092\u8868\u793A\u3057\u307E\u3059\n      syntax         \u30B3\u30E1\u30F3\u30C8\u5185\u306E\u57FA\u672C\u69CB\u6587\u30A8\u30E9\u30FC\u3092\u8868\u793A\u3057\u307E\u3059\n      html           HTML\u30BF\u30D6\u304A\u3088\u3073\u5C5E\u6027\u306E\u554F\u984C\u3092\u8868\u793A\u3057\u307E\u3059\n      accessibility  \u30A2\u30AF\u30BB\u30B7\u30D3\u30EA\u30C6\u30A3\u306E\u554F\u984C\u3092\u8868\u793A\u3057\u307E\u3059\n      missing        \u6B20\u843D\u3057\u3066\u3044\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u554F\u984C\u3092\u8868\u793A\u3057\u307E\u3059\n      all            \u524D\u8FF0\u306E\u3059\u3079\u3066\n    \u3053\u308C\u3092\u5426\u5B9A\u3059\u308B\u306B\u306F\u3001\u5024\u306E\u524D\u306B''-''\u3092\u6307\u5B9A\u3057\u307E\u3059\n    \u30AB\u30C6\u30B4\u30EA\u306F\u3001\u6B21\u306E\u3044\u305A\u308C\u304B\u3067\u4FEE\u98FE\u3067\u304D\u307E\u3059:\n      /public /protected /package /private\n    \u6B63\u306E\u30AB\u30C6\u30B4\u30EA(''-''\u3067\u59CB\u307E\u3089\u306A\u3044)\u306E\u5834\u5408\n    \u4FEE\u98FE\u5B50\u306F\u3001\u305D\u306E\u30A2\u30AF\u30BB\u30B9\u30FB\u30EC\u30D9\u30EB\u4EE5\u4E0A\u306B\u9069\u7528\u3055\u308C\u307E\u3059\u3002\n    \u8CA0\u306E\u30AB\u30C6\u30B4\u30EA(''-''\u3067\u59CB\u307E\u308B)\u306E\u5834\u5408\n    \u4FEE\u98FE\u5B50\u306F\u3001\u305D\u306E\u30A2\u30AF\u30BB\u30B9\u30FB\u30EC\u30D9\u30EB\u4EE5\u4E0B\u306B\u9069\u7528\u3055\u308C\u307E\u3059\u3002\n    \u4FEE\u98FE\u5B50\u304C\u306A\u3044\u5834\u5408\u3001\u30AB\u30C6\u30B4\u30EA\u306F\u3059\u3079\u3066\u306E\u30A2\u30AF\u30BB\u30B9\u30FB\u30EC\u30D9\u30EB\u306B\n    \u9069\u7528\u3055\u308C\u307E\u3059\u3002\n    \u4F8B: -Xmsgs:all,-syntax/private\n    \u3053\u306E\u5834\u5408\u3001private\u30E1\u30BD\u30C3\u30C9\u306Edoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u69CB\u6587\u30A8\u30E9\u30FC\u3092\u9664\u304D\u3001\n    \u3059\u3079\u3066\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u6709\u52B9\u5316\u3055\u308C\u307E\u3059\u3002\n    -Xmsgs\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u306A\u3044\u5834\u5408\u3001\u30C7\u30D5\u30A9\u30EB\u30C8\u306F\u3001\n    -Xmsgs:all/protected\u3068\u540C\u7B49\u306B\u306A\u308A\u3001\u3053\u308C\u306F\n    \u3059\u3079\u3066\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u3001protected\u304A\u3088\u3073public\u306E\u5BA3\u8A00\u306E\u307F\u306B\u5831\u544A\u3055\u308C\u308B\u3053\u3068\u3092\n    \u610F\u5473\u3057\u307E\u3059\u3002\n  -stats\n    \u5831\u544A\u3055\u308C\u305F\u554F\u984C\u306B\u5BFE\u3057\u3066\u7D71\u8A08\u3092\u5831\u544A\u3057\u307E\u3059\u3002\n  -h -help --help -usage -?\n    \u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\n\n\u6B21\u306Ejavac\u30AA\u30D7\u30B7\u30E7\u30F3\u3082\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\n  \
--bootclasspath\u3001-classpath\u3001-cp\u3001-sourcepath\u3001-Xmaxerrs\u3001-Xmaxwarns\n\n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4E00\u90E8\u306B\u5BFE\u3057\u3066doclint\u3092\u5B9F\u884C\u3059\u308B\u306B\u306F\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u3055\u308C\u305F\u30AF\u30E9\u30B9\u3092\n\u30AF\u30E9\u30B9\u30D1\u30B9(\u307E\u305F\u306F\u30D6\u30FC\u30C8\u30FB\u30AF\u30E9\u30B9\u30D1\u30B9)\u306B\u6307\u5B9A\u3057\u3001\u30B3\u30DE\u30F3\u30C9\u30FB\u30E9\u30A4\u30F3\u3067\n\u30C1\u30A7\u30C3\u30AF\u3059\u308B\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002
+dc.main.usage=\u4F7F\u7528\u65B9\u6CD5:\n    doclint [options] source-files...\n\n\u30AA\u30D7\u30B7\u30E7\u30F3:\n  -Xmsgs  \n    -Xmsgs:all\u3068\u540C\u3058\n  -Xmsgs:values\n    \u30C1\u30A7\u30C3\u30AF\u3059\u308B\u554F\u984C\u306E\u30AB\u30C6\u30B4\u30EA\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002\u3053\u3053\u3067\u306E''values''\u306F\u3001\n    \u30AB\u30F3\u30DE\u3067\u533A\u5207\u3089\u308C\u305F\u6B21\u306E\u5024\u306E\u30EA\u30B9\u30C8\u3067\u3059:\n      reference      Java\u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u8981\u7D20\u3078\u306E\u4E0D\u6B63\u306A\u53C2\u7167\u3092\u542B\u3080\u30B3\u30E1\u30F3\u30C8\u306E\n                     \u5834\u6240\u3092\u8868\u793A\u3057\u307E\u3059\n      syntax         \u30B3\u30E1\u30F3\u30C8\u5185\u306E\u57FA\u672C\u69CB\u6587\u30A8\u30E9\u30FC\u3092\u8868\u793A\u3057\u307E\u3059\n      html           HTML\u30BF\u30D6\u304A\u3088\u3073\u5C5E\u6027\u306E\u554F\u984C\u3092\u8868\u793A\u3057\u307E\u3059\n      accessibility  \u30A2\u30AF\u30BB\u30B7\u30D3\u30EA\u30C6\u30A3\u306E\u554F\u984C\u3092\u8868\u793A\u3057\u307E\u3059\n      missing        \u6B20\u843D\u3057\u3066\u3044\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u554F\u984C\u3092\u8868\u793A\u3057\u307E\u3059\n      all            \u524D\u8FF0\u306E\u3059\u3079\u3066\n    \u3053\u308C\u3092\u5426\u5B9A\u3059\u308B\u306B\u306F\u3001\u5024\u306E\u524D\u306B''-''\u3092\u6307\u5B9A\u3057\u307E\u3059\n    \u30AB\u30C6\u30B4\u30EA\u306F\u3001\u6B21\u306E\u3044\u305A\u308C\u304B\u3067\u4FEE\u98FE\u3067\u304D\u307E\u3059:\n      /public /protected /package /private\n    \u6B63\u306E\u30AB\u30C6\u30B4\u30EA(''-''\u3067\u59CB\u307E\u3089\u306A\u3044)\u306E\u5834\u5408\n    \u4FEE\u98FE\u5B50\u306F\u3001\u305D\u306E\u30A2\u30AF\u30BB\u30B9\u30FB\u30EC\u30D9\u30EB\u4EE5\u4E0A\u306B\u9069\u7528\u3055\u308C\u307E\u3059\u3002\n    \u8CA0\u306E\u30AB\u30C6\u30B4\u30EA(''-''\u3067\u59CB\u307E\u308B)\u306E\u5834\u5408\n    \u4FEE\u98FE\u5B50\u306F\u3001\u305D\u306E\u30A2\u30AF\u30BB\u30B9\u30FB\u30EC\u30D9\u30EB\u4EE5\u4E0B\u306B\u9069\u7528\u3055\u308C\u307E\u3059\u3002\n    \u4FEE\u98FE\u5B50\u304C\u306A\u3044\u5834\u5408\u3001\u30AB\u30C6\u30B4\u30EA\u306F\u3059\u3079\u3066\u306E\u30A2\u30AF\u30BB\u30B9\u30FB\u30EC\u30D9\u30EB\u306B\n    \u9069\u7528\u3055\u308C\u307E\u3059\u3002\n    \u4F8B: -Xmsgs:all,-syntax/private\n    \u3053\u306E\u5834\u5408\u3001private\u30E1\u30BD\u30C3\u30C9\u306Edoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u69CB\u6587\u30A8\u30E9\u30FC\u3092\u9664\u304D\u3001\n    \u3059\u3079\u3066\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u6709\u52B9\u5316\u3055\u308C\u307E\u3059\u3002\n    -Xmsgs\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u306A\u3044\u5834\u5408\u3001\u30C7\u30D5\u30A9\u30EB\u30C8\u306F\u3001\n    -Xmsgs:all/protected\u3068\u540C\u7B49\u306B\u306A\u308A\u3001\u3053\u308C\u306F\n    \u3059\u3079\u3066\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u3001protected\u304A\u3088\u3073public\u306E\u5BA3\u8A00\u306E\u307F\u306B\u5831\u544A\u3055\u308C\u308B\u3053\u3068\u3092\n    \u610F\u5473\u3057\u307E\u3059\u3002\n  -XcheckPackage:<packages>\n    \u7279\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n    <packages>\u306F\u30AB\u30F3\u30DE\u3067\u533A\u5207\u3089\u308C\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u30EA\u30B9\u30C8\u3067\u3059\u3002\n    \u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306F\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4FEE\u98FE\u3055\u308C\u305F\u540D\u524D\u3001\u307E\u305F\u306F\n    \u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u306E\u63A5\u982D\u8F9E\u306E\u5F8C\u306B''.*''\u3092\u6307\u5B9A(\u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n    \
+\u3059\u3079\u3066\u306E\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u62E1\u5F35)\u3057\u305F\u3082\u306E\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u524D\u306B\n    ''-''\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u95A2\u3059\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u7121\u52B9\u306B\u3067\u304D\u307E\u3059\u3002\n  -stats\n    \u5831\u544A\u3055\u308C\u305F\u554F\u984C\u306B\u5BFE\u3057\u3066\u7D71\u8A08\u3092\u5831\u544A\u3057\u307E\u3059\u3002\n  -h -help --help -usage -?\n    \u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\n\n\u6B21\u306Ejavac\u30AA\u30D7\u30B7\u30E7\u30F3\u3082\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\n  -bootclasspath\u3001-classpath\u3001-cp\u3001-sourcepath\u3001-Xmaxerrs\u3001-Xmaxwarns\n\n\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4E00\u90E8\u306B\u5BFE\u3057\u3066doclint\u3092\u5B9F\u884C\u3059\u308B\u306B\u306F\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u3055\u308C\u305F\u30AF\u30E9\u30B9\u3092\n\u30AF\u30E9\u30B9\u30D1\u30B9(\u307E\u305F\u306F\u30D6\u30FC\u30C8\u30FB\u30AF\u30E9\u30B9\u30D1\u30B9)\u306B\u6307\u5B9A\u3057\u3001\u30B3\u30DE\u30F3\u30C9\u884C\u3067\n\u30C1\u30A7\u30C3\u30AF\u3059\u308B\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_zh_CN.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_zh_CN.properties
index b446919..6455601 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_zh_CN.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/doclint/resources/doclint_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,13 +23,16 @@
 # questions.
 #
 
-dc.anchor.already.defined = \u951A\u5B9A\u70B9\u5DF2\u5B9A\u4E49: {0}
+dc.anchor.already.defined = \u951A\u5B9A\u70B9\u5DF2\u5B9A\u4E49: "{0}"
 dc.anchor.value.missing = \u6CA1\u6709\u4E3A\u951A\u5B9A\u70B9\u6307\u5B9A\u503C
 dc.attr.lacks.value = \u5C5E\u6027\u7F3A\u5C11\u503C
 dc.attr.not.number = \u5C5E\u6027\u503C\u4E0D\u662F\u6570\u5B57
+dc.attr.not.supported.html4 = \u5C5E\u6027\u5728 HTML4 \u4E2D\u4E0D\u53D7\u652F\u6301: {0}
+dc.attr.not.supported.html5 = \u5C5E\u6027\u5728 HTML5 \u4E2D\u4E0D\u53D7\u652F\u6301: {0}
 dc.attr.obsolete = \u5C5E\u6027\u5DF2\u8FC7\u65F6: {0}
 dc.attr.obsolete.use.css = \u5C5E\u6027\u5DF2\u8FC7\u65F6, \u8BF7\u6539\u7528 CSS: {0}
 dc.attr.repeated = \u5C5E\u6027\u91CD\u590D: {0}
+dc.attr.table.border.html5 = \u8868\u7684\u5C5E\u6027\u8FB9\u6846\u53EA\u63A5\u53D7 "" \u6216 "1", \u6539\u4E3A\u4F7F\u7528 CSS: {0}
 dc.attr.unknown = \u672A\u77E5\u5C5E\u6027: {0}
 dc.bad.option = \u9009\u9879\u9519\u8BEF: {0}
 dc.bad.value.for.option = \u9009\u9879\u7684\u503C\u9519\u8BEF: {0} {1}
@@ -63,9 +66,11 @@
 dc.tag.not.allowed.inline.other = \u6B64\u5904\u4E0D\u5141\u8BB8\u4F7F\u7528\u5757\u5143\u7D20: {0}
 dc.tag.not.closed= \u5143\u7D20\u672A\u5173\u95ED: {0}
 dc.tag.p.in.pre= <pre> \u5143\u7D20\u5185\u90E8\u610F\u5916\u5730\u4F7F\u7528\u4E86 <p>
+dc.tag.requires.heading = \u672A\u627E\u5230 </{0}> \u7684\u6807\u9898
 dc.tag.self.closing = \u4E0D\u5141\u8BB8\u4F7F\u7528\u81EA\u5173\u95ED\u5143\u7D20
 dc.tag.start.unmatched = \u7F3A\u5C11\u7ED3\u675F\u6807\u8BB0: </{0}>
 dc.tag.unknown = \u672A\u77E5\u6807\u8BB0: {0}
+dc.tag.not.supported = \u6807\u8BB0\u5728\u751F\u6210\u7684 HTML \u7248\u672C\u4E2D\u4E0D\u53D7\u652F\u6301: {0}
 dc.text.not.allowed = <{0}> \u5143\u7D20\u4E2D\u4E0D\u5141\u8BB8\u4F7F\u7528\u6587\u672C
 dc.type.arg.not.allowed = \u6B64\u5904\u4E0D\u5141\u8BB8\u4F7F\u7528\u7C7B\u578B\u53C2\u6570
 dc.unexpected.comment=\u6B64\u5904\u672A\u9884\u671F\u6587\u6863\u6CE8\u91CA
@@ -74,4 +79,4 @@
 
 dc.main.ioerror=IO \u9519\u8BEF: {0}
 dc.main.no.files.given=\u672A\u6307\u5B9A\u6587\u4EF6
-dc.main.usage=\u7528\u6CD5:\n    doclint [options] source-files...\n\n\u9009\u9879:\n  -Xmsgs  \n    \u4E0E -Xmsgs:all \u76F8\u540C\n  -Xmsgs:values\n    \u6307\u5B9A\u8981\u68C0\u67E5\u7684\u95EE\u9898\u7684\u7C7B\u522B, \u5176\u4E2D ''values''\n    \u662F\u4EFB\u610F\u4EE5\u4E0B\u5185\u5BB9\u7684\u4EE5\u9017\u53F7\u5206\u9694\u7684\u5217\u8868:\n      reference      \u663E\u793A\u5305\u542B\u5BF9 Java \u6E90\u4EE3\u7801\u5143\u7D20\n                     \u9519\u8BEF\u5F15\u7528\u7684\u6CE8\u91CA\u7684\u4F4D\u7F6E\n      syntax         \u663E\u793A\u6CE8\u91CA\u4E2D\u7684\u57FA\u672C\u8BED\u6CD5\u9519\u8BEF\n      html           \u663E\u793A HTML \u6807\u8BB0\u548C\u5C5E\u6027\u95EE\u9898\n      accessibility  \u663E\u793A\u53EF\u8BBF\u95EE\u6027\u7684\u95EE\u9898\n      missing        \u663E\u793A\u7F3A\u5C11\u6587\u6863\u7684\u95EE\u9898\n      all            \u6240\u6709\u4EE5\u4E0A\u5185\u5BB9\n    \u5728\u503C\u4E4B\u524D\u4F7F\u7528 ''-'' \u53EF\u4F7F\u7528\u5176\u53CD\u503C\n    \u53EF\u4EE5\u4F7F\u7528\u4EE5\u4E0B\u4E00\u9879\u6765\u9650\u5B9A\u7C7B\u522B:\n      /public /protected /package /private\n    \u5BF9\u4E8E\u6B63\u7C7B\u522B (\u4E0D\u4EE5 ''-'' \u5F00\u5934)\n    \u9650\u5B9A\u7B26\u9002\u7528\u4E8E\u8BE5\u8BBF\u95EE\u7EA7\u522B\u53CA\u66F4\u9AD8\u7EA7\u522B\u3002\n    \u5BF9\u4E8E\u8D1F\u7C7B\u522B (\u4EE5 ''-'' \u5F00\u5934)\n    \u9650\u5B9A\u7B26\u9002\u7528\u4E8E\u8BE5\u8BBF\u95EE\u7EA7\u522B\u53CA\u66F4\u4F4E\u7EA7\u522B\u3002\n    \u5982\u679C\u6CA1\u6709\u9650\u5B9A\u7B26, \u5219\u8BE5\u7C7B\u522B\u9002\u7528\u4E8E\n    \u6240\u6709\u8BBF\u95EE\u7EA7\u522B\u3002\n    \u4F8B\u5982, -Xmsgs:all,-syntax/private\n    \u8FD9\u5C06\u5728\u4E13\u7528\u65B9\u6CD5\u7684\u6587\u6863\u6CE8\u91CA\u4E2D\n    \u542F\u7528\u9664\u8BED\u6CD5\u9519\u8BEF\u4E4B\u5916\u7684\u6240\u6709\u6D88\u606F\u3002\n    \u5982\u679C\u672A\u63D0\u4F9B -Xmsgs \u9009\u9879, \u5219\u9ED8\u8BA4\u503C\n    \u7B49\u540C\u4E8E -Xmsgs:all/protected, \u8868\u793A\n    \u4EC5\u62A5\u544A\u53D7\u4FDD\u62A4\u548C\u516C\u5171\u58F0\u660E\u4E2D\u7684\n    \u6240\u6709\u6D88\u606F\n  -stats\n    \u62A5\u544A\u6240\u62A5\u544A\u95EE\u9898\u7684\u7EDF\u8BA1\u4FE1\u606F\u3002\n  -h -help --help -usage -?\n    \u663E\u793A\u6B64\u6D88\u606F\u3002\n\n\u8FD8\u652F\u6301\u4EE5\u4E0B javac \u9009\u9879\n  -bootclasspath, -classpath, -cp, -sourcepath, -Xmaxerrs, -Xmaxwarns\n\n\u8981\u5728\u9879\u76EE\u7684\u4E00\u90E8\u5206\u4E0A\u8FD0\u884C doclint, \u8BF7\u5C06\u9879\u76EE\u4E2D\u5DF2\u7F16\u8BD1\u7684\u7C7B\n\u653E\u5728\u7C7B\u8DEF\u5F84 (\u6216\u5F15\u5BFC\u7C7B\u8DEF\u5F84) \u4E0A, \u7136\u540E\u5728\u547D\u4EE4\u884C\u4E0A\u6307\u5B9A\n\u8981\u68C0\u67E5\u7684\u6E90\u6587\u4EF6\u3002
+dc.main.usage=\u7528\u6CD5:\n    doclint [options] source-files...\n\n\u9009\u9879:\n  -Xmsgs  \n    \u4E0E -Xmsgs:all \u76F8\u540C\n  -Xmsgs:values\n    \u6307\u5B9A\u8981\u68C0\u67E5\u7684\u95EE\u9898\u7684\u7C7B\u522B, \u5176\u4E2D ''values''\n    \u662F\u4EFB\u610F\u4EE5\u4E0B\u5185\u5BB9\u7684\u4EE5\u9017\u53F7\u5206\u9694\u7684\u5217\u8868:\n      reference      \u663E\u793A\u5305\u542B\u5BF9 Java \u6E90\u4EE3\u7801\u5143\u7D20\n                     \u9519\u8BEF\u5F15\u7528\u7684\u6CE8\u91CA\u7684\u4F4D\u7F6E\n      syntax         \u663E\u793A\u6CE8\u91CA\u4E2D\u7684\u57FA\u672C\u8BED\u6CD5\u9519\u8BEF\n      html           \u663E\u793A HTML \u6807\u8BB0\u548C\u5C5E\u6027\u95EE\u9898\n      accessibility  \u663E\u793A\u53EF\u8BBF\u95EE\u6027\u7684\u95EE\u9898\n      missing        \u663E\u793A\u7F3A\u5C11\u6587\u6863\u7684\u95EE\u9898\n      all            \u6240\u6709\u4EE5\u4E0A\u5185\u5BB9\n    \u5728\u503C\u4E4B\u524D\u4F7F\u7528 ''-'' \u53EF\u4F7F\u7528\u5176\u53CD\u503C\n    \u53EF\u4EE5\u4F7F\u7528\u4EE5\u4E0B\u4E00\u9879\u6765\u9650\u5B9A\u7C7B\u522B:\n      /public /protected /package /private\n    \u5BF9\u4E8E\u6B63\u7C7B\u522B (\u4E0D\u4EE5 ''-'' \u5F00\u5934)\n    \u9650\u5B9A\u7B26\u9002\u7528\u4E8E\u8BE5\u8BBF\u95EE\u7EA7\u522B\u53CA\u66F4\u9AD8\u7EA7\u522B\u3002\n    \u5BF9\u4E8E\u8D1F\u7C7B\u522B (\u4EE5 ''-'' \u5F00\u5934)\n    \u9650\u5B9A\u7B26\u9002\u7528\u4E8E\u8BE5\u8BBF\u95EE\u7EA7\u522B\u53CA\u66F4\u4F4E\u7EA7\u522B\u3002\n    \u5982\u679C\u6CA1\u6709\u9650\u5B9A\u7B26, \u5219\u8BE5\u7C7B\u522B\u9002\u7528\u4E8E\n    \u6240\u6709\u8BBF\u95EE\u7EA7\u522B\u3002\n    \u4F8B\u5982, -Xmsgs:all,-syntax/private\n    \u8FD9\u5C06\u5728\u4E13\u7528\u65B9\u6CD5\u7684\u6587\u6863\u6CE8\u91CA\u4E2D\n    \u542F\u7528\u9664\u8BED\u6CD5\u9519\u8BEF\u4E4B\u5916\u7684\u6240\u6709\u6D88\u606F\u3002\n    \u5982\u679C\u672A\u63D0\u4F9B -Xmsgs \u9009\u9879, \u5219\u9ED8\u8BA4\u503C\n    \u7B49\u540C\u4E8E -Xmsgs:all/protected, \u8868\u793A\n    \u4EC5\u62A5\u544A\u53D7\u4FDD\u62A4\u548C\u516C\u5171\u58F0\u660E\u4E2D\u7684\n    \u6240\u6709\u6D88\u606F\u3002\n  -XcheckPackage:<packages>\n    \u5728\u7279\u5B9A\u7684\u7A0B\u5E8F\u5305\u4E2D\u542F\u7528\u6216\u7981\u7528\u68C0\u67E5\u3002\n    <packages> \u662F\u9017\u53F7\u5206\u9694\u7684\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u5217\u8868\u3002\n    \u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u662F\u7A0B\u5E8F\u5305\u7684\u9650\u5B9A\u540D\u79F0\n    \u6216\u7A0B\u5E8F\u5305\u540D\u79F0\u524D\u7F00\u540E\u8DDF ''.*'', \u5B83\u6269\u5C55\u5230\n    \u7ED9\u5B9A\u7A0B\u5E8F\u5305\u7684\u6240\u6709\u5B50\u7A0B\u5E8F\u5305\u3002\u5728\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u524D\u9762\n    \u52A0\u4E0A ''-'' \u53EF\u4EE5\u4E3A\u6307\u5B9A\u7A0B\u5E8F\u5305\u7981\u7528\u68C0\u67E5\u3002\n  -stats\n    \u62A5\u544A\u6240\u62A5\u544A\u95EE\u9898\u7684\u7EDF\u8BA1\u4FE1\u606F\u3002\n  -h -help --help -usage -?\n    \u663E\u793A\u6B64\u6D88\u606F\u3002\n\n\u8FD8\u652F\u6301\u4EE5\u4E0B javac \u9009\u9879\n  -bootclasspath, -classpath, -cp, -sourcepath, -Xmaxerrs, -Xmaxwarns\n\n\u8981\u5728\u9879\u76EE\u7684\u4E00\u90E8\u5206\u4E0A\u8FD0\u884C doclint, \u8BF7\u5C06\u9879\u76EE\u4E2D\u5DF2\u7F16\u8BD1\u7684\u7C7B\n\u653E\u5728\u7C7B\u8DEF\u5F84 (\u6216\u5F15\u5BFC\u7C7B\u8DEF\u5F84) \u4E0A, \u7136\u540E\u5728\u547D\u4EE4\u884C\u4E0A\u6307\u5B9A\n\u8981\u68C0\u67E5\u7684\u6E90\u6587\u4EF6\u3002
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java
index 0292fc1..aaa8c16 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java
@@ -751,24 +751,24 @@
      * Is t an unchecked subtype of s?
      */
     public boolean isSubtypeUnchecked(Type t, Type s, Warner warn) {
-        boolean result = isSubtypeUncheckedInternal(t, s, warn);
+        boolean result = isSubtypeUncheckedInternal(t, s, true, warn);
         if (result) {
             checkUnsafeVarargsConversion(t, s, warn);
         }
         return result;
     }
     //where
-        private boolean isSubtypeUncheckedInternal(Type t, Type s, Warner warn) {
+        private boolean isSubtypeUncheckedInternal(Type t, Type s, boolean capture, Warner warn) {
             if (t.hasTag(ARRAY) && s.hasTag(ARRAY)) {
                 if (((ArrayType)t).elemtype.isPrimitive()) {
                     return isSameType(elemtype(t), elemtype(s));
                 } else {
-                    return isSubtypeUnchecked(elemtype(t), elemtype(s), warn);
+                    return isSubtypeUncheckedInternal(elemtype(t), elemtype(s), false, warn);
                 }
-            } else if (isSubtype(t, s)) {
+            } else if (isSubtype(t, s, capture)) {
                 return true;
             } else if (t.hasTag(TYPEVAR)) {
-                return isSubtypeUnchecked(t.getUpperBound(), s, warn);
+                return isSubtypeUncheckedInternal(t.getUpperBound(), s, false, warn);
             } else if (!s.isRaw()) {
                 Type t2 = asSuper(t, s.tsym);
                 if (t2 != null && t2.isRaw()) {
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java
index 38ab1d7..0304d41 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java
@@ -3404,8 +3404,8 @@
                             types.asSuper(env.enclClass.type, c), env.enclClass.sym);
                 }
             }
-            //find a direct superinterface that is a subtype of 'c'
-            for (Type i : types.interfaces(env.enclClass.type)) {
+            //find a direct super type that is a subtype of 'c'
+            for (Type i : types.directSupertypes(env.enclClass.type)) {
                 if (i.tsym.isSubClass(c, types) && i.tsym != c) {
                     log.error(pos, "illegal.default.super.call", c,
                             diags.fragment("redundant.supertype", c, i));
@@ -3422,7 +3422,7 @@
         ListBuffer<Type> result = new ListBuffer<>();
         for (Type t1 : types.interfaces(t)) {
             boolean shouldAdd = true;
-            for (Type t2 : types.interfaces(t)) {
+            for (Type t2 : types.directSupertypes(t)) {
                 if (t1 != t2 && types.isSubtypeNoCapture(t2, t1)) {
                     shouldAdd = false;
                 }
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_ja.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_ja.properties
index 68f2a53..5d9c1c0 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_ja.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,30 +26,50 @@
 # Messages in this file which use "placeholders" for values (e.g. {0}, {1})
 # are preceded by a stylized comment describing the type of the corresponding
 # values.
-# The types currently in use are
+# The simple types currently in use are:
 #
 # boolean           true or false
-# file name         the name of an input file; e.g.   MyFile.java
-# message segment   a sub-message; see compiler.misc.*
+# diagnostic        a sub-message; see compiler.misc.*
+# fragment          similar to 'message segment', but with more specific type
 # modifier          a Java modifier; e.g. public, private, protected
+# file              a file URL
+# file object       a file URL - similar to 'file' but typically used for source/class files, hence more specific
 # name              a name, typically a Java identifier
 # number            an integer
 # option name       the name of a command line option
 # source version    a source version number, such as 1.5, 1.6, 1.7
 # string            a general string
 # symbol            the name of a declared type
-# symbol kind       a description of the kind of a declaration; see compiler.misc.kindname.*
+# symbol kind       the kind of a symbol (i.e. method, variable)
+# kind name         an informative description of the kind of a declaration; see compiler.misc.kindname.*
 # token             the name of a non-terminal in source code; see compiler.misc.token.*
 # type              a Java type; e.g. int, X, X<T>
+# object            a Java object (unspecified)
 # unused            the value is not used in this message
 #
+# The following compound types are also used:
+#
 # list of X         a comma-separated list of items; e.g. list of type
-# X or Y            alternation; e.g. message segment or type
 # set of X          a comma-separated collection of items; e.g. set of modifier
 #
-# These may be composed: e.g.   list of type or message segment
+# These may be composed:
 #
-# These comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
+# list of type or message segment
+#
+# The following type aliases are supported:
+#
+# message segment --> diagnostic or fragment
+# file name --> file or file object
+#
+# Custom comments are supported in parenthesis i.e.
+#
+# number (classfile major version)
+#
+# These comments are used internally in order to generate an enum-like class declaration containing
+# a method/field for each of the diagnostic keys listed here. Those methods/fields can then be used
+# by javac code to build diagnostics in a type-safe fashion.
+#
+# In addition, these comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
 # using info derived from the collected set of examples in test/tools/javac/diags/examples.
 # MessageInfo can also be run as a standalone utility providing more facilities
 # for manipulating this file. For more details, see MessageInfo.java.
@@ -90,6 +110,9 @@
 
 compiler.err.annotation.type.not.applicable=\u6CE8\u91C8\u578B\u306F\u3053\u306E\u7A2E\u985E\u306E\u5BA3\u8A00\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 
+# 0: type
+compiler.err.annotation.type.not.applicable.to.type=\u6CE8\u91C8@{0}\u306F\u3053\u306E\u578B\u306E\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+
 compiler.err.annotation.value.must.be.annotation=\u6CE8\u91C8\u306E\u5024\u306F\u6CE8\u91C8\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
 compiler.err.annotation.value.must.be.class.literal=\u6CE8\u91C8\u306E\u5024\u306F\u30AF\u30E9\u30B9\u30FB\u30EA\u30C6\u30E9\u30EB\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
@@ -104,6 +127,8 @@
 
 compiler.err.anon.class.impl.intf.no.qual.for.new=\u540D\u524D\u306E\u306A\u3044\u30AF\u30E9\u30B9\u304C\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3092\u5B9F\u88C5\u3057\u3066\u3044\u307E\u3059\u3002new\u306B\u4FEE\u98FE\u5B50\u3092\u6301\u3064\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002
 
+compiler.err.cant.inherit.from.anon=\u533F\u540D\u30AF\u30E9\u30B9\u304B\u3089\u7D99\u627F\u3067\u304D\u307E\u305B\u3093
+
 # 0: symbol, 1: symbol, 2: symbol
 compiler.err.array.and.varargs={2}\u3067{0}\u3068{1}\u306E\u4E21\u65B9\u3092\u5BA3\u8A00\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
@@ -114,7 +139,7 @@
 
 compiler.err.attribute.value.must.be.constant=\u8981\u7D20\u5024\u306F\u5B9A\u6570\u5F0F\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
-# 0: statement type
+# 0: string (statement type)
 compiler.err.bad.initializer={0}\u306E\u4E0D\u6B63\u306A\u521D\u671F\u5316\u5B50
 
 compiler.err.break.outside.switch.loop=break\u304Cswitch\u6587\u307E\u305F\u306F\u30EB\u30FC\u30D7\u306E\u5916\u306B\u3042\u308A\u307E\u3059
@@ -145,6 +170,9 @@
 # 0: message segment
 compiler.err.bad.functional.intf.anno.1=\u4E88\u671F\u3057\u306A\u3044@FunctionalInterface\u6CE8\u91C8\n{0}
 
+# 0: message segment
+compiler.err.anonymous.diamond.method.does.not.override.superclass=\u30E1\u30BD\u30C3\u30C9\u306F\u30B9\u30FC\u30D1\u30FC\u30BF\u30A4\u30D7\u306E\u30E1\u30BD\u30C3\u30C9\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u307E\u305F\u306F\u5B9F\u88C5\u3057\u307E\u305B\u3093\n{0}
+
 # 0: symbol
 compiler.misc.not.a.functional.intf={0}\u306F\u6A5F\u80FD\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 
@@ -180,14 +208,19 @@
 
 compiler.misc.static.mref.with.targs=static\u30E1\u30BD\u30C3\u30C9\u53C2\u7167\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u5316\u3055\u308C\u305F\u4FEE\u98FE\u5B50
 
-compiler.misc.static.bound.mref=static\u306E\u30D0\u30A4\u30F3\u30C7\u30A3\u30F3\u30B0\u3055\u308C\u305F\u30E1\u30BD\u30C3\u30C9\u53C2\u7167
-
 # 0: symbol
 compiler.err.cant.assign.val.to.final.var=final\u5909\u6570{0}\u306B\u5024\u3092\u4EE3\u5165\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
+compiler.err.cant.assign.val.to.this=''\u3053\u308C''\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
+
 # 0: symbol, 1: message segment
 compiler.err.cant.ref.non.effectively.final.var={1}\u304B\u3089\u53C2\u7167\u3055\u308C\u308B\u30ED\u30FC\u30AB\u30EB\u5909\u6570\u306F\u3001final\u307E\u305F\u306F\u4E8B\u5B9F\u4E0A\u306Efinal\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
+compiler.err.try.with.resources.expr.needs.var=try-with-resources\u30EA\u30BD\u30FC\u30B9\u306F\u3001final\u5909\u6570\u307E\u305F\u306F\u4E8B\u5B9F\u4E0A\u306Efinal\u5909\u6570\u3078\u306E\u53C2\u7167\u3092\u793A\u3059\u5909\u6570\u5BA3\u8A00\u307E\u305F\u306F\u5F0F\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+
+# 0: symbol
+compiler.err.try.with.resources.expr.effectively.final.var=try-with-resources\u30EA\u30BD\u30FC\u30B9\u3068\u3057\u3066\u4F7F\u7528\u3055\u308C\u308B\u5909\u6570{0}\u304C\u3001final\u3067\u3082\u4E8B\u5B9F\u4E0A\u306Efinal\u3067\u3082\u3042\u308A\u307E\u305B\u3093
+
 
 compiler.misc.lambda=\u30E9\u30E0\u30C0\u5F0F
 
@@ -233,7 +266,7 @@
 compiler.err.no.superclass={0}\u306B\u306F\u30B9\u30FC\u30D1\u30FC\u30AF\u30E9\u30B9\u304C\u3042\u308A\u307E\u305B\u3093\u3002
 
 # 0: symbol, 1: type, 2: symbol, 3: type, 4: unused
-compiler.err.concrete.inheritance.conflict={1}\u306E\u30E1\u30BD\u30C3\u30C9{0}\u3068{3}\u306E{2}\u306F\u540C\u3058\u30B7\u30B0\u30CD\u30C1\u30E3\u304B\u3089\u7D99\u627F\u3055\u308C\u3066\u3044\u307E\u3059
+compiler.err.concrete.inheritance.conflict={1}\u306E\u30E1\u30BD\u30C3\u30C9{0}\u3068{3}\u306E{2}\u306F\u540C\u3058\u30B7\u30B0\u30CB\u30C1\u30E3\u304B\u3089\u7D99\u627F\u3055\u308C\u3066\u3044\u307E\u3059
 
 compiler.err.default.allowed.in.intf.annotation.member=\u30C7\u30D5\u30A9\u30EB\u30C8\u5024\u306F\u6CE8\u91C8\u578B\u306E\u5BA3\u8A00\u3067\u306E\u307F\u4F7F\u7528\u3067\u304D\u307E\u3059
 
@@ -261,7 +294,7 @@
 # 0: type
 compiler.err.invalid.repeatable.annotation.invalid.value={0}\u306F\u6709\u52B9\u306A@Repeatable\u3067\u306F\u3042\u308A\u307E\u305B\u3093: \u5024\u8981\u7D20\u304C\u7121\u52B9\u3067\u3059
 
-# 0: symbol type, 1: unused, 2: type
+# 0: symbol or type, 1: unused, 2: type
 compiler.err.invalid.repeatable.annotation.value.return=\u5305\u542B\u3059\u308B\u6CE8\u91C8\u578B({0})\u306F\u578B{2}\u306E\u8981\u7D20''value''\u3092\u5BA3\u8A00\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
 # 0: symbol or type, 1: symbol
@@ -282,6 +315,12 @@
 # 0: symbol
 compiler.err.invalid.repeatable.annotation.repeated.and.container.present=\u30B3\u30F3\u30C6\u30CA{0}\u306F\u542B\u307E\u308C\u3066\u3044\u308B\u8981\u7D20\u3068\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093
 
+# 0: type, 1: symbol
+compiler.err.invalid.repeatable.annotation.not.applicable=\u30B3\u30F3\u30C6\u30CA{0}\u306F\u8981\u7D20{1}\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+
+# 0: type
+compiler.err.invalid.repeatable.annotation.not.applicable.in.context=\u30B3\u30F3\u30C6\u30CA{0}\u306F\u3053\u306E\u578B\u306E\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+
 # 0: name
 compiler.err.duplicate.class=\u30AF\u30E9\u30B9{0}\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059
 
@@ -419,8 +458,6 @@
 
 compiler.err.intf.expected.here=\u3053\u3053\u306B\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u304C\u5FC5\u8981\u3067\u3059
 
-compiler.err.intf.or.array.expected.here=\u3053\u3053\u306B\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u307E\u305F\u306F\u914D\u5217\u578B\u304C\u5FC5\u8981\u3067\u3059
-
 compiler.err.intf.meth.cant.have.body=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u62BD\u8C61\u30E1\u30BD\u30C3\u30C9\u304C\u672C\u4F53\u3092\u6301\u3064\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
 # 0: symbol
@@ -436,6 +473,8 @@
 
 compiler.err.varargs.and.receiver =varargs\u8868\u8A18\u306F\u53D7\u53D6\u308A\u5074\u30D1\u30E9\u30E1\u30FC\u30BF\u3067\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 
+compiler.err.varargs.must.be.last =\u53EF\u5909\u5F15\u6570\u30D1\u30E9\u30E1\u30FC\u30BF\u306F\u6700\u5F8C\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+
 compiler.err.array.and.receiver =\u65E7\u5F0F\u306E\u914D\u5217\u8868\u8A18\u6CD5\u306F\u53D7\u53D6\u308A\u5074\u30D1\u30E9\u30E1\u30FC\u30BF\u3067\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 
 compiler.err.variable.not.allowed=\u5909\u6570\u306E\u5BA3\u8A00\u3092\u3053\u3053\u3067\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
@@ -514,7 +553,8 @@
 compiler.err.native.meth.cant.have.body=native\u30E1\u30BD\u30C3\u30C9\u304C\u672C\u4F53\u3092\u6301\u3064\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
 # 0: type, 1: type
-compiler.err.neither.conditional.subtype=?\u306B\u5BFE\u3059\u308B\u4E0D\u9069\u5408\u306A\u578B : \u3069\u3061\u3089\u3082\u4ED6\u65B9\u306E\u30B5\u30D6\u30BF\u30A4\u30D7\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\n2\u756A\u76EE\u306E\u30AA\u30DA\u30E9\u30F3\u30C9 : {0}\n3\u756A\u76EE\u306E\u30AA\u30DA\u30E9\u30F3\u30C9 : {1}
+compiler.err.neither.conditional.subtype=?\u306B\u5BFE\u3059\u308B\u4E92\u63DB\u6027\u306E\u306A\u3044\u578B : \u3069\u3061\u3089\u3082\u4ED6\u65B9\u306E\u30B5\u30D6\u30BF\u30A4\u30D7\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\n2\u756A\u76EE\u306E\u30AA\u30DA\u30E9\u30F3\u30C9 : {0}\n3\u756A\u76EE\u306E\u30AA\u30DA\u30E9\u30F3\u30C9 : {1}
+
 
 # 0: message segment
 compiler.misc.incompatible.type.in.conditional=\u6761\u4EF6\u5F0F\u306E\u578B\u304C\u4E0D\u6B63\u3067\u3059\n{0}
@@ -527,6 +567,8 @@
 # 0: type
 compiler.misc.incompatible.ret.type.in.mref=\u30E1\u30BD\u30C3\u30C9\u53C2\u7167\u306E\u623B\u308A\u578B\u304C\u4E0D\u6B63\u3067\u3059\n{0}
 
+compiler.err.lambda.body.neither.value.nor.void.compatible=\u30E9\u30E0\u30C0\u30FB\u30DC\u30C7\u30A3\u306F\u5024\u4E92\u63DB\u3067\u3082void\u4E92\u63DB\u3067\u3082\u3042\u308A\u307E\u305B\u3093
+
 # 0: list of type
 compiler.err.incompatible.thrown.types.in.mref=\u30E1\u30BD\u30C3\u30C9\u53C2\u7167\u306E\u30B9\u30ED\u30FC\u3055\u308C\u305F\u30BF\u30A4\u30D7{0}\u306F\u4E0D\u9069\u5408\u3067\u3059
 
@@ -547,6 +589,9 @@
 compiler.err.not.annotation.type={0}\u306F\u6CE8\u91C8\u578B\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 
 # 0: symbol, 1: symbol
+compiler.err.not.def.access.package.cant.access=\u30D1\u30C3\u30B1\u30FC\u30B8{1}\u304C\u53EF\u8996\u3067\u306F\u306A\u3044\u305F\u3081\u3001{0}\u306F\u53EF\u8996\u3067\u306F\u3042\u308A\u307E\u305B\u3093
+
+# 0: symbol, 1: symbol
 compiler.err.not.def.access.class.intf.cant.access={1}\u306E{0}\u304C\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u306A\u3044\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u3059
 
 # 0: symbol, 1: symbol
@@ -569,7 +614,7 @@
 # 0: symbol
 compiler.err.not.encl.class={0}\u306F\u5185\u90E8\u30AF\u30E9\u30B9\u3092\u56F2\u307F\u307E\u305B\u3093
 
-# 0: name, 1: type, 2: unused
+# 0: name, 1: type
 compiler.err.operator.cant.be.applied=\u5358\u9805\u6F14\u7B97\u5B50''{0}''\u306E\u30AA\u30DA\u30E9\u30F3\u30C9\u578B{1}\u304C\u4E0D\u6B63\u3067\u3059
 
 # 0: name, 1: type, 2: type
@@ -584,8 +629,8 @@
 
 # Errors related to annotation processing
 
-# 0: symbol, 1: string, 2: stack-trace
-compiler.err.proc.cant.access={0}\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\n{1}\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n{2}
+# 0: symbol, 1: string, 2: string (stack-trace)
+compiler.err.proc.cant.access={0}\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\n{1}\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n{2}
 
 # 0: symbol, 1: string
 compiler.err.proc.cant.access.1={0}\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\n{1}
@@ -644,9 +689,9 @@
 
 compiler.err.ret.outside.meth=\u30E1\u30BD\u30C3\u30C9\u306E\u5916\u306Ereturn\u6587\u3067\u3059
 
-compiler.err.signature.doesnt.match.supertype=\u30B7\u30B0\u30CD\u30C1\u30E3\u304C{0}\u306B\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002\u4E0D\u9069\u5408\u306A\u30B9\u30FC\u30D1\u30FC\u30BF\u30A4\u30D7\u3067\u3059
+compiler.err.signature.doesnt.match.supertype=\u30B7\u30B0\u30CB\u30C1\u30E3\u304C{0}\u306B\u9069\u5408\u3057\u307E\u305B\u3093\u3002\u4E92\u63DB\u6027\u306E\u306A\u3044\u30B9\u30FC\u30D1\u30FC\u30BF\u30A4\u30D7\u3067\u3059
 
-compiler.err.signature.doesnt.match.intf=\u30B7\u30B0\u30CD\u30C1\u30E3\u304C{0}\u306B\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002\u4E0D\u9069\u5408\u306A\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3067\u3059
+compiler.err.signature.doesnt.match.intf=\u30B7\u30B0\u30CB\u30C1\u30E3\u304C{0}\u306B\u9069\u5408\u3057\u307E\u305B\u3093\u3002\u4E92\u63DB\u6027\u306E\u306A\u3044\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3067\u3059
 
 # 0: number, 1: number
 compiler.err.method.invoked.with.incorrect.number.arguments=\u30E1\u30BD\u30C3\u30C9\u3092\u8D77\u52D5\u3057\u305F\u5F15\u6570\u306E\u6570\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002\u4E88\u671F\u3055\u308C\u308B\u6570\u306F{0}\u3067\u3059\u304C\u3001{1}\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
@@ -665,9 +710,6 @@
 # 0: symbol, 1: symbol
 compiler.err.synthetic.name.conflict=\u30B7\u30F3\u30DC\u30EB{0}\u304C\u3001{1}\u3067\u30B3\u30F3\u30D1\u30A4\u30E9\u304C\u5408\u6210\u3057\u305F\u30B7\u30F3\u30DC\u30EB\u3068\u7AF6\u5408\u3057\u307E\u3059
 
-# 0: symbol, 1: symbol
-compiler.warn.synthetic.name.conflict=\u30B7\u30F3\u30DC\u30EB{0}\u304C\u3001{1}\u3067\u30B3\u30F3\u30D1\u30A4\u30E9\u304C\u5408\u6210\u3057\u305F\u30B7\u30F3\u30DC\u30EB\u3068\u7AF6\u5408\u3057\u307E\u3059
-
 compiler.err.throws.not.allowed.in.intf.annotation=throws\u7BC0\u3092@interface\u30E1\u30F3\u30D0\u30FC\u3067\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
 compiler.err.try.without.catch.or.finally=''try''\u3078\u306E''catch''\u307E\u305F\u306F''finally''\u304C\u3042\u308A\u307E\u305B\u3093
@@ -686,15 +728,15 @@
 compiler.err.type.var.more.than.once.in.result=\u578B\u5909\u6570{0}\u306F{1}\u306E\u578B\u30672\u56DE\u4EE5\u4E0A\u51FA\u73FE\u3057\u307E\u3059\u3002\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u751F\u6210\u3055\u308C\u306A\u3044\u307E\u307E\u306B\u306F\u3067\u304D\u307E\u305B\u3093
 
 # 0: type, 1: type, 2: string
-compiler.err.types.incompatible.diff.ret=\u578B{0}\u3068\u578B{1}\u304C\u9069\u5408\u3057\u3066\u3044\u307E\u305B\u3093\u3002\u4E21\u65B9\u3068\u3082{2}\u3092\u5B9A\u7FA9\u3057\u3066\u3044\u307E\u3059\u304C\u3001\u623B\u308A\u5024\u306E\u578B\u304C\u7121\u95A2\u4FC2\u3067\u3059
+compiler.err.types.incompatible.diff.ret=\u578B{0}\u3068\u578B{1}\u306E\u4E92\u63DB\u6027\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u4E21\u65B9\u3068\u3082{2}\u3092\u5B9A\u7FA9\u3057\u3066\u3044\u307E\u3059\u304C\u3001\u623B\u308A\u5024\u306E\u578B\u304C\u7121\u95A2\u4FC2\u3067\u3059
 
-# 0: kind, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
+# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
 compiler.err.types.incompatible.unrelated.defaults={0} {1}\u306F\u578B{4}\u3068{5}\u304B\u3089{2}({3})\u306E\u95A2\u9023\u3057\u306A\u3044\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u7D99\u627F\u3057\u307E\u3059
 
-# 0: kind, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
+# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
 compiler.err.types.incompatible.abstract.default={0} {1}\u306F\u578B{4}\u3068{5}\u304B\u3089{2}({3})\u306E\u62BD\u8C61\u3068\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u7D99\u627F\u3057\u307E\u3059
 
-# 0: name, 1: kind, 2: symbol
+# 0: name, 1: kind name, 2: symbol
 compiler.err.default.overrides.object.member={1} {2}\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30E1\u30BD\u30C3\u30C9{0}\u306Fjava.lang.Object\u306E\u30E1\u30F3\u30D0\u30FC\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u307E\u3059
 
 # 0: type
@@ -724,7 +766,7 @@
 compiler.err.undef.label=\u30E9\u30D9\u30EB{0}\u306F\u672A\u5B9A\u7FA9\u3067\u3059
 
 # 0: message segment, 1: unused
-compiler.err.cant.apply.diamond={0}\u306E\u578B\u5F15\u6570\u3092\u63A8\u8AD6\u3067\u304D\u307E\u305B\u3093
+compiler.err.cant.apply.diamond={0}\u306E\u578B\u5F15\u6570\u3092\u63A8\u5B9A\u3067\u304D\u307E\u305B\u3093
 
 # 0: message segment or type, 1: message segment
 compiler.err.cant.apply.diamond.1={0}\u306E\u578B\u5F15\u6570\u3092\u63A8\u8AD6\u3067\u304D\u307E\u305B\u3093\n\u7406\u7531: {1}
@@ -736,6 +778,8 @@
 
 compiler.err.initializer.must.be.able.to.complete.normally=\u521D\u671F\u5316\u5B50\u306F\u6B63\u5E38\u306B\u5B8C\u4E86\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
+compiler.err.initializer.not.allowed=\u30A4\u30CB\u30B7\u30E3\u30E9\u30A4\u30B6\u306Finterfaces\u3067\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093
+
 # 0: type
 compiler.err.unreported.exception.need.to.catch.or.throw=\u4F8B\u5916{0}\u306F\u5831\u544A\u3055\u308C\u307E\u305B\u3093\u3002\u30B9\u30ED\u30FC\u3059\u308B\u306B\u306F\u3001\u6355\u6349\u307E\u305F\u306F\u5BA3\u8A00\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
@@ -774,7 +818,10 @@
 compiler.misc.varargs.trustme.on.non.varargs.meth=\u30E1\u30BD\u30C3\u30C9{0}\u306F\u53EF\u5909\u5F15\u6570\u30E1\u30BD\u30C3\u30C9\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
 
 # 0: symbol
-compiler.misc.varargs.trustme.on.virtual.varargs=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9{0}\u306Ffinal\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+compiler.misc.varargs.trustme.on.virtual.varargs=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9{0}\u306Ffinal\u3067\u3082private\u3067\u3082\u3042\u308A\u307E\u305B\u3093\u3002
+
+# 0: symbol
+compiler.misc.varargs.trustme.on.virtual.varargs.final.only=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9{0}\u306Ffinal\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
 
 # 0: type, 1: symbol kind, 2: symbol
 compiler.misc.inaccessible.varargs.type=\u4EEE\u53EF\u5909\u5F15\u6570\u8981\u7D20\u578B{0}\u306F{1} {2}\u304B\u3089\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093
@@ -796,6 +843,37 @@
 # The following error messages do not refer to a line in the source code.
 compiler.err.cant.read.file={0}\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093
 
+# 0: string
+compiler.err.plugin.not.found=\u30D7\u30E9\u30B0\u30A4\u30F3\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+
+# 0: path
+compiler.warn.locn.unknown.file.on.module.path=\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9\u306E\u30D5\u30A1\u30A4\u30EB\u304C\u4E0D\u660E\u3067\u3059: {0}
+
+
+# 0: path
+compiler.err.locn.bad.module-info={0}\u306Emodule-info.class\u3092\u8AAD\u53D6\u308A\u4E2D\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F
+
+# 0: path
+compiler.err.locn.cant.read.directory=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u3092\u8AAD\u307F\u53D6\u308C\u307E\u305B\u3093
+
+# 0: path
+compiler.err.locn.cant.read.file=\u30D5\u30A1\u30A4\u30EB{0}\u3092\u8AAD\u307F\u53D6\u308C\u307E\u305B\u3093
+
+# 0: path
+compiler.err.locn.cant.get.module.name.for.jar={0}\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u540D\u3092\u5224\u5225\u3067\u304D\u307E\u305B\u3093
+
+# 0: path
+compiler.err.multi-module.outdir.cannot.be.exploded.module=\u8907\u6570\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30E2\u30FC\u30C9\u3067\u3001\u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u5C55\u958B\u3057\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093: {0}
+
+# 0: path
+compiler.warn.outdir.is.in.exploded.module=\u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u5C55\u958B\u3057\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u5185\u3067\u3059: {0}
+
+# 0: path
+compiler.err.locn.module-info.not.allowed.on.patch.path=module-info.class\u306F\u30D1\u30C3\u30C1\u30FB\u30D1\u30B9\u3067\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093: {0}
+
+# 0: string
+compiler.err.locn.invalid.arg.for.xpatch=-Xpatch\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059: {0}
+
 #####
 
 # Fatal Errors
@@ -816,6 +894,8 @@
 ## miscellaneous strings
 ##
 
+compiler.misc.diamond.anonymous.methods.implicitly.override=(<>\u306E\u305F\u3081\u3001\u3053\u306E\u533F\u540D\u30AF\u30E9\u30B9\u306B\u5BA3\u8A00\u3055\u308C\u305F\u3059\u3079\u3066\u306E\u975Eprivate\u30E1\u30BD\u30C3\u30C9\u306F\u30B9\u30FC\u30D1\u30FC\u30BF\u30A4\u30D7\u306E\u30E1\u30BD\u30C3\u30C9\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u307E\u305F\u306F\u5B9F\u88C5\u3057\u307E\u305B\u3093)
+
 compiler.misc.source.unavailable=(\u30BD\u30FC\u30B9\u304C\u5229\u7528\u4E0D\u53EF)
 
 compiler.misc.base.membership=\u3059\u3079\u3066\u306E\u30D9\u30FC\u30B9\u30FB\u30AF\u30E9\u30B9\u304C\u30E1\u30F3\u30D0\u30FC\u3067\u3059
@@ -826,6 +906,9 @@
 # 0: number, 1: string, 2: set of symbol, 3: boolean
 compiler.misc.x.print.rounds=\u5F80\u5FA9{0}:\n\t\u5165\u529B\u30D5\u30A1\u30A4\u30EB: {1}\n\t\u6CE8\u91C8: {2}\n\t\u6700\u5F8C\u306E\u5F80\u5FA9: {3}
 
+# 0: file name
+compiler.warn.file.from.future=\u30D5\u30A1\u30A4\u30EB{0}\u306E\u5909\u66F4\u65E5\u304C\u5C06\u6765\u306E\u65E5\u4ED8\u3067\u3059
+
 #####
 
 ## The following string will appear before all messages keyed as:
@@ -833,8 +916,6 @@
 
 compiler.note.compressed.diags=\u4E00\u90E8\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u306F\u7C21\u7565\u5316\u3055\u308C\u3066\u3044\u307E\u3059\u3002-Xdiags:verbose\u3067\u518D\u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u3066\u5B8C\u5168\u306A\u51FA\u529B\u3092\u53D6\u5F97\u3057\u3066\u304F\u3060\u3055\u3044
 
-compiler.note.potential.lambda.found=\u3053\u306E\u533F\u540D\u5185\u90E8\u30AF\u30E9\u30B9\u3092\u30E9\u30E0\u30C0\u5F0F\u306B\u5909\u63DB\u3067\u304D\u307E\u3059\u3002
-
 # 0: boolean, 1: symbol
 compiler.note.lambda.stat=\u30E9\u30E0\u30C0\u5F0F\u3092\u5909\u63DB\u3057\u3066\u3044\u307E\u3059\n\u4EE3\u66FFmetafactory = {0}\n\u5408\u6210\u30E1\u30BD\u30C3\u30C9 = {1}
 
@@ -846,18 +927,18 @@
 compiler.note.note=\u6CE8\u610F:
 
 # 0: file name
-compiler.note.deprecated.filename={0}\u306F\u975E\u63A8\u5968\u306EAPI\u3092\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u3066\u3044\u307E\u3059\u3002
+compiler.note.deprecated.filename={0}\u306F\u63A8\u5968\u3055\u308C\u306A\u3044API\u3092\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u3066\u3044\u307E\u3059\u3002
 
-compiler.note.deprecated.plural=\u4E00\u90E8\u306E\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306F\u975E\u63A8\u5968\u306EAPI\u3092\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u3066\u3044\u307E\u3059\u3002
+compiler.note.deprecated.plural=\u4E00\u90E8\u306E\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306F\u63A8\u5968\u3055\u308C\u306A\u3044API\u3092\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u3066\u3044\u307E\u3059\u3002
 
 # The following string may appear after one of the above deprecation
 # messages.
 compiler.note.deprecated.recompile=\u8A73\u7D30\u306F\u3001-Xlint:deprecation\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3057\u3066\u518D\u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 
 # 0: file name
-compiler.note.deprecated.filename.additional={0}\u306B\u975E\u63A8\u5968\u306EAPI\u306E\u8FFD\u52A0\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u304C\u3042\u308A\u307E\u3059\u3002
+compiler.note.deprecated.filename.additional={0}\u306B\u63A8\u5968\u3055\u308C\u306A\u3044API\u306E\u8FFD\u52A0\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u304C\u3042\u308A\u307E\u3059\u3002
 
-compiler.note.deprecated.plural.additional=\u4E00\u90E8\u306E\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306F\u975E\u63A8\u5968\u306EAPI\u3092\u8FFD\u52A0\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u3066\u3044\u307E\u3059\u3002
+compiler.note.deprecated.plural.additional=\u4E00\u90E8\u306E\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306F\u63A8\u5968\u3055\u308C\u306A\u3044API\u3092\u8FFD\u52A0\u4F7F\u7528\u307E\u305F\u306F\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u3066\u3044\u307E\u3059\u3002
 
 # 0: file name
 compiler.note.unchecked.filename={0}\u306E\u64CD\u4F5C\u306F\u3001\u672A\u30C1\u30A7\u30C3\u30AF\u307E\u305F\u306F\u5B89\u5168\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
@@ -873,19 +954,6 @@
 
 compiler.note.unchecked.plural.additional=\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u64CD\u4F5C\u306E\u3046\u3061\u3001\u672A\u30C1\u30A7\u30C3\u30AF\u307E\u305F\u306F\u5B89\u5168\u3067\u306F\u306A\u3044\u3082\u306E\u304C\u3055\u3089\u306B\u3042\u308A\u307E\u3059\u3002
 
-# 0: file name
-compiler.note.sunapi.filename={0}\u306F\u3001\u4ECA\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308B\u5185\u90E8\u6240\u6709\u306EAPI\u3092\u4F7F\u7528\u3057\u3066\u3044\u307E\u3059\u3002
-
-compiler.note.sunapi.plural=\u4E00\u90E8\u306E\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306F\u3001\u4ECA\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308B\u5185\u90E8\u6240\u6709\u306EAPI\u3092\u4F7F\u7528\u3057\u3066\u3044\u307E\u3059\u3002
-
-# The following string may appear after one of the above sunapi messages.
-compiler.note.sunapi.recompile=\u8A73\u7D30\u306F\u3001-Xlint:sunapi\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3057\u3066\u518D\u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002
-
-# 0: file name
-compiler.note.sunapi.filename.additional={0}\u306F\u3001\u4ECA\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308B\u8FFD\u52A0\u306E\u5185\u90E8\u6240\u6709\u306EAPI\u3092\u4F7F\u7528\u3057\u3066\u3044\u307E\u3059\u3002
-
-compiler.note.sunapi.plural.additional=\u4E00\u90E8\u306E\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u306F\u3001\u4ECA\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308B\u5185\u90E8\u6240\u6709\u306EAPI\u3092\u8FFD\u52A0\u3067\u4F7F\u7528\u3057\u3066\u3044\u307E\u3059\u3002
-
 # Notes related to annotation processing
 
 # Print a client-generated note; assumed to be localized, no translation required
@@ -925,13 +993,6 @@
 # 0: file name
 compiler.misc.verbose.wrote.file=[{0}\u3092\u66F8\u8FBC\u307F\u5B8C\u4E86]
 
-## extra output when using -verbose (Retro)
-compiler.misc.verbose.retro=[{0}\u3092\u7D44\u66FF\u3048\u4E2D]
-
-compiler.misc.verbose.retro.with=\t{0}\u3092{1}\u3067\u7D44\u66FF\u3048\u4E2D\u3067\u3059
-
-compiler.misc.verbose.retro.with.list=\t{0}\u3092\u578B\u30D1\u30E9\u30E1\u30FC\u30BF{1}\u3001\u30B9\u30FC\u30D1\u30FC\u30BF\u30A4\u30D7{2}\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9{3}\u3067\u7D44\u66FF\u3048\u4E2D\u3067\u3059
-
 ## extra output when using -verbose (code/ClassReader)
 # 0: string
 compiler.misc.verbose.loading=[{0}\u3092\u8AAD\u8FBC\u307F\u4E2D]
@@ -942,11 +1003,6 @@
 # 0: string
 compiler.misc.verbose.classpath=[\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u691C\u7D22\u30D1\u30B9: {0}]
 
-## extra output when using -checkclassfile (code/ClassReader)
-compiler.misc.ccf.found.later.version=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB{0}\u306B\u4E88\u60F3\u5916\u306E\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u3042\u308A\u307E\u3059
-
-compiler.misc.ccf.unrecognized.attribute={0}\u306F\u8A8D\u8B58\u3055\u308C\u306A\u3044\u5C5E\u6027\u3067\u3059
-
 ## extra output when using -prompt (util/Log)
 compiler.misc.resume.abort=R)\u518D\u958B,A)\u4E2D\u6B62>
 
@@ -957,7 +1013,7 @@
 ##
 
 ## All warning messages are preceded by the following string.
-compiler.warn.warning=\u8B66\u544A: 
+compiler.warn.warning=\u8B66\u544A:
 
 ## Warning messages may also include the following prefix to identify a
 ## lint option
@@ -970,10 +1026,13 @@
 # 0: file name
 compiler.warn.dir.path.element.not.found=\u4E0D\u6B63\u306A\u30D1\u30B9\u8981\u7D20"{0}": \u305D\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u5B58\u5728\u3057\u307E\u305B\u3093
 
+# 0: file name
+compiler.warn.dir.path.element.not.directory=\u4E0D\u6B63\u306A\u30D1\u30B9\u8981\u7D20"{0}": \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306F\u5B58\u5728\u3057\u307E\u305B\u3093
+
 compiler.warn.finally.cannot.complete=finally\u7BC0\u304C\u6B63\u5E38\u306B\u5B8C\u4E86\u3067\u304D\u307E\u305B\u3093
 
 # 0: symbol, 1: symbol
-compiler.warn.has.been.deprecated={1}\u306E{0}\u306F\u975E\u63A8\u5968\u306B\u306A\u308A\u307E\u3057\u305F
+compiler.warn.has.been.deprecated={1}\u306E{0}\u306F\u63A8\u5968\u3055\u308C\u307E\u305B\u3093
 
 # 0: symbol
 compiler.warn.sun.proprietary={0}\u306F\u5185\u90E8\u6240\u6709\u306EAPI\u3067\u3042\u308A\u3001\u4ECA\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059
@@ -1038,13 +1097,19 @@
 # 0: string
 compiler.warn.option.obsolete.target=\u30BF\u30FC\u30B2\u30C3\u30C8\u5024{0}\u306F\u5EC3\u6B62\u3055\u308C\u3066\u3044\u3066\u3001\u4ECA\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u308B\u4E88\u5B9A\u3067\u3059
 
+# 0: string, 1: string
+compiler.err.option.removed.source=\u30BD\u30FC\u30B9\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F\u73FE\u5728\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002{1}\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+
+# 0: string, 1: string
+compiler.err.option.removed.target=\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F\u73FE\u5728\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002{1}\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+
 compiler.warn.option.obsolete.suppression=\u5EC3\u6B62\u3055\u308C\u305F\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u3064\u3044\u3066\u306E\u8B66\u544A\u3092\u8868\u793A\u3057\u306A\u3044\u3088\u3046\u306B\u3059\u308B\u306B\u306F\u3001-Xlint:\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002
 
 # 0: name, 1: number, 2: number, 3: number, 4: number
 compiler.warn.future.attr=\u30D0\u30FC\u30B8\u30E7\u30F3{1}.{2}\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3067\u5C0E\u5165\u3055\u308C\u305F{0}\u5C5E\u6027\u306F\u3001\u30D0\u30FC\u30B8\u30E7\u30F3{3}.{4}\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3067\u306F\u7121\u8996\u3055\u308C\u307E\u3059
 
 # Warnings related to annotation processing
-# 0: name
+# 0: string
 compiler.warn.proc.package.does.not.exist=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306F\u5B58\u5728\u3057\u307E\u305B\u3093
 
 # 0: name
@@ -1120,7 +1185,7 @@
 # 0: symbol
 compiler.warn.varargs.unsafe.use.varargs.param=\u53EF\u5909\u5F15\u6570\u30E1\u30BD\u30C3\u30C9\u306F\u3001\u578B\u60C5\u5831\u4FDD\u6301\u53EF\u80FD\u3067\u306A\u3044\u53EF\u5909\u5F15\u6570\u30D1\u30E9\u30E1\u30FC\u30BF{0}\u304B\u3089\u306E\u30D2\u30FC\u30D7\u6C5A\u67D3\u306E\u539F\u56E0\u3068\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059
 
-compiler.warn.missing.deprecated.annotation=\u975E\u63A8\u5968\u306E\u9805\u76EE\u306F@Deprecated\u3067\u6CE8\u91C8\u304C\u4ED8\u3051\u3089\u308C\u3066\u3044\u307E\u305B\u3093
+compiler.warn.missing.deprecated.annotation=\u63A8\u5968\u3055\u308C\u306A\u3044\u9805\u76EE\u306F@Deprecated\u3067\u6CE8\u91C8\u304C\u4ED8\u3051\u3089\u308C\u3066\u3044\u307E\u305B\u3093
 
 compiler.warn.invalid.archive.file=\u30D1\u30B9\u4E0A\u306E\u4E88\u671F\u3057\u306A\u3044\u30D5\u30A1\u30A4\u30EB: {0}
 
@@ -1146,12 +1211,16 @@
 # 0: unused, 1: unused
 compiler.warn.diamond.redundant.args=\u65B0\u3057\u3044\u5F0F\u306E\u578B\u5F15\u6570\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059(\u304B\u308F\u308A\u306B\u30C0\u30A4\u30E4\u30E2\u30F3\u30C9\u6F14\u7B97\u5B50\u3092\u4F7F\u7528\u3057\u307E\u3059)\u3002
 
-# 0: type, 1: type
-compiler.warn.diamond.redundant.args.1=\u65B0\u3057\u3044\u5F0F\u306E\u578B\u5F15\u6570\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059(\u304B\u308F\u308A\u306B\u30C0\u30A4\u30E4\u30E2\u30F3\u30C9\u6F14\u7B97\u5B50\u3092\u4F7F\u7528\u3057\u307E\u3059)\u3002\n\u660E\u793A\u7684: {0}\n\u63A8\u8AD6: {1}
+compiler.warn.potential.lambda.found=\u3053\u306E\u533F\u540D\u5185\u90E8\u30AF\u30E9\u30B9\u3092\u30E9\u30E0\u30C0\u5F0F\u306B\u5909\u63DB\u3067\u304D\u307E\u3059\u3002
+
+compiler.warn.method.redundant.typeargs=\u30E1\u30BD\u30C3\u30C9\u547C\u51FA\u3057\u306E\u578B\u5F15\u6570\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\u3002
 
 # 0: symbol, 1: message segment
 compiler.warn.varargs.redundant.trustme.anno={0}\u6CE8\u91C8\u304C\u5197\u9577\u3067\u3059\u3002{1}
 
+# 0: symbol
+compiler.warn.access.to.sensitive.member.from.serializable.element=\u76F4\u5217\u5316\u53EF\u80FD\u8981\u7D20\u304B\u3089\u6A5F\u5BC6\u30E1\u30F3\u30D0\u30FC{0}\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u306F\u3001\u4FE1\u983C\u3067\u304D\u306A\u3044\u30B3\u30FC\u30C9\u304B\u3089\u30D1\u30D6\u30EA\u30C3\u30AF\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u3067\u3042\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059
+
 #####
 
 ## The following are tokens which are non-terminals in the language. They should
@@ -1213,11 +1282,19 @@
 
 compiler.misc.unnamed.package=\u540D\u524D\u306E\u306A\u3044\u30D1\u30C3\u30B1\u30FC\u30B8
 
+compiler.misc.unnamed.module=\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB
+
 #####
 
 # 0: symbol, 1: message segment
 compiler.err.cant.access={0}\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\n{1}
 
+# 0: name
+compiler.misc.bad.class.file=\u30AF\u30E9\u30B9{0}\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u7121\u52B9\u3067\u3059
+
+# 0: file name, 1: string (expected constant pool entry type), 2: number (constant pool index)
+compiler.misc.bad.const.pool.entry={0}\u306E\u5B9A\u6570\u30D7\u30FC\u30EB\u30FB\u30A8\u30F3\u30C8\u30EA\u304C\u4E0D\u6B63\u3067\u3059\n\u7D22\u5F15{2}\u3067\u306F{1}\u304C\u5FC5\u8981\u3067\u3059
+
 # 0: file name, 1: message segment
 compiler.misc.bad.class.file.header=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB{0}\u306F\u4E0D\u6B63\u3067\u3059\n{1}\n\u524A\u9664\u3059\u308B\u304B\u3001\u30AF\u30E9\u30B9\u30D1\u30B9\u306E\u6B63\u3057\u3044\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306B\u3042\u308B\u304B\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 
@@ -1226,7 +1303,7 @@
 
 ## The following are all possible strings for the second argument ({1}) of the
 ## above strings.
-compiler.misc.bad.class.signature=\u30AF\u30E9\u30B9{0}\u306E\u30B7\u30B0\u30CD\u30C1\u30E3\u304C\u4E0D\u6B63\u3067\u3059
+compiler.misc.bad.class.signature=\u30AF\u30E9\u30B9{0}\u306E\u30B7\u30B0\u30CB\u30C1\u30E3\u304C\u4E0D\u6B63\u3067\u3059
 
 #0: symbol, 1: symbol
 compiler.misc.bad.enclosing.class={0}\u306E\u5185\u90E8\u30AF\u30E9\u30B9\u304C\u4E0D\u6B63\u3067\u3059: {1}
@@ -1240,18 +1317,20 @@
 
 compiler.misc.bad.const.pool.tag.at=\u5B9A\u6570\u30D7\u30FC\u30EB\u30FB\u30BF\u30B0{1}\u3067\u306E{0}\u304C\u4E0D\u6B63\u3067\u3059
 
-compiler.misc.bad.signature=\u30B7\u30B0\u30CD\u30C1\u30E3{0}\u304C\u4E0D\u6B63\u3067\u3059
+compiler.misc.bad.signature=\u30B7\u30B0\u30CB\u30C1\u30E3{0}\u304C\u4E0D\u6B63\u3067\u3059
 
 compiler.misc.bad.type.annotation.value=\u6CE8\u91C8\u30BF\u30FC\u30B2\u30C3\u30C8\u578B\u306E\u5024\u306E\u578B\u304C\u4E0D\u6B63\u3067\u3059: {0}
 
+compiler.misc.bad.module-info.name=\u30AF\u30E9\u30B9\u540D\u304C\u4E0D\u6B63\u3067\u3059
+
 compiler.misc.class.file.wrong.class=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB{0}\u306B\u4E0D\u6B63\u306A\u30AF\u30E9\u30B9\u304C\u3042\u308A\u307E\u3059
 
 compiler.misc.class.file.not.found={0}\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
 
-# 0: classfile major version, 1: classfile minor version
+# 0: string (classfile major version), 1: string (classfile minor version)
 compiler.misc.invalid.default.interface=\u30D0\u30FC\u30B8\u30E7\u30F3{0}.{1}\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306B\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30E1\u30BD\u30C3\u30C9\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
 
-# 0: classfile major version, 1: classfile minor version
+# 0: string (classfile major version), 1: string (classfile minor version)
 compiler.misc.invalid.static.interface=\u30D0\u30FC\u30B8\u30E7\u30F3{0}.{1}\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306Bstatic\u30E1\u30BD\u30C3\u30C9\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
 
 # 0: name
@@ -1259,6 +1338,8 @@
 
 compiler.misc.file.does.not.contain.package=\u30D5\u30A1\u30A4\u30EB\u306B\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u305B\u3093
 
+compiler.misc.file.does.not.contain.module=\u30D5\u30A1\u30A4\u30EB\u306B\u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u305B\u3093
+
 compiler.misc.illegal.start.of.class.file=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u958B\u59CB\u304C\u4E0D\u6B63\u3067\u3059
 
 compiler.misc.unable.to.access.file=\u30D5\u30A1\u30A4\u30EB{0}\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093
@@ -1267,6 +1348,8 @@
 
 compiler.misc.undecl.type.var=\u578B\u5909\u6570{0}\u306F\u5BA3\u8A00\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 
+compiler.misc.malformed.vararg.method=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306B\u4E0D\u6B63\u306A\u53EF\u5909\u5F15\u6570\u30E1\u30BD\u30C3\u30C9\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059: {0}
+
 compiler.misc.wrong.version=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u30D0\u30FC\u30B8\u30E7\u30F3{0}.{1}\u306F\u4E0D\u6B63\u3067\u3059\u3002{2}.{3}\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
 
 #####
@@ -1343,12 +1426,18 @@
 compiler.misc.no.unique.minimal.instance.exists=\u578B\u5909\u6570{0}(\u4E0B\u9650{1})\u306E\u56FA\u6709\u306E\u6700\u5C0F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u5B58\u5728\u3057\u307E\u305B\u3093
 
 # 0: type, 1: list of type
-compiler.misc.incompatible.upper.bounds=\u63A8\u8AD6\u5909\u6570{0}\u306B\u306F\u3001\u4E0D\u9069\u5408\u306A\u4E0A\u9650{1}\u304C\u3042\u308A\u307E\u3059
+compiler.misc.incompatible.upper.bounds=\u63A8\u6E2C\u306E\u5909\u6570{0}\u306B\u306F\u3001\u9069\u5408\u3057\u306A\u3044\u4E0A\u9650{1}\u304C\u3042\u308A\u307E\u3059
+
+# 0: type, 1: list of type
+compiler.misc.incompatible.eq.bounds=\u63A8\u8AD6\u5909\u6570{0}\u306B\u306F\u3001\u4E0D\u9069\u5408\u306A\u7B49\u4FA1\u5236\u7D04{1}\u304C\u3042\u308A\u307E\u3059
 
 # 0: type, 1: list of type, 2: list of type
 compiler.misc.incompatible.eq.upper.bounds=\u63A8\u8AD6\u5909\u6570{0}\u306B\u306F\u3001\u4E0D\u9069\u5408\u306A\u5883\u754C\u304C\u3042\u308A\u307E\u3059\n\u7B49\u4FA1\u5236\u7D04: {1}\n\u4E0A\u9650: {2}
 
 # 0: type, 1: list of type, 2: list of type
+compiler.misc.incompatible.upper.lower.bounds=\u63A8\u8AD6\u5909\u6570{0}\u306B\u306F\u3001\u4E0D\u9069\u5408\u306A\u5883\u754C\u304C\u3042\u308A\u307E\u3059\n\u4E0A\u9650: {1}\n\u4E0B\u9650: {2}
+
+# 0: type, 1: list of type, 2: list of type
 compiler.misc.incompatible.eq.lower.bounds=\u63A8\u8AD6\u5909\u6570{0}\u306B\u306F\u3001\u4E0D\u9069\u5408\u306A\u5883\u754C\u304C\u3042\u308A\u307E\u3059\n\u7B49\u4FA1\u5236\u7D04: {1}\n\u4E0B\u9650: {2}
 
 # 0: list of type, 1: type, 2: type
@@ -1378,6 +1467,12 @@
 # 0: type
 compiler.misc.diamond.non.generic=\u975E\u6C4E\u7528\u30AF\u30E9\u30B9{0}\u3067''<>''\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
+# 0: list of type, 1: message segment
+compiler.misc.diamond.invalid.arg={1}\u306B\u3064\u3044\u3066\u63A8\u5B9A\u3055\u308C\u305F\u578B\u5F15\u6570{0}\u306F\u3053\u306E\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3067\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093\n\u63A8\u8AD6\u5F15\u6570\u306F\u7F72\u540D\u5C5E\u6027\u306B\u8868\u73FE\u3067\u304D\u307E\u305B\u3093
+
+# 0: list of type, 1: message segment
+compiler.misc.diamond.invalid.args={1}\u306B\u3064\u3044\u3066\u63A8\u5B9A\u3055\u308C\u305F\u578B\u5F15\u6570{0}\u306F\u3053\u306E\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3067\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093\n\u63A8\u8AD6\u5F15\u6570\u306F\u7F72\u540D\u5C5E\u6027\u306B\u8868\u73FE\u3067\u304D\u307E\u305B\u3093
+
 # 0: unused
 compiler.misc.diamond.and.explicit.params=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u660E\u793A\u7684\u306A\u578B\u30D1\u30E9\u30E1\u30FC\u30BF\u3067\u306F''<>''\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 
@@ -1409,10 +1504,13 @@
 compiler.err.non-static.cant.be.ref=static\u3067\u306A\u3044{0} {1}\u3092static\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u304B\u3089\u53C2\u7167\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
 # 0: symbol kind, 1: symbol
-compiler.misc.non-static.cant.be.ref=static\u3067\u306A\u3044{0} {1}\u3092static\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u304B\u3089\u53C2\u7167\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
+compiler.misc.bad.static.method.in.unbound.lookup=\u975E\u30D0\u30A4\u30F3\u30C9\u691C\u7D22\u3067\u4E88\u671F\u3057\u306A\u3044\u9759\u7684\u306A{0} {1}\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
 
 # 0: symbol kind, 1: symbol
-compiler.misc.static.method.in.unbound.lookup=\u975E\u30D0\u30A4\u30F3\u30C9\u691C\u7D22\u3067\u9759\u7684\u306A{0} {1}\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
+compiler.misc.bad.instance.method.in.unbound.lookup=\u975E\u30D0\u30A4\u30F3\u30C9\u691C\u7D22\u3067\u4E88\u671F\u3057\u306A\u3044\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9{0} {1}\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
+
+# 0: symbol kind, 1: symbol
+compiler.misc.bad.static.method.in.bound.lookup=\u30D0\u30A4\u30F3\u30C9\u691C\u7D22\u3067\u4E88\u671F\u3057\u306A\u3044\u9759\u7684\u306A{0} {1}\u304C\u898B\u3064\u304B\u308A\u307E\u3057\u305F
 
 ## Both arguments ({0}, {1}) are "kindname"s.  {0} is a comma-separated list
 ## of kindnames (the list should be identical to that provided in source.
@@ -1474,7 +1572,7 @@
 
 compiler.misc.kindname.constructor=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 
-compiler.misc.kindname.enum=\u5217\u6319\u578B
+compiler.misc.kindname.enum=\u5217\u6319
 
 compiler.misc.kindname.interface=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 
@@ -1494,6 +1592,8 @@
 
 compiler.misc.kindname.package=\u30D1\u30C3\u30B1\u30FC\u30B8
 
+compiler.misc.kindname.module=\u30E2\u30B8\u30E5\u30FC\u30EB
+
 compiler.misc.kindname.static.init=static\u521D\u671F\u5316\u5B50
 
 compiler.misc.kindname.instance.init=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u521D\u671F\u5316\u5B50
@@ -1534,6 +1634,9 @@
 compiler.misc.cant.override={1}\u306E{0}\u306F{3}\u306E{2}\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3067\u304D\u307E\u305B\u3093
 
 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
+compiler.misc.cant.hide={1}\u306E{0}\u306F{3}\u306E{2}\u3092\u96A0\u3059\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
+
+# 0: symbol, 1: symbol, 2: symbol, 3: symbol
 compiler.misc.cant.implement={1}\u306E{0}\u306F{3}\u306E{2}\u3092\u5B9F\u88C5\u3067\u304D\u307E\u305B\u3093
 
 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
@@ -1557,17 +1660,18 @@
 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
 compiler.misc.varargs.clash.with={1}\u306E{0}\u306F{3}\u306E{2}\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3057\u307E\u3059
 
-# 0: unused
-compiler.misc.diamond.and.anon.class=\u533F\u540D\u5185\u90E8\u30AF\u30E9\u30B9\u3067\u306F''<>''\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
-
 # 0: symbol kind, 1: symbol, 2: symbol, 3: message segment
 compiler.misc.inapplicable.method={0} {1}.{2}\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\n({3})
 
 ########################################
 # Diagnostics for language feature changes
 ########################################
+
 # 0: string
-compiler.err.unsupported.fp.lit=16\u9032\u6570\u6D6E\u52D5\u5C0F\u6570\u70B9\u30EA\u30C6\u30E9\u30EB\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(16\u9032\u6570\u6D6E\u52D5\u5C0F\u6570\u70B9\u30EA\u30C6\u30E9\u30EB\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+compiler.err.modules.not.supported.in.source=\u30E2\u30B8\u30E5\u30FC\u30EB\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 9\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+
+# 0: string
+compiler.misc.diamond.and.anon.class.not.supported.in.source=-source {0}\u3067\u306F\u533F\u540D\u5185\u90E8\u30AF\u30E9\u30B9\u3067''<>''\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\n(\u533F\u540D\u5185\u90E8\u30AF\u30E9\u30B9\u3067''<>''\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 9\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
 # 0: string
 compiler.err.unsupported.binary.lit=2\u9032\u6570\u30EA\u30C6\u30E9\u30EB\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(2\u9032\u6570\u30EA\u30C6\u30E9\u30EB\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F-source 7\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
@@ -1578,17 +1682,18 @@
 # 0: string
 compiler.err.try.with.resources.not.supported.in.source=try-with-resource\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(try-with-resource\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 7\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
-compiler.warn.enum.as.identifier=\u30EA\u30EA\u30FC\u30B95\u304B\u3089''enum''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\n(''enum''\u3092\u30AD\u30FC\u30EF\u30FC\u30C9\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u306B\u306F-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+# 0: string
+compiler.err.var.in.try.with.resources.not.supported.in.source=try-with-resource\u5185\u306E\u5909\u6570\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(try-with-resource\u3067\u5909\u6570\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 9\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
-compiler.warn.assert.as.identifier=\u30EA\u30EA\u30FC\u30B91.4\u304B\u3089''assert''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u3001\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\n(''assert''\u3092\u30AD\u30FC\u30EF\u30FC\u30C9\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u306B\u306F\u3001-source 1.4\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+compiler.warn.underscore.as.identifier=\u30EA\u30EA\u30FC\u30B99\u304B\u3089''_''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
-compiler.warn.underscore.as.identifier=\u8B58\u5225\u5B50\u3068\u3057\u3066''_''\u304C\u4F7F\u7528\u3055\u308C\u307E\u3057\u305F\n(\u8B58\u5225\u5B50\u3068\u3057\u3066\u306E''_''\u306E\u4F7F\u7528\u306F\u3001Java SE 8\u3088\u308A\u5F8C\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u306A\u3044\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059)
+compiler.err.underscore.as.identifier=\u30EA\u30EA\u30FC\u30B99\u304B\u3089''_''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
 compiler.err.underscore.as.identifier.in.lambda=''_''\u304C\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\n(\u30E9\u30E0\u30C0\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF\u3067\u306F''_''\u3092\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u7981\u6B62\u3055\u308C\u3066\u3044\u307E\u3059)
 
-compiler.err.enum.as.identifier=\u30EA\u30EA\u30FC\u30B95\u304B\u3089''enum''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\n(''enum''\u3092\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u306B\u306F-source 1.4\u4EE5\u524D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+compiler.err.enum.as.identifier=\u30EA\u30EA\u30FC\u30B95\u304B\u3089''enum'\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
-compiler.err.assert.as.identifier=\u30EA\u30EA\u30FC\u30B91.4\u304B\u3089''assert''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u3001\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\n(''assert''\u3092\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u306B\u306F\u3001-source 1.3\u4EE5\u524D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+compiler.err.assert.as.identifier=\u30EA\u30EA\u30FC\u30B91.4\u304B\u3089''assert''\u306F\u30AD\u30FC\u30EF\u30FC\u30C9\u306A\u306E\u3067\u8B58\u5225\u5B50\u3068\u3057\u3066\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093
 
 # TODO 308: make a better error message
 compiler.err.this.as.identifier=\u30EA\u30EA\u30FC\u30B98\u304B\u3089''this''\u306F\u53D7\u4FE1\u30BF\u30A4\u30D7\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u540D\u3068\u3057\u3066\u306E\u307F\u8A31\u53EF\u3055\u308C\u3001\u6700\u521D\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
@@ -1619,30 +1724,15 @@
 compiler.err.no.annotations.on.dot.class=\u6CE8\u91C8\u306F\u30AF\u30E9\u30B9\u30FB\u30EA\u30C6\u30E9\u30EB\u306E\u30BF\u30A4\u30D7\u3067\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093
 
 # 0: string
-compiler.err.generics.not.supported.in.source=\u7DCF\u79F0\u578B\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u7DCF\u79F0\u578B\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
-
-# 0: string
-compiler.err.varargs.not.supported.in.source=\u53EF\u5909\u5F15\u6570\u30E1\u30BD\u30C3\u30C9\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u53EF\u5909\u5F15\u6570\u30E1\u30BD\u30C3\u30C9\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
-
-# 0: string
-compiler.err.annotations.not.supported.in.source=\u6CE8\u91C8\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u6CE8\u91C8\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
-
-# 0: string
 compiler.err.type.annotations.not.supported.in.source=\u30BF\u30A4\u30D7\u6CE8\u91C8\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u30BF\u30A4\u30D7\u6CE8\u91C8\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 8\u4EE5\u4E0A\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
 # 0: string
+compiler.err.annotations.after.type.params.not.supported.in.source=\u30E1\u30BD\u30C3\u30C9\u30FB\u30BF\u30A4\u30D7\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF\u306E\u5F8C\u306E\u6CE8\u91C8\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u30E1\u30BD\u30C3\u30C9\u30FB\u30BF\u30A4\u30D7\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF\u306E\u5F8C\u306E\u6CE8\u91C8\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 8\u4EE5\u4E0A\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+
+# 0: string
 compiler.err.repeatable.annotations.not.supported.in.source=\u7E70\u8FD4\u3057\u6CE8\u91C8\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u7E70\u8FD4\u3057\u6CE8\u91C8\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 8\u4EE5\u4E0A\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
 # 0: string
-compiler.err.foreach.not.supported.in.source=\u62E1\u5F35for\u30EB\u30FC\u30D7\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(for-each\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
-
-# 0: string
-compiler.err.static.import.not.supported.in.source=static import\u5BA3\u8A00\u306F -source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(static import\u5BA3\u8A00\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
-
-# 0: string
-compiler.err.enums.not.supported.in.source=\u5217\u6319\u578B\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u5217\u6319\u578B\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F-source 5\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
-
-# 0: string
 compiler.err.diamond.not.supported.in.source=\u30C0\u30A4\u30E4\u30E2\u30F3\u30C9\u6F14\u7B97\u5B50\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(\u30C0\u30A4\u30E4\u30E2\u30F3\u30C9\u6F14\u7B97\u5B50\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 7\u4EE5\u964D\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
 # 0: string
@@ -1666,6 +1756,12 @@
 # 0: string
 compiler.err.static.intf.methods.not.supported.in.source=static\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(static\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 8\u4EE5\u4E0A\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
 
+# 0: string
+compiler.err.static.intf.method.invoke.not.supported.in.source=static\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9\u547C\u51FA\u3057\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(static\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9\u547C\u51FA\u3057\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 8\u4EE5\u4E0A\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+
+# 0: string
+compiler.err.private.intf.methods.not.supported.in.source=private\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9\u306F-source {0}\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n(private\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9\u3092\u4F7F\u7528\u53EF\u80FD\u306B\u3059\u308B\u306B\u306F\u3001-source 9\u4EE5\u4E0A\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044)
+
 ########################################
 # Diagnostics for verbose resolution
 # used by Resolve (debug only)
@@ -1683,10 +1779,10 @@
 # 0: type
 compiler.misc.partial.inst.sig=\u90E8\u5206\u7684\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5316\u3055\u308C\u307E\u3057\u305F: {0}
 
-# 0: name, 1: symbol, 2: number, 3: MethodResolutionPhase, 4: list of type or message segment, 5: list of type or message segment
+# 0: name, 1: symbol, 2: number, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
 compiler.note.verbose.resolve.multi=\u578B{1}\u306E\u30E1\u30BD\u30C3\u30C9{0}\u3092\u5019\u88DC{2}\u306B\u89E3\u6C7A\u3057\u3066\u3044\u307E\u3059\n\u30D5\u30A7\u30FC\u30BA: {3}\n\u5B9F\u969B\u306E\u578B: {4}\n\u578B\u5F15\u6570: {5}\n\u5019\u88DC:
 
-# 0: name, 1: symbol, 2: unused, 3: MethodResolutionPhase, 4: list of type or message segment, 5: list of type or message segment
+# 0: name, 1: symbol, 2: unused, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
 compiler.note.verbose.resolve.multi.1=\u578B{1}\u306E\u30E1\u30BD\u30C3\u30C9{0}\u306E\u89E3\u6C7A\u306B\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3059\n\u30D5\u30A7\u30FC\u30BA: {3}\n\u5B9F\u969B\u306E\u578B: {4}\n\u578B\u5F15\u6570: {5}\n\u5019\u88DC:
 
 # 0: symbol, 1: type, 2: type
@@ -1714,17 +1810,17 @@
 # where clause for captured type: contains upper ('extends {1}') and lower
 # ('super {2}') bound along with the wildcard that generated this captured type ({3})
 # 0: type, 1: type, 2: type, 3: type
-compiler.misc.where.captured={0}\u306F{3}\u306E\u30AD\u30E3\u30D7\u30C1\u30E3\u304B\u3089{1}\u3092\u62E1\u5F35\u3057{2}\u3092\u30B9\u30FC\u30D1\u30FC\u3057\u307E\u3059
+compiler.misc.where.captured={3}\u306E\u30AD\u30E3\u30D7\u30C1\u30E3\u304B\u3089\u306E{0} extends {1} super: {2}
 
 # compact where clause for captured type: contains upper ('extends {1}') along
 # with the wildcard that generated this captured type ({3})
 # 0: type, 1: type, 2: unused, 3: type
-compiler.misc.where.captured.1={0}\u306F{3}\u306E\u30AD\u30E3\u30D7\u30C1\u30E3\u304B\u3089{1}\u3092\u62E1\u5F35\u3057\u307E\u3059
+compiler.misc.where.captured.1={3}\u306E\u30AD\u30E3\u30D7\u30C1\u30E3\u304B\u3089\u306E{0} extends {1}
 
 # where clause for type variable: contains upper bound(s) ('extends {1}') along with
 # the kindname ({2}) and location ({3}) in which the typevar has been declared
 # 0: type, 1: list of type, 2: symbol kind, 3: symbol
-compiler.misc.where.typevar={2} {3}\u3067\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B{0}\u306F{1}\u3092\u62E1\u5F35\u3057\u307E\u3059
+compiler.misc.where.typevar={2} {3}\u3067\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B{0} extends {1}
 
 # compact where clause for type variable: contains the kindname ({2}) and location ({3})
 # in which the typevar has been declared
@@ -1739,7 +1835,7 @@
 # where clause for type variable: contains all the upper bound(s) ('extends {1}')
 # of this intersection type
 # 0: type, 1: list of type
-compiler.misc.where.intersection={0}\u306F{1}\u3092\u62E1\u5F35\u3057\u307E\u3059
+compiler.misc.where.intersection={0} extends {1}
 
 ### Where clause headers ###
 compiler.misc.where.description.captured={0}\u304C\u65B0\u3057\u3044\u578B\u5909\u6570\u306E\u5834\u5408:
@@ -1756,6 +1852,7 @@
 # 0: set of type
 compiler.misc.where.description.typevar.1={0}\u304C\u578B\u5909\u6570\u306E\u5834\u5408:
 
+# 0: set of type
 compiler.misc.where.description.intersection.1={0}\u304Cintersection\u578B\u306E\u5834\u5408:
 
 ###
@@ -1793,4 +1890,125 @@
 
 compiler.err.dc.unterminated.string=\u6587\u5B57\u5217\u304C\u7D42\u4E86\u3057\u3066\u3044\u307E\u305B\u3093
 
+###
+# errors related to modules
 
+compiler.err.expected.module=''\u30E2\u30B8\u30E5\u30FC\u30EB''\u304C\u5FC5\u8981\u3067\u3059
+
+# 0: symbol
+compiler.err.module.not.found=\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+
+compiler.err.too.many.modules=\u691C\u51FA\u3055\u308C\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u304C\u591A\u3059\u304E\u307E\u3059
+
+# 0: symbol
+compiler.err.duplicate.module=\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: {0}
+
+# 0: symbol
+compiler.err.duplicate.requires=\u5FC5\u9808\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: {0}
+
+# 0: symbol
+compiler.err.duplicate.exports=\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: {0}
+
+# 0: symbol, 1: symbol
+compiler.err.duplicate.provides=\u6307\u5B9A\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: \u30B5\u30FC\u30D3\u30B9{0}\u3001\u5B9F\u88C5{1}
+
+# 0: symbol
+compiler.err.duplicate.uses=\u4F7F\u7528\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059: {0}
+
+# 0: symbol
+compiler.err.service.implementation.is.abstract=\u30B5\u30FC\u30D3\u30B9\u5B9F\u88C5\u304C\u62BD\u8C61\u30AF\u30E9\u30B9\u3067\u3059: {0}
+
+# 0: symbol
+compiler.err.service.implementation.is.inner=\u30B5\u30FC\u30D3\u30B9\u5B9F\u88C5\u304C\u5185\u90E8\u30AF\u30E9\u30B9\u3067\u3059: {0}
+
+# 0: symbol
+compiler.err.service.definition.is.inner=\u30B5\u30FC\u30D3\u30B9\u5B9A\u7FA9\u304C\u5185\u90E8\u30AF\u30E9\u30B9\u3067\u3059: {0}
+
+# 0: symbol
+compiler.err.service.implementation.doesnt.have.a.no.args.constructor=\u30B5\u30FC\u30D3\u30B9\u5B9F\u88C5\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u304C\u3042\u308A\u307E\u305B\u3093: {0}
+
+# 0: symbol
+compiler.err.service.implementation.no.args.constructor.not.public=\u30B5\u30FC\u30D3\u30B9\u5B9F\u88C5\u306E\u5F15\u6570\u306A\u3057\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u304C\u30D1\u30D6\u30EA\u30C3\u30AF\u3067\u306F\u3042\u308A\u307E\u305B\u3093: {0}
+
+# 0: symbol
+compiler.err.package.empty.or.not.found=\u30D1\u30C3\u30B1\u30FC\u30B8\u306F\u7A7A\u3067\u3042\u308B\u304B\u3001\u307E\u305F\u306F\u5B58\u5728\u3057\u307E\u305B\u3093 {0}
+
+compiler.err.no.output.dir=\u30AF\u30E9\u30B9\u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+
+compiler.err.unnamed.pkg.not.allowed.named.modules=\u540D\u524D\u306E\u306A\u3044\u30D1\u30C3\u30B1\u30FC\u30B8\u306F\u540D\u524D\u4ED8\u304D\u30E2\u30B8\u30E5\u30FC\u30EB\u3067\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093
+
+# 0: name, 1: name
+compiler.err.module.name.mismatch=\u30E2\u30B8\u30E5\u30FC\u30EB\u540D{0}\u306F\u5FC5\u8981\u306A\u540D\u524D{1}\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093
+
+compiler.err.module.decl.sb.in.module-info.java=\u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306Fmodule-info.java\u3068\u3044\u3046\u540D\u524D\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+
+compiler.err.unexpected.after.module=\u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306E\u5F8C\u306B\u4E88\u671F\u3057\u306A\u3044\u5165\u529B\u304C\u3042\u308A\u307E\u3059
+
+compiler.err.module-info.with.xmodule.sourcepath=\u30BD\u30FC\u30B9\u30D1\u30B9\u306E-Xmodule\u3068module-info\u306E\u7D44\u5408\u305B\u304C\u4E0D\u6B63\u3067\u3059
+
+compiler.err.module-info.with.xmodule.classpath=\u30AF\u30E9\u30B9\u30D1\u30B9\u306E-Xmodule\u3068module-info\u306E\u7D44\u5408\u305B\u304C\u4E0D\u6B63\u3067\u3059
+
+compiler.err.xmodule.no.module.sourcepath=-Xmodule\u3068-modulesourcepath\u306E\u7D44\u5408\u305B\u304C\u4E0D\u6B63\u3067\u3059
+
+compiler.err.processorpath.no.processormodulepath=-processorpath\u3068-processormodulepath\u306E\u7D44\u5408\u305B\u304C\u4E0D\u6B63\u3067\u3059
+
+# 0: symbol
+compiler.err.package.in.other.module=\u30D1\u30C3\u30B1\u30FC\u30B8\u304C\u5225\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u5B58\u5728\u3057\u307E\u3059: {0}
+
+# 0: symbol, 1: name, 2: symbol, 3: symbol
+compiler.err.package.clash.from.requires=\u30E2\u30B8\u30E5\u30FC\u30EB{0}\u306F{2}\u3068{3}\u306E\u4E21\u65B9\u304B\u3089\u30D1\u30C3\u30B1\u30FC\u30B8{1}\u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059
+
+# 0: string
+compiler.err.module.not.found.in.module.source.path=\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30BD\u30FC\u30B9\u30FB\u30D1\u30B9\u306B\u30E2\u30B8\u30E5\u30FC\u30EB{0}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+
+compiler.err.output.dir.must.be.specified.with.dash.m.option=-m\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u3001\u30AF\u30E9\u30B9\u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+
+compiler.err.modulesourcepath.must.be.specified.with.dash.m.option=-m\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u3001\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30BD\u30FC\u30B9\u30FB\u30D1\u30B9\u3092\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+
+# 0: symbol
+compiler.err.service.implementation.not.in.right.module=\u30B5\u30FC\u30D3\u30B9\u5B9F\u88C5\u3092provides\u30C7\u30A3\u30EC\u30AF\u30C6\u30A3\u30D6\u3068\u3057\u3066\u540C\u3058\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u5B9A\u7FA9\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059
+
+# 0: symbol
+compiler.err.cyclic.requires={0}\u3092\u542B\u3080\u4F9D\u5B58\u6027\u304C\u30EB\u30FC\u30D7\u3057\u3066\u3044\u307E\u3059
+
+# 0: fragment, 1: name
+compiler.err.duplicate.module.on.path={0}\u3067\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u91CD\u8907\u3057\u3066\u3044\u307E\u3059\n{1}\u306E\u30E2\u30B8\u30E5\u30FC\u30EB
+
+# 0:  string
+compiler.err.xaddexports.malformed.entry=-XaddExports\u306E\u5024\u304C\u4E0D\u6B63\u3067\u3059: {0}
+
+# 0: string
+compiler.err.xaddexports.too.many={0}\u306E-XaddExports\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u8907\u6570\u3042\u308A\u307E\u3059
+
+# 0:  string
+compiler.err.xaddreads.malformed.entry=-XaddReads\u306E\u5024\u304C\u4E0D\u6B63\u3067\u3059: {0}
+
+# 0: string
+compiler.err.xaddreads.too.many={0}\u306E-XaddReads\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u8907\u6570\u3042\u308A\u307E\u3059
+
+compiler.err.addmods.all.module.path.invalid=-addmods ALL-MODULE-PATH\u306F\u3001\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u6642\u306E\u307F\u4F7F\u7528\u3067\u304D\u307E\u3059
+
+compiler.misc.locn.module_source_path=\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30BD\u30FC\u30B9\u30FB\u30D1\u30B9
+
+compiler.misc.locn.upgrade_module_path=\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9
+
+compiler.misc.locn.system_modules=\u30B7\u30B9\u30C6\u30E0\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB
+
+compiler.misc.locn.module_path=\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9
+
+compiler.misc.cant.resolve.modules=\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u89E3\u6C7A\u3067\u304D\u307E\u305B\u3093
+
+# 0: symbol
+compiler.err.cant.find.module=\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+
+# 0: string
+compiler.err.invalid.module.specifier=\u30E2\u30B8\u30E5\u30FC\u30EB\u6307\u5B9A\u5B50\u306F\u8A31\u53EF\u3055\u308C\u307E\u305B\u3093: {0}
+
+# 0: symbol
+compiler.warn.service.provided.but.not.exported.or.used=\u30B5\u30FC\u30D3\u30B9\u30FB\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u304C\u6307\u5B9A\u3055\u308C\u307E\u3057\u305F\u304C\u3001\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u307E\u305F\u306F\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+
+###
+# errors related to options
+
+# 0: string, 1: string
+compiler.err.illegal.argument.for.option={0}\u306E\u5F15\u6570\u304C\u4E0D\u6B63\u3067\u3059: {1}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties
index 3cfa41c..4076c8d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -26,30 +26,50 @@
 # Messages in this file which use "placeholders" for values (e.g. {0}, {1})
 # are preceded by a stylized comment describing the type of the corresponding
 # values.
-# The types currently in use are
+# The simple types currently in use are:
 #
 # boolean           true or false
-# file name         the name of an input file; e.g.   MyFile.java
-# message segment   a sub-message; see compiler.misc.*
+# diagnostic        a sub-message; see compiler.misc.*
+# fragment          similar to 'message segment', but with more specific type
 # modifier          a Java modifier; e.g. public, private, protected
+# file              a file URL
+# file object       a file URL - similar to 'file' but typically used for source/class files, hence more specific
 # name              a name, typically a Java identifier
 # number            an integer
 # option name       the name of a command line option
 # source version    a source version number, such as 1.5, 1.6, 1.7
 # string            a general string
 # symbol            the name of a declared type
-# symbol kind       a description of the kind of a declaration; see compiler.misc.kindname.*
+# symbol kind       the kind of a symbol (i.e. method, variable)
+# kind name         an informative description of the kind of a declaration; see compiler.misc.kindname.*
 # token             the name of a non-terminal in source code; see compiler.misc.token.*
 # type              a Java type; e.g. int, X, X<T>
+# object            a Java object (unspecified)
 # unused            the value is not used in this message
 #
+# The following compound types are also used:
+#
 # list of X         a comma-separated list of items; e.g. list of type
-# X or Y            alternation; e.g. message segment or type
 # set of X          a comma-separated collection of items; e.g. set of modifier
 #
-# These may be composed: e.g.   list of type or message segment
+# These may be composed:
 #
-# These comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
+# list of type or message segment
+#
+# The following type aliases are supported:
+#
+# message segment --> diagnostic or fragment
+# file name --> file or file object
+#
+# Custom comments are supported in parenthesis i.e.
+#
+# number (classfile major version)
+#
+# These comments are used internally in order to generate an enum-like class declaration containing
+# a method/field for each of the diagnostic keys listed here. Those methods/fields can then be used
+# by javac code to build diagnostics in a type-safe fashion.
+#
+# In addition, these comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
 # using info derived from the collected set of examples in test/tools/javac/diags/examples.
 # MessageInfo can also be run as a standalone utility providing more facilities
 # for manipulating this file. For more details, see MessageInfo.java.
@@ -90,6 +110,9 @@
 
 compiler.err.annotation.type.not.applicable=\u6CE8\u91CA\u7C7B\u578B\u4E0D\u9002\u7528\u4E8E\u8BE5\u7C7B\u578B\u7684\u58F0\u660E
 
+# 0: type
+compiler.err.annotation.type.not.applicable.to.type=\u6CE8\u91CA @{0} \u5728\u6B64\u7C7B\u578B\u4E0A\u4E0B\u6587\u4E2D\u4E0D\u9002\u7528
+
 compiler.err.annotation.value.must.be.annotation=\u6CE8\u91CA\u503C\u5FC5\u987B\u4E3A\u6CE8\u91CA
 
 compiler.err.annotation.value.must.be.class.literal=\u6CE8\u91CA\u503C\u5FC5\u987B\u4E3A\u7C7B\u6587\u5B57
@@ -104,6 +127,8 @@
 
 compiler.err.anon.class.impl.intf.no.qual.for.new=\u533F\u540D\u7C7B\u5B9E\u73B0\u63A5\u53E3; \u4E0D\u80FD\u6709\u9650\u5B9A\u7B26 - \u5BF9\u4E8E\u65B0
 
+compiler.err.cant.inherit.from.anon=\u65E0\u6CD5\u4ECE\u533F\u540D\u7C7B\u7EE7\u627F
+
 # 0: symbol, 1: symbol, 2: symbol
 compiler.err.array.and.varargs=\u65E0\u6CD5\u5728{2}\u4E2D\u540C\u65F6\u58F0\u660E{0}\u548C{1}
 
@@ -114,7 +139,7 @@
 
 compiler.err.attribute.value.must.be.constant=\u5143\u7D20\u503C\u5FC5\u987B\u4E3A\u5E38\u91CF\u8868\u8FBE\u5F0F
 
-# 0: statement type
+# 0: string (statement type)
 compiler.err.bad.initializer={0}\u7684\u521D\u59CB\u5316\u7A0B\u5E8F\u9519\u8BEF
 
 compiler.err.break.outside.switch.loop=\u5728 switch \u6216 loop \u5916\u90E8\u4E2D\u65AD
@@ -145,6 +170,9 @@
 # 0: message segment
 compiler.err.bad.functional.intf.anno.1=\u610F\u5916\u7684 @FunctionalInterface \u6CE8\u91CA\n{0}
 
+# 0: message segment
+compiler.err.anonymous.diamond.method.does.not.override.superclass=\u65B9\u6CD5\u4E0D\u4F1A\u8986\u76D6\u6216\u5B9E\u73B0\u8D85\u7C7B\u578B\u4E2D\u7684\u65B9\u6CD5\n{0}
+
 # 0: symbol
 compiler.misc.not.a.functional.intf={0} \u4E0D\u662F\u51FD\u6570\u63A5\u53E3
 
@@ -180,14 +208,19 @@
 
 compiler.misc.static.mref.with.targs=\u6709\u5173\u9759\u6001\u65B9\u6CD5\u5F15\u7528\u7684\u53C2\u6570\u5316\u9650\u5B9A\u7B26
 
-compiler.misc.static.bound.mref=\u9759\u6001\u9650\u5236\u8303\u56F4\u65B9\u6CD5\u5F15\u7528
-
 # 0: symbol
 compiler.err.cant.assign.val.to.final.var=\u65E0\u6CD5\u4E3A\u6700\u7EC8\u53D8\u91CF{0}\u5206\u914D\u503C
 
+compiler.err.cant.assign.val.to.this=\u65E0\u6CD5\u5206\u914D\u7ED9 ''this''
+
 # 0: symbol, 1: message segment
 compiler.err.cant.ref.non.effectively.final.var=\u4ECE{1}\u5F15\u7528\u7684\u672C\u5730\u53D8\u91CF\u5FC5\u987B\u662F\u6700\u7EC8\u53D8\u91CF\u6216\u5B9E\u9645\u4E0A\u7684\u6700\u7EC8\u53D8\u91CF
 
+compiler.err.try.with.resources.expr.needs.var=try-with-resources \u8D44\u6E90\u5FC5\u987B\u662F\u53D8\u91CF\u58F0\u660E, \u6216\u8005\u662F\u6307\u793A\u5BF9\u6700\u7EC8\u53D8\u91CF\u6216\u5B9E\u9645\u4E0A\u7684\u6700\u7EC8\u53D8\u91CF\u7684\u5F15\u7528\u7684\u8868\u8FBE\u5F0F
+
+# 0: symbol
+compiler.err.try.with.resources.expr.effectively.final.var=\u7528\u4F5C try-with-resources \u8D44\u6E90\u7684\u53D8\u91CF {0} \u65E2\u4E0D\u662F\u6700\u7EC8\u53D8\u91CF, \u4E5F\u4E0D\u662F\u5B9E\u9645\u4E0A\u7684\u6700\u7EC8\u53D8\u91CF
+
 
 compiler.misc.lambda=lambda \u8868\u8FBE\u5F0F
 
@@ -261,7 +294,7 @@
 # 0: type
 compiler.err.invalid.repeatable.annotation.invalid.value={0}\u4E0D\u662F\u6709\u6548\u7684 @Repeatable: \u503C\u5143\u7D20\u65E0\u6548
 
-# 0: symbol type, 1: unused, 2: type
+# 0: symbol or type, 1: unused, 2: type
 compiler.err.invalid.repeatable.annotation.value.return=\u5305\u542B\u6CE8\u91CA\u7C7B\u578B ({0}) \u5FC5\u987B\u58F0\u660E\u7C7B\u578B{2}\u7684\u540D\u4E3A ''value'' \u7684\u5143\u7D20
 
 # 0: symbol or type, 1: symbol
@@ -282,6 +315,12 @@
 # 0: symbol
 compiler.err.invalid.repeatable.annotation.repeated.and.container.present=\u5BB9\u5668 {0} \u4E0D\u5F97\u4E0E\u5176\u5305\u542B\u7684\u5143\u7D20\u540C\u65F6\u5B58\u5728
 
+# 0: type, 1: symbol
+compiler.err.invalid.repeatable.annotation.not.applicable=\u5BB9\u5668{0}\u4E0D\u9002\u7528\u4E8E\u5143\u7D20 {1}
+
+# 0: type
+compiler.err.invalid.repeatable.annotation.not.applicable.in.context=\u5BB9\u5668{0}\u5728\u6B64\u7C7B\u578B\u4E0A\u4E0B\u6587\u4E2D\u4E0D\u9002\u7528
+
 # 0: name
 compiler.err.duplicate.class=\u7C7B\u91CD\u590D: {0}
 
@@ -419,8 +458,6 @@
 
 compiler.err.intf.expected.here=\u6B64\u5904\u9700\u8981\u63A5\u53E3
 
-compiler.err.intf.or.array.expected.here=\u6B64\u5904\u9884\u671F\u4E3A\u63A5\u53E3\u6216\u6570\u7EC4\u7C7B\u578B
-
 compiler.err.intf.meth.cant.have.body=\u63A5\u53E3\u62BD\u8C61\u65B9\u6CD5\u4E0D\u80FD\u5E26\u6709\u4E3B\u4F53
 
 # 0: symbol
@@ -436,6 +473,8 @@
 
 compiler.err.varargs.and.receiver =\u63A5\u6536\u65B9\u53C2\u6570\u4E0D\u5141\u8BB8\u4F7F\u7528 varargs \u8BB0\u53F7
 
+compiler.err.varargs.must.be.last =varargs \u53C2\u6570\u5FC5\u987B\u662F\u6700\u540E\u4E00\u4E2A\u53C2\u6570
+
 compiler.err.array.and.receiver =\u63A5\u6536\u65B9\u53C2\u6570\u4E0D\u5141\u8BB8\u4F7F\u7528\u4F20\u7EDF\u6570\u7EC4\u8BB0\u53F7
 
 compiler.err.variable.not.allowed=\u6B64\u5904\u4E0D\u5141\u8BB8\u4F7F\u7528\u53D8\u91CF\u58F0\u660E
@@ -516,6 +555,7 @@
 # 0: type, 1: type
 compiler.err.neither.conditional.subtype=? \u7684\u4E0D\u517C\u5BB9\u7C7B\u578B: \u4E24\u8005\u90FD\u4E0D\u662F\u5BF9\u65B9\u7684\u5B50\u7C7B\u578B\n\u7B2C\u4E8C\u4E2A\u64CD\u4F5C\u6570: {0}\n\u7B2C\u4E09\u4E2A\u64CD\u4F5C\u6570: {1}
 
+
 # 0: message segment
 compiler.misc.incompatible.type.in.conditional=\u6761\u4EF6\u8868\u8FBE\u5F0F\u4E2D\u7684\u7C7B\u578B\u9519\u8BEF\n{0}
 
@@ -527,6 +567,8 @@
 # 0: type
 compiler.misc.incompatible.ret.type.in.mref=\u65B9\u6CD5\u5F15\u7528\u4E2D\u7684\u8FD4\u56DE\u7C7B\u578B\u9519\u8BEF\n{0}
 
+compiler.err.lambda.body.neither.value.nor.void.compatible=lambda \u4E3B\u4F53\u4E0D\u662F\u503C, \u4E5F\u4E0D\u4E0E void \u517C\u5BB9
+
 # 0: list of type
 compiler.err.incompatible.thrown.types.in.mref=\u65B9\u6CD5\u5F15\u7528\u4E2D\u629B\u51FA\u7684\u7C7B\u578B{0}\u4E0D\u517C\u5BB9
 
@@ -547,6 +589,9 @@
 compiler.err.not.annotation.type={0}\u4E0D\u662F\u6CE8\u91CA\u7C7B\u578B
 
 # 0: symbol, 1: symbol
+compiler.err.not.def.access.package.cant.access=\u7531\u4E8E\u7A0B\u5E8F\u5305 {1} \u4E0D\u53EF\u89C1, \u56E0\u6B64 {0} \u4E0D\u53EF\u89C1
+
+# 0: symbol, 1: symbol
 compiler.err.not.def.access.class.intf.cant.access={1}\u4E2D\u7684{0}\u662F\u5728\u4E0D\u53EF\u8BBF\u95EE\u7684\u7C7B\u6216\u63A5\u53E3\u4E2D\u5B9A\u4E49\u7684
 
 # 0: symbol, 1: symbol
@@ -569,7 +614,7 @@
 # 0: symbol
 compiler.err.not.encl.class=\u4E0D\u662F\u5C01\u95ED\u7C7B: {0}
 
-# 0: name, 1: type, 2: unused
+# 0: name, 1: type
 compiler.err.operator.cant.be.applied=\u4E00\u5143\u8FD0\u7B97\u7B26 ''{0}'' \u7684\u64CD\u4F5C\u6570\u7C7B\u578B{1}\u9519\u8BEF
 
 # 0: name, 1: type, 2: type
@@ -584,7 +629,7 @@
 
 # Errors related to annotation processing
 
-# 0: symbol, 1: string, 2: stack-trace
+# 0: symbol, 1: string, 2: string (stack-trace)
 compiler.err.proc.cant.access=\u65E0\u6CD5\u8BBF\u95EE{0}\n{1}\n\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u53C2\u9605\u4EE5\u4E0B\u5806\u6808\u8DDF\u8E2A\u3002\n{2}
 
 # 0: symbol, 1: string
@@ -665,9 +710,6 @@
 # 0: symbol, 1: symbol
 compiler.err.synthetic.name.conflict=\u7B26\u53F7{0}\u4E0E{1}\u4E2D\u7684 compiler-synthesized \u7B26\u53F7\u51B2\u7A81
 
-# 0: symbol, 1: symbol
-compiler.warn.synthetic.name.conflict=\u7B26\u53F7{0}\u4E0E{1}\u4E2D\u7684 compiler-synthesized \u7B26\u53F7\u51B2\u7A81
-
 compiler.err.throws.not.allowed.in.intf.annotation=@interface \u6210\u5458\u4E2D\u4E0D\u5141\u8BB8\u4F7F\u7528 throws \u5B50\u53E5
 
 compiler.err.try.without.catch.or.finally=\u6709 ''try'', \u4F46\u662F\u6CA1\u6709 ''catch'' \u6216 ''finally''
@@ -688,13 +730,13 @@
 # 0: type, 1: type, 2: string
 compiler.err.types.incompatible.diff.ret=\u7C7B\u578B{0}\u548C{1}\u4E0D\u517C\u5BB9; \u4E24\u8005\u90FD\u5B9A\u4E49\u4E86{2}, \u4F46\u5374\u5E26\u6709\u4E0D\u76F8\u5173\u7684\u8FD4\u56DE\u7C7B\u578B
 
-# 0: kind, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
+# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
 compiler.err.types.incompatible.unrelated.defaults={0} {1}\u4ECE\u7C7B\u578B {4} \u548C {5} \u4E2D\u7EE7\u627F\u4E86{2}({3}) \u7684\u4E0D\u76F8\u5173\u9ED8\u8BA4\u503C
 
-# 0: kind, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
+# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
 compiler.err.types.incompatible.abstract.default={0} {1}\u4ECE\u7C7B\u578B {4} \u548C {5} \u4E2D\u7EE7\u627F\u4E86{2}({3}) \u7684\u62BD\u8C61\u548C\u9ED8\u8BA4\u503C
 
-# 0: name, 1: kind, 2: symbol
+# 0: name, 1: kind name, 2: symbol
 compiler.err.default.overrides.object.member={1} {2} \u4E2D\u7684\u9ED8\u8BA4\u65B9\u6CD5{0}\u8986\u76D6\u4E86 java.lang.Object \u7684\u6210\u5458
 
 # 0: type
@@ -736,6 +778,8 @@
 
 compiler.err.initializer.must.be.able.to.complete.normally=\u521D\u59CB\u5316\u7A0B\u5E8F\u5FC5\u987B\u80FD\u591F\u6B63\u5E38\u5B8C\u6210
 
+compiler.err.initializer.not.allowed=\u63A5\u53E3\u4E2D\u4E0D\u5141\u8BB8\u6709\u521D\u59CB\u5316\u7A0B\u5E8F
+
 # 0: type
 compiler.err.unreported.exception.need.to.catch.or.throw=\u672A\u62A5\u544A\u7684\u5F02\u5E38\u9519\u8BEF{0}; \u5FC5\u987B\u5BF9\u5176\u8FDB\u884C\u6355\u83B7\u6216\u58F0\u660E\u4EE5\u4FBF\u629B\u51FA
 
@@ -774,7 +818,10 @@
 compiler.misc.varargs.trustme.on.non.varargs.meth=\u65B9\u6CD5 {0} \u4E0D\u662F varargs \u65B9\u6CD5\u3002
 
 # 0: symbol
-compiler.misc.varargs.trustme.on.virtual.varargs=\u5B9E\u4F8B\u65B9\u6CD5 {0} \u4E0D\u662F\u6700\u7EC8\u7684\u3002
+compiler.misc.varargs.trustme.on.virtual.varargs=\u5B9E\u4F8B\u65B9\u6CD5 {0} \u65E2\u4E0D\u662F\u6700\u7EC8\u7684, \u4E5F\u4E0D\u662F\u79C1\u6709\u7684\u3002
+
+# 0: symbol
+compiler.misc.varargs.trustme.on.virtual.varargs.final.only=\u5B9E\u4F8B\u65B9\u6CD5 {0} \u4E0D\u662F\u6700\u7EC8\u7684\u3002
 
 # 0: type, 1: symbol kind, 2: symbol
 compiler.misc.inaccessible.varargs.type=\u5F62\u5F0F varargs \u5143\u7D20\u7C7B\u578B{0}\u65E0\u6CD5\u4ECE {1} {2} \u8FDB\u884C\u8BBF\u95EE
@@ -796,6 +843,37 @@
 # The following error messages do not refer to a line in the source code.
 compiler.err.cant.read.file=\u65E0\u6CD5\u8BFB\u53D6: {0}
 
+# 0: string
+compiler.err.plugin.not.found=\u627E\u4E0D\u5230\u63D2\u4EF6: {0}
+
+# 0: path
+compiler.warn.locn.unknown.file.on.module.path=\u6A21\u5757\u8DEF\u5F84\u4E2D\u7684\u672A\u77E5\u6587\u4EF6: {0}
+
+
+# 0: path
+compiler.err.locn.bad.module-info=\u8BFB\u53D6 {0} \u4E2D\u7684 module-info.class \u65F6\u51FA\u73B0\u95EE\u9898
+
+# 0: path
+compiler.err.locn.cant.read.directory=\u65E0\u6CD5\u8BFB\u53D6\u76EE\u5F55 {0}
+
+# 0: path
+compiler.err.locn.cant.read.file=\u65E0\u6CD5\u8BFB\u53D6\u6587\u4EF6 {0}
+
+# 0: path
+compiler.err.locn.cant.get.module.name.for.jar=\u65E0\u6CD5\u786E\u5B9A {0} \u7684\u6A21\u5757\u540D\u79F0
+
+# 0: path
+compiler.err.multi-module.outdir.cannot.be.exploded.module=\u5728\u591A\u6A21\u5757\u6A21\u5F0F\u4E0B, \u8F93\u51FA\u76EE\u5F55\u4E0D\u80FD\u662F\u5C55\u5F00\u7684\u6A21\u5757: {0}
+
+# 0: path
+compiler.warn.outdir.is.in.exploded.module=\u8F93\u51FA\u76EE\u5F55\u4F4D\u4E8E\u5C55\u5F00\u7684\u6A21\u5757\u4E2D: {0}
+
+# 0: path
+compiler.err.locn.module-info.not.allowed.on.patch.path=\u5728\u8865\u4E01\u7A0B\u5E8F\u8DEF\u5F84\u4E2D\u4E0D\u5141\u8BB8 module-info.class: {0}
+
+# 0: string
+compiler.err.locn.invalid.arg.for.xpatch=-Xpatch \u9009\u9879\u7684\u53C2\u6570\u65E0\u6548: {0}
+
 #####
 
 # Fatal Errors
@@ -816,6 +894,8 @@
 ## miscellaneous strings
 ##
 
+compiler.misc.diamond.anonymous.methods.implicitly.override=(\u7531\u4E8E <>, \u533F\u540D\u7C7B\u4E2D\u58F0\u660E\u7684\u6BCF\u4E2A\u975E\u79C1\u6709\u65B9\u6CD5\u5FC5\u987B\u8986\u76D6\u6216\u5B9E\u73B0\u8D85\u7C7B\u578B\u4E2D\u7684\u65B9\u6CD5)
+
 compiler.misc.source.unavailable=(\u6E90\u4E0D\u53EF\u7528)
 
 compiler.misc.base.membership=\u60A8\u7684\u6240\u6709\u57FA\u7C7B\u90FD\u5C5E\u4E8E\u6211\u4EEC
@@ -826,6 +906,9 @@
 # 0: number, 1: string, 2: set of symbol, 3: boolean
 compiler.misc.x.print.rounds=\u5FAA\u73AF {0}:\n\t\u8F93\u5165\u6587\u4EF6: {1}\n\t\u6CE8\u91CA: {2}\n\t\u6700\u540E\u4E00\u4E2A\u5FAA\u73AF: {3}
 
+# 0: file name
+compiler.warn.file.from.future=\u6587\u4EF6 {0} \u7684\u4FEE\u6539\u65E5\u671F\u662F\u672A\u6765\u7684\u65E5\u671F
+
 #####
 
 ## The following string will appear before all messages keyed as:
@@ -833,8 +916,6 @@
 
 compiler.note.compressed.diags=\u67D0\u4E9B\u6D88\u606F\u5DF2\u7ECF\u8FC7\u7B80\u5316; \u8BF7\u4F7F\u7528 -Xdiags:verbose \u91CD\u65B0\u7F16\u8BD1\u4EE5\u83B7\u5F97\u5B8C\u6574\u8F93\u51FA
 
-compiler.note.potential.lambda.found=\u53EF\u5C06\u6B64\u533F\u540D\u5185\u90E8\u7C7B\u521B\u5EFA\u8F6C\u6362\u4E3A lambda \u8868\u8FBE\u5F0F\u3002
-
 # 0: boolean, 1: symbol
 compiler.note.lambda.stat=\u8F6C\u6362 lambda \u8868\u8FBE\u5F0F\n\u66FF\u4EE3 metafactory = {0}\n\u5408\u6210\u65B9\u6CD5 = {1}
 
@@ -873,19 +954,6 @@
 
 compiler.note.unchecked.plural.additional=\u67D0\u4E9B\u8F93\u5165\u6587\u4EF6\u8FD8\u4F7F\u7528\u4E86\u672A\u7ECF\u68C0\u67E5\u6216\u4E0D\u5B89\u5168\u7684\u64CD\u4F5C\u3002
 
-# 0: file name
-compiler.note.sunapi.filename={0}\u4F7F\u7528\u4E86\u53EF\u80FD\u4F1A\u5728\u672A\u6765\u53D1\u884C\u7248\u4E2D\u5220\u9664\u7684\u5185\u90E8\u4E13\u7528 API\u3002
-
-compiler.note.sunapi.plural=\u67D0\u4E9B\u8F93\u5165\u6587\u4EF6\u4F7F\u7528\u4E86\u53EF\u80FD\u4F1A\u5728\u672A\u6765\u53D1\u884C\u7248\u4E2D\u5220\u9664\u7684\u5185\u90E8\u4E13\u7528 API\u3002
-
-# The following string may appear after one of the above sunapi messages.
-compiler.note.sunapi.recompile=\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u4F7F\u7528 -Xlint:sunapi \u91CD\u65B0\u7F16\u8BD1\u3002
-
-# 0: file name
-compiler.note.sunapi.filename.additional={0}\u4F7F\u7528\u4E86\u53EF\u80FD\u4F1A\u5728\u672A\u6765\u53D1\u884C\u7248\u4E2D\u5220\u9664\u7684\u5176\u4ED6\u5185\u90E8\u4E13\u7528 API\u3002
-
-compiler.note.sunapi.plural.additional=\u67D0\u4E9B\u8F93\u5165\u6587\u4EF6\u4F7F\u7528\u4E86\u53EF\u80FD\u4F1A\u5728\u672A\u6765\u53D1\u884C\u7248\u4E2D\u5220\u9664\u7684\u5176\u4ED6\u5185\u90E8\u4E13\u7528 API\u3002
-
 # Notes related to annotation processing
 
 # Print a client-generated note; assumed to be localized, no translation required
@@ -925,13 +993,6 @@
 # 0: file name
 compiler.misc.verbose.wrote.file=[\u5DF2\u5199\u5165{0}]
 
-## extra output when using -verbose (Retro)
-compiler.misc.verbose.retro=[\u6B63\u5728\u66F4\u65B0{0}]
-
-compiler.misc.verbose.retro.with=\t\u6B63\u5728\u4F7F\u7528{1}\u66F4\u65B0{0}
-
-compiler.misc.verbose.retro.with.list=\t\u6B63\u5728\u4F7F\u7528\u7C7B\u578B\u53C2\u6570{1}, \u8D85\u7C7B\u578B{2}\u548C\u63A5\u53E3{3}\u66F4\u65B0{0}
-
 ## extra output when using -verbose (code/ClassReader)
 # 0: string
 compiler.misc.verbose.loading=[\u6B63\u5728\u52A0\u8F7D{0}]
@@ -942,11 +1003,6 @@
 # 0: string
 compiler.misc.verbose.classpath=[\u7C7B\u6587\u4EF6\u7684\u641C\u7D22\u8DEF\u5F84: {0}]
 
-## extra output when using -checkclassfile (code/ClassReader)
-compiler.misc.ccf.found.later.version=\u7C7B\u6587\u4EF6\u7684\u7248\u672C\u9AD8\u4E8E\u9884\u671F: {0}
-
-compiler.misc.ccf.unrecognized.attribute=\u65E0\u6CD5\u8BC6\u522B\u7684\u5C5E\u6027: {0}
-
 ## extra output when using -prompt (util/Log)
 compiler.misc.resume.abort=\u7EE7\u7EED(R), \u653E\u5F03(A)>
 
@@ -970,6 +1026,9 @@
 # 0: file name
 compiler.warn.dir.path.element.not.found=\u9519\u8BEF\u7684\u8DEF\u5F84\u5143\u7D20 "{0}": \u6CA1\u6709\u8FD9\u79CD\u76EE\u5F55
 
+# 0: file name
+compiler.warn.dir.path.element.not.directory=\u9519\u8BEF\u7684\u8DEF\u5F84\u5143\u7D20 "{0}": \u4E0D\u662F\u76EE\u5F55
+
 compiler.warn.finally.cannot.complete=finally \u5B50\u53E5\u65E0\u6CD5\u6B63\u5E38\u5B8C\u6210
 
 # 0: symbol, 1: symbol
@@ -1038,13 +1097,19 @@
 # 0: string
 compiler.warn.option.obsolete.target=\u76EE\u6807\u503C{0}\u5DF2\u8FC7\u65F6, \u5C06\u5728\u672A\u6765\u6240\u6709\u53D1\u884C\u7248\u4E2D\u5220\u9664
 
+# 0: string, 1: string
+compiler.err.option.removed.source=\u4E0D\u518D\u652F\u6301\u6E90\u9009\u9879 {0}\u3002\u8BF7\u4F7F\u7528 {1} \u6216\u66F4\u9AD8\u7248\u672C\u3002
+
+# 0: string, 1: string
+compiler.err.option.removed.target=\u4E0D\u518D\u652F\u6301\u76EE\u6807\u9009\u9879 {0}\u3002\u8BF7\u4F7F\u7528 {1} \u6216\u66F4\u9AD8\u7248\u672C\u3002
+
 compiler.warn.option.obsolete.suppression=\u8981\u9690\u85CF\u6709\u5173\u5DF2\u8FC7\u65F6\u9009\u9879\u7684\u8B66\u544A, \u8BF7\u4F7F\u7528 -Xlint:-options\u3002
 
 # 0: name, 1: number, 2: number, 3: number, 4: number
 compiler.warn.future.attr={1}.{2} \u7248\u7C7B\u6587\u4EF6\u4E2D\u5F15\u5165\u7684 {0} \u5C5E\u6027\u5728 {3}.{4} \u7248\u7C7B\u6587\u4EF6\u4E2D\u88AB\u5FFD\u7565
 
 # Warnings related to annotation processing
-# 0: name
+# 0: string
 compiler.warn.proc.package.does.not.exist=\u7A0B\u5E8F\u5305{0}\u4E0D\u5B58\u5728
 
 # 0: name
@@ -1146,12 +1211,16 @@
 # 0: unused, 1: unused
 compiler.warn.diamond.redundant.args=\u65B0\u8868\u8FBE\u5F0F\u4E2D\u5B58\u5728\u5197\u4F59\u7C7B\u578B\u53C2\u6570 (\u6539\u7528 diamond \u8FD0\u7B97\u7B26)\u3002
 
-# 0: type, 1: type
-compiler.warn.diamond.redundant.args.1=\u65B0\u8868\u8FBE\u5F0F\u4E2D\u5B58\u5728\u5197\u4F59\u7C7B\u578B\u53C2\u6570 (\u6539\u7528 diamond \u8FD0\u7B97\u7B26)\u3002\n\u663E\u5F0F: {0}\n\u63A8\u65AD: {1}
+compiler.warn.potential.lambda.found=\u53EF\u5C06\u6B64\u533F\u540D\u5185\u90E8\u7C7B\u521B\u5EFA\u8F6C\u6362\u4E3A lambda \u8868\u8FBE\u5F0F\u3002
+
+compiler.warn.method.redundant.typeargs=\u65B9\u6CD5\u8C03\u7528\u4E2D\u5B58\u5728\u5197\u4F59\u7C7B\u578B\u53C2\u6570\u3002
 
 # 0: symbol, 1: message segment
 compiler.warn.varargs.redundant.trustme.anno=\u5197\u4F59\u7684 {0} \u6CE8\u91CA\u3002{1}
 
+# 0: symbol
+compiler.warn.access.to.sensitive.member.from.serializable.element=\u53EF\u4E32\u884C\u5316\u5143\u7D20\u5BF9\u654F\u611F\u6210\u5458 {0} \u7684\u8BBF\u95EE\u53EF\u4EE5\u7531\u4E0D\u53D7\u4FE1\u4EFB\u7684\u4EE3\u7801\u516C\u5F00\u6267\u884C
+
 #####
 
 ## The following are tokens which are non-terminals in the language. They should
@@ -1192,7 +1261,7 @@
 # 0: token, 1: token, 2: token
 compiler.err.expected3=\u9700\u8981{0}, {1}\u6216{2}
 
-compiler.err.premature.eof=\u89E3\u6790\u65F6\u5DF2\u5230\u8FBE\u6587\u4EF6\u7ED3\u5C3E
+compiler.err.premature.eof=\u8FDB\u884C\u89E3\u6790\u65F6\u5DF2\u5230\u8FBE\u6587\u4EF6\u7ED3\u5C3E
 
 ## The following are related in form, but do not easily fit the above paradigm.
 compiler.err.dot.class.expected=\u9700\u8981 ''.class''
@@ -1213,11 +1282,19 @@
 
 compiler.misc.unnamed.package=\u672A\u547D\u540D\u7A0B\u5E8F\u5305
 
+compiler.misc.unnamed.module=\u672A\u547D\u540D\u6A21\u5757
+
 #####
 
 # 0: symbol, 1: message segment
 compiler.err.cant.access=\u65E0\u6CD5\u8BBF\u95EE{0}\n{1}
 
+# 0: name
+compiler.misc.bad.class.file=\u7C7B\u6587\u4EF6\u5BF9\u4E8E\u7C7B {0} \u65E0\u6548
+
+# 0: file name, 1: string (expected constant pool entry type), 2: number (constant pool index)
+compiler.misc.bad.const.pool.entry={0} \u4E2D\u9519\u8BEF\u7684\u5E38\u91CF\u6C60\u6761\u76EE\n\u9884\u671F\u4E3A\u7D22\u5F15 {2} \u5904\u7684 {1}
+
 # 0: file name, 1: message segment
 compiler.misc.bad.class.file.header=\u9519\u8BEF\u7684\u7C7B\u6587\u4EF6: {0}\n{1}\n\u8BF7\u5220\u9664\u8BE5\u6587\u4EF6\u6216\u786E\u4FDD\u8BE5\u6587\u4EF6\u4F4D\u4E8E\u6B63\u786E\u7684\u7C7B\u8DEF\u5F84\u5B50\u76EE\u5F55\u4E2D\u3002
 
@@ -1244,14 +1321,16 @@
 
 compiler.misc.bad.type.annotation.value=\u9519\u8BEF\u7684\u7C7B\u578B\u6CE8\u91CA\u76EE\u6807\u7C7B\u578B\u503C: {0}
 
+compiler.misc.bad.module-info.name=\u9519\u8BEF\u7684\u7C7B\u540D
+
 compiler.misc.class.file.wrong.class=\u7C7B\u6587\u4EF6\u5305\u542B\u9519\u8BEF\u7684\u7C7B: {0}
 
 compiler.misc.class.file.not.found=\u627E\u4E0D\u5230{0}\u7684\u7C7B\u6587\u4EF6
 
-# 0: classfile major version, 1: classfile minor version
+# 0: string (classfile major version), 1: string (classfile minor version)
 compiler.misc.invalid.default.interface=\u5728 {0}.{1} \u7248\u7C7B\u6587\u4EF6\u4E2D\u627E\u5230\u9ED8\u8BA4\u65B9\u6CD5
 
-# 0: classfile major version, 1: classfile minor version
+# 0: string (classfile major version), 1: string (classfile minor version)
 compiler.misc.invalid.static.interface=\u5728 {0}.{1} \u7248\u7C7B\u6587\u4EF6\u4E2D\u627E\u5230\u9759\u6001\u65B9\u6CD5
 
 # 0: name
@@ -1259,6 +1338,8 @@
 
 compiler.misc.file.does.not.contain.package=\u6587\u4EF6\u4E0D\u5305\u542B\u7A0B\u5E8F\u5305{0}
 
+compiler.misc.file.does.not.contain.module=\u6587\u4EF6\u4E0D\u5305\u542B\u6A21\u5757\u58F0\u660E
+
 compiler.misc.illegal.start.of.class.file=\u975E\u6CD5\u7684\u7C7B\u6587\u4EF6\u5F00\u59CB
 
 compiler.misc.unable.to.access.file=\u65E0\u6CD5\u8BBF\u95EE\u6587\u4EF6: {0}
@@ -1267,6 +1348,8 @@
 
 compiler.misc.undecl.type.var=\u672A\u58F0\u660E\u7684\u7C7B\u578B\u53D8\u91CF: {0}
 
+compiler.misc.malformed.vararg.method=\u7C7B\u6587\u4EF6\u5305\u542B\u683C\u5F0F\u9519\u8BEF\u7684\u53D8\u91CF\u5143\u6570\u65B9\u6CD5: {0}
+
 compiler.misc.wrong.version=\u7C7B\u6587\u4EF6\u5177\u6709\u9519\u8BEF\u7684\u7248\u672C {0}.{1}, \u5E94\u4E3A {2}.{3}
 
 #####
@@ -1345,10 +1428,16 @@
 # 0: type, 1: list of type
 compiler.misc.incompatible.upper.bounds=\u63A8\u8BBA\u53D8\u91CF {0} \u5177\u6709\u4E0D\u517C\u5BB9\u7684\u4E0A\u9650 {1}
 
+# 0: type, 1: list of type
+compiler.misc.incompatible.eq.bounds=\u63A8\u8BBA\u53D8\u91CF{0}\u5177\u6709\u4E0D\u517C\u5BB9\u7684\u7B49\u5F0F\u7EA6\u675F\u6761\u4EF6{1}
+
 # 0: type, 1: list of type, 2: list of type
 compiler.misc.incompatible.eq.upper.bounds=\u63A8\u8BBA\u53D8\u91CF {0} \u5177\u6709\u4E0D\u517C\u5BB9\u7684\u9650\u5236\u8303\u56F4\n\u7B49\u5F0F\u7EA6\u675F\u6761\u4EF6: {1}\n\u4E0A\u9650: {2}
 
 # 0: type, 1: list of type, 2: list of type
+compiler.misc.incompatible.upper.lower.bounds=\u63A8\u8BBA\u53D8\u91CF{0}\u5177\u6709\u4E0D\u517C\u5BB9\u7684\u8FB9\u754C\n\u4E0A\u9650: {1}\n\u4E0B\u9650: {2}
+
+# 0: type, 1: list of type, 2: list of type
 compiler.misc.incompatible.eq.lower.bounds=\u63A8\u8BBA\u53D8\u91CF{0}\u5177\u6709\u4E0D\u517C\u5BB9\u7684\u9650\u5236\u8303\u56F4\n\u7B49\u5F0F\u7EA6\u675F\u6761\u4EF6: {1}\n\u4E0B\u9650: {2}
 
 # 0: list of type, 1: type, 2: type
@@ -1378,6 +1467,12 @@
 # 0: type
 compiler.misc.diamond.non.generic=\u65E0\u6CD5\u5C06 ''<>'' \u4E0E\u975E\u6CDB\u578B\u7C7B{0}\u4E00\u8D77\u4F7F\u7528
 
+# 0: list of type, 1: message segment
+compiler.misc.diamond.invalid.arg=\u6B64\u4E0A\u4E0B\u6587\u4E2D\u4E0D\u5141\u8BB8\u4F7F\u7528\u4E3A{1}\u63A8\u65AD\u7684\u7C7B\u578B\u53C2\u6570{0}\n\u63A8\u65AD\u53C2\u6570\u5728\u7B7E\u540D\u5C5E\u6027\u4E2D\u65E0\u6CD5\u8868\u8FBE
+
+# 0: list of type, 1: message segment
+compiler.misc.diamond.invalid.args=\u6B64\u4E0A\u4E0B\u6587\u4E2D\u4E0D\u5141\u8BB8\u4F7F\u7528\u4E3A{1}\u63A8\u65AD\u7684\u7C7B\u578B\u53C2\u6570{0}\n\u63A8\u65AD\u53C2\u6570\u5728\u7B7E\u540D\u5C5E\u6027\u4E2D\u65E0\u6CD5\u8868\u8FBE
+
 # 0: unused
 compiler.misc.diamond.and.explicit.params=\u4E0D\u80FD\u5C06 ''<>'' \u4E0E\u6784\u9020\u5668\u7684\u663E\u5F0F\u7C7B\u578B\u53C2\u6570\u4E00\u8D77\u4F7F\u7528
 
@@ -1409,10 +1504,13 @@
 compiler.err.non-static.cant.be.ref=\u65E0\u6CD5\u4ECE\u9759\u6001\u4E0A\u4E0B\u6587\u4E2D\u5F15\u7528\u975E\u9759\u6001 {0} {1}
 
 # 0: symbol kind, 1: symbol
-compiler.misc.non-static.cant.be.ref=\u65E0\u6CD5\u4ECE\u9759\u6001\u4E0A\u4E0B\u6587\u4E2D\u5F15\u7528\u975E\u9759\u6001 {0} {1}
+compiler.misc.bad.static.method.in.unbound.lookup=\u5728\u672A\u7ED1\u5B9A\u67E5\u627E\u4E2D\u627E\u5230\u610F\u5916\u7684\u9759\u6001 {0} {1}
 
 # 0: symbol kind, 1: symbol
-compiler.misc.static.method.in.unbound.lookup=\u5728\u672A\u7ED1\u5B9A\u67E5\u627E\u4E2D\u627E\u5230\u9759\u6001{0} {1}
+compiler.misc.bad.instance.method.in.unbound.lookup=\u5728\u672A\u7ED1\u5B9A\u67E5\u627E\u4E2D\u627E\u5230\u610F\u5916\u7684\u5B9E\u4F8B {0} {1}
+
+# 0: symbol kind, 1: symbol
+compiler.misc.bad.static.method.in.bound.lookup=\u5728\u7ED1\u5B9A\u67E5\u627E\u4E2D\u627E\u5230\u610F\u5916\u7684\u9759\u6001 {0} {1}
 
 ## Both arguments ({0}, {1}) are "kindname"s.  {0} is a comma-separated list
 ## of kindnames (the list should be identical to that provided in source.
@@ -1494,6 +1592,8 @@
 
 compiler.misc.kindname.package=\u7A0B\u5E8F\u5305
 
+compiler.misc.kindname.module=\u6A21\u5757
+
 compiler.misc.kindname.static.init=\u9759\u6001\u521D\u59CB\u5316\u7A0B\u5E8F
 
 compiler.misc.kindname.instance.init=\u5B9E\u4F8B\u521D\u59CB\u5316\u7A0B\u5E8F
@@ -1534,6 +1634,9 @@
 compiler.misc.cant.override={1}\u4E2D\u7684{0}\u65E0\u6CD5\u8986\u76D6{3}\u4E2D\u7684{2}
 
 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
+compiler.misc.cant.hide={1} \u4E2D\u7684 {0} \u65E0\u6CD5\u9690\u85CF {3} \u4E2D\u7684 {2}
+
+# 0: symbol, 1: symbol, 2: symbol, 3: symbol
 compiler.misc.cant.implement={1}\u4E2D\u7684{0}\u65E0\u6CD5\u5B9E\u73B0{3}\u4E2D\u7684{2}
 
 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
@@ -1557,17 +1660,18 @@
 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
 compiler.misc.varargs.clash.with={1}\u4E2D\u7684{0}\u8986\u76D6\u4E86{3}\u4E2D\u7684{2}
 
-# 0: unused
-compiler.misc.diamond.and.anon.class=\u65E0\u6CD5\u5C06 ''<>'' \u4E0E\u533F\u540D\u5185\u90E8\u7C7B\u4E00\u8D77\u4F7F\u7528
-
 # 0: symbol kind, 1: symbol, 2: symbol, 3: message segment
 compiler.misc.inapplicable.method={0} {1}.{2}\u4E0D\u9002\u7528\n({3})
 
 ########################################
 # Diagnostics for language feature changes
 ########################################
+
 # 0: string
-compiler.err.unsupported.fp.lit=-source {0} \u4E2D\u4E0D\u652F\u6301\u5341\u516D\u8FDB\u5236\u6D6E\u70B9\u6587\u5B57\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u5341\u516D\u8FDB\u5236\u6D6E\u70B9\u6587\u5B57)
+compiler.err.modules.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u6A21\u5757\n(\u8BF7\u4F7F\u7528 -source 9 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u6A21\u5757)
+
+# 0: string
+compiler.misc.diamond.and.anon.class.not.supported.in.source=\u5728 -source {0} \u4E2D\u65E0\u6CD5\u4F7F\u7528\u5E26\u6709\u533F\u540D\u5185\u90E8\u7C7B\u7684 ''<>''\n(\u8BF7\u4F7F\u7528 -source 9 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u5141\u8BB8\u5E26\u6709\u533F\u540D\u5185\u90E8\u7C7B\u7684 ''<>'')
 
 # 0: string
 compiler.err.unsupported.binary.lit=-source {0} \u4E2D\u4E0D\u652F\u6301\u4E8C\u8FDB\u5236\u6587\u5B57\n(\u8BF7\u4F7F\u7528 -source 7 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u4E8C\u8FDB\u5236\u6587\u5B57)
@@ -1578,17 +1682,18 @@
 # 0: string
 compiler.err.try.with.resources.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301 try-with-resources\n(\u8BF7\u4F7F\u7528 -source 7 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528 try-with-resources)
 
-compiler.warn.enum.as.identifier=\u4ECE\u53D1\u884C\u7248 5 \u5F00\u59CB, ''enum'' \u4E3A\u5173\u952E\u5B57, \u800C\u4E0D\u7528\u4F5C\u6807\u8BC6\u7B26\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u5C06 ''enum'' \u7528\u4F5C\u5173\u952E\u5B57)
+# 0: string
+compiler.err.var.in.try.with.resources.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u5728 try-with-resources \u4F7F\u7528\u53D8\u91CF\n(\u8BF7\u4F7F\u7528 -source 9 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u5141\u8BB8\u5728 try-with-resources \u4E2D\u4F7F\u7528\u53D8\u91CF)
 
-compiler.warn.assert.as.identifier=\u4ECE\u53D1\u884C\u7248 1.4 \u5F00\u59CB, ''assert'' \u662F\u4E00\u4E2A\u5173\u952E\u5B57, \u4F46\u4E0D\u80FD\u7528\u4F5C\u6807\u8BC6\u7B26\n(\u8BF7\u4F7F\u7528 -source 1.4 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u5C06 ''assert'' \u7528\u4F5C\u5173\u952E\u5B57)
+compiler.warn.underscore.as.identifier=\u4ECE\u53D1\u884C\u7248 9 \u5F00\u59CB, ''_'' \u4E3A\u5173\u952E\u5B57, \u4E0D\u80FD\u7528\u4F5C\u6807\u8BC6\u7B26
 
-compiler.warn.underscore.as.identifier=''_'' \u7528\u4F5C\u6807\u8BC6\u7B26\n(Java SE 8 \u4E4B\u540E\u7684\u53D1\u884C\u7248\u4E2D\u53EF\u80FD\u4E0D\u652F\u6301\u4F7F\u7528 ''_'' \u4F5C\u4E3A\u6807\u8BC6\u7B26)
+compiler.err.underscore.as.identifier=\u4ECE\u53D1\u884C\u7248 9 \u5F00\u59CB, ''_'' \u4E3A\u5173\u952E\u5B57, \u4E0D\u80FD\u7528\u4F5C\u6807\u8BC6\u7B26
 
 compiler.err.underscore.as.identifier.in.lambda=''_'' \u7528\u4F5C\u6807\u8BC6\u7B26\n(\u5BF9\u4E8E lambda \u53C2\u6570, \u7981\u6B62\u5C06 ''_'' \u7528\u4F5C\u6807\u8BC6\u7B26)
 
-compiler.err.enum.as.identifier=\u4ECE\u53D1\u884C\u7248 5 \u5F00\u59CB, ''enum'' \u4E3A\u5173\u952E\u5B57, \u800C\u4E0D\u7528\u4F5C\u6807\u8BC6\u7B26\n(\u8BF7\u4F7F\u7528 -source 1.4 \u6216\u66F4\u4F4E\u7248\u672C\u4EE5\u5C06 ''enum'' \u7528\u4F5C\u6807\u8BC6\u7B26)
+compiler.err.enum.as.identifier=\u4ECE\u53D1\u884C\u7248 5 \u5F00\u59CB, ''enum'' \u4E3A\u5173\u952E\u5B57, \u4E0D\u80FD\u7528\u4F5C\u6807\u8BC6\u7B26
 
-compiler.err.assert.as.identifier=\u4ECE\u53D1\u884C\u7248 1.4 \u5F00\u59CB, ''assert'' \u662F\u4E00\u4E2A\u5173\u952E\u5B57, \u4F46\u4E0D\u80FD\u7528\u4F5C\u6807\u8BC6\u7B26\n(\u8BF7\u4F7F\u7528 -source 1.3 \u6216\u66F4\u4F4E\u7248\u672C\u4EE5\u5C06 ''assert'' \u7528\u4F5C\u6807\u8BC6\u7B26)
+compiler.err.assert.as.identifier=\u4ECE\u53D1\u884C\u7248 1.4 \u5F00\u59CB, ''assert'' \u4E3A\u5173\u952E\u5B57, \u4E0D\u80FD\u7528\u4F5C\u6807\u8BC6\u7B26
 
 # TODO 308: make a better error message
 compiler.err.this.as.identifier=\u4ECE\u53D1\u884C\u7248 8 \u5F00\u59CB, ''this'' \u53EA\u80FD\u4F5C\u4E3A\u63A5\u6536\u65B9\u7C7B\u578B\u7684\u53C2\u6570\u540D, \u8BE5\u53C2\u6570\u5FC5\u987B\u4E3A\u7B2C\u4E00\u4E2A\u53C2\u6570
@@ -1619,30 +1724,15 @@
 compiler.err.no.annotations.on.dot.class=\u7C7B\u6587\u5B57\u7C7B\u578B\u4E2D\u4E0D\u5141\u8BB8\u4F7F\u7528\u4EFB\u4F55\u6CE8\u91CA
 
 # 0: string
-compiler.err.generics.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u6CDB\u578B\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u6CDB\u578B)
-
-# 0: string
-compiler.err.varargs.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301 variable-arity \u65B9\u6CD5\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528 variable-arity \u65B9\u6CD5)
-
-# 0: string
-compiler.err.annotations.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u6CE8\u91CA\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u6CE8\u91CA)
-
-# 0: string
 compiler.err.type.annotations.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u7C7B\u578B\u6CE8\u91CA\n(\u8BF7\u4F7F\u7528 -source 8 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u7C7B\u578B\u6CE8\u91CA)
 
 # 0: string
+compiler.err.annotations.after.type.params.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u65B9\u6CD5\u7C7B\u578B\u53C2\u6570\u540E\u7684\u6CE8\u91CA\n(\u8BF7\u4F7F\u7528 -source 8 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u65B9\u6CD5\u7C7B\u578B\u53C2\u6570\u540E\u7684\u6CE8\u91CA)
+
+# 0: string
 compiler.err.repeatable.annotations.not.supported.in.source=-source {0}\u4E2D\u4E0D\u652F\u6301\u91CD\u590D\u6CE8\u91CA\n(\u8BF7\u4F7F\u7528 -source 8 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u91CD\u590D\u6CE8\u91CA)
 
 # 0: string
-compiler.err.foreach.not.supported.in.source=-source {0}\u4E2D\u4E0D\u652F\u6301\u589E\u5F3A\u578B for \u5FAA\u73AF\n(\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528 for-each \u5FAA\u73AF)
-
-# 0: string
-compiler.err.static.import.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u9759\u6001\u5BFC\u5165\u58F0\u660E\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u9759\u6001\u5BFC\u5165\u58F0\u660E)
-
-# 0: string
-compiler.err.enums.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u679A\u4E3E\n(\u8BF7\u4F7F\u7528 -source 5 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u679A\u4E3E)
-
-# 0: string
 compiler.err.diamond.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301 diamond \u8FD0\u7B97\u7B26\n(\u8BF7\u4F7F\u7528 -source 7 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528 diamond \u8FD0\u7B97\u7B26)
 
 # 0: string
@@ -1666,6 +1756,12 @@
 # 0: string
 compiler.err.static.intf.methods.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u9759\u6001\u63A5\u53E3\u65B9\u6CD5\n(\u8BF7\u4F7F\u7528 -source 8 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u9759\u6001\u63A5\u53E3\u65B9\u6CD5)
 
+# 0: string
+compiler.err.static.intf.method.invoke.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u9759\u6001\u63A5\u53E3\u65B9\u6CD5\u8C03\u7528\n(\u8BF7\u4F7F\u7528 -source 8 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u9759\u6001\u63A5\u53E3\u65B9\u6CD5\u8C03\u7528)
+
+# 0: string
+compiler.err.private.intf.methods.not.supported.in.source=-source {0} \u4E2D\u4E0D\u652F\u6301\u79C1\u6709\u63A5\u53E3\u65B9\u6CD5\n(\u8BF7\u4F7F\u7528 -source 9 \u6216\u66F4\u9AD8\u7248\u672C\u4EE5\u542F\u7528\u79C1\u6709\u63A5\u53E3\u65B9\u6CD5)
+
 ########################################
 # Diagnostics for verbose resolution
 # used by Resolve (debug only)
@@ -1683,10 +1779,10 @@
 # 0: type
 compiler.misc.partial.inst.sig=\u90E8\u5206\u5B9E\u4F8B\u5316\u4E3A: {0}
 
-# 0: name, 1: symbol, 2: number, 3: MethodResolutionPhase, 4: list of type or message segment, 5: list of type or message segment
+# 0: name, 1: symbol, 2: number, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
 compiler.note.verbose.resolve.multi=\u5C06\u7C7B\u578B {1} \u7684\u65B9\u6CD5 {0} \u89E3\u6790\u4E3A\u5019\u9009\u9879 {2}\n\u9636\u6BB5: {3}\n\u5177\u6709\u5B9E\u9645\u503C: {4}\n\u5177\u6709\u7C7B\u578B\u53C2\u6570: {5}\n\u5019\u9009\u9879:
 
-# 0: name, 1: symbol, 2: unused, 3: MethodResolutionPhase, 4: list of type or message segment, 5: list of type or message segment
+# 0: name, 1: symbol, 2: unused, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
 compiler.note.verbose.resolve.multi.1=\u7C7B\u578B {1} \u7684\u65B9\u6CD5 {0} \u89E3\u6790\u9519\u8BEF\n\u9636\u6BB5: {3}\n\u5177\u6709\u5B9E\u9645\u503C: {4}\n\u5177\u6709\u7C7B\u578B\u53C2\u6570: {5}\n\u5019\u9009\u9879:
 
 # 0: symbol, 1: type, 2: type
@@ -1756,6 +1852,7 @@
 # 0: set of type
 compiler.misc.where.description.typevar.1=\u5176\u4E2D, {0}\u662F\u7C7B\u578B\u53D8\u91CF:
 
+# 0: set of type
 compiler.misc.where.description.intersection.1=\u5176\u4E2D, {0}\u662F\u4EA4\u53C9\u7C7B\u578B:
 
 ###
@@ -1793,4 +1890,125 @@
 
 compiler.err.dc.unterminated.string=\u672A\u7EC8\u6B62\u7684\u5B57\u7B26\u4E32
 
+###
+# errors related to modules
 
+compiler.err.expected.module=\u9884\u671F ''module''
+
+# 0: symbol
+compiler.err.module.not.found=\u627E\u4E0D\u5230\u6A21\u5757: {0}
+
+compiler.err.too.many.modules=\u627E\u5230\u592A\u591A\u7684\u6A21\u5757\u58F0\u660E
+
+# 0: symbol
+compiler.err.duplicate.module=\u91CD\u590D\u7684\u6A21\u5757: {0}
+
+# 0: symbol
+compiler.err.duplicate.requires=\u91CD\u590D\u7684 requires \u6307\u4EE4: {0}
+
+# 0: symbol
+compiler.err.duplicate.exports=\u91CD\u590D\u7684 export \u6307\u4EE4: {0}
+
+# 0: symbol, 1: symbol
+compiler.err.duplicate.provides=\u91CD\u590D\u7684 provides \u6307\u4EE4: \u670D\u52A1 {0}, \u5B9E\u73B0 {1}
+
+# 0: symbol
+compiler.err.duplicate.uses=\u91CD\u590D\u7684 uses \u6307\u4EE4: {0}
+
+# 0: symbol
+compiler.err.service.implementation.is.abstract=\u670D\u52A1\u5B9E\u73B0\u662F\u62BD\u8C61\u7C7B: {0}
+
+# 0: symbol
+compiler.err.service.implementation.is.inner=\u670D\u52A1\u5B9E\u73B0\u662F\u5185\u90E8\u7C7B: {0}
+
+# 0: symbol
+compiler.err.service.definition.is.inner=\u670D\u52A1\u5B9A\u4E49\u662F\u5185\u90E8\u7C7B: {0}
+
+# 0: symbol
+compiler.err.service.implementation.doesnt.have.a.no.args.constructor=\u670D\u52A1\u5B9E\u73B0\u6CA1\u6709\u9ED8\u8BA4\u7684\u6784\u9020\u5668: {0}
+
+# 0: symbol
+compiler.err.service.implementation.no.args.constructor.not.public=\u670D\u52A1\u5B9E\u73B0\u7684\u65E0\u53C2\u6570\u6784\u9020\u5668\u4E0D\u662F\u516C\u5171\u6784\u9020\u5668: {0}
+
+# 0: symbol
+compiler.err.package.empty.or.not.found=\u7A0B\u5E8F\u5305\u4E3A\u7A7A\u6216\u4E0D\u5B58\u5728: {0}
+
+compiler.err.no.output.dir=\u672A\u6307\u5B9A\u7C7B\u8F93\u51FA\u76EE\u5F55
+
+compiler.err.unnamed.pkg.not.allowed.named.modules=\u547D\u540D\u6A21\u5757\u4E2D\u4E0D\u5141\u8BB8\u672A\u547D\u540D\u7A0B\u5E8F\u5305
+
+# 0: name, 1: name
+compiler.err.module.name.mismatch=\u6A21\u5757\u540D\u79F0 {0} \u4E0E\u9884\u671F\u540D\u79F0 {1} \u4E0D\u5339\u914D
+
+compiler.err.module.decl.sb.in.module-info.java=\u6A21\u5757\u58F0\u660E\u5E94\u8BE5\u5728\u540D\u4E3A module-info.java \u7684\u6587\u4EF6\u4E2D
+
+compiler.err.unexpected.after.module=\u5728\u6A21\u5757\u58F0\u660E\u4E4B\u540E\u51FA\u73B0\u610F\u5916\u7684\u8F93\u5165
+
+compiler.err.module-info.with.xmodule.sourcepath=\u6E90\u8DEF\u5F84\u4E0A\u7684 -Xmodule \u4E0E module-info \u7684\u7EC4\u5408\u975E\u6CD5
+
+compiler.err.module-info.with.xmodule.classpath=\u7C7B\u8DEF\u5F84\u4E0A\u7684 -Xmodule \u4E0E module-info \u7684\u7EC4\u5408\u975E\u6CD5
+
+compiler.err.xmodule.no.module.sourcepath=-Xmodule \u4E0E -modulesourcepath \u7684\u7EC4\u5408\u975E\u6CD5
+
+compiler.err.processorpath.no.processormodulepath=-processorpath \u4E0E -processormodulepath \u7684\u7EC4\u5408\u975E\u6CD5
+
+# 0: symbol
+compiler.err.package.in.other.module=\u7A0B\u5E8F\u5305\u5DF2\u5B58\u5728\u4E8E\u53E6\u4E00\u4E2A\u6A21\u5757\u4E2D: {0}
+
+# 0: symbol, 1: name, 2: symbol, 3: symbol
+compiler.err.package.clash.from.requires=\u6A21\u5757 {0} \u540C\u65F6\u4ECE {2} \u548C {3} \u8BFB\u53D6\u7A0B\u5E8F\u5305 {1}
+
+# 0: string
+compiler.err.module.not.found.in.module.source.path=\u5728\u6A21\u5757\u6E90\u8DEF\u5F84\u4E2D\u627E\u4E0D\u5230\u6A21\u5757 {0}
+
+compiler.err.output.dir.must.be.specified.with.dash.m.option=\u5982\u679C\u4F7F\u7528 -m \u9009\u9879, \u5219\u5FC5\u987B\u6307\u5B9A\u7C7B\u8F93\u51FA\u76EE\u5F55
+
+compiler.err.modulesourcepath.must.be.specified.with.dash.m.option=\u5982\u679C\u4F7F\u7528 -m \u9009\u9879, \u5219\u5FC5\u987B\u6307\u5B9A\u6A21\u5757\u6E90\u8DEF\u5F84
+
+# 0: symbol
+compiler.err.service.implementation.not.in.right.module=\u5FC5\u987B\u5728\u4E0E provides \u6307\u4EE4\u76F8\u540C\u7684\u6A21\u5757\u4E2D\u5B9A\u4E49\u670D\u52A1\u5B9E\u73B0
+
+# 0: symbol
+compiler.err.cyclic.requires=\u6D89\u53CA {0} \u7684\u5FAA\u73AF\u88AB\u4F9D\u8D56\u5BF9\u8C61
+
+# 0: fragment, 1: name
+compiler.err.duplicate.module.on.path={1} \u4E2D\u7684 {0} \u4E0A\u5B58\u5728\n\u91CD\u590D\u7684\u6A21\u5757
+
+# 0:  string
+compiler.err.xaddexports.malformed.entry=-XaddExports \u7684\u503C\u9519\u8BEF: {0}
+
+# 0: string
+compiler.err.xaddexports.too.many={0} \u5B58\u5728\u591A\u4E2A -XaddExports \u9009\u9879
+
+# 0:  string
+compiler.err.xaddreads.malformed.entry=-XaddReads \u7684\u503C\u9519\u8BEF: {0}
+
+# 0: string
+compiler.err.xaddreads.too.many={0} \u5B58\u5728\u591A\u4E2A -XaddReads \u9009\u9879
+
+compiler.err.addmods.all.module.path.invalid=-addmods ALL-MODULE-PATH \u53EA\u80FD\u5728\u7F16\u8BD1\u672A\u547D\u540D\u6A21\u5757\u65F6\u4F7F\u7528
+
+compiler.misc.locn.module_source_path=\u6A21\u5757\u6E90\u8DEF\u5F84
+
+compiler.misc.locn.upgrade_module_path=\u5347\u7EA7\u6A21\u5757\u8DEF\u5F84
+
+compiler.misc.locn.system_modules=\u7CFB\u7EDF\u6A21\u5757
+
+compiler.misc.locn.module_path=\u5E94\u7528\u7A0B\u5E8F\u6A21\u5757\u8DEF\u5F84
+
+compiler.misc.cant.resolve.modules=\u65E0\u6CD5\u89E3\u6790\u6A21\u5757
+
+# 0: symbol
+compiler.err.cant.find.module=\u627E\u4E0D\u5230\u6A21\u5757: {0}
+
+# 0: string
+compiler.err.invalid.module.specifier=\u4E0D\u5141\u8BB8\u6A21\u5757\u8BF4\u660E\u7B26: {0}
+
+# 0: symbol
+compiler.warn.service.provided.but.not.exported.or.used=\u5DF2\u63D0\u4F9B\u670D\u52A1\u63A5\u53E3, \u4F46\u672A\u5BFC\u51FA\u6216\u4F7F\u7528\u670D\u52A1\u63A5\u53E3
+
+###
+# errors related to options
+
+# 0: string, 1: string
+compiler.err.illegal.argument.for.option={0} \u7684\u53C2\u6570\u975E\u6CD5: {1}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_ja.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_ja.properties
index 2c68780..ce032ce 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_ja.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,22 @@
 javac.opt.g.lines.vars.source=\u3044\u304F\u3064\u304B\u306E\u30C7\u30D0\u30C3\u30B0\u60C5\u5831\u306E\u307F\u3092\u751F\u6210\u3059\u308B
 javac.opt.nowarn=\u8B66\u544A\u3092\u767A\u751F\u3055\u305B\u306A\u3044
 javac.opt.verbose=\u30B3\u30F3\u30D1\u30A4\u30E9\u306E\u52D5\u4F5C\u306B\u3064\u3044\u3066\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B
-javac.opt.deprecation=\u975E\u63A8\u5968\u306EAPI\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u30BD\u30FC\u30B9\u306E\u4F4D\u7F6E\u3092\u51FA\u529B\u3059\u308B
+javac.opt.deprecation=\u63A8\u5968\u3055\u308C\u306A\u3044API\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u30BD\u30FC\u30B9\u306E\u4F4D\u7F6E\u3092\u51FA\u529B\u3059\u308B
 javac.opt.classpath=\u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304A\u3088\u3073\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B
+javac.opt.modulepath=\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B
 javac.opt.sourcepath=\u5165\u529B\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B
+javac.opt.m=\u6307\u5B9A\u3057\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u307F\u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u3001\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u3092\u78BA\u8A8D\u3059\u308B
+javac.opt.modulesourcepath=\u8907\u6570\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u5165\u529B\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B
 javac.opt.bootclasspath=\u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306E\u4F4D\u7F6E\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
+javac.opt.system=\u30B7\u30B9\u30C6\u30E0\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u4F4D\u7F6E\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
+javac.opt.upgrademodulepath=\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u4F4D\u7F6E\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
 javac.opt.Xbootclasspath.p=\u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306B\u4ED8\u52A0\u3059\u308B
 javac.opt.Xbootclasspath.a=\u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306B\u8FFD\u52A0\u3059\u308B
+javac.opt.Xpatch=\u30D1\u30C3\u30C1\u3092\u9069\u7528\u3059\u308B\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B
 javac.opt.endorseddirs=\u63A8\u5968\u898F\u683C\u30D1\u30B9\u306E\u4F4D\u7F6E\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
 javac.opt.extdirs=\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E08\u307F\u62E1\u5F35\u6A5F\u80FD\u306E\u4F4D\u7F6E\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
 javac.opt.processorpath=\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u3092\u691C\u7D22\u3059\u308B\u4F4D\u7F6E\u3092\u6307\u5B9A\u3059\u308B
+javac.opt.processormodulepath=\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u3092\u691C\u7D22\u3059\u308B\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9\u3092\u6307\u5B9A\u3059\u308B
 javac.opt.processor=\u5B9F\u884C\u3059\u308B\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u306E\u540D\u524D\u3002\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u691C\u51FA\u51E6\u7406\u3092\u30D0\u30A4\u30D1\u30B9
 javac.opt.parameters=\u30E1\u30BD\u30C3\u30C9\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF\u306B\u30EA\u30D5\u30EC\u30AF\u30B7\u30E7\u30F3\u7528\u306E\u30E1\u30BF\u30C7\u30FC\u30BF\u3092\u751F\u6210\u3057\u307E\u3059
 javac.opt.proc.none.only=\u6CE8\u91C8\u51E6\u7406\u3084\u30B3\u30F3\u30D1\u30A4\u30EB\u3092\u5B9F\u884C\u3059\u308B\u304B\u3069\u3046\u304B\u3092\u5236\u5FA1\u3057\u307E\u3059\u3002
@@ -49,6 +56,7 @@
 javac.opt.encoding=\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u4F7F\u7528\u3059\u308B\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3059\u308B
 javac.opt.profile=\u4F7F\u7528\u3055\u308C\u3066\u3044\u308BAPI\u304C\u6307\u5B9A\u3057\u305F\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u3067\u4F7F\u7528\u53EF\u80FD\u304B\u3069\u3046\u304B\u3092\u78BA\u8A8D\u3057\u307E\u3059
 javac.opt.target=\u7279\u5B9A\u306EVM\u30D0\u30FC\u30B8\u30E7\u30F3\u7528\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u751F\u6210\u3059\u308B
+javac.opt.release=\u7279\u5B9A\u306EVM\u30D0\u30FC\u30B8\u30E7\u30F3\u7528\u306B\u30B3\u30F3\u30D1\u30A4\u30EB\u3057\u307E\u3059\u3002\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u30BF\u30FC\u30B2\u30C3\u30C8: {0}
 javac.opt.source=\u6307\u5B9A\u3055\u308C\u305F\u30EA\u30EA\u30FC\u30B9\u3068\u30BD\u30FC\u30B9\u306E\u4E92\u63DB\u6027\u3092\u4FDD\u3064
 javac.opt.Werror=\u8B66\u544A\u304C\u767A\u751F\u3057\u305F\u5834\u5408\u306B\u30B3\u30F3\u30D1\u30A4\u30EB\u3092\u7D42\u4E86\u3059\u308B
 javac.opt.A=\u6CE8\u91C8\u30D7\u30ED\u30BB\u30C3\u30B5\u306B\u6E21\u3055\u308C\u308B\u30AA\u30D7\u30B7\u30E7\u30F3
@@ -59,11 +67,15 @@
 javac.opt.arg.flag=<flag>
 javac.opt.arg.key.equals.value=key[=value]
 javac.opt.arg.path=<path>
+javac.opt.arg.mspath=<module-source-path>
+javac.opt.arg.m=<module-name>
+javac.opt.arg.jdk=<jdk>|none
 javac.opt.arg.dirs=<dirs>
 javac.opt.arg.directory=<directory>
 javac.opt.arg.encoding=<encoding>
 javac.opt.arg.profile=<profile>
 javac.opt.arg.release=<release>
+javac.opt.arg.release=<release>
 javac.opt.arg.number=<number>
 javac.opt.plugin=\u5B9F\u884C\u3055\u308C\u308B\u30D7\u30E9\u30B0\u30A4\u30F3\u306E\u540D\u524D\u3068\u30AA\u30D7\u30B7\u30E7\u30F3\u5F15\u6570
 javac.opt.arg.plugin="name args"
@@ -74,34 +86,90 @@
 javac.opt.maxwarns=\u51FA\u529B\u3059\u308B\u8B66\u544A\u306E\u6700\u5927\u6570\u3092\u8A2D\u5B9A\u3059\u308B
 javac.opt.nogj=\u8A00\u8A9E\u306E\u6C4E\u7528\u6027\u3092\u53D7\u3051\u4ED8\u3051\u306A\u3044
 javac.opt.moreinfo=\u578B\u5909\u6570\u306E\u62E1\u5F35\u60C5\u5831\u3092\u51FA\u529B\u3059\u308B
-javac.opt.printflat=\u5185\u90E8\u30AF\u30E9\u30B9\u306E\u5909\u63DB\u5F8C\u306B\u62BD\u8C61\u69CB\u6587\u30C4\u30EA\u30FC\u3092\u51FA\u529B\u3059\u308B
 javac.opt.printsearch=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u691C\u7D22\u4F4D\u7F6E\u60C5\u5831\u3092\u51FA\u529B\u3059\u308B
 javac.opt.prompt=\u5404\u30A8\u30E9\u30FC\u3067\u505C\u6B62\u3059\u308B
-javac.opt.retrofit=\u65E2\u5B58\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u6C4E\u7528\u578B\u3067\u7D44\u307F\u66FF\u3048\u308B
 javac.opt.s=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u304B\u308F\u308A\u306Bjava\u30BD\u30FC\u30B9\u3092\u767A\u884C\u3059\u308B
-javac.opt.scramble=\u30D0\u30A4\u30C8\u30B3\u30FC\u30C9\u306Eprivate\u8B58\u5225\u5B50\u306B\u30B9\u30AF\u30E9\u30F3\u30D6\u30EB\u3092\u304B\u3051\u308B
-javac.opt.scrambleall=\u30D0\u30A4\u30C8\u30B3\u30FC\u30C9\u306Epackage\u53EF\u8996\u8B58\u5225\u5B50\u306B\u30B9\u30AF\u30E9\u30F3\u30D6\u30EB\u3092\u304B\u3051\u308B
 javac.opt.version=\u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831
 javac.opt.arg.pathname=<pathname>
 javac.opt.arg.file=<filename>
 javac.opt.Xlint=\u63A8\u5968\u306E\u8B66\u544A\u3092\u6709\u52B9\u306B\u3059\u308B
-javac.opt.Xlint.suboptlist=\u7279\u5B9A\u306E\u8B66\u544A\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3059\u308B
-javac.opt.Xdoclint=javadoc\u30B3\u30E1\u30F3\u30C8\u306E\u554F\u984C\u306B\u95A2\u3059\u308B\u63A8\u5968\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3059\u308B
+javac.opt.Xlint.all=\u3059\u3079\u3066\u306E\u8B66\u544A\u3092\u6709\u52B9\u306B\u3057\u307E\u3059
+javac.opt.Xlint.none=\u3059\u3079\u3066\u306E\u8B66\u544A\u3092\u7121\u52B9\u306B\u3057\u307E\u3059
+#L10N: do not localize: -Xlint
+javac.opt.Xlint.subopts=-Xlint:key,...
+javac.opt.Xlint.suboptlist=\n        \u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3059\u308B\u8B66\u544A(\u30AB\u30F3\u30DE\u533A\u5207\u308A)\u3002\n        \u6307\u5B9A\u3057\u305F\u8B66\u544A\u3092\u7121\u52B9\u306B\u3059\u308B\u306B\u306F\u3001\u30AD\u30FC\u306E\u524D\u306B'-'\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002\n        \u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u30AD\u30FC\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:
+javac.opt.Xlint.desc.auxiliaryclass=\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3067\u975E\u8868\u793A\u306B\u306A\u3063\u3066\u3044\u308B\u304C\u4ED6\u306E\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u4F7F\u7528\u3055\u308C\u3066\u3044\u308B\u88DC\u52A9\u30AF\u30E9\u30B9\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.cast=\u4E0D\u8981\u306A\u30AD\u30E3\u30B9\u30C8\u306E\u4F7F\u7528\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.classfile=\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5185\u5BB9\u306B\u95A2\u9023\u3057\u305F\u554F\u984C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.deprecation=\u975E\u63A8\u5968\u9805\u76EE\u306E\u4F7F\u7528\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.dep-ann=JavaDoc\u3067\u975E\u63A8\u5968\u3068\u3057\u3066\u30DE\u30FC\u30AF\u3055\u308C\u3066\u3044\u308B\u304C@\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u3092\u4F7F\u7528\u3057\u3066\u3044\u306A\u3044\u9805\u76EE\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.divzero=\u5B9A\u6574\u65700\u3067\u9664\u7B97\u3055\u308C\u308B\u3053\u3068\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.empty=if\u4EE5\u964D\u304C\u7A7A\u306E\u6587\u3067\u3042\u308B\u3053\u3068\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.fallthrough=switch\u6587\u306E1\u3064\u306Ecase\u304B\u3089\u6B21\u3078\u306E\u30D5\u30A9\u30FC\u30EB\u30FB\u30B9\u30EB\u30FC\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.finally=\u6B63\u5E38\u306B\u5B8C\u4E86\u3057\u306A\u3044finally\u7BC0\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.options=\u30B3\u30DE\u30F3\u30C9\u884C\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u4F7F\u7528\u306B\u95A2\u3059\u308B\u554F\u984C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.overloads=\u30E1\u30BD\u30C3\u30C9\u306E\u30AA\u30FC\u30D0\u30FC\u30ED\u30FC\u30C9\u306B\u95A2\u3059\u308B\u554F\u984C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.overrides=\u30E1\u30BD\u30C3\u30C9\u306E\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u306B\u95A2\u3059\u308B\u554F\u984C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.path=\u30B3\u30DE\u30F3\u30C9\u884C\u306E\u7121\u52B9\u306A\u30D1\u30B9\u8981\u7D20\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.processing=\u6CE8\u91C8\u51E6\u7406\u306B\u95A2\u3059\u308B\u554F\u984C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.rawtypes=raw\u578B\u306E\u4F7F\u7528\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.serial=\u30B7\u30EA\u30A2\u30EB\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3ID\u3092\u6307\u5B9A\u3057\u306A\u3044\u76F4\u5217\u5316\u53EF\u80FD\u306A\u30AF\u30E9\u30B9\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.static=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u4F7F\u7528\u3057\u305Fstatic\u30E1\u30F3\u30D0\u30FC\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.try=try\u30D6\u30ED\u30C3\u30AF(try-with-resources\u306A\u3069)\u306E\u4F7F\u7528\u306B\u95A2\u3059\u308B\u554F\u984C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.unchecked=\u7121\u691C\u67FB\u64CD\u4F5C\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059\u3002
+
+javac.opt.Xlint.desc.varargs=\u5B89\u5168\u3067\u306F\u306A\u3044\u53EF\u80FD\u6027\u304C\u3042\u308B\u53EF\u5909\u5F15\u6570\u30E1\u30BD\u30C3\u30C9\u306B\u3064\u3044\u3066\u8B66\u544A\u3057\u307E\u3059
+
+javac.opt.Xdoclint=javadoc\u30B3\u30E1\u30F3\u30C8\u306E\u554F\u984C\u306B\u95A2\u3059\u308B\u63A8\u5968\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3057\u307E\u3059
 # L10N: do not localize: all none
 javac.opt.Xdoclint.subopts = (all|none|[-]<group>)[/<access>]
 
 # L10N: do not localize: accessibility html missing reference syntax
 # L10N: do not localize: public protected package private
 javac.opt.Xdoclint.custom=\n        javadoc\u30B3\u30E1\u30F3\u30C8\u306E\u554F\u984C\u306B\u95A2\u3059\u308B\u7279\u5B9A\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n        \u3053\u3053\u3067\u3001<group>\u306Faccessibility\u3001html\u3001missing\u3001reference\u307E\u305F\u306Fsyntax\u306E\u3044\u305A\u308C\u304B\u3067\u3001\n        <access>\u306Fpublic\u3001protected\u3001package\u307E\u305F\u306Fprivate\u306E\u3044\u305A\u308C\u304B\u3067\u3059\u3002
+
+javac.opt.Xdoclint.package.args = ([-]<packages>)
+
+javac.opt.Xdoclint.package.desc=\n        \u7279\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002<packages>\u306F\n        \u30AB\u30F3\u30DE\u3067\u533A\u5207\u3089\u308C\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u30EA\u30B9\u30C8\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306F\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n        \u4FEE\u98FE\u3055\u308C\u305F\u540D\u524D\u3001\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u306E\u63A5\u982D\u8F9E\u306E\u5F8C\u306B''.*''\u3092\u6307\u5B9A(\u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n        \u3059\u3079\u3066\u306E\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u62E1\u5F35)\u3057\u305F\u3082\u306E\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u524D\u306B'-'\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\n        \u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u95A2\u3059\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u7121\u52B9\u306B\u3067\u304D\u307E\u3059\u3002
+
 javac.opt.Xstdout=\u6A19\u6E96\u51FA\u529B\u3092\u30EA\u30C0\u30A4\u30EC\u30AF\u30C8\u3059\u308B
 javac.opt.X=\u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6982\u8981\u3092\u51FA\u529B\u3059\u308B
 javac.opt.help=\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6982\u8981\u3092\u51FA\u529B\u3059\u308B
 javac.opt.print=\u6307\u5B9A\u3057\u305F\u578B\u306E\u30C6\u30AD\u30B9\u30C8\u8868\u793A\u3092\u51FA\u529B\u3059\u308B
 javac.opt.printRounds=\u6CE8\u91C8\u51E6\u7406\u306E\u5F80\u5FA9\u306B\u3064\u3044\u3066\u306E\u60C5\u5831\u3092\u5370\u5237\u3059\u308B
 javac.opt.printProcessorInfo=\u30D7\u30ED\u30BB\u30C3\u30B5\u304C\u51E6\u7406\u3092\u4F9D\u983C\u3055\u308C\u308B\u6CE8\u91C8\u306B\u3064\u3044\u3066\u306E\u60C5\u5831\u3092\u5370\u5237\u3059\u308B
+javac.opt.userpathsfirst=\u30D6\u30FC\u30C8\u30FB\u30AF\u30E9\u30B9\u30D1\u30B9\u306E\u5F8C\u3067\u306F\u306A\u304F\u3001\u30D6\u30FC\u30C8\u30FB\u30AF\u30E9\u30B9\u30D1\u30B9\u306E\u524D\u306B\u30AF\u30E9\u30B9\u306E\u30AF\u30E9\u30B9\u30D1\u30B9\u304A\u3088\u3073\u30BD\u30FC\u30B9\u30FB\u30D1\u30B9\u3092\u691C\u7D22\u3059\u308B
 javac.opt.prefer=\u6697\u9ED9\u7684\u306B\u30B3\u30F3\u30D1\u30A4\u30EB\u3055\u308C\u308B\u30AF\u30E9\u30B9\u306B\u3064\u3044\u3066\u3001\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3068\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u4E21\u65B9\u304C\u898B\u3064\u304B\u3063\u305F\u969B\u3069\u3061\u3089\u3092\u8AAD\u307F\u8FBC\u3080\u304B\u6307\u5B9A\u3059\u308B
 javac.opt.AT=\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u306E\u8AAD\u53D6\u308A\u30AA\u30D7\u30B7\u30E7\u30F3\u304A\u3088\u3073\u30D5\u30A1\u30A4\u30EB\u540D
 javac.opt.diags=\u8A3A\u65AD\u30E2\u30FC\u30C9\u306E\u9078\u629E
+javac.opt.addExports=\n        <other-module>\u304CALL-UNNAMED\u3067\u3042\u308B\u5834\u5408\u3001\u305D\u306E\u5B9A\u7FA9\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u3089\u3001\u8FFD\u52A0\u30E2\u30B8\u30E5\u30FC\u30EB\u307E\u305F\u306F\n        \u3059\u3079\u3066\u306E\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u6E08\u3068\u307F\u306A\u3055\u308C\u308B\u3088\u3046\u306B\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002
+javac.opt.arg.addExports=<module>/<package>=<other-module>(,<other-module>)*
+javac.opt.addReads=\n        \u6307\u5B9A\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u3067\u5FC5\u9808\u3068\u307F\u306A\u3055\u308C\u308B\u3088\u3046\u306B\u8FFD\u52A0\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002\n        \u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u5FC5\u8981\u3068\u3059\u308B\u5834\u5408\u3001<other-module>\u306FALL-UNNAMED\u306B\u3057\u307E\u3059\u3002
+javac.opt.arg.addReads=<module>=<other-module>(,<other-module>)*
+javac.opt.module=\u30B3\u30F3\u30D1\u30A4\u30EB\u3055\u308C\u308B\u30AF\u30E9\u30B9\u304C\u5C5E\u3059\u308B\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002
+javac.opt.arg.module=<module-name>
+javac.opt.addmods=\n        \u521D\u671F\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\u52A0\u3048\u3066\u89E3\u6C7A\u3059\u308B\u30EB\u30FC\u30C8\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u3001\u307E\u305F\u306F<module>\u304C\n        ALL-MODULE-PATH\u3067\u3042\u308B\u5834\u5408\u306F\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9\u306E\u3059\u3079\u3066\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u3002
+javac.opt.arg.addmods=<module>(,<module>)*
+javac.opt.limitmods=\u76E3\u8996\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30E6\u30CB\u30D0\u30FC\u30B9\u3092\u5236\u9650\u3057\u307E\u3059
+javac.opt.arg.limitmods=<module>(,<module>)*
 
 ## errors
 
@@ -112,19 +180,21 @@
 javac.err.profile.bootclasspath.conflict=profile\u3068bootclasspath\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u540C\u6642\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 javac.err.invalid.profile=\u7121\u52B9\u306A\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB: {0}
 javac.err.invalid.target={0}\u306F\u7121\u52B9\u306A\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30EA\u30EA\u30FC\u30B9\u3067\u3059
+javac.err.option.not.allowed.with.target=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F\u30BF\u30FC\u30B2\u30C3\u30C8{1}\u3068\u3068\u3082\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093
+javac.err.option.too.many=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u3092\u6307\u5B9A\u3067\u304D\u308B\u306E\u306F1\u56DE\u306E\u307F\u3067\u3059
 javac.err.no.source.files=\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u3042\u308A\u307E\u305B\u3093
 javac.err.no.source.files.classes=\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30AF\u30E9\u30B9\u540D\u304C\u3042\u308A\u307E\u305B\u3093
 javac.err.req.arg={0}\u306B\u306F\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059
 javac.err.invalid.source={0}\u306F\u7121\u52B9\u306A\u30BD\u30FC\u30B9\u30FB\u30EA\u30EA\u30FC\u30B9\u3067\u3059
 javac.err.error.writing.file={0}\u306E\u66F8\u8FBC\u307F\u30A8\u30E9\u30FC\u3067\u3059\u3002{1}
+javac.err.sourcepath.modulesourcepath.conflict=-sourcepath\u3068-modulesourcepath\u306E\u4E21\u65B9\u3092\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093
 javac.warn.source.target.conflict=\u30BD\u30FC\u30B9\u30FB\u30EA\u30EA\u30FC\u30B9{0}\u306B\u306F\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30EA\u30EA\u30FC\u30B9{1}\u304C\u5FC5\u8981\u3067\u3059
 javac.warn.target.default.source.conflict=\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30EA\u30EA\u30FC\u30B9{0}\u304C\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30BD\u30FC\u30B9\u30FB\u30EA\u30EA\u30FC\u30B9{1}\u3068\u7AF6\u5408\u3057\u3066\u3044\u307E\u3059
 javac.warn.profile.target.conflict=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB{0}\u306F\u30BF\u30FC\u30B2\u30C3\u30C8\u30FB\u30EA\u30EA\u30FC\u30B9{1}\u306B\u5BFE\u3057\u3066\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093
-javac.err.dir.not.found=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304C\u3042\u308A\u307E\u305B\u3093: {0}
 javac.err.file.not.found=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
 javac.err.file.not.directory=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u306F\u3042\u308A\u307E\u305B\u3093: {0}
 javac.err.file.not.file=\u30D5\u30A1\u30A4\u30EB\u3067\u306F\u3042\u308A\u307E\u305B\u3093: {0}
-javac.msg.plugin.not.found=\u30D7\u30E9\u30B0\u30A4\u30F3\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+
 ## messages
 
 javac.msg.usage.header=\u4F7F\u7528\u65B9\u6CD5: {0} <options> <source files>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002
@@ -133,15 +203,21 @@
 
 javac.msg.usage.nonstandard.footer=\u3053\u308C\u3089\u306F\u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u3042\u308A\u4E88\u544A\u306A\u3057\u306B\u5909\u66F4\u3055\u308C\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
 
-javac.msg.bug=\u30B3\u30F3\u30D1\u30A4\u30E9\u3067\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F({0})\u3002Bug Parade\u306B\u540C\u3058\u30D0\u30B0\u304C\u767B\u9332\u3055\u308C\u3066\u3044\u306A\u3044\u3053\u3068\u3092\u3054\u78BA\u8A8D\u306E\u4E0A\u3001Java Developer Connection(http://java.sun.com/webapps/bugreport)\u3067\u30D0\u30B0\u306E\u767B\u9332\u3092\u304A\u9858\u3044\u3044\u305F\u3057\u307E\u3059\u3002\u30EC\u30DD\u30FC\u30C8\u306B\u306F\u3001\u305D\u306E\u30D7\u30ED\u30B0\u30E9\u30E0\u3068\u4E0B\u8A18\u306E\u8A3A\u65AD\u5185\u5BB9\u3092\u542B\u3081\u3066\u304F\u3060\u3055\u3044\u3002\u3054\u5354\u529B\u3042\u308A\u304C\u3068\u3046\u3054\u3056\u3044\u307E\u3059\u3002
+javac.msg.bug=\u30B3\u30F3\u30D1\u30A4\u30E9\u3067\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F({0})\u3002Bug Database (http://bugs.java.com)\u3067\u91CD\u8907\u304C\u306A\u3044\u304B\u3092\u3054\u78BA\u8A8D\u306E\u3046\u3048\u3001Java bug\u30EC\u30DD\u30FC\u30C8\u30FB\u30DA\u30FC\u30B8(http://bugreport.java.com)\u3067Java\u30B3\u30F3\u30D1\u30A4\u30E9\u306B\u5BFE\u3059\u308Bbug\u306E\u767B\u9332\u3092\u304A\u9858\u3044\u3044\u305F\u3057\u307E\u3059\u3002\u30EC\u30DD\u30FC\u30C8\u306B\u306F\u3001\u305D\u306E\u30D7\u30ED\u30B0\u30E9\u30E0\u3068\u4E0B\u8A18\u306E\u8A3A\u65AD\u5185\u5BB9\u3092\u542B\u3081\u3066\u304F\u3060\u3055\u3044\u3002\u3054\u5354\u529B\u3042\u308A\u304C\u3068\u3046\u3054\u3056\u3044\u307E\u3059\u3002
 
-javac.msg.io=\n\n\u5165\u51FA\u529B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
+javac.msg.io=\n\n\u5165\u51FA\u529B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
 
-javac.msg.proc.annotation.uncaught.exception=\n\n\u6CE8\u91C8\u51E6\u7406\u3067\u6355\u6349\u3055\u308C\u306A\u3044\u4F8B\u5916\u304C\u30B9\u30ED\u30FC\u3055\u308C\u307E\u3057\u305F\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
+javac.msg.proc.annotation.uncaught.exception=\n\n\u6CE8\u91C8\u51E6\u7406\u3067\u6355\u6349\u3055\u308C\u306A\u3044\u4F8B\u5916\u304C\u30B9\u30ED\u30FC\u3055\u308C\u307E\u3057\u305F\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
 
 javac.msg.plugin.uncaught.exception=\n\n\u30D7\u30E9\u30B0\u30A4\u30F3\u3067\u6355\u6349\u3055\u308C\u306A\u3044\u4F8B\u5916\u304C\u30B9\u30ED\u30FC\u3055\u308C\u307E\u3057\u305F\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
 
-javac.msg.resource=\n\n\u30B7\u30B9\u30C6\u30E0\u30FB\u30EA\u30BD\u30FC\u30B9\u304C\u4E0D\u8DB3\u3057\u3066\u3044\u307E\u3059\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30FB\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
+javac.msg.resource=\n\n\u30B7\u30B9\u30C6\u30E0\u30FB\u30EA\u30BD\u30FC\u30B9\u304C\u4E0D\u8DB3\u3057\u3066\u3044\u307E\u3059\u3002\n\u8A73\u7D30\u306F\u6B21\u306E\u30B9\u30BF\u30C3\u30AF\u30C8\u30EC\u30FC\u30B9\u3067\u8ABF\u67FB\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n
 
 javac.version={0} {1}
 javac.fullVersion={0}\u30D5\u30EB\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3"{1}"
+
+javac.err.release.bootclasspath.conflict=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F-release\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+
+javac.err.unsupported.release.version=\u30EA\u30EA\u30FC\u30B9\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3{0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+
+javac.err.release.not.standard.file.manager=-release\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001\u6307\u5B9A\u3055\u308C\u305FJavaFileManager\u306FStandardJavaFileManager\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties
index 2ad0c68..5b9083b 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -32,13 +32,20 @@
 javac.opt.verbose=\u8F93\u51FA\u6709\u5173\u7F16\u8BD1\u5668\u6B63\u5728\u6267\u884C\u7684\u64CD\u4F5C\u7684\u6D88\u606F
 javac.opt.deprecation=\u8F93\u51FA\u4F7F\u7528\u5DF2\u8FC7\u65F6\u7684 API \u7684\u6E90\u4F4D\u7F6E
 javac.opt.classpath=\u6307\u5B9A\u67E5\u627E\u7528\u6237\u7C7B\u6587\u4EF6\u548C\u6CE8\u91CA\u5904\u7406\u7A0B\u5E8F\u7684\u4F4D\u7F6E
+javac.opt.modulepath=\u6307\u5B9A\u67E5\u627E\u5E94\u7528\u7A0B\u5E8F\u6A21\u5757\u7684\u4F4D\u7F6E
 javac.opt.sourcepath=\u6307\u5B9A\u67E5\u627E\u8F93\u5165\u6E90\u6587\u4EF6\u7684\u4F4D\u7F6E
+javac.opt.m=\u53EA\u7F16\u8BD1\u6307\u5B9A\u7684\u6A21\u5757, \u8BF7\u68C0\u67E5\u65F6\u95F4\u6233
+javac.opt.modulesourcepath=\u6307\u5B9A\u67E5\u627E\u591A\u4E2A\u6A21\u5757\u7684\u8F93\u5165\u6E90\u6587\u4EF6\u7684\u4F4D\u7F6E
 javac.opt.bootclasspath=\u8986\u76D6\u5F15\u5BFC\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E
+javac.opt.system=\u8986\u76D6\u7CFB\u7EDF\u6A21\u5757\u4F4D\u7F6E
+javac.opt.upgrademodulepath=\u8986\u76D6\u53EF\u5347\u7EA7\u6A21\u5757\u4F4D\u7F6E
 javac.opt.Xbootclasspath.p=\u7F6E\u4E8E\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u4E4B\u524D
 javac.opt.Xbootclasspath.a=\u7F6E\u4E8E\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u4E4B\u540E
+javac.opt.Xpatch=\u6307\u5B9A\u8981\u6253\u8865\u4E01\u7684\u6A21\u5757\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E
 javac.opt.endorseddirs=\u8986\u76D6\u7B7E\u540D\u7684\u6807\u51C6\u8DEF\u5F84\u7684\u4F4D\u7F6E
 javac.opt.extdirs=\u8986\u76D6\u6240\u5B89\u88C5\u6269\u5C55\u7684\u4F4D\u7F6E
 javac.opt.processorpath=\u6307\u5B9A\u67E5\u627E\u6CE8\u91CA\u5904\u7406\u7A0B\u5E8F\u7684\u4F4D\u7F6E
+javac.opt.processormodulepath=\u6307\u5B9A\u67E5\u627E\u6CE8\u91CA\u5904\u7406\u7A0B\u5E8F\u7684\u6A21\u5757\u8DEF\u5F84
 javac.opt.processor=\u8981\u8FD0\u884C\u7684\u6CE8\u91CA\u5904\u7406\u7A0B\u5E8F\u7684\u540D\u79F0; \u7ED5\u8FC7\u9ED8\u8BA4\u7684\u641C\u7D22\u8FDB\u7A0B
 javac.opt.parameters=\u751F\u6210\u5143\u6570\u636E\u4EE5\u7528\u4E8E\u65B9\u6CD5\u53C2\u6570\u7684\u53CD\u5C04
 javac.opt.proc.none.only=\u63A7\u5236\u662F\u5426\u6267\u884C\u6CE8\u91CA\u5904\u7406\u548C/\u6216\u7F16\u8BD1\u3002
@@ -49,22 +56,27 @@
 javac.opt.encoding=\u6307\u5B9A\u6E90\u6587\u4EF6\u4F7F\u7528\u7684\u5B57\u7B26\u7F16\u7801
 javac.opt.profile=\u8BF7\u786E\u4FDD\u4F7F\u7528\u7684 API \u5728\u6307\u5B9A\u7684\u914D\u7F6E\u6587\u4EF6\u4E2D\u53EF\u7528
 javac.opt.target=\u751F\u6210\u7279\u5B9A VM \u7248\u672C\u7684\u7C7B\u6587\u4EF6
+javac.opt.release=\u9488\u5BF9\u7279\u5B9A VM \u7248\u672C\u8FDB\u884C\u7F16\u8BD1\u3002\u652F\u6301\u7684\u76EE\u6807: {0}
 javac.opt.source=\u63D0\u4F9B\u4E0E\u6307\u5B9A\u53D1\u884C\u7248\u7684\u6E90\u517C\u5BB9\u6027
 javac.opt.Werror=\u51FA\u73B0\u8B66\u544A\u65F6\u7EC8\u6B62\u7F16\u8BD1
 javac.opt.A=\u4F20\u9012\u7ED9\u6CE8\u91CA\u5904\u7406\u7A0B\u5E8F\u7684\u9009\u9879
 javac.opt.implicit=\u6307\u5B9A\u662F\u5426\u4E3A\u9690\u5F0F\u5F15\u7528\u6587\u4EF6\u751F\u6210\u7C7B\u6587\u4EF6
 javac.opt.pkginfo=\u6307\u5B9A package-info \u6587\u4EF6\u7684\u5904\u7406
-javac.opt.arg.class=<\u7C7B>
+javac.opt.arg.class=<class>
 javac.opt.arg.class.list=<class1>[,<class2>,<class3>...]
-javac.opt.arg.flag=<\u6807\u8BB0>
-javac.opt.arg.key.equals.value=\u5173\u952E\u5B57[=\u503C]
-javac.opt.arg.path=<\u8DEF\u5F84>
-javac.opt.arg.dirs=<\u76EE\u5F55>
-javac.opt.arg.directory=<\u76EE\u5F55>
-javac.opt.arg.encoding=<\u7F16\u7801>
-javac.opt.arg.profile=<\u914D\u7F6E\u6587\u4EF6>
-javac.opt.arg.release=<\u53D1\u884C\u7248>
-javac.opt.arg.number=<\u7F16\u53F7>
+javac.opt.arg.flag=<flag>
+javac.opt.arg.key.equals.value=key[=value]
+javac.opt.arg.path=<path>
+javac.opt.arg.mspath=<module-source-path>
+javac.opt.arg.m=<module-name>
+javac.opt.arg.jdk=<jdk>|none
+javac.opt.arg.dirs=<dirs>
+javac.opt.arg.directory=<directory>
+javac.opt.arg.encoding=<encoding>
+javac.opt.arg.profile=<profile>
+javac.opt.arg.release=<release>
+javac.opt.arg.release=<release>
+javac.opt.arg.number=<number>
 javac.opt.plugin=\u8981\u8FD0\u884C\u7684\u63D2\u4EF6\u7684\u540D\u79F0\u548C\u53EF\u9009\u53C2\u6570
 javac.opt.arg.plugin="\u540D\u79F0\u53C2\u6570"
 
@@ -74,18 +86,58 @@
 javac.opt.maxwarns=\u8BBE\u7F6E\u8981\u8F93\u51FA\u7684\u8B66\u544A\u7684\u6700\u5927\u6570\u76EE
 javac.opt.nogj=\u8BED\u8A00\u4E2D\u4E0D\u63A5\u53D7\u6CDB\u578B
 javac.opt.moreinfo=\u8F93\u51FA\u7C7B\u578B\u53D8\u91CF\u7684\u6269\u5C55\u4FE1\u606F
-javac.opt.printflat=\u5728\u5185\u90E8\u7C7B\u8F6C\u6362\u4E4B\u540E\u8F93\u51FA\u62BD\u8C61\u8BED\u6CD5\u6811
 javac.opt.printsearch=\u8F93\u51FA\u6709\u5173\u641C\u7D22\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\u7684\u4FE1\u606F
 javac.opt.prompt=\u5728\u6BCF\u6B21\u51FA\u9519\u540E\u505C\u6B62
-javac.opt.retrofit=\u66F4\u65B0\u4F7F\u7528\u6CDB\u578B\u7684\u73B0\u6709\u7C7B\u6587\u4EF6
 javac.opt.s=\u53D1\u51FA java \u6E90\u800C\u4E0D\u662F\u7C7B\u6587\u4EF6
-javac.opt.scramble=\u5728\u5B57\u8282\u7801\u4E2D\u6DF7\u6DC6\u4E13\u7528\u6807\u8BC6\u7B26
-javac.opt.scrambleall=\u5728\u5B57\u8282\u7801\u4E2D\u6DF7\u6DC6\u7A0B\u5E8F\u5305\u53EF\u89C1\u6807\u8BC6\u7B26
 javac.opt.version=\u7248\u672C\u4FE1\u606F
-javac.opt.arg.pathname=<\u8DEF\u5F84\u540D>
-javac.opt.arg.file=<\u6587\u4EF6\u540D>
+javac.opt.arg.pathname=<pathname>
+javac.opt.arg.file=<filename>
 javac.opt.Xlint=\u542F\u7528\u5EFA\u8BAE\u7684\u8B66\u544A
-javac.opt.Xlint.suboptlist=\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u7684\u8B66\u544A
+javac.opt.Xlint.all=\u542F\u7528\u6240\u6709\u8B66\u544A
+javac.opt.Xlint.none=\u7981\u7528\u6240\u6709\u8B66\u544A
+#L10N: do not localize: -Xlint
+javac.opt.Xlint.subopts=-Xlint:key,...
+javac.opt.Xlint.suboptlist=\n        \u8981\u542F\u7528\u6216\u7981\u7528\u7684\u8B66\u544A, \u4F7F\u7528\u9017\u53F7\u5206\u9694\u3002\n        \u5728\u5173\u952E\u5B57\u524D\u9762\u52A0\u4E0A '-' \u53EF\u7981\u7528\u6307\u5B9A\u7684\u8B66\u544A\u3002\n        \u652F\u6301\u7684\u5173\u952E\u5B57\u5305\u62EC:
+javac.opt.Xlint.desc.auxiliaryclass=\u6709\u5173\u8F85\u52A9\u7C7B\u5728\u6E90\u6587\u4EF6\u4E2D\u9690\u85CF, \u4F46\u5728\u5176\u4ED6\u6587\u4EF6\u4E2D\u4F7F\u7528\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.cast=\u6709\u5173\u4F7F\u7528\u4E86\u4E0D\u5FC5\u8981\u8F6C\u6362\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.classfile=\u6709\u5173\u4E0E\u7C7B\u6587\u4EF6\u5185\u5BB9\u76F8\u5173\u7684\u95EE\u9898\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.deprecation=\u6709\u5173\u4F7F\u7528\u4E86\u5DF2\u8FC7\u65F6\u9879\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.dep-ann=\u6709\u5173\u9879\u5728 JavaDoc \u4E2D\u6807\u8BB0\u4E3A\u5DF2\u8FC7\u65F6\u4F46\u672A\u4F7F\u7528 @Deprecated \u6CE8\u91CA\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.divzero=\u6709\u5173\u9664\u4EE5\u5E38\u91CF\u6574\u6570 0 \u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.empty=\u6709\u5173 if \u4E4B\u540E\u6CA1\u6709\u8BED\u53E5\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.fallthrough=\u6709\u5173\u4ECE switch \u8BED\u53E5\u7684\u4E00\u4E2A case \u5411\u4E0B\u987A\u5E8F\u6267\u884C\u5230\u4E0B\u4E00\u4E2A case \u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.finally=\u6709\u5173 finally \u5B50\u53E5\u672A\u6B63\u5E38\u7EC8\u6B62\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.options=\u6709\u5173\u4E0E\u4F7F\u7528\u547D\u4EE4\u884C\u9009\u9879\u76F8\u5173\u7684\u95EE\u9898\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.overloads=\u6709\u5173\u4E0E\u65B9\u6CD5\u91CD\u8F7D\u76F8\u5173\u7684\u95EE\u9898\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.overrides=\u6709\u5173\u4E0E\u65B9\u6CD5\u8986\u76D6\u76F8\u5173\u7684\u95EE\u9898\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.path=\u6709\u5173\u547D\u4EE4\u884C\u4E0A\u7684\u8DEF\u5F84\u5143\u7D20\u65E0\u6548\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.processing=\u6709\u5173\u4E0E\u6CE8\u91CA\u5904\u7406\u76F8\u5173\u7684\u95EE\u9898\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.rawtypes=\u6709\u5173\u4F7F\u7528\u4E86\u539F\u59CB\u7C7B\u578B\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.serial=\u6709\u5173 Serializable \u5B50\u53E5\u672A\u63D0\u4F9B\u5E8F\u5217\u7248\u672C ID \u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.static=\u6709\u5173\u4F7F\u7528\u5B9E\u4F8B\u6765\u8BBF\u95EE\u9759\u6001\u6210\u5458\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.try=\u6709\u5173\u4E0E\u4F7F\u7528 try \u5757 (\u4F8B\u5982 try-with-resources) \u76F8\u5173\u7684\u95EE\u9898\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.unchecked=\u6709\u5173\u672A\u68C0\u67E5\u64CD\u4F5C\u7684\u8B66\u544A\u3002
+
+javac.opt.Xlint.desc.varargs=\u6709\u5173\u6F5C\u5728\u4E0D\u5B89\u5168\u7684 vararg \u65B9\u6CD5\u7684\u8B66\u544A
+
 javac.opt.Xdoclint=\u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u5EFA\u8BAE\u7684\u68C0\u67E5
 # L10N: do not localize: all none
 javac.opt.Xdoclint.subopts = (all|none|[-]<group>)[/<access>]
@@ -93,15 +145,31 @@
 # L10N: do not localize: accessibility html missing reference syntax
 # L10N: do not localize: public protected package private
 javac.opt.Xdoclint.custom=\n        \u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u68C0\u67E5,\n        \u5176\u4E2D <group> \u4E3A accessibility, html, missing, reference \u6216 syntax \u4E4B\u4E00\u3002\n        <access> \u4E3A public, protected, package \u6216 private \u4E4B\u4E00\u3002
+
+javac.opt.Xdoclint.package.args = ([-]<packages>)
+
+javac.opt.Xdoclint.package.desc=\n        \u5728\u7279\u5B9A\u7684\u7A0B\u5E8F\u5305\u4E2D\u542F\u7528\u6216\u7981\u7528\u68C0\u67E5\u3002<packages> \u662F\u9017\u53F7\u5206\u9694\u7684\n        \u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u5217\u8868\u3002\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u662F\u7A0B\u5E8F\u5305\u7684\u9650\u5B9A\u540D\u79F0\n        \u6216\u7A0B\u5E8F\u5305\u540D\u79F0\u524D\u7F00\u540E\u8DDF ''.*'', \u5B83\u6269\u5C55\u5230\u7ED9\u5B9A\u7A0B\u5E8F\u5305\u7684\n        \u6240\u6709\u5B50\u7A0B\u5E8F\u5305\u3002\u5728\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u524D\u9762\u52A0\u4E0A ''-'' \u53EF\u4EE5\u4E3A\n        \u6307\u5B9A\u7A0B\u5E8F\u5305\u7981\u7528\u68C0\u67E5\u3002
+
 javac.opt.Xstdout=\u91CD\u5B9A\u5411\u6807\u51C6\u8F93\u51FA
 javac.opt.X=\u8F93\u51FA\u975E\u6807\u51C6\u9009\u9879\u7684\u63D0\u8981
 javac.opt.help=\u8F93\u51FA\u6807\u51C6\u9009\u9879\u7684\u63D0\u8981
 javac.opt.print=\u8F93\u51FA\u6307\u5B9A\u7C7B\u578B\u7684\u6587\u672C\u8868\u793A
 javac.opt.printRounds=\u8F93\u51FA\u6709\u5173\u6CE8\u91CA\u5904\u7406\u5FAA\u73AF\u7684\u4FE1\u606F
 javac.opt.printProcessorInfo=\u8F93\u51FA\u6709\u5173\u8BF7\u6C42\u5904\u7406\u7A0B\u5E8F\u5904\u7406\u54EA\u4E9B\u6CE8\u91CA\u7684\u4FE1\u606F
+javac.opt.userpathsfirst=\u5728\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u4E4B\u524D\u800C\u4E0D\u662F\u4E4B\u540E\u641C\u7D22\u7C7B\u7684\u7C7B\u8DEF\u5F84\u548C\u6E90\u8DEF\u5F84
 javac.opt.prefer=\u6307\u5B9A\u8BFB\u53D6\u6587\u4EF6, \u5F53\u540C\u65F6\u627E\u5230\u9690\u5F0F\u7F16\u8BD1\u7C7B\u7684\u6E90\u6587\u4EF6\u548C\u7C7B\u6587\u4EF6\u65F6
 javac.opt.AT=\u4ECE\u6587\u4EF6\u8BFB\u53D6\u9009\u9879\u548C\u6587\u4EF6\u540D
 javac.opt.diags=\u9009\u62E9\u8BCA\u65AD\u6A21\u5F0F
+javac.opt.addExports=\n        \u6307\u5B9A\u88AB\u89C6\u4E3A\u5DF2\u4ECE\u5176\u5B9A\u4E49\u6A21\u5757\u5BFC\u51FA\u5230\u5176\u4ED6\u6A21\u5757\u6216\u8005\u5BFC\u51FA\u5230\u6240\u6709\n        \u672A\u547D\u540D\u6A21\u5757 (\u5982\u679C <other-module> \u4E3A ALL-UNNAMED) \u7684\u7A0B\u5E8F\u5305\u3002
+javac.opt.arg.addExports=<module>/<package>=<other-module>(,<other-module>)*
+javac.opt.addReads=\n        \u6307\u5B9A\u88AB\u89C6\u4E3A\u7ED9\u5B9A\u6A21\u5757\u9700\u8981\u7684\u5176\u4ED6\u6A21\u5757\u3002\n        <other-module> \u53EF\u80FD\u9700\u8981\u4E3A ALL-UNNAMED, \u4EE5\u4FBF\u8981\u6C42\u672A\u547D\u540D\u6A21\u5757\u3002
+javac.opt.arg.addReads=<module>=<other-module>(,<other-module>)*
+javac.opt.module=\u6307\u5B9A\u6B63\u5728\u7F16\u8BD1\u7684\u7C7B\u6240\u5C5E\u7684\u6A21\u5757\u3002
+javac.opt.arg.module=<module-name>
+javac.opt.addmods=\n        \u9664\u4E86\u521D\u59CB\u6A21\u5757\u4E4B\u5916\u8981\u89E3\u6790\u7684\u6839\u6A21\u5757; \u5982\u679C <module>\n        \u4E3A ALL-MODULE-PATH, \u5219\u4E3A\u6A21\u5757\u8DEF\u5F84\u4E2D\u7684\u6240\u6709\u6A21\u5757\u3002
+javac.opt.arg.addmods=<module>(,<module>)*
+javac.opt.limitmods=\u9650\u5236\u53EF\u89C2\u5BDF\u6A21\u5757\u7684\u9886\u57DF
+javac.opt.arg.limitmods=<module>(,<module>)*
 
 ## errors
 
@@ -112,19 +180,21 @@
 javac.err.profile.bootclasspath.conflict=\u6982\u8981\u4FE1\u606F\u548C\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u9009\u9879\u4E0D\u80FD\u540C\u65F6\u4F7F\u7528
 javac.err.invalid.profile=\u914D\u7F6E\u6587\u4EF6\u65E0\u6548: {0}
 javac.err.invalid.target=\u65E0\u6548\u7684\u76EE\u6807\u53D1\u884C\u7248: {0}
+javac.err.option.not.allowed.with.target=\u76EE\u6807 {1} \u4E0D\u5141\u8BB8\u9009\u9879 {0}
+javac.err.option.too.many=\u9009\u9879 {0} \u53EA\u80FD\u6307\u5B9A\u4E00\u6B21
 javac.err.no.source.files=\u65E0\u6E90\u6587\u4EF6
 javac.err.no.source.files.classes=\u65E0\u6E90\u6587\u4EF6\u6216\u7C7B\u540D
 javac.err.req.arg={0}\u9700\u8981\u53C2\u6570
 javac.err.invalid.source=\u65E0\u6548\u7684\u6E90\u53D1\u884C\u7248: {0}
 javac.err.error.writing.file=\u5199\u5165{0}\u65F6\u51FA\u9519; {1}
+javac.err.sourcepath.modulesourcepath.conflict=\u65E0\u6CD5\u540C\u65F6\u6307\u5B9A -sourcepath \u4E0E -modulesourcepath
 javac.warn.source.target.conflict=\u6E90\u53D1\u884C\u7248 {0} \u9700\u8981\u76EE\u6807\u53D1\u884C\u7248 {1}
 javac.warn.target.default.source.conflict=\u76EE\u6807\u53D1\u884C\u7248 {0} \u4E0E\u9ED8\u8BA4\u7684\u6E90\u53D1\u884C\u7248 {1} \u51B2\u7A81
 javac.warn.profile.target.conflict=\u914D\u7F6E\u6587\u4EF6{0}\u5BF9\u4E8E\u76EE\u6807\u53D1\u884C\u7248 {1} \u65E0\u6548
-javac.err.dir.not.found=\u627E\u4E0D\u5230\u76EE\u5F55: {0}
 javac.err.file.not.found=\u627E\u4E0D\u5230\u6587\u4EF6: {0}
 javac.err.file.not.directory=\u4E0D\u662F\u76EE\u5F55: {0}
 javac.err.file.not.file=\u4E0D\u662F\u6587\u4EF6: {0}
-javac.msg.plugin.not.found=\u627E\u4E0D\u5230\u63D2\u4EF6: {0}
+
 ## messages
 
 javac.msg.usage.header=\u7528\u6CD5: {0} <options> <source files>\n\u5176\u4E2D, \u53EF\u80FD\u7684\u9009\u9879\u5305\u62EC:
@@ -133,7 +203,7 @@
 
 javac.msg.usage.nonstandard.footer=\u8FD9\u4E9B\u9009\u9879\u90FD\u662F\u975E\u6807\u51C6\u9009\u9879, \u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002
 
-javac.msg.bug=\u7F16\u8BD1\u5668 ({0}) \u4E2D\u51FA\u73B0\u5F02\u5E38\u9519\u8BEF\u3002 \u5982\u679C\u5728 Bug Parade \u4E2D\u6CA1\u6709\u627E\u5230\u8BE5\u9519\u8BEF, \u8BF7\u5728 Java Developer Connection (http://java.sun.com/webapps/bugreport) \u4E2D\u5EFA\u7ACB Bug\u3002\u8BF7\u5728\u62A5\u544A\u4E2D\u9644\u4E0A\u60A8\u7684\u7A0B\u5E8F\u548C\u4EE5\u4E0B\u8BCA\u65AD\u4FE1\u606F\u3002\u8C22\u8C22\u3002
+javac.msg.bug=\u7F16\u8BD1\u5668 ({0}) \u4E2D\u51FA\u73B0\u5F02\u5E38\u9519\u8BEF\u3002\u5982\u679C\u5728 Bug Database (http://bugs.java.com) \u4E2D\u6CA1\u6709\u627E\u5230\u8BE5\u9519\u8BEF, \u8BF7\u901A\u8FC7 Java Bug \u62A5\u544A\u9875 (http://bugreport.java.com) \u5EFA\u7ACB\u8BE5 Java \u7F16\u8BD1\u5668 Bug\u3002\u8BF7\u5728\u62A5\u544A\u4E2D\u9644\u4E0A\u60A8\u7684\u7A0B\u5E8F\u548C\u4EE5\u4E0B\u8BCA\u65AD\u4FE1\u606F\u3002\u8C22\u8C22\u3002
 
 javac.msg.io=\n\n\u53D1\u751F\u8F93\u5165/\u8F93\u51FA\u9519\u8BEF\u3002\n\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u53C2\u9605\u4EE5\u4E0B\u5806\u6808\u8DDF\u8E2A\u3002\n
 
@@ -145,3 +215,9 @@
 
 javac.version={0} {1}
 javac.fullVersion={0}\u5B8C\u6574\u7248\u672C "{1}"
+
+javac.err.release.bootclasspath.conflict=\u9009\u9879{0}\u65E0\u6CD5\u4E0E -release \u4E00\u8D77\u4F7F\u7528
+
+javac.err.unsupported.release.version=\u4E0D\u652F\u6301\u53D1\u884C\u7248\u672C {0}
+
+javac.err.release.not.standard.file.manager=\u6307\u5B9A\u4E86 -release \u9009\u9879, \u4F46\u63D0\u4F9B\u7684 JavaFileManager \u4E0D\u662F StandardJavaFileManager\u3002
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java
index 6457bc4..e4a98d3 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -723,8 +723,11 @@
                     printExpr(tree.init.head);
                     for (List<JCStatement> l = tree.init.tail; l.nonEmpty(); l = l.tail) {
                         JCVariableDecl vdef = (JCVariableDecl)l.head;
-                        print(", " + vdef.name + " = ");
-                        printExpr(vdef.init);
+                        print(", " + vdef.name);
+                        if (vdef.init != null) {
+                            print(" = ");
+                            printExpr(vdef.init);
+                        }
                     }
                 } else {
                     printExprs(tree.init);
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_ja.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_ja.properties
index dcb5253..4dda18d 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_ja.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -30,13 +30,14 @@
 at.args.cant.read=\u30D5\u30A1\u30A4\u30EB{1}\u304B\u3089\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u5F15\u6570\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3002
 at.args.file.not.found=\u30D5\u30A1\u30A4\u30EB{0}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
 at.args.io.exception=\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u306E@\u5F15\u6570\u306E\u51E6\u7406\u4E2D\u306B\u3001\u6B21\u306E\u5165\u51FA\u529B\u306E\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F: {0}\u3002
+bad.arg=\u7121\u52B9\u306A\u5F15\u6570: {0}
 old.jni.mixed=\u30AA\u30D7\u30B7\u30E7\u30F3-jni\u3068-old\u3092\u540C\u6642\u306B\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002-help\u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 old.llni.mixed=\u30AA\u30D7\u30B7\u30E7\u30F3-old\u3068-llni\u3092\u540C\u6642\u306B\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002-help\u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 old.not.supported=\u3053\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306Ejavah\u3067\u306F\u30AA\u30D7\u30B7\u30E7\u30F3-old\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
-invalid.method.signature=\u7121\u52B9\u306A\u30E1\u30BD\u30C3\u30C9\u30FB\u30B7\u30B0\u30CD\u30C1\u30E3: {0}
+invalid.method.signature=\u7121\u52B9\u306A\u30E1\u30BD\u30C3\u30C9\u30FB\u30B7\u30B0\u30CB\u30C1\u30E3: {0}
 jni.llni.mixed=\u30AA\u30D7\u30B7\u30E7\u30F3-jni\u3068-llni\u3092\u540C\u6642\u306B\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002-help\u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 jni.no.stubs=JNI\u306F\u30B9\u30BF\u30D6\u3092\u5FC5\u8981\u3068\u3057\u307E\u305B\u3093\u3002JNI\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
-jni.sigerror={0}\u306E\u30B7\u30B0\u30CD\u30C1\u30E3\u3092\u5224\u5225\u3067\u304D\u307E\u305B\u3093
+jni.sigerror={0}\u306E\u7F72\u540D\u3092\u5224\u5B9A\u3067\u304D\u307E\u305B\u3093
 dir.file.mixed=\u30AA\u30D7\u30B7\u30E7\u30F3-d\u3068-o\u3092\u540C\u6642\u306B\u4F7F\u7528\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002-help\u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 no.classes.specified=\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u3067\u30AF\u30E9\u30B9\u304C\u6307\u5B9A\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002-help\u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 no.outputfile.specified=\u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u3067\u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u304C\u6307\u5B9A\u3055\u308C\u307E\u305B\u3093\u3067\u3057\u305F\u3002-help\u3067\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002
@@ -49,14 +50,13 @@
 #
 # Usage message.
 #
-usage=\u4F7F\u7528\u65B9\u6CD5: javah [options] <classes>\n\n[options]\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\n\n\t-help           \u30D8\u30EB\u30D7\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3057\u3066\u7D42\u4E86\u3059\u308B\n\t-classpath <path>   \u30AF\u30E9\u30B9\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9\n\t-cp <path>            \u30AF\u30E9\u30B9\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9\r\n\t-bootclasspath <path> \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9\n\t-d<dir>         \u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n\t-o <file>         \u51FA\u529B\u30D5\u30A1\u30A4\u30EB(-d\u304B-o\u306E\u3069\u3061\u3089\u304B\u4E00\u65B9\u3092\u4F7F\u7528\u3059\u308B)\n\t-jni           JNI\u5F62\u5F0F\u306E\u30D8\u30C3\u30C0\u30FC\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u751F\u6210\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8)\n\t-version         \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\u8868\u793A\u3059\u308B\n\t-verbose         \u8A73\u7D30\u306A\u51FA\u529B\u3092\u884C\u3046\n\t-force          \u5E38\u306B\u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u3092\u66F8\u304D\u8FBC\u3080\n\n<classes>\u306F\u5B8C\u5168\u6307\u5B9A\u306E\u540D\u524D\u3067\u6307\u5B9A\u3057\u307E\u3059\n(java.lang.Object\u306A\u3069)\u3002\n
-
+usage=\u4F7F\u7528\u65B9\u6CD5: javah [options] <classes>\n\n[options]\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002\n\n\t-help           \u30D8\u30EB\u30D7\u30FB\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3057\u3066\u7D42\u4E86\u3059\u308B\n\t-classpath <path>   \u30AF\u30E9\u30B9\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9\n\t-cp <path>            \u30AF\u30E9\u30B9\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9\n\t-modulepath <path>    \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9\n\t-system <path>        \u30B7\u30B9\u30C6\u30E0\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u30ED\u30FC\u30C9\u3059\u308BJDK\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n\t-d<dir>         \u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n\t-o <file>         \u51FA\u529B\u30D5\u30A1\u30A4\u30EB(-d\u304B-o\u306E\u3069\u3061\u3089\u304B\u4E00\u65B9\u3092\u4F7F\u7528\u3059\u308B)\n\t-jni           JNI\u5F62\u5F0F\u306E\u30D8\u30C3\u30C0\u30FC\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u751F\u6210\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8)\n\t-version         \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\u8868\u793A\u3059\u308B\n\t-verbose         \u8A73\u7D30\u306A\u51FA\u529B\u3092\u884C\u3046\n\t-force          \u5E38\u306B\u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u3092\u66F8\u304D\u8FBC\u3080\n\n<classes>\u306F\u5B8C\u5168\u4FEE\u98FE\u540D\u3067\u3001\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\n\u5148\u982D\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u540D\u306E\u5F8C\u306B'/'\u3092\u7D9A\u3051\u3066\u6307\u5B9A\u3057\u307E\u3059\u3002\u4F8B:\njava.lang.Object\njava.base/java.io.File\n
 main.usage=\u4F7F\u7528\u65B9\u6CD5: \n  javah [options] <classes>\n[options]\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059\u3002
 main.opt.o=\  -o <file>                \u51FA\u529B\u30D5\u30A1\u30A4\u30EB(-d\u304B-o\u306E\u3069\u3061\u3089\u304B\u4E00\u65B9\u3092\u4F7F\u7528\u3059\u308B)
 main.opt.d=\  -d <dir>                 \u51FA\u529B\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
 main.opt.v=\  -v  -verbose             \u8A73\u7D30\u306A\u51FA\u529B\u3092\u884C\u3046
-main.opt.h=\  -h  --help  -?           \u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B
-main.opt.version=\  -version                 \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\u51FA\u529B\u3059\u308B
+main.opt.h=\  -h  --help  -?           \u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3059\u308B
+main.opt.version=\  -version                 \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\u8868\u793A\u3059\u308B
 main.opt.jni=\  -jni                     JNI\u5F62\u5F0F\u306E\u30D8\u30C3\u30C0\u30FC\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u751F\u6210\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8)
 main.opt.force=\  -force                   \u5E38\u306B\u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u3092\u66F8\u304D\u8FBC\u3080
 main.opt.classpath=\  -classpath <path>        \u30AF\u30E9\u30B9\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30D1\u30B9
@@ -91,7 +91,7 @@
 err.prefix=\u30A8\u30E9\u30FC:
 err.cant.use.option.for.fm=\u6307\u5B9A\u3055\u308C\u305F\u30D5\u30A1\u30A4\u30EB\u30FB\u30DE\u30CD\u30FC\u30B8\u30E3\u3067{0}\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 err.internal.error=\u5185\u90E8\u30A8\u30E9\u30FC: {0}
-err.ioerror=IO\u30A8\u30E9\u30FC: {0}
+err.ioerror=\u5165\u51FA\u529B\u30A8\u30E9\u30FC: {0}
 err.missing.arg={0}\u306E\u5024\u304C\u3042\u308A\u307E\u305B\u3093
 err.no.classes.specified=\u30AF\u30E9\u30B9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 err.unknown.option=\u4E0D\u660E\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
diff --git a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_zh_CN.properties b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_zh_CN.properties
index e4565df..7b12f26 100644
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_zh_CN.properties
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/resources/l10n_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -30,6 +30,7 @@
 at.args.cant.read=\u65E0\u6CD5\u4ECE\u6587\u4EF6{1}\u4E2D\u8BFB\u53D6\u547D\u4EE4\u884C\u53C2\u6570\u3002
 at.args.file.not.found=\u627E\u4E0D\u5230\u6587\u4EF6{0}\u3002
 at.args.io.exception=\u5904\u7406\u547D\u4EE4\u884C\u4E2D\u7684 @ \u53C2\u6570\u65F6, \u9047\u5230\u4EE5\u4E0B I/O \u95EE\u9898: {0}\u3002
+bad.arg=\u9519\u8BEF\u53C2\u6570: {0}
 old.jni.mixed=\u4E0D\u80FD\u6DF7\u7528\u9009\u9879 -jni \u548C -old\u3002\u8BF7\u5C1D\u8BD5\u4F7F\u7528 -help\u3002
 old.llni.mixed=\u4E0D\u80FD\u6DF7\u7528\u9009\u9879 -old \u548C -llni\u3002\u8BF7\u5C1D\u8BD5\u4F7F\u7528 -help\u3002
 old.not.supported=\u6B64\u7248\u672C\u7684 javah \u4E0D\u652F\u6301\u9009\u9879 -old\u3002
@@ -49,8 +50,7 @@
 #
 # Usage message.
 #
-usage=\u7528\u6CD5: javah [options] <classes>\n\n\u5176\u4E2D, [options] \u5305\u62EC:\n\n\t-help                 \u8F93\u51FA\u6B64\u5E2E\u52A9\u6D88\u606F\u5E76\u9000\u51FA\n\t-classpath <path>     \u4ECE\u4E2D\u52A0\u8F7D\u7C7B\u7684\u8DEF\u5F84\n\t-cp <path>            \u4ECE\u4E2D\u52A0\u8F7D\u7C7B\u7684\u8DEF\u5F84\n\t-bootclasspath <path> \u4ECE\u4E2D\u52A0\u8F7D\u5F15\u5BFC\u7C7B\u7684\u8DEF\u5F84\n\t-d <dir>              \u8F93\u51FA\u76EE\u5F55\n\t-o <file>             \u8F93\u51FA\u6587\u4EF6 (\u53EA\u80FD\u4F7F\u7528 -d \u6216 -o \u4E4B\u4E00)\n\t-jni                  \u751F\u6210 JNI \u6837\u5F0F\u7684\u6807\u5934\u6587\u4EF6 (\u9ED8\u8BA4\u503C)\n\t-version              \u8F93\u51FA\u7248\u672C\u4FE1\u606F\n\t-verbose              \u542F\u7528\u8BE6\u7EC6\u8F93\u51FA\n\t-force                \u59CB\u7EC8\u5199\u5165\u8F93\u51FA\u6587\u4EF6\n\n<classes> \u662F\u4F7F\u7528\u5176\u5168\u9650\u5B9A\u540D\u79F0\u6307\u5B9A\u7684,\n(\u4F8B\u5982, java.lang.Object)\u3002\n
-
+usage=\u7528\u6CD5: javah [options] <classes>\n\n\u5176\u4E2D, [options] \u5305\u62EC:\n\n\t-help                 \u8F93\u51FA\u6B64\u5E2E\u52A9\u6D88\u606F\u5E76\u9000\u51FA\n\t-classpath <path>     \u4ECE\u4E2D\u52A0\u8F7D\u7C7B\u7684\u8DEF\u5F84\n\t-cp <path>            \u4ECE\u4E2D\u52A0\u8F7D\u7C7B\u7684\u8DEF\u5F84\n\t-modulepath <path>    \u4ECE\u4E2D\u52A0\u8F7D\u5E94\u7528\u7A0B\u5E8F\u6A21\u5757\u7684\u8DEF\u5F84\n\t-system <path>        \u4ECE\u4E2D\u52A0\u8F7D\u7CFB\u7EDF\u6A21\u5757\u7684 JDK \u76EE\u5F55\n\t-d <dir>              \u8F93\u51FA\u76EE\u5F55\n\t-o <file>             \u8F93\u51FA\u6587\u4EF6 (\u53EA\u80FD\u4F7F\u7528 -d \u6216 -o \u4E4B\u4E00)\n\t-jni                  \u751F\u6210 JNI \u6837\u5F0F\u7684\u6807\u5934\u6587\u4EF6 (\u9ED8\u8BA4\u503C)\n\t-version              \u8F93\u51FA\u7248\u672C\u4FE1\u606F\n\t-verbose              \u542F\u7528\u8BE6\u7EC6\u8F93\u51FA\n\t-force                \u59CB\u7EC8\u5199\u5165\u8F93\u51FA\u6587\u4EF6\n\n<classes> \u662F\u4F7F\u7528\u5176\u5168\u9650\u5B9A\u540D\u79F0\u6307\u5B9A\u7684, \u53EF\u4EE5\u9009\u62E9\u6027\u5730\n\u4F7F\u7528\u6A21\u5757\u540D\u540E\u8DDF '/' \u4F5C\u4E3A\u524D\u7F00\u3002\u793A\u4F8B:\njava.lang.Object\njava.base/java.io.File\n
 main.usage=\u7528\u6CD5: \n  javah [options] <classes>\n\u5176\u4E2D, [options] \u5305\u62EC:
 main.opt.o=\  -o <file>                \u8F93\u51FA\u6587\u4EF6 (\u53EA\u80FD\u4F7F\u7528 -d \u6216 -o \u4E4B\u4E00)
 main.opt.d=\  -d <dir>                 \u8F93\u51FA\u76EE\u5F55
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties
index 5592f10..5897ca6 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties
@@ -4,9 +4,7 @@
 doclet.Window_Overview=\u6982\u8981\u30EA\u30B9\u30C8
 doclet.Window_Overview_Summary=\u6982\u8981
 doclet.Package=\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Profile=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
 doclet.All_Packages=\u3059\u3079\u3066\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.All_Profiles=\u3059\u3079\u3066\u306E\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
 doclet.Tree=\u968E\u5C64\u30C4\u30EA\u30FC
 doclet.Class_Hierarchy=\u30AF\u30E9\u30B9\u968E\u5C64
 doclet.Window_Class_Hierarchy=\u30AF\u30E9\u30B9\u968E\u5C64
@@ -19,8 +17,6 @@
 doclet.Next_Class=\u6B21\u306E\u30AF\u30E9\u30B9
 doclet.Prev_Package=\u524D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Next_Package=\u6B21\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Prev_Profile=\u524D\u306E\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
-doclet.Next_Profile=\u6B21\u306E\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
 doclet.Prev_Letter=\u524D\u306E\u6587\u5B57
 doclet.Next_Letter=\u6B21\u306E\u6587\u5B57
 doclet.Href_Class_Title={0}\u5185\u306E\u30AF\u30E9\u30B9
@@ -37,7 +33,7 @@
 doclet.navAnnotationTypeMember=\u8981\u7D20
 doclet.navField=\u30D5\u30A3\u30FC\u30EB\u30C9
 doclet.navProperty=\u30D7\u30ED\u30D1\u30C6\u30A3
-doclet.navEnum=\u5217\u6319\u578B\u5B9A\u6570
+doclet.navEnum=\u5217\u6319\u5B9A\u6570
 doclet.navConstructor=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 doclet.navMethod=\u30E1\u30BD\u30C3\u30C9
 doclet.Index=\u7D22\u5F15
@@ -48,13 +44,14 @@
 doclet.Navigation=\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3
 doclet.New_Page=NewPage
 doclet.navDeprecated=\u975E\u63A8\u5968
-doclet.Window_Deprecated_List=\u975E\u63A8\u5968\u306E\u30EA\u30B9\u30C8
+doclet.Window_Deprecated_List=\u975E\u63A8\u5968API\u306E\u30EA\u30B9\u30C8
 doclet.Overrides=\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9:
 doclet.in_class=\u30AF\u30E9\u30B9\u5185
 doclet.Static_variable_in={0}\u306Estatic\u5909\u6570
 doclet.Variable_in={0}\u306E\u5909\u6570
 doclet.Constructor_for={0}\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 doclet.Static_method_in={0}\u306Estatic\u30E1\u30BD\u30C3\u30C9
+doclet.Search_tag_in={0}\u306E\u691C\u7D22\u30BF\u30B0
 doclet.Method_in={0}\u306E\u30E1\u30BD\u30C3\u30C9
 doclet.package=\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.MalformedURL=\u4E0D\u6B63\u306AURL: {0}
@@ -62,31 +59,31 @@
 doclet.URL_error=URL\u53D6\u51FA\u3057\u30A8\u30E9\u30FC: {0}
 doclet.see.class_or_package_not_found=\u30BF\u30B0{0}: \u53C2\u7167\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {1}
 doclet.see.class_or_package_not_accessible=\u30BF\u30B0{0}: \u53C2\u7167\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093: {1}
-doclet.Deprecated_API=\u975E\u63A8\u5968\u306EAPI
-doclet.Deprecated_Packages=\u975E\u63A8\u5968\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Deprecated_Classes=\u975E\u63A8\u5968\u306E\u30AF\u30E9\u30B9
-doclet.Deprecated_Enums=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B
-doclet.Deprecated_Interfaces=\u975E\u63A8\u5968\u306E\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
-doclet.Deprecated_Exceptions=\u975E\u63A8\u5968\u306E\u4F8B\u5916
-doclet.Deprecated_Annotation_Types=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B
-doclet.Deprecated_Errors=\u975E\u63A8\u5968\u306E\u30A8\u30E9\u30FC
-doclet.Deprecated_Fields=\u975E\u63A8\u5968\u306E\u30D5\u30A3\u30FC\u30EB\u30C9
-doclet.Deprecated_Constructors=\u975E\u63A8\u5968\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
-doclet.Deprecated_Methods=\u975E\u63A8\u5968\u306E\u30E1\u30BD\u30C3\u30C9
-doclet.Deprecated_Enum_Constants=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B\u5B9A\u6570
-doclet.Deprecated_Annotation_Type_Members=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B\u306E\u8981\u7D20
-doclet.deprecated_packages=\u975E\u63A8\u5968\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.deprecated_classes=\u975E\u63A8\u5968\u306E\u30AF\u30E9\u30B9
-doclet.deprecated_enums=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B
-doclet.deprecated_interfaces=\u975E\u63A8\u5968\u306E\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
-doclet.deprecated_exceptions=\u975E\u63A8\u5968\u306E\u4F8B\u5916
-doclet.deprecated_annotation_types=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B
-doclet.deprecated_errors=\u975E\u63A8\u5968\u306E\u30A8\u30E9\u30FC
-doclet.deprecated_fields=\u975E\u63A8\u5968\u306E\u30D5\u30A3\u30FC\u30EB\u30C9
-doclet.deprecated_constructors=\u975E\u63A8\u5968\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
-doclet.deprecated_methods=\u975E\u63A8\u5968\u306E\u30E1\u30BD\u30C3\u30C9
-doclet.deprecated_enum_constants=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B\u5B9A\u6570
-doclet.deprecated_annotation_type_members=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B\u306E\u8981\u7D20
+doclet.Deprecated_API=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044API
+doclet.Deprecated_Packages=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D1\u30C3\u30B1\u30FC\u30B8
+doclet.Deprecated_Classes=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30AF\u30E9\u30B9
+doclet.Deprecated_Enums=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B
+doclet.Deprecated_Interfaces=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
+doclet.Deprecated_Exceptions=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u4F8B\u5916
+doclet.Deprecated_Annotation_Types=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B
+doclet.Deprecated_Errors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30E9\u30FC
+doclet.Deprecated_Fields=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D5\u30A3\u30FC\u30EB\u30C9
+doclet.Deprecated_Constructors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
+doclet.Deprecated_Methods=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30E1\u30BD\u30C3\u30C9
+doclet.Deprecated_Enum_Constants=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B\u5B9A\u6570
+doclet.Deprecated_Annotation_Type_Members=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B\u306E\u8981\u7D20
+doclet.deprecated_packages=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D1\u30C3\u30B1\u30FC\u30B8
+doclet.deprecated_classes=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30AF\u30E9\u30B9
+doclet.deprecated_enums=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B
+doclet.deprecated_interfaces=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
+doclet.deprecated_exceptions=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u4F8B\u5916
+doclet.deprecated_annotation_types=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B
+doclet.deprecated_errors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30E9\u30FC
+doclet.deprecated_fields=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D5\u30A3\u30FC\u30EB\u30C9
+doclet.deprecated_constructors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
+doclet.deprecated_methods=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30E1\u30BD\u30C3\u30C9
+doclet.deprecated_enum_constants=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B\u5B9A\u6570
+doclet.deprecated_annotation_type_members=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B\u306E\u8981\u7D20
 doclet.Generated_Docs_Untitled=\u751F\u6210\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8(\u30BF\u30A4\u30C8\u30EB\u306A\u3057)
 doclet.Other_Packages=\u305D\u306E\u4ED6\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Package_Description=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306E\u8AAC\u660E
@@ -104,13 +101,10 @@
 doclet.Package_Hierarchies=\u30D1\u30C3\u30B1\u30FC\u30B8\u968E\u5C64:
 doclet.Hierarchy_For_Package=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306E\u968E\u5C64
 doclet.Hierarchy_For_All_Packages=\u3059\u3079\u3066\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u968E\u5C64
-doclet.Frame_Alert=\u30D5\u30EC\u30FC\u30E0\u95A2\u9023\u306E\u30A2\u30E9\u30FC\u30C8
-doclet.Frame_Warning_Message=\u3053\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306F\u30D5\u30EC\u30FC\u30E0\u6A5F\u80FD\u3092\u4F7F\u7528\u3057\u3066\u8868\u793A\u3059\u308B\u3088\u3046\u306B\u4F5C\u6210\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30D5\u30EC\u30FC\u30E0\u3092\u8868\u793A\u3067\u304D\u306A\u3044Web\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306E\u5834\u5408\u306B\u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002{0}\u306B\u30EA\u30F3\u30AF\u3057\u307E\u3059\u3002
 doclet.No_Script_Message=\u30D6\u30E9\u30A6\u30B6\u306EJavaScript\u304C\u7121\u52B9\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002
-doclet.Non_Frame_Version=\u30D5\u30EC\u30FC\u30E0\u306B\u5BFE\u5FDC\u3057\u3066\u3044\u306A\u3044\u30D0\u30FC\u30B8\u30E7\u30F3
 doclet.Description_From_Interface=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u304B\u3089\u30B3\u30D4\u30FC\u3055\u308C\u305F\u8AAC\u660E:
 doclet.Description_From_Class=\u30AF\u30E9\u30B9\u304B\u3089\u30B3\u30D4\u30FC\u3055\u308C\u305F\u8AAC\u660E:
-doclet.No_Non_Deprecated_Classes_To_Document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3059\u308B\u975E\u63A8\u5968\u3067\u306A\u3044\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+doclet.No_Non_Deprecated_Classes_To_Document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3059\u308B\u975E\u63A8\u5968\u4EE5\u5916\u306E\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
 doclet.Interfaces_Italic=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9(\u30A4\u30BF\u30EA\u30C3\u30AF)
 doclet.Enclosing_Class=\u542B\u307E\u308C\u3066\u3044\u308B\u30AF\u30E9\u30B9:
 doclet.Enclosing_Interface=\u542B\u307E\u308C\u3066\u3044\u308B\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:
@@ -135,7 +129,7 @@
 doclet.Help_line_17_with_tree_link=\u3059\u3079\u3066\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u306F{0}\u30DA\u30FC\u30B8\u304C\u3042\u308A\u3001\u3055\u3089\u306B\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u968E\u5C64\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u968E\u5C64\u30DA\u30FC\u30B8\u306F\u3001\u30AF\u30E9\u30B9\u306E\u30EA\u30B9\u30C8\u3068\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8\u3092\u542B\u307F\u307E\u3059\u3002\u30AF\u30E9\u30B9\u306F{1}\u3092\u958B\u59CB\u70B9\u3068\u3059\u308B\u7D99\u627F\u69CB\u9020\u3067\u7DE8\u6210\u3055\u308C\u307E\u3059\u3002\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306F\u3001{1}\u304B\u3089\u306F\u7D99\u627F\u3057\u307E\u305B\u3093\u3002
 doclet.Help_line_18=\u6982\u8981\u30DA\u30FC\u30B8\u3092\u8868\u793A\u3057\u3066\u3044\u308B\u3068\u304D\u306B\u300C\u968E\u5C64\u30C4\u30EA\u30FC\u300D\u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u3001\u5168\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u968E\u5C64\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002
 doclet.Help_line_19=\u7279\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3092\u8868\u793A\u3057\u3066\u3044\u308B\u3068\u304D\u306B\u300C\u968E\u5C64\u30C4\u30EA\u30FC\u300D\u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u3001\u8A72\u5F53\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u307F\u306E\u968E\u5C64\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002
-doclet.Help_line_20_with_deprecated_api_link={0}\u30DA\u30FC\u30B8\u306F\u3001\u975E\u63A8\u5968\u306EAPI\u3092\u3059\u3079\u3066\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002\u975E\u63A8\u5968\u306EAPI\u3068\u306F\u3001\u6A5F\u80FD\u6539\u826F\u306A\u3069\u306E\u7406\u7531\u304B\u3089\u4F7F\u7528\u3092\u304A\u85A6\u3081\u3067\u304D\u306A\u304F\u306A\u3063\u305FAPI\u306E\u3053\u3068\u3067\u3001\u901A\u5E38\u306F\u305D\u308C\u306B\u4EE3\u308F\u308BAPI\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u975E\u63A8\u5968\u306EAPI\u306F\u4ECA\u5F8C\u306E\u5B9F\u88C5\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002
+doclet.Help_line_20_with_deprecated_api_link={0}\u30DA\u30FC\u30B8\u306F\u3001\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u3059\u3079\u3066\u306EAPI\u306E\u30EA\u30B9\u30C8\u3092\u8868\u793A\u3057\u307E\u3059\u3002\u975E\u63A8\u5968API\u3068\u306F\u3001\u6A5F\u80FD\u6539\u826F\u306A\u3069\u306E\u7406\u7531\u304B\u3089\u4F7F\u7528\u3092\u304A\u85A6\u3081\u3067\u304D\u306A\u304F\u306A\u3063\u305FAPI\u306E\u3053\u3068\u3067\u3001\u901A\u5E38\u306F\u305D\u308C\u306B\u4EE3\u308F\u308BAPI\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u975E\u63A8\u5968API\u306F\u4ECA\u5F8C\u306E\u5B9F\u88C5\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002
 doclet.Help_line_21=\u7D22\u5F15
 doclet.Help_line_22={0}\u306B\u306F\u3001\u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3001\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u3001\u30E1\u30BD\u30C3\u30C9\u304A\u3088\u3073\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002
 doclet.Help_line_23=\u524D/\u6B21
@@ -185,9 +179,9 @@
 doclet.Groupname_already_used=-group\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u304A\u3044\u3066\u3001\u3059\u3067\u306B\u30B0\u30EB\u30FC\u30D7\u540D\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.Same_package_name_used=\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u5F62\u5F0F\u304C2\u56DE\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.exception_encountered={1}\u306E\u51E6\u7406\u4E2D\u306B\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\n{0}
-doclet.usage=\u6A19\u6E96\u306Edoclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:\n-d <directory>                    \u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n-use                              \u30AF\u30E9\u30B9\u3068\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4F7F\u7528\u30DA\u30FC\u30B8\u3092\u4F5C\u6210\u3059\u308B\n-version                          @version\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u308B\n-author                           @author\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u308B\n-docfilessubdirs                  doc-file\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u518D\u5E30\u7684\u306B\u30B3\u30D4\u30FC\u3059\u308B\n-splitindex                       1\u5B57\u3054\u3068\u306B1\u30D5\u30A1\u30A4\u30EB\u306B\u7D22\u5F15\u3092\u5206\u5272\u3059\u308B\n-windowtitle <text>               \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u7528\u306E\u30D6\u30E9\u30A6\u30B6\u30FB\u30A6\u30A3\u30F3\u30C9\u30A6\u30FB\u30BF\u30A4\u30C8\u30EB\n-doctitle <html-code>             \u6982\u8981\u30DA\u30FC\u30B8\u306B\u30BF\u30A4\u30C8\u30EB\u3092\u542B\u3081\u308B\n-header <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u30D8\u30C3\u30C0\u30FC\u3092\u542B\u3081\u308B\n-footer <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u30D5\u30C3\u30BF\u30FC\u3092\u542B\u3081\u308B\n-top    <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u4E0A\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u308B\n-bottom <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u4E0B\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u308B\n-link <url>                       <url>\u306Bjavadoc\u51FA\u529B\u3078\u306E\u30EA\u30F3\u30AF\u3092\u4F5C\u6210\u3059\u308B\n-linkoffline <url> <url2>         <url2>\u306B\u3042\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u4F7F\u7528\u3057\u3066<url>\u306Edocs\u306B\u30EA\u30F3\u30AF\u3059\u308B\n-excludedocfilessubdir <name1>:.. \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u306Edoc-files\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u3059\u3079\u3066\u9664\u5916\u3059\u308B\n-group <name> <p1>:<p2>..         \u6307\u5B9A\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6982\u8981\u30DA\u30FC\u30B8\u306B\u304A\u3044\u3066\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\n-nocomment                        \u8A18\u8FF0\u304A\u3088\u3073\u30BF\u30B0\u3092\u6291\u5236\u3057\u3066\u5BA3\u8A00\u306E\u307F\u3092\u751F\u6210\u3059\u308B\n-nodeprecated                     @deprecated\u60C5\u5831\u3092\u9664\u5916\u3059\u308B\n-noqualifier <name1>:<name2>:...  \u51FA\u529B\u304B\u3089\u4FEE\u98FE\u5B50\u306E\u30EA\u30B9\u30C8\u3092\u9664\u5916\u3059\u308B\n-nosince                          @since\u60C5\u5831\u3092\u9664\u5916\u3059\u308B\n-notimestamp                      \u975E\u8868\u793A\u306E\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u3092\u9664\u5916\u3059\u308B\n-nodeprecatedlist                 \u975E\u63A8\u5968\u306E\u30EA\u30B9\u30C8\u3092\u751F\u6210\u3057\u306A\u3044\n-notree                           \u30AF\u30E9\u30B9\u968E\u5C64\u3092\u751F\u6210\u3057\u306A\u3044\n-noindex                          \u7D22\u5F15\u3092\u751F\u6210\u3057\u306A\u3044\n-nohelp                           \u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u3092\u751F\u6210\u3057\u306A\u3044\n-nonavbar                         \u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u3092\u751F\u6210\u3057\u306A\u3044\n-serialwarn                       @serial\u30BF\u30B0\u306B\u95A2\u3059\u308B\u8B66\u544A\u3092\u751F\u6210\u3059\u308B\n-tag <name>:<locations>:<header>  \u5358\u4E00\u306E\u5F15\u6570\u3092\u6301\u3064\u30AB\u30B9\u30BF\u30E0\u30FB\u30BF\u30B0\u3092\u6307\u5B9A\u3059\u308B\n-taglet                           \u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u5B8C\u5168\u4FEE\u98FE\u540D\u3092\u767B\u9332\u3059\u308B\n-tagletpath                       \u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u30D1\u30B9\n-charset \
-<charset>                \u751F\u6210\u3055\u308C\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30AF\u30ED\u30B9\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3067\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\n-helpfile <file>                  \u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u306E\u30EA\u30F3\u30AF\u5148\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3081\u308B\n-linksource                       HTML\u5F62\u5F0F\u3067\u30BD\u30FC\u30B9\u3092\u751F\u6210\u3059\u308B\n-sourcetab <tab length>           \u30BD\u30FC\u30B9\u5185\u306E\u30BF\u30D6\u306E\u7A7A\u767D\u6587\u5B57\u306E\u6570\u3092\u6307\u5B9A\u3059\u308B\n-keywords                         HTML\u306Emeta\u30BF\u30B0\u306B\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u60C5\u5831\u3092\u542B\u3081\u308B\n-stylesheetfile <path>            \u751F\u6210\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30B9\u30BF\u30A4\u30EB\u5909\u66F4\u7528\u30D5\u30A1\u30A4\u30EB\n-docencoding <name>               \u51FA\u529B\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3059\u308B
+doclet.usage=\u6A19\u6E96\u306Edoclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:\n  -d <directory>                    \u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n  -use                              \u30AF\u30E9\u30B9\u3068\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4F7F\u7528\u30DA\u30FC\u30B8\u3092\u4F5C\u6210\u3059\u308B\n  -version                          @version\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u308B\n  -author                           @author\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u308B\n  -docfilessubdirs                  doc-file\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u518D\u5E30\u7684\u306B\u30B3\u30D4\u30FC\u3059\u308B\n  -splitindex                       1\u5B57\u3054\u3068\u306B1\u30D5\u30A1\u30A4\u30EB\u306B\u7D22\u5F15\u3092\u5206\u5272\u3059\u308B\n  -windowtitle <text>               \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u7528\u306E\u30D6\u30E9\u30A6\u30B6\u30FB\u30A6\u30A3\u30F3\u30C9\u30A6\u30FB\u30BF\u30A4\u30C8\u30EB\n  -doctitle <html-code>             \u6982\u8981\u30DA\u30FC\u30B8\u306B\u30BF\u30A4\u30C8\u30EB\u3092\u542B\u3081\u308B\n  -header <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u30D8\u30C3\u30C0\u30FC\u3092\u542B\u3081\u308B\n  -html4                           HTML 4.01\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n  -html5                           HTML 5\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n  -footer <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u30D5\u30C3\u30BF\u30FC\u3092\u542B\u3081\u308B\n  -top    <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u4E0A\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u308B\n  -bottom <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u4E0B\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u308B\n  -link <url>                       <url>\u306Bjavadoc\u51FA\u529B\u3078\u306E\u30EA\u30F3\u30AF\u3092\u4F5C\u6210\u3059\u308B\n  -linkoffline <url> <url2>         <url2>\u306B\u3042\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u4F7F\u7528\u3057\u3066<url>\u306Edocs\u306B\u30EA\u30F3\u30AF\u3059\u308B\n  -excludedocfilessubdir <name1>:.. \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u306Edoc-files\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u3059\u3079\u3066\u9664\u5916\u3059\u308B\n  -group <name> <p1>:<p2>..         \u6307\u5B9A\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6982\u8981\u30DA\u30FC\u30B8\u306B\u304A\u3044\u3066\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\n  -nocomment                        \u8A18\u8FF0\u304A\u3088\u3073\u30BF\u30B0\u3092\u6291\u5236\u3057\u3066\u5BA3\u8A00\u306E\u307F\u3092\u751F\u6210\u3059\u308B\n  -nodeprecated                     @deprecated\u60C5\u5831\u3092\u9664\u5916\u3059\u308B\n  -noqualifier <name1>:<name2>:...  \u51FA\u529B\u304B\u3089\u4FEE\u98FE\u5B50\u306E\u30EA\u30B9\u30C8\u3092\u9664\u5916\u3059\u308B\n  -nosince                          @since\u60C5\u5831\u3092\u9664\u5916\u3059\u308B\n  -notimestamp                      \u975E\u8868\u793A\u306E\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u3092\u9664\u5916\u3059\u308B\n  -nodeprecatedlist                 \u975E\u63A8\u5968\u306E\u30EA\u30B9\u30C8\u3092\u751F\u6210\u3057\u306A\u3044\n  -notree                           \u30AF\u30E9\u30B9\u968E\u5C64\u3092\u751F\u6210\u3057\u306A\u3044\n  -noindex                          \u7D22\u5F15\u3092\u751F\u6210\u3057\u306A\u3044\n  -nohelp                           \u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u3092\u751F\u6210\u3057\u306A\u3044\n  -nonavbar                         \u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u3092\u751F\u6210\u3057\u306A\u3044\n  -serialwarn                       @serial\u30BF\u30B0\u306B\u95A2\u3059\u308B\u8B66\u544A\u3092\u751F\u6210\u3059\u308B\n  -tag <name>:<locations>:<header>  \u5358\u4E00\u306E\u5F15\u6570\u3092\u6301\u3064\u30AB\u30B9\u30BF\u30E0\u30FB\u30BF\u30B0\u3092\u6307\u5B9A\u3059\u308B\n  \
+-taglet                           \u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u5B8C\u5168\u4FEE\u98FE\u540D\u3092\u767B\u9332\u3059\u308B\n  -tagletpath                       \u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u30D1\u30B9\n  -charset <charset>                \u751F\u6210\u3055\u308C\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30AF\u30ED\u30B9\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3067\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\n  -helpfile <file>                  \u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u306E\u30EA\u30F3\u30AF\u5148\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3081\u308B\n-  linksource                       HTML\u5F62\u5F0F\u3067\u30BD\u30FC\u30B9\u3092\u751F\u6210\u3059\u308B\n  -sourcetab <tab length>           \u30BD\u30FC\u30B9\u5185\u306E\u30BF\u30D6\u306E\u7A7A\u767D\u6587\u5B57\u306E\u6570\u3092\u6307\u5B9A\u3059\u308B\n  -keywords                         HTML\u306Emeta\u30BF\u30B0\u306B\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u60C5\u5831\u3092\u542B\u3081\u308B\n  -stylesheetfile <path>            \u751F\u6210\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30B9\u30BF\u30A4\u30EB\u5909\u66F4\u7528\u30D5\u30A1\u30A4\u30EB\n  -docencoding <name>               \u51FA\u529B\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3059\u308B
 
 
 # L10N: do not localize these words: all none accessibility html missing reference syntax
-doclet.X.usage=\u6A19\u6E96\u306Edoclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:\n  -Xdocrootparent <url>            doc\u30B3\u30E1\u30F3\u30C8\u5185\u306E/..\u304C\u5F8C\u306B\u7D9A\u304F@docRoot\u306E\u3059\u3079\u3066\u3092\n                                   <url>\u3067\u7F6E\u63DB\u3057\u307E\u3059\n  -Xdoclint                        javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u63A8\u5968\u3055\u308C\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\n  -Xdoclint:(all|none|[-]<group>) \n        javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u7279\u5B9A\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n        \u3053\u3053\u3067\u3001<group>\u306Fhtml\u3001missing\u3001reference\u307E\u305F\u306Fsyntax\u306E\u3044\u305A\u308C\u304B\u3067\u3059\u3002\n
+doclet.X.usage=\u6A19\u6E96\u306Edoclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:\n  -Xdocrootparent <url>            doc\u30B3\u30E1\u30F3\u30C8\u5185\u306E/..\u304C\u5F8C\u306B\u7D9A\u304F@docRoot\u306E\u3059\u3079\u3066\u3092\n                                   <url>\u3067\u7F6E\u63DB\u3057\u307E\u3059\n  -Xdoclint                        javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u63A8\u5968\u3055\u308C\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\n  -Xdoclint:(all|none|[-]<group>) \n        javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u7279\u5B9A\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n        \u3053\u3053\u3067\u3001<group>\u306Faccessibility\u3001html\u3001missing\u3001reference\u307E\u305F\u306Fsyntax\u306E\u3044\u305A\u308C\u304B\u3067\u3059\u3002\n -Xdoclint/package:([-]<packages>)\n        \u7279\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002<packages>\u306F\n        \u30AB\u30F3\u30DE\u3067\u533A\u5207\u3089\u308C\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u30EA\u30B9\u30C8\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306F\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n        \u4FEE\u98FE\u3055\u308C\u305F\u540D\u524D\u3001\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u306E\u63A5\u982D\u8F9E\u306E\u5F8C\u306B''.*''\u3092\u6307\u5B9A(\u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n        \u3059\u3079\u3066\u306E\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u62E1\u5F35)\u3057\u305F\u3082\u306E\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u524D\u306B'-'\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\n        \u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u95A2\u3059\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u7121\u52B9\u306B\u3067\u304D\u307E\u3059\u3002\n
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties
index 23d1b9b..fe85808 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties
@@ -4,9 +4,7 @@
 doclet.Window_Overview=\u6982\u89C8\u5217\u8868
 doclet.Window_Overview_Summary=\u6982\u89C8
 doclet.Package=\u7A0B\u5E8F\u5305
-doclet.Profile=\u914D\u7F6E\u6587\u4EF6
 doclet.All_Packages=\u6240\u6709\u7A0B\u5E8F\u5305
-doclet.All_Profiles=\u6240\u6709\u914D\u7F6E\u6587\u4EF6
 doclet.Tree=\u6811
 doclet.Class_Hierarchy=\u7C7B\u5206\u5C42\u7ED3\u6784
 doclet.Window_Class_Hierarchy=\u7C7B\u5206\u5C42\u7ED3\u6784
@@ -19,8 +17,6 @@
 doclet.Next_Class=\u4E0B\u4E00\u4E2A\u7C7B
 doclet.Prev_Package=\u4E0A\u4E00\u4E2A\u7A0B\u5E8F\u5305
 doclet.Next_Package=\u4E0B\u4E00\u4E2A\u7A0B\u5E8F\u5305
-doclet.Prev_Profile=\u4E0A\u4E00\u914D\u7F6E\u6587\u4EF6
-doclet.Next_Profile=\u4E0B\u4E00\u914D\u7F6E\u6587\u4EF6
 doclet.Prev_Letter=\u4E0A\u4E00\u4E2A\u5B57\u6BCD
 doclet.Next_Letter=\u4E0B\u4E00\u4E2A\u5B57\u6BCD
 doclet.Href_Class_Title={0}\u4E2D\u7684\u7C7B
@@ -55,6 +51,7 @@
 doclet.Variable_in={0}\u4E2D\u7684\u53D8\u91CF
 doclet.Constructor_for={0}\u7684\u6784\u9020\u5668
 doclet.Static_method_in={0}\u4E2D\u7684\u9759\u6001\u65B9\u6CD5
+doclet.Search_tag_in={0}\u4E2D\u7684\u641C\u7D22\u6807\u8BB0
 doclet.Method_in={0}\u4E2D\u7684\u65B9\u6CD5
 doclet.package=\u7A0B\u5E8F\u5305
 doclet.MalformedURL=\u683C\u5F0F\u9519\u8BEF\u7684 URL: {0}
@@ -104,10 +101,7 @@
 doclet.Package_Hierarchies=\u7A0B\u5E8F\u5305\u5206\u5C42\u7ED3\u6784:
 doclet.Hierarchy_For_Package=\u7A0B\u5E8F\u5305{0}\u7684\u5206\u5C42\u7ED3\u6784
 doclet.Hierarchy_For_All_Packages=\u6240\u6709\u7A0B\u5E8F\u5305\u7684\u5206\u5C42\u7ED3\u6784
-doclet.Frame_Alert=\u6846\u67B6\u9884\u8B66
-doclet.Frame_Warning_Message=\u8BF7\u4F7F\u7528\u6846\u67B6\u529F\u80FD\u67E5\u770B\u6B64\u6587\u6863\u3002\u5982\u679C\u770B\u5230\u6B64\u6D88\u606F, \u5219\u8868\u660E\u60A8\u4F7F\u7528\u7684\u662F\u4E0D\u652F\u6301\u6846\u67B6\u7684 Web \u5BA2\u6237\u673A\u3002\u94FE\u63A5\u5230{0}\u3002
 doclet.No_Script_Message=\u60A8\u7684\u6D4F\u89C8\u5668\u5DF2\u7981\u7528 JavaScript\u3002
-doclet.Non_Frame_Version=\u975E\u6846\u67B6\u7248\u672C
 doclet.Description_From_Interface=\u4ECE\u63A5\u53E3\u590D\u5236\u7684\u8BF4\u660E:
 doclet.Description_From_Class=\u4ECE\u7C7B\u590D\u5236\u7684\u8BF4\u660E:
 doclet.No_Non_Deprecated_Classes_To_Document=\u627E\u4E0D\u5230\u53EF\u4EE5\u6587\u6863\u5316\u7684\u672A\u8FC7\u65F6\u7684\u7C7B\u3002
@@ -185,8 +179,8 @@
 doclet.Groupname_already_used=\u5728 -group \u9009\u9879\u4E2D, groupname \u5DF2\u4F7F\u7528: {0}
 doclet.Same_package_name_used=\u7A0B\u5E8F\u5305\u540D\u79F0\u5F62\u5F0F\u4F7F\u7528\u4E86\u4E24\u6B21: {0}
 doclet.exception_encountered=\u5904\u7406{1}\u65F6\u51FA\u73B0\u5F02\u5E38\u9519\u8BEF\n{0}
-doclet.usage=\u901A\u8FC7\u6807\u51C6 doclet \u63D0\u4F9B:\n  -d <directory>                   \u8F93\u51FA\u6587\u4EF6\u7684\u76EE\u6807\u76EE\u5F55\n  -use                             \u521B\u5EFA\u7C7B\u548C\u7A0B\u5E8F\u5305\u7528\u6CD5\u9875\u9762\n  -version                         \u5305\u542B @version \u6BB5\n  -author                          \u5305\u542B @author \u6BB5\n  -docfilessubdirs                 \u9012\u5F52\u590D\u5236\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55\n  -splitindex                      \u5C06\u7D22\u5F15\u5206\u4E3A\u6BCF\u4E2A\u5B57\u6BCD\u5BF9\u5E94\u4E00\u4E2A\u6587\u4EF6\n  -windowtitle <text>              \u6587\u6863\u7684\u6D4F\u89C8\u5668\u7A97\u53E3\u6807\u9898\n  -doctitle <html-code>            \u5305\u542B\u6982\u89C8\u9875\u9762\u7684\u6807\u9898\n  -header <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u7709\u6587\u672C\n  -footer <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u811A\u6587\u672C\n  -top    <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9876\u90E8\u6587\u672C\n  -bottom <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u5E95\u90E8\u6587\u672C\n  -link <url>                      \u521B\u5EFA\u6307\u5411\u4F4D\u4E8E <url> \u7684 javadoc \u8F93\u51FA\u7684\u94FE\u63A5\n  -linkoffline <url> <url2>        \u5229\u7528\u4F4D\u4E8E <url2> \u7684\u7A0B\u5E8F\u5305\u5217\u8868\u94FE\u63A5\u81F3\u4F4D\u4E8E <url> \u7684\u6587\u6863\n  -excludedocfilessubdir <name1>:.. \u6392\u9664\u5177\u6709\u7ED9\u5B9A\u540D\u79F0\u7684\u6240\u6709\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55\u3002\n  -group <name> <p1>:<p2>..        \u5728\u6982\u89C8\u9875\u9762\u4E2D, \u5C06\u6307\u5B9A\u7684\u7A0B\u5E8F\u5305\u5206\u7EC4\n  -nocomment                       \u4E0D\u751F\u6210\u8BF4\u660E\u548C\u6807\u8BB0, \u53EA\u751F\u6210\u58F0\u660E\u3002\n  -nodeprecated                    \u4E0D\u5305\u542B @deprecated \u4FE1\u606F\n  -noqualifier <name1>:<name2>:... \u8F93\u51FA\u4E2D\u4E0D\u5305\u62EC\u6307\u5B9A\u9650\u5B9A\u7B26\u7684\u5217\u8868\u3002\n  -nosince                         \u4E0D\u5305\u542B @since \u4FE1\u606F\n  -notimestamp                     \u4E0D\u5305\u542B\u9690\u85CF\u65F6\u95F4\u6233\n  -nodeprecatedlist                \u4E0D\u751F\u6210\u5DF2\u8FC7\u65F6\u7684\u5217\u8868\n  -notree                          \u4E0D\u751F\u6210\u7C7B\u5206\u5C42\u7ED3\u6784\n  -noindex                         \u4E0D\u751F\u6210\u7D22\u5F15\n  -nohelp                          \u4E0D\u751F\u6210\u5E2E\u52A9\u94FE\u63A5\n  -nonavbar                        \u4E0D\u751F\u6210\u5BFC\u822A\u680F\n  -serialwarn                      \u751F\u6210\u6709\u5173 @serial \u6807\u8BB0\u7684\u8B66\u544A\n  -tag <name>:<locations>:<header> \u6307\u5B9A\u5355\u4E2A\u53C2\u6570\u5B9A\u5236\u6807\u8BB0\n  -taglet                          \u8981\u6CE8\u518C\u7684 Taglet \u7684\u5168\u9650\u5B9A\u540D\u79F0\n  -tagletpath                      Taglet \u7684\u8DEF\u5F84\n  -charset <charset>               \u7528\u4E8E\u8DE8\u5E73\u53F0\u67E5\u770B\u751F\u6210\u7684\u6587\u6863\u7684\u5B57\u7B26\u96C6\u3002\n  -helpfile <file>                 \u5305\u542B\u5E2E\u52A9\u94FE\u63A5\u6240\u94FE\u63A5\u5230\u7684\u6587\u4EF6\n  -linksource                      \u4EE5 HTML \u683C\u5F0F\u751F\u6210\u6E90\u6587\u4EF6\n  -sourcetab <tab length>          \u6307\u5B9A\u6E90\u4E2D\u6BCF\u4E2A\u5236\u8868\u7B26\u5360\u636E\u7684\u7A7A\u683C\u6570\n  -keywords                        \u4F7F\u7A0B\u5E8F\u5305, \u7C7B\u548C\u6210\u5458\u4FE1\u606F\u9644\u5E26 HTML \u5143\u6807\u8BB0\n  -stylesheetfile <path>           \u7528\u4E8E\u66F4\u6539\u751F\u6210\u6587\u6863\u7684\u6837\u5F0F\u7684\u6587\u4EF6\n  -docencoding <name>              \u6307\u5B9A\u8F93\u51FA\u7684\u5B57\u7B26\u7F16\u7801
+doclet.usage=\u901A\u8FC7\u6807\u51C6 doclet \u63D0\u4F9B:\n  -d <directory>                   \u8F93\u51FA\u6587\u4EF6\u7684\u76EE\u6807\u76EE\u5F55\n  -use                             \u521B\u5EFA\u7C7B\u548C\u7A0B\u5E8F\u5305\u7528\u6CD5\u9875\u9762\n  -version                         \u5305\u542B @version \u6BB5\n  -author                          \u5305\u542B @author \u6BB5\n  -docfilessubdirs                 \u9012\u5F52\u590D\u5236\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55\n  -splitindex                      \u5C06\u7D22\u5F15\u5206\u4E3A\u6BCF\u4E2A\u5B57\u6BCD\u5BF9\u5E94\u4E00\u4E2A\u6587\u4EF6\n  -windowtitle <text>              \u6587\u6863\u7684\u6D4F\u89C8\u5668\u7A97\u53E3\u6807\u9898\n  -doctitle <html-code>            \u5305\u542B\u6982\u89C8\u9875\u9762\u7684\u6807\u9898\n  -header <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u7709\u6587\u672C\n  -html4                           \u751F\u6210 HTML 4.01 \u8F93\u51FA\n  -html5                           \u751F\u6210 HTML 5 \u8F93\u51FA\n  -footer <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u811A\u6587\u672C\n  -top    <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9876\u90E8\u6587\u672C\n  -bottom <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u5E95\u90E8\u6587\u672C\n  -link <url>                      \u521B\u5EFA\u6307\u5411\u4F4D\u4E8E <url> \u7684 javadoc \u8F93\u51FA\u7684\u94FE\u63A5\n  -linkoffline <url> <url2>        \u5229\u7528\u4F4D\u4E8E <url2> \u7684\u7A0B\u5E8F\u5305\u5217\u8868\u94FE\u63A5\u81F3\u4F4D\u4E8E <url> \u7684\u6587\u6863\n  -excludedocfilessubdir <name1>:.. \u6392\u9664\u5177\u6709\u7ED9\u5B9A\u540D\u79F0\u7684\u6240\u6709\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55\u3002\n  -group <name> <p1>:<p2>..        \u5728\u6982\u89C8\u9875\u9762\u4E2D, \u5C06\u6307\u5B9A\u7684\u7A0B\u5E8F\u5305\u5206\u7EC4\n  -nocomment                       \u4E0D\u751F\u6210\u8BF4\u660E\u548C\u6807\u8BB0, \u53EA\u751F\u6210\u58F0\u660E\u3002\n  -nodeprecated                    \u4E0D\u5305\u542B @deprecated \u4FE1\u606F\n  -noqualifier <name1>:<name2>:... \u8F93\u51FA\u4E2D\u4E0D\u5305\u62EC\u6307\u5B9A\u9650\u5B9A\u7B26\u7684\u5217\u8868\u3002\n  -nosince                         \u4E0D\u5305\u542B @since \u4FE1\u606F\n  -notimestamp                     \u4E0D\u5305\u542B\u9690\u85CF\u65F6\u95F4\u6233\n  -nodeprecatedlist                \u4E0D\u751F\u6210\u5DF2\u8FC7\u65F6\u7684\u5217\u8868\n  -notree                          \u4E0D\u751F\u6210\u7C7B\u5206\u5C42\u7ED3\u6784\n  -noindex                         \u4E0D\u751F\u6210\u7D22\u5F15\n  -nohelp                          \u4E0D\u751F\u6210\u5E2E\u52A9\u94FE\u63A5\n  -nonavbar                        \u4E0D\u751F\u6210\u5BFC\u822A\u680F\n  -serialwarn                      \u751F\u6210\u6709\u5173 @serial \u6807\u8BB0\u7684\u8B66\u544A\n  -tag <name>:<locations>:<header> \u6307\u5B9A\u5355\u4E2A\u53C2\u6570\u5B9A\u5236\u6807\u8BB0\n  -taglet                          \u8981\u6CE8\u518C\u7684 Taglet \u7684\u5168\u9650\u5B9A\u540D\u79F0\n  -tagletpath                      Taglet \u7684\u8DEF\u5F84\n  -charset <charset>               \u7528\u4E8E\u8DE8\u5E73\u53F0\u67E5\u770B\u751F\u6210\u7684\u6587\u6863\u7684\u5B57\u7B26\u96C6\u3002\n  -helpfile <file>                 \u5305\u542B\u5E2E\u52A9\u94FE\u63A5\u6240\u94FE\u63A5\u5230\u7684\u6587\u4EF6\n  -linksource                      \u4EE5 HTML \u683C\u5F0F\u751F\u6210\u6E90\u6587\u4EF6\n  -sourcetab <tab length>          \u6307\u5B9A\u6E90\u4E2D\u6BCF\u4E2A\u5236\u8868\u7B26\u5360\u636E\u7684\u7A7A\u683C\u6570\n  -keywords                        \u4F7F\u7A0B\u5E8F\u5305, \u7C7B\u548C\u6210\u5458\u4FE1\u606F\u9644\u5E26 HTML \u5143\u6807\u8BB0\n  -stylesheetfile <path>           \u7528\u4E8E\u66F4\u6539\u751F\u6210\u6587\u6863\u7684\u6837\u5F0F\u7684\u6587\u4EF6\n  -docencoding <name>              \u6307\u5B9A\u8F93\u51FA\u7684\u5B57\u7B26\u7F16\u7801
 
 
 # L10N: do not localize these words: all none accessibility html missing reference syntax
-doclet.X.usage=\u901A\u8FC7\u6807\u51C6 doclet \u63D0\u4F9B:\n  -Xdocrootparent <url>            \u4F7F\u7528 <url> \u66FF\u6362\u6587\u6863\u6CE8\u91CA\u4E2D\u51FA\u73B0\u7684\n                                   \u6240\u6709\u5176\u540E\u8DDF\u968F /.. \u7684 @docRoot\n  -Xdoclint                        \u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u5EFA\u8BAE\u7684\u68C0\u67E5\n  -Xdoclint:(all|none|[-]<group>) \n        \u5BF9 javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u68C0\u67E5\u3002\n        \u5176\u4E2D <group> \u662F accessibility, html, missing, reference \u6216 syntax \u4E4B\u4E00\u3002\n
+doclet.X.usage=\u901A\u8FC7\u6807\u51C6 doclet \u63D0\u4F9B:\n  -Xdocrootparent <url>            \u4F7F\u7528 <url> \u66FF\u6362\u6587\u6863\u6CE8\u91CA\u4E2D\u51FA\u73B0\u7684\n                                   \u6240\u6709\u5176\u540E\u8DDF\u968F /.. \u7684 @docRoot\n  -Xdoclint                        \u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u5EFA\u8BAE\u7684\u68C0\u67E5\n  -Xdoclint:(all|none|[-]<group>) \n        \u5BF9 javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u68C0\u67E5\u3002\n        \u5176\u4E2D <group> \u662F accessibility, html, missing, reference \u6216 syntax \u4E4B\u4E00\u3002\n  -Xdoclint/package:([-]<packages>)\n        \u5728\u7279\u5B9A\u7684\u7A0B\u5E8F\u5305\u4E2D\u542F\u7528\u6216\u7981\u7528\u68C0\u67E5\u3002<packages> \u662F\u9017\u53F7\u5206\u9694\u7684\n        \u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u5217\u8868\u3002\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u662F\u7A0B\u5E8F\u5305\u7684\u9650\u5B9A\u540D\u79F0\n        \u6216\u7A0B\u5E8F\u5305\u540D\u79F0\u524D\u7F00\u540E\u8DDF .*, \u5B83\u6269\u5C55\u5230\u7ED9\u5B9A\u7A0B\u5E8F\u5305\u7684\n        \u6240\u6709\u5B50\u7A0B\u5E8F\u5305\u3002\u5728\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u524D\u9762\u52A0\u4E0A - \u53EF\u4EE5\u4E3A\n        \u6307\u5B9A\u7A0B\u5E8F\u5305\u7981\u7528\u68C0\u67E5\u3002\n
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties
index dc92f39..dffb752 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties
@@ -13,6 +13,7 @@
 doclet.Option_reuse=\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u518D\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.Option_doclint_no_qualifiers=\u30A2\u30AF\u30BB\u30B9\u4FEE\u98FE\u5B50\u306F-Xdoclint\u306E\u5F15\u6570\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 doclet.Option_doclint_invalid_arg=-Xdoclint\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059
+doclet.Option_doclint_package_invalid_arg=-Xdoclint/package\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059
 doclet.exception_encountered= {0}\u3092\u691C\u51FA\n\t\u30D5\u30A1\u30A4\u30EB\u306E\u4F5C\u6210\u4E2D: {1}
 doclet.perform_copy_exception_encountered= \u30B3\u30D4\u30FC\u5B9F\u884C\u4E2D\u306B{0}\u3092\n\u691C\u51FA\u3057\u307E\u3057\u305F\u3002
 doclet.File_not_found=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
@@ -20,7 +21,6 @@
 doclet.Copying_File_0_To_Dir_1=\u30D5\u30A1\u30A4\u30EB{0}\u3092\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{1}\u306B\u30B3\u30D4\u30FC\u4E2D...
 doclet.Copying_File_0_To_File_1=\u30D5\u30A1\u30A4\u30EB{0}\u3092\u30D5\u30A1\u30A4\u30EB{1}\u306B\u30B3\u30D4\u30FC\u4E2D...
 doclet.No_Public_Classes_To_Document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3059\u308Bpublic\u307E\u305F\u306Fprotected\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
-doclet.Unable_to_create_directory_0=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093
 doclet.destination_directory_not_directory_0=\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 doclet.destination_directory_not_writable_0=\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u306F\u66F8\u8FBC\u307F\u53EF\u80FD\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 doclet.Encoding_not_supported=\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0{0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093
@@ -29,7 +29,6 @@
 doclet.Building_Index_For_All_Classes=\u5168\u30AF\u30E9\u30B9\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059...
 doclet.sourcetab_warning=-sourcetab\u306E\u5F15\u6570\u306F0\u3088\u308A\u5927\u304D\u3044\u6574\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
 doclet.Packages=\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Profiles=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
 doclet.Other_Packages=\u305D\u306E\u4ED6\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Notice_taglet_registered=\u767B\u9332\u3055\u308C\u305F\u30BF\u30B0\u30EC\u30C3\u30C8{0} ...
 doclet.Notice_taglet_unseen=\u6CE8\u610F: \u975E\u8868\u793A\u306E\u30AB\u30B9\u30BF\u30E0\u30FB\u30BF\u30B0: {0}
@@ -67,7 +66,6 @@
 doclet.tag_misuse={0}\u30BF\u30B0\u306F{1}\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u3067\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3067\u304D\u308B\u306E\u306F\u6B21\u306E\u30BF\u30A4\u30D7\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u306E\u307F\u3067\u3059: {2}\u3002
 doclet.javafx_tag_misuse=\u30BF\u30B0@propertyGetter\u3001@propertySetter\u304A\u3088\u3073@propertyDescription\u306F\u3001JavaFX\u306E\u30D7\u30ED\u30D1\u30C6\u30A3getter\u3068setter\u306E\u307F\u3067\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
 doclet.Package_Summary=\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981
-doclet.Profile_Summary=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u30FB\u30B5\u30DE\u30EA\u30FC
 doclet.Interface_Summary=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u6982\u8981
 doclet.Annotation_Types_Summary=\u6CE8\u91C8\u578B\u306E\u6982\u8981
 doclet.Enum_Summary=\u5217\u6319\u578B\u306E\u6982\u8981
@@ -90,7 +88,6 @@
 doclet.Classes=\u30AF\u30E9\u30B9
 doclet.Packages=\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.packages=\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.profiles=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
 doclet.All_Classes=\u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9
 doclet.All_Superinterfaces=\u3059\u3079\u3066\u306E\u30B9\u30FC\u30D1\u30FC\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:
 doclet.All_Implemented_Interfaces=\u3059\u3079\u3066\u306E\u5B9F\u88C5\u3055\u308C\u305F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:
@@ -102,8 +99,8 @@
 doclet.annotationtype=\u6CE8\u91C8\u578B
 doclet.annotationtypes=\u6CE8\u91C8\u578B
 doclet.Enum=\u5217\u6319\u578B
-doclet.enum=\u5217\u6319\u578B
-doclet.enums=\u5217\u6319\u578B
+doclet.enum=\u5217\u6319
+doclet.enums=\u5217\u6319
 doclet.interface=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.interfaces=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.class=\u30AF\u30E9\u30B9
@@ -130,7 +127,7 @@
 doclet.Property_Detail=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u8A73\u7D30
 doclet.Method_Detail=\u30E1\u30BD\u30C3\u30C9\u306E\u8A73\u7D30
 doclet.Constructor_Detail=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u8A73\u7D30
-doclet.Deprecated=\u975E\u63A8\u5968\u3067\u3059\u3002
+doclet.Deprecated=\u63A8\u5968\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
 doclet.Groupname_already_used=-group\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u304A\u3044\u3066\u3001\u3059\u3067\u306B\u30B0\u30EB\u30FC\u30D7\u540D\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.value_tag_invalid_reference={0}(@value\u30BF\u30B0\u306B\u3088\u308A\u53C2\u7167\u3055\u308C\u3066\u3044\u308B)\u306F\u4E0D\u660E\u306A\u53C2\u7167\u3067\u3059\u3002
 doclet.value_tag_invalid_constant=@value\u30BF\u30B0({0}\u3092\u53C2\u7167\u3057\u3066\u3044\u308B)\u306F\u5B9A\u6570\u5185\u3067\u306E\u307F\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
@@ -148,18 +145,30 @@
 doclet.Constructors=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 doclet.methods=\u30E1\u30BD\u30C3\u30C9
 doclet.Methods=\u30E1\u30BD\u30C3\u30C9
+doclet.All_Methods=\u3059\u3079\u3066\u306E\u30E1\u30BD\u30C3\u30C9
+doclet.Static_Methods=static\u30E1\u30BD\u30C3\u30C9
+doclet.Instance_Methods=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9
+doclet.Abstract_Methods=abstract\u30E1\u30BD\u30C3\u30C9
+doclet.Concrete_Methods=concrete\u30E1\u30BD\u30C3\u30C9
+doclet.Default_Methods=\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30E1\u30BD\u30C3\u30C9
+doclet.Deprecated_Methods=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30E1\u30BD\u30C3\u30C9
 doclet.annotation_type_optional_members=\u4EFB\u610F\u8981\u7D20
 doclet.Annotation_Type_Optional_Members=\u4EFB\u610F\u8981\u7D20
 doclet.annotation_type_required_members=\u5FC5\u9808\u8981\u7D20
 doclet.Annotation_Type_Required_Members=\u5FC5\u9808\u8981\u7D20
 doclet.enum_constants=\u5217\u6319\u578B\u5B9A\u6570
-doclet.Enum_Constants=\u5217\u6319\u578B\u5B9A\u6570
+doclet.Enum_Constants=\u5217\u6319\u5B9A\u6570
 doclet.nested_classes=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9
 doclet.Nested_Classes=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9
 doclet.subclasses=\u30B5\u30D6\u30AF\u30E9\u30B9
 doclet.subinterfaces=\u30B5\u30D6\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.Modifier=\u4FEE\u98FE\u5B50
 doclet.Type=\u30BF\u30A4\u30D7
+doclet.Types=\u30BF\u30A4\u30D7
+doclet.Members=\u30E1\u30F3\u30D0\u30FC
+doclet.SearchTags=SearchTags
+doclet.search=SEARCH:
+doclet.invalid_usage_of_tag={0}\u30BF\u30B0\u306E\u4F7F\u7528\u65B9\u6CD5\u304C\u7121\u52B9\u3067\u3059\u3002
 doclet.Field=\u30D5\u30A3\u30FC\u30EB\u30C9
 doclet.Property=\u30D7\u30ED\u30D1\u30C6\u30A3
 doclet.Constructor=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties
index 28e4f54..13c483d 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties
@@ -13,6 +13,7 @@
 doclet.Option_reuse=\u91CD\u590D\u4F7F\u7528\u7684\u9009\u9879: {0}
 doclet.Option_doclint_no_qualifiers=-Xdoclint \u53C2\u6570\u4E0D\u5141\u8BB8\u4F7F\u7528\u8BBF\u95EE\u9650\u5B9A\u7B26
 doclet.Option_doclint_invalid_arg=-Xdoclint \u9009\u9879\u7684\u53C2\u6570\u65E0\u6548
+doclet.Option_doclint_package_invalid_arg=-Xdoclint/package \u9009\u9879\u7684\u53C2\u6570\u65E0\u6548
 doclet.exception_encountered= \u5C1D\u8BD5\u521B\u5EFA\u6587\u4EF6{1}\u65F6 \n\t\u9047\u5230{0}
 doclet.perform_copy_exception_encountered= \u6267\u884C\u590D\u5236\u65F6 \n\u9047\u5230{0}\u3002
 doclet.File_not_found=\u627E\u4E0D\u5230\u6587\u4EF6: {0}
@@ -20,7 +21,6 @@
 doclet.Copying_File_0_To_Dir_1=\u6B63\u5728\u5C06\u6587\u4EF6{0}\u590D\u5236\u5230\u76EE\u5F55 {1}...
 doclet.Copying_File_0_To_File_1=\u6B63\u5728\u5C06\u6587\u4EF6{0}\u590D\u5236\u5230\u6587\u4EF6{1}...
 doclet.No_Public_Classes_To_Document=\u627E\u4E0D\u5230\u53EF\u4EE5\u6587\u6863\u5316\u7684\u516C\u5171\u6216\u53D7\u4FDD\u62A4\u7684\u7C7B\u3002
-doclet.Unable_to_create_directory_0=\u65E0\u6CD5\u521B\u5EFA\u76EE\u5F55 {0}
 doclet.destination_directory_not_directory_0=\u76EE\u6807\u76EE\u5F55\u4E0D\u662F\u76EE\u5F55 {0}
 doclet.destination_directory_not_writable_0=\u76EE\u6807\u76EE\u5F55\u4E0D\u53EF\u5199\u5165 {0}
 doclet.Encoding_not_supported=\u4E0D\u652F\u6301\u7F16\u7801: {0}
@@ -29,7 +29,6 @@
 doclet.Building_Index_For_All_Classes=\u6B63\u5728\u6784\u5EFA\u6240\u6709\u7C7B\u7684\u7D22\u5F15...
 doclet.sourcetab_warning=-sourcetab \u7684\u53C2\u6570\u5FC5\u987B\u662F\u5927\u4E8E 0 \u7684\u6574\u6570\u3002
 doclet.Packages=\u7A0B\u5E8F\u5305
-doclet.Profiles=\u914D\u7F6E\u6587\u4EF6
 doclet.Other_Packages=\u5176\u4ED6\u7A0B\u5E8F\u5305
 doclet.Notice_taglet_registered=\u6CE8\u518C\u7684 Taglet {0}...
 doclet.Notice_taglet_unseen=\u6CE8: \u627E\u4E0D\u5230\u7684\u5B9A\u5236\u6807\u8BB0: {0}
@@ -67,7 +66,6 @@
 doclet.tag_misuse=\u4E0D\u80FD\u5728{1}\u6587\u6863\u4E2D\u4F7F\u7528\u6807\u8BB0{0}\u3002\u53EA\u80FD\u5728\u4EE5\u4E0B\u7C7B\u578B\u7684\u6587\u6863\u4E2D\u4F7F\u7528\u8BE5\u6807\u8BB0: {2}\u3002
 doclet.javafx_tag_misuse=\u6807\u8BB0 @propertyGetter, @propertySetter \u548C @propertyDescription \u53EA\u80FD\u5728 JavaFX \u5C5E\u6027 getter \u548C setter \u4E2D\u4F7F\u7528\u3002
 doclet.Package_Summary=\u7A0B\u5E8F\u5305\u6982\u8981
-doclet.Profile_Summary=\u6982\u8981\u4FE1\u606F\u6982\u8981
 doclet.Interface_Summary=\u63A5\u53E3\u6982\u8981
 doclet.Annotation_Types_Summary=\u6CE8\u91CA\u7C7B\u578B\u6982\u8981
 doclet.Enum_Summary=\u679A\u4E3E\u6982\u8981
@@ -90,7 +88,6 @@
 doclet.Classes=\u7C7B
 doclet.Packages=\u7A0B\u5E8F\u5305
 doclet.packages=\u7A0B\u5E8F\u5305
-doclet.profiles=\u914D\u7F6E\u6587\u4EF6
 doclet.All_Classes=\u6240\u6709\u7C7B
 doclet.All_Superinterfaces=\u6240\u6709\u8D85\u7EA7\u63A5\u53E3:
 doclet.All_Implemented_Interfaces=\u6240\u6709\u5DF2\u5B9E\u73B0\u7684\u63A5\u53E3:
@@ -148,6 +145,13 @@
 doclet.Constructors=\u6784\u9020\u5668
 doclet.methods=\u65B9\u6CD5
 doclet.Methods=\u65B9\u6CD5
+doclet.All_Methods=\u6240\u6709\u65B9\u6CD5
+doclet.Static_Methods=\u9759\u6001\u65B9\u6CD5
+doclet.Instance_Methods=\u5B9E\u4F8B\u65B9\u6CD5
+doclet.Abstract_Methods=\u62BD\u8C61\u65B9\u6CD5
+doclet.Concrete_Methods=\u5177\u4F53\u65B9\u6CD5
+doclet.Default_Methods=\u9ED8\u8BA4\u65B9\u6CD5
+doclet.Deprecated_Methods=\u5DF2\u8FC7\u65F6\u7684\u65B9\u6CD5
 doclet.annotation_type_optional_members=\u53EF\u9009\u5143\u7D20
 doclet.Annotation_Type_Optional_Members=\u53EF\u9009\u5143\u7D20
 doclet.annotation_type_required_members=\u5FC5\u9700\u7684\u5143\u7D20
@@ -160,6 +164,11 @@
 doclet.subinterfaces=\u5B50\u63A5\u53E3
 doclet.Modifier=\u9650\u5B9A\u7B26
 doclet.Type=\u7C7B\u578B
+doclet.Types=\u7C7B\u578B
+doclet.Members=\u6210\u5458
+doclet.SearchTags=\u641C\u7D22\u6807\u8BB0
+doclet.search=SEARCH:
+doclet.invalid_usage_of_tag={0} \u6807\u8BB0\u7684\u7528\u6CD5\u65E0\u6548\u3002
 doclet.Field=\u5B57\u6BB5
 doclet.Property=\u5C5E\u6027
 doclet.Constructor=\u6784\u9020\u5668
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties
index b95a435..9ffc7c7 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -28,7 +28,7 @@
 main.warnings=\u8B66\u544A{0}\u500B
 main.warning=\u8B66\u544A{0}\u500B
 
-main.usage=\u4F7F\u7528\u65B9\u6CD5: javadoc [options] [packagenames] [sourcefiles] [@files]\n  -overview <file>          HTML\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u6982\u8981\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3080\n  -public                   public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u306E\u307F\u3092\u793A\u3059\n  -protected                protected/public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8)\n  -package                  package/protected/public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059\n  -private                  \u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059\n  -help                     \u30B3\u30DE\u30F3\u30C9\u30E9\u30A4\u30F3\u30FB\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8868\u793A\u3057\u3066\u7D42\u4E86\u3059\u308B\n  -doclet <class>           \u4EE3\u66FFdoclet\u3092\u4ECB\u3057\u3066\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n  -docletpath <path>        doclet\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u63A2\u3059\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -sourcepath <pathlist>    \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -classpath <pathlist>     \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -cp <pathlist>                   \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\r\n  -exclude <pkglist>        \u9664\u5916\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u6307\u5B9A\u3059\u308B\n  -subpackages <subpkglist> \u518D\u5E30\u7684\u306B\u30ED\u30FC\u30C9\u3059\u308B\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6307\u5B9A\u3059\u308B\n  -breakiterator            BreakIterator\u3067\u6700\u521D\u306E\u6587\u3092\u8A08\u7B97\u3059\u308B\n  -bootclasspath <pathlist> \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30ED\u30FC\u30C0\u30FC\u306B\u3088\u308A\u30ED\u30FC\u30C9\u3055\u308C\u305F\n                                   \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n  -source <release>         \u6307\u5B9A\u3055\u308C\u305F\u30EA\u30EA\u30FC\u30B9\u3068\u30BD\u30FC\u30B9\u306E\u4E92\u63DB\u6027\u3092\u63D0\u4F9B\u3059\u308B\n  -extdirs <dirlist>        \u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u305F\u62E1\u5F35\u6A5F\u80FD\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n  -verbose                  Javadoc\u306E\u52D5\u4F5C\u306B\u3064\u3044\u3066\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n  -locale <name>            en_US\u3084en_US_WIN\u306A\u3069\u306E\u4F7F\u7528\u3059\u308B\u30ED\u30B1\u30FC\u30EB\n  -encoding <name>          \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u540D\n  -quiet                    \u72B6\u614B\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3057\u306A\u3044\n  -J<flag>                  <flag>\u3092\u5B9F\u884C\u6642\u30B7\u30B9\u30C6\u30E0\u306B\u76F4\u63A5\u6E21\u3059\n  -X                        \u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6982\u8981\u3092\u51FA\u529B\u3057\u7D42\u4E86\u3059\u308B\n
+main.usage=\u4F7F\u7528\u65B9\u6CD5: javadoc [options] [packagenames] [sourcefiles] [@files]\n  -overview <file>          HTML\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u6982\u8981\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3080\n  -public                   public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u306E\u307F\u3092\u793A\u3059\n  -protected                protected/public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8)\n  -package                  package/protected/public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059\n  -private                  \u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059\n  -help                     \u30B3\u30DE\u30F3\u30C9\u884C\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8868\u793A\u3057\u3066\u7D42\u4E86\u3059\u308B\n  -doclet <class>           \u4EE3\u66FFdoclet\u3092\u4ECB\u3057\u3066\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n  -docletpath <path>        doclet\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u63A2\u3059\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -sourcepath <pathlist>    \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -classpath <pathlist>     \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -cp <pathlist>                   \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\r\n  -exclude <pkglist>        \u9664\u5916\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u6307\u5B9A\u3059\u308B\n  -subpackages <subpkglist> \u518D\u5E30\u7684\u306B\u30ED\u30FC\u30C9\u3059\u308B\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6307\u5B9A\u3059\u308B\n  -breakiterator            BreakIterator\u3067\u6700\u521D\u306E\u6587\u3092\u8A08\u7B97\u3059\u308B\n  -bootclasspath <pathlist> \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30ED\u30FC\u30C0\u30FC\u306B\u3088\u308A\u30ED\u30FC\u30C9\u3055\u308C\u305F\n                                   \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n  -source <release>         \u6307\u5B9A\u3055\u308C\u305F\u30EA\u30EA\u30FC\u30B9\u3068\u30BD\u30FC\u30B9\u306E\u4E92\u63DB\u6027\u3092\u63D0\u4F9B\u3059\u308B\n  -extdirs <dirlist>        \u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u305F\u62E1\u5F35\u6A5F\u80FD\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n  -verbose                  Javadoc\u306E\u52D5\u4F5C\u306B\u3064\u3044\u3066\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n  -locale <name>            en_US\u3084en_US_WIN\u306A\u3069\u306E\u4F7F\u7528\u3059\u308B\u30ED\u30B1\u30FC\u30EB\n  -encoding <name>          \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u540D\n  -quiet                    \u72B6\u614B\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3057\u306A\u3044\n  -J<flag>                  <flag>\u3092\u5B9F\u884C\u6642\u30B7\u30B9\u30C6\u30E0\u306B\u76F4\u63A5\u6E21\u3059\n  -X                        \u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6982\u8981\u3092\u51FA\u529B\u3057\u7D42\u4E86\u3059\u308B\n
 
 main.Xusage=\  -Xmaxerrs <number>        \u51FA\u529B\u3059\u308B\u30A8\u30E9\u30FC\u306E\u6700\u5927\u6570\u3092\u8A2D\u5B9A\u3059\u308B\n  -Xmaxwarns <number>       \u51FA\u529B\u3059\u308B\u8B66\u544A\u306E\u6700\u5927\u6570\u3092\u8A2D\u5B9A\u3059\u308B\n
 
@@ -62,7 +62,12 @@
 main.illegal_locale_name=\u30ED\u30B1\u30FC\u30EB{0}\u304C\u7121\u52B9\u3067\u3059
 main.malformed_locale_name=\u30ED\u30B1\u30FC\u30EB\u540D{0}\u306E\u66F8\u5F0F\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093
 main.file_not_found=\u30D5\u30A1\u30A4\u30EB"{0}"\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+main.file_ignored=\u30D5\u30A1\u30A4\u30EB\u306F\u7121\u8996\u3055\u308C\u307E\u3057\u305F: "{0}" (\u307E\u3060\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093)
+main.illegal_class_name=\u30AF\u30E9\u30B9\u540D\u304C\u4E0D\u6B63\u3067\u3059: "{0}"
 main.illegal_package_name=\u30D1\u30C3\u30B1\u30FC\u30B8\u540D"{0}"\u306F\u4E0D\u6B63\u3067\u3059
+main.release.bootclasspath.conflict=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F-release\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+main.unsupported.release.version=\u30EA\u30EA\u30FC\u30B9\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3{0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+main.release.not.standard.file.manager=-release\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001\u6307\u5B9A\u3055\u308C\u305FJavaFileManager\u306FStandardJavaFileManager\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
 tag.illegal_char_in_arr_dim=\u30BF\u30B0{0}: \u914D\u5217\u306E\u5927\u304D\u3055\u3001\u30E1\u30BD\u30C3\u30C9\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF{1}\u306B\u69CB\u6587\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3059
 tag.illegal_see_tag=\u30BF\u30B0{0}: \u30E1\u30BD\u30C3\u30C9\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF{1}\u306B\u69CB\u6587\u30A8\u30E9\u30FC\u304C\u3042\u308A\u307E\u3059
 tag.missing_comma_space=\u30BF\u30B0{0}: \u30E1\u30BD\u30C3\u30C9\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF{1}\u306B\u30AB\u30F3\u30DE\u307E\u305F\u306F\u7A7A\u767D\u6587\u5B57\u304C\u3042\u308A\u307E\u305B\u3093
diff --git a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties
index 591f577..adf010b 100644
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -62,7 +62,12 @@
 main.illegal_locale_name=\u8BED\u8A00\u73AF\u5883\u4E0D\u53EF\u7528: {0}
 main.malformed_locale_name=\u683C\u5F0F\u9519\u8BEF\u7684\u8BED\u8A00\u73AF\u5883\u540D\u79F0: {0}
 main.file_not_found=\u627E\u4E0D\u5230\u6587\u4EF6: "{0}"
+main.file_ignored=\u5DF2\u5FFD\u7565\u6587\u4EF6: "{0}" (\u5C1A\u4E0D\u652F\u6301)
+main.illegal_class_name=\u975E\u6CD5\u7C7B\u540D: "{0}"
 main.illegal_package_name=\u975E\u6CD5\u7684\u7A0B\u5E8F\u5305\u540D\u79F0: "{0}"
+main.release.bootclasspath.conflict=\u9009\u9879{0}\u65E0\u6CD5\u4E0E -release \u4E00\u8D77\u4F7F\u7528
+main.unsupported.release.version=\u4E0D\u652F\u6301\u53D1\u884C\u7248\u672C {0}
+main.release.not.standard.file.manager=\u6307\u5B9A\u4E86 -release \u9009\u9879, \u4F46\u63D0\u4F9B\u7684 JavaFileManager \u4E0D\u662F StandardJavaFileManager\u3002
 tag.illegal_char_in_arr_dim=\u6807\u8BB0{0}: \u6570\u7EC4\u7EF4\u4E2D\u6709\u8BED\u6CD5\u9519\u8BEF, \u65B9\u6CD5\u53C2\u6570: {1}
 tag.illegal_see_tag=\u6807\u8BB0{0}: \u65B9\u6CD5\u53C2\u6570\u4E2D\u6709\u8BED\u6CD5\u9519\u8BEF: {1}
 tag.missing_comma_space=\u6807\u8BB0{0}: \u65B9\u6CD5\u53C2\u6570\u4E2D\u7F3A\u5C11\u9017\u53F7\u6216\u7A7A\u683C: {1}
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_ja.properties b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_ja.properties
index 5592f10..1149d43 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_ja.properties
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_ja.properties
@@ -1,12 +1,12 @@
-doclet.build_version=\u6A19\u6E96Doclet\u30D0\u30FC\u30B8\u30E7\u30F3{0}
+doclet.build_version=\u6A19\u6E96Doclet (\u6B21\u56DE)\u30D0\u30FC\u30B8\u30E7\u30F3{0}
 doclet.Contents=\u30B3\u30F3\u30C6\u30F3\u30C4
 doclet.Overview=\u6982\u8981
 doclet.Window_Overview=\u6982\u8981\u30EA\u30B9\u30C8
 doclet.Window_Overview_Summary=\u6982\u8981
 doclet.Package=\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Profile=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
+doclet.Module=\u30E2\u30B8\u30E5\u30FC\u30EB
 doclet.All_Packages=\u3059\u3079\u3066\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.All_Profiles=\u3059\u3079\u3066\u306E\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
+doclet.All_Modules=\u3059\u3079\u3066\u306E\u30E2\u30B8\u30E5\u30FC\u30EB
 doclet.Tree=\u968E\u5C64\u30C4\u30EA\u30FC
 doclet.Class_Hierarchy=\u30AF\u30E9\u30B9\u968E\u5C64
 doclet.Window_Class_Hierarchy=\u30AF\u30E9\u30B9\u968E\u5C64
@@ -19,8 +19,8 @@
 doclet.Next_Class=\u6B21\u306E\u30AF\u30E9\u30B9
 doclet.Prev_Package=\u524D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Next_Package=\u6B21\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Prev_Profile=\u524D\u306E\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
-doclet.Next_Profile=\u6B21\u306E\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
+doclet.Prev_Module=\u524D\u306E\u30E2\u30B8\u30E5\u30FC\u30EB
+doclet.Next_Module=\u6B21\u306E\u30E2\u30B8\u30E5\u30FC\u30EB
 doclet.Prev_Letter=\u524D\u306E\u6587\u5B57
 doclet.Next_Letter=\u6B21\u306E\u6587\u5B57
 doclet.Href_Class_Title={0}\u5185\u306E\u30AF\u30E9\u30B9
@@ -37,7 +37,7 @@
 doclet.navAnnotationTypeMember=\u8981\u7D20
 doclet.navField=\u30D5\u30A3\u30FC\u30EB\u30C9
 doclet.navProperty=\u30D7\u30ED\u30D1\u30C6\u30A3
-doclet.navEnum=\u5217\u6319\u578B\u5B9A\u6570
+doclet.navEnum=\u5217\u6319\u5B9A\u6570
 doclet.navConstructor=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 doclet.navMethod=\u30E1\u30BD\u30C3\u30C9
 doclet.Index=\u7D22\u5F15
@@ -48,13 +48,14 @@
 doclet.Navigation=\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3
 doclet.New_Page=NewPage
 doclet.navDeprecated=\u975E\u63A8\u5968
-doclet.Window_Deprecated_List=\u975E\u63A8\u5968\u306E\u30EA\u30B9\u30C8
+doclet.Window_Deprecated_List=\u975E\u63A8\u5968API\u306E\u30EA\u30B9\u30C8
 doclet.Overrides=\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9:
 doclet.in_class=\u30AF\u30E9\u30B9\u5185
 doclet.Static_variable_in={0}\u306Estatic\u5909\u6570
 doclet.Variable_in={0}\u306E\u5909\u6570
 doclet.Constructor_for={0}\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 doclet.Static_method_in={0}\u306Estatic\u30E1\u30BD\u30C3\u30C9
+doclet.Search_tag_in={0}\u306E\u691C\u7D22\u30BF\u30B0
 doclet.Method_in={0}\u306E\u30E1\u30BD\u30C3\u30C9
 doclet.package=\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.MalformedURL=\u4E0D\u6B63\u306AURL: {0}
@@ -62,31 +63,32 @@
 doclet.URL_error=URL\u53D6\u51FA\u3057\u30A8\u30E9\u30FC: {0}
 doclet.see.class_or_package_not_found=\u30BF\u30B0{0}: \u53C2\u7167\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {1}
 doclet.see.class_or_package_not_accessible=\u30BF\u30B0{0}: \u53C2\u7167\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093: {1}
-doclet.Deprecated_API=\u975E\u63A8\u5968\u306EAPI
-doclet.Deprecated_Packages=\u975E\u63A8\u5968\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Deprecated_Classes=\u975E\u63A8\u5968\u306E\u30AF\u30E9\u30B9
-doclet.Deprecated_Enums=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B
-doclet.Deprecated_Interfaces=\u975E\u63A8\u5968\u306E\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
-doclet.Deprecated_Exceptions=\u975E\u63A8\u5968\u306E\u4F8B\u5916
-doclet.Deprecated_Annotation_Types=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B
-doclet.Deprecated_Errors=\u975E\u63A8\u5968\u306E\u30A8\u30E9\u30FC
-doclet.Deprecated_Fields=\u975E\u63A8\u5968\u306E\u30D5\u30A3\u30FC\u30EB\u30C9
-doclet.Deprecated_Constructors=\u975E\u63A8\u5968\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
-doclet.Deprecated_Methods=\u975E\u63A8\u5968\u306E\u30E1\u30BD\u30C3\u30C9
-doclet.Deprecated_Enum_Constants=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B\u5B9A\u6570
-doclet.Deprecated_Annotation_Type_Members=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B\u306E\u8981\u7D20
-doclet.deprecated_packages=\u975E\u63A8\u5968\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.deprecated_classes=\u975E\u63A8\u5968\u306E\u30AF\u30E9\u30B9
-doclet.deprecated_enums=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B
-doclet.deprecated_interfaces=\u975E\u63A8\u5968\u306E\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
-doclet.deprecated_exceptions=\u975E\u63A8\u5968\u306E\u4F8B\u5916
-doclet.deprecated_annotation_types=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B
-doclet.deprecated_errors=\u975E\u63A8\u5968\u306E\u30A8\u30E9\u30FC
-doclet.deprecated_fields=\u975E\u63A8\u5968\u306E\u30D5\u30A3\u30FC\u30EB\u30C9
-doclet.deprecated_constructors=\u975E\u63A8\u5968\u306E\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
-doclet.deprecated_methods=\u975E\u63A8\u5968\u306E\u30E1\u30BD\u30C3\u30C9
-doclet.deprecated_enum_constants=\u975E\u63A8\u5968\u306E\u5217\u6319\u578B\u5B9A\u6570
-doclet.deprecated_annotation_type_members=\u975E\u63A8\u5968\u306E\u6CE8\u91C8\u578B\u306E\u8981\u7D20
+doclet.tag.invalid_usage=\u30BF\u30B0{0}\u306E\u4F7F\u7528\u65B9\u6CD5\u304C\u7121\u52B9\u3067\u3059
+doclet.Deprecated_API=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044API
+doclet.Deprecated_Packages=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D1\u30C3\u30B1\u30FC\u30B8
+doclet.Deprecated_Classes=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30AF\u30E9\u30B9
+doclet.Deprecated_Enums=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B
+doclet.Deprecated_Interfaces=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
+doclet.Deprecated_Exceptions=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u4F8B\u5916
+doclet.Deprecated_Annotation_Types=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B
+doclet.Deprecated_Errors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30E9\u30FC
+doclet.Deprecated_Fields=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D5\u30A3\u30FC\u30EB\u30C9
+doclet.Deprecated_Constructors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
+doclet.Deprecated_Methods=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30E1\u30BD\u30C3\u30C9
+doclet.Deprecated_Enum_Constants=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B\u5B9A\u6570
+doclet.Deprecated_Annotation_Type_Members=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B\u306E\u8981\u7D20
+doclet.deprecated_packages=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D1\u30C3\u30B1\u30FC\u30B8
+doclet.deprecated_classes=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30AF\u30E9\u30B9
+doclet.deprecated_enums=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B
+doclet.deprecated_interfaces=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
+doclet.deprecated_exceptions=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u4F8B\u5916
+doclet.deprecated_annotation_types=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B
+doclet.deprecated_errors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30A8\u30E9\u30FC
+doclet.deprecated_fields=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30D5\u30A3\u30FC\u30EB\u30C9
+doclet.deprecated_constructors=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
+doclet.deprecated_methods=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30E1\u30BD\u30C3\u30C9
+doclet.deprecated_enum_constants=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u5217\u6319\u578B\u5B9A\u6570
+doclet.deprecated_annotation_type_members=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u6CE8\u91C8\u578B\u306E\u8981\u7D20
 doclet.Generated_Docs_Untitled=\u751F\u6210\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8(\u30BF\u30A4\u30C8\u30EB\u306A\u3057)
 doclet.Other_Packages=\u305D\u306E\u4ED6\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Package_Description=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306E\u8AAC\u660E
@@ -104,13 +106,10 @@
 doclet.Package_Hierarchies=\u30D1\u30C3\u30B1\u30FC\u30B8\u968E\u5C64:
 doclet.Hierarchy_For_Package=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306E\u968E\u5C64
 doclet.Hierarchy_For_All_Packages=\u3059\u3079\u3066\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u968E\u5C64
-doclet.Frame_Alert=\u30D5\u30EC\u30FC\u30E0\u95A2\u9023\u306E\u30A2\u30E9\u30FC\u30C8
-doclet.Frame_Warning_Message=\u3053\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306F\u30D5\u30EC\u30FC\u30E0\u6A5F\u80FD\u3092\u4F7F\u7528\u3057\u3066\u8868\u793A\u3059\u308B\u3088\u3046\u306B\u4F5C\u6210\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u30D5\u30EC\u30FC\u30E0\u3092\u8868\u793A\u3067\u304D\u306A\u3044Web\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306E\u5834\u5408\u306B\u3053\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002{0}\u306B\u30EA\u30F3\u30AF\u3057\u307E\u3059\u3002
 doclet.No_Script_Message=\u30D6\u30E9\u30A6\u30B6\u306EJavaScript\u304C\u7121\u52B9\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002
-doclet.Non_Frame_Version=\u30D5\u30EC\u30FC\u30E0\u306B\u5BFE\u5FDC\u3057\u3066\u3044\u306A\u3044\u30D0\u30FC\u30B8\u30E7\u30F3
 doclet.Description_From_Interface=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u304B\u3089\u30B3\u30D4\u30FC\u3055\u308C\u305F\u8AAC\u660E:
 doclet.Description_From_Class=\u30AF\u30E9\u30B9\u304B\u3089\u30B3\u30D4\u30FC\u3055\u308C\u305F\u8AAC\u660E:
-doclet.No_Non_Deprecated_Classes_To_Document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3059\u308B\u975E\u63A8\u5968\u3067\u306A\u3044\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+doclet.No_Non_Deprecated_Classes_To_Document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3059\u308B\u975E\u63A8\u5968\u4EE5\u5916\u306E\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
 doclet.Interfaces_Italic=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9(\u30A4\u30BF\u30EA\u30C3\u30AF)
 doclet.Enclosing_Class=\u542B\u307E\u308C\u3066\u3044\u308B\u30AF\u30E9\u30B9:
 doclet.Enclosing_Interface=\u542B\u307E\u308C\u3066\u3044\u308B\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:
@@ -135,7 +134,7 @@
 doclet.Help_line_17_with_tree_link=\u3059\u3079\u3066\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u306F{0}\u30DA\u30FC\u30B8\u304C\u3042\u308A\u3001\u3055\u3089\u306B\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u968E\u5C64\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u968E\u5C64\u30DA\u30FC\u30B8\u306F\u3001\u30AF\u30E9\u30B9\u306E\u30EA\u30B9\u30C8\u3068\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8\u3092\u542B\u307F\u307E\u3059\u3002\u30AF\u30E9\u30B9\u306F{1}\u3092\u958B\u59CB\u70B9\u3068\u3059\u308B\u7D99\u627F\u69CB\u9020\u3067\u7DE8\u6210\u3055\u308C\u307E\u3059\u3002\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306F\u3001{1}\u304B\u3089\u306F\u7D99\u627F\u3057\u307E\u305B\u3093\u3002
 doclet.Help_line_18=\u6982\u8981\u30DA\u30FC\u30B8\u3092\u8868\u793A\u3057\u3066\u3044\u308B\u3068\u304D\u306B\u300C\u968E\u5C64\u30C4\u30EA\u30FC\u300D\u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u3001\u5168\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u968E\u5C64\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002
 doclet.Help_line_19=\u7279\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3092\u8868\u793A\u3057\u3066\u3044\u308B\u3068\u304D\u306B\u300C\u968E\u5C64\u30C4\u30EA\u30FC\u300D\u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u3068\u3001\u8A72\u5F53\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u307F\u306E\u968E\u5C64\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002
-doclet.Help_line_20_with_deprecated_api_link={0}\u30DA\u30FC\u30B8\u306F\u3001\u975E\u63A8\u5968\u306EAPI\u3092\u3059\u3079\u3066\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002\u975E\u63A8\u5968\u306EAPI\u3068\u306F\u3001\u6A5F\u80FD\u6539\u826F\u306A\u3069\u306E\u7406\u7531\u304B\u3089\u4F7F\u7528\u3092\u304A\u85A6\u3081\u3067\u304D\u306A\u304F\u306A\u3063\u305FAPI\u306E\u3053\u3068\u3067\u3001\u901A\u5E38\u306F\u305D\u308C\u306B\u4EE3\u308F\u308BAPI\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u975E\u63A8\u5968\u306EAPI\u306F\u4ECA\u5F8C\u306E\u5B9F\u88C5\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002
+doclet.Help_line_20_with_deprecated_api_link={0}\u30DA\u30FC\u30B8\u306F\u3001\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u3059\u3079\u3066\u306EAPI\u306E\u30EA\u30B9\u30C8\u3092\u8868\u793A\u3057\u307E\u3059\u3002\u975E\u63A8\u5968API\u3068\u306F\u3001\u6A5F\u80FD\u6539\u826F\u306A\u3069\u306E\u7406\u7531\u304B\u3089\u4F7F\u7528\u3092\u304A\u85A6\u3081\u3067\u304D\u306A\u304F\u306A\u3063\u305FAPI\u306E\u3053\u3068\u3067\u3001\u901A\u5E38\u306F\u305D\u308C\u306B\u4EE3\u308F\u308BAPI\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u975E\u63A8\u5968API\u306F\u4ECA\u5F8C\u306E\u5B9F\u88C5\u3067\u524A\u9664\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002
 doclet.Help_line_21=\u7D22\u5F15
 doclet.Help_line_22={0}\u306B\u306F\u3001\u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3001\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u3001\u30E1\u30BD\u30C3\u30C9\u304A\u3088\u3073\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u306E\u30EA\u30B9\u30C8\u304C\u542B\u307E\u308C\u307E\u3059\u3002
 doclet.Help_line_23=\u524D/\u6B21
@@ -185,9 +184,157 @@
 doclet.Groupname_already_used=-group\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u304A\u3044\u3066\u3001\u3059\u3067\u306B\u30B0\u30EB\u30FC\u30D7\u540D\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.Same_package_name_used=\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u5F62\u5F0F\u304C2\u56DE\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.exception_encountered={1}\u306E\u51E6\u7406\u4E2D\u306B\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\n{0}
-doclet.usage=\u6A19\u6E96\u306Edoclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:\n-d <directory>                    \u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\n-use                              \u30AF\u30E9\u30B9\u3068\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4F7F\u7528\u30DA\u30FC\u30B8\u3092\u4F5C\u6210\u3059\u308B\n-version                          @version\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u308B\n-author                           @author\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u308B\n-docfilessubdirs                  doc-file\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u518D\u5E30\u7684\u306B\u30B3\u30D4\u30FC\u3059\u308B\n-splitindex                       1\u5B57\u3054\u3068\u306B1\u30D5\u30A1\u30A4\u30EB\u306B\u7D22\u5F15\u3092\u5206\u5272\u3059\u308B\n-windowtitle <text>               \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u7528\u306E\u30D6\u30E9\u30A6\u30B6\u30FB\u30A6\u30A3\u30F3\u30C9\u30A6\u30FB\u30BF\u30A4\u30C8\u30EB\n-doctitle <html-code>             \u6982\u8981\u30DA\u30FC\u30B8\u306B\u30BF\u30A4\u30C8\u30EB\u3092\u542B\u3081\u308B\n-header <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u30D8\u30C3\u30C0\u30FC\u3092\u542B\u3081\u308B\n-footer <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u30D5\u30C3\u30BF\u30FC\u3092\u542B\u3081\u308B\n-top    <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u4E0A\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u308B\n-bottom <html-code>               \u5404\u30DA\u30FC\u30B8\u306B\u4E0B\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u308B\n-link <url>                       <url>\u306Bjavadoc\u51FA\u529B\u3078\u306E\u30EA\u30F3\u30AF\u3092\u4F5C\u6210\u3059\u308B\n-linkoffline <url> <url2>         <url2>\u306B\u3042\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u4F7F\u7528\u3057\u3066<url>\u306Edocs\u306B\u30EA\u30F3\u30AF\u3059\u308B\n-excludedocfilessubdir <name1>:.. \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u306Edoc-files\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u3059\u3079\u3066\u9664\u5916\u3059\u308B\n-group <name> <p1>:<p2>..         \u6307\u5B9A\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6982\u8981\u30DA\u30FC\u30B8\u306B\u304A\u3044\u3066\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\n-nocomment                        \u8A18\u8FF0\u304A\u3088\u3073\u30BF\u30B0\u3092\u6291\u5236\u3057\u3066\u5BA3\u8A00\u306E\u307F\u3092\u751F\u6210\u3059\u308B\n-nodeprecated                     @deprecated\u60C5\u5831\u3092\u9664\u5916\u3059\u308B\n-noqualifier <name1>:<name2>:...  \u51FA\u529B\u304B\u3089\u4FEE\u98FE\u5B50\u306E\u30EA\u30B9\u30C8\u3092\u9664\u5916\u3059\u308B\n-nosince                          @since\u60C5\u5831\u3092\u9664\u5916\u3059\u308B\n-notimestamp                      \u975E\u8868\u793A\u306E\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u3092\u9664\u5916\u3059\u308B\n-nodeprecatedlist                 \u975E\u63A8\u5968\u306E\u30EA\u30B9\u30C8\u3092\u751F\u6210\u3057\u306A\u3044\n-notree                           \u30AF\u30E9\u30B9\u968E\u5C64\u3092\u751F\u6210\u3057\u306A\u3044\n-noindex                          \u7D22\u5F15\u3092\u751F\u6210\u3057\u306A\u3044\n-nohelp                           \u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u3092\u751F\u6210\u3057\u306A\u3044\n-nonavbar                         \u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u3092\u751F\u6210\u3057\u306A\u3044\n-serialwarn                       @serial\u30BF\u30B0\u306B\u95A2\u3059\u308B\u8B66\u544A\u3092\u751F\u6210\u3059\u308B\n-tag <name>:<locations>:<header>  \u5358\u4E00\u306E\u5F15\u6570\u3092\u6301\u3064\u30AB\u30B9\u30BF\u30E0\u30FB\u30BF\u30B0\u3092\u6307\u5B9A\u3059\u308B\n-taglet                           \u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u5B8C\u5168\u4FEE\u98FE\u540D\u3092\u767B\u9332\u3059\u308B\n-tagletpath                       \u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u30D1\u30B9\n-charset \
-<charset>                \u751F\u6210\u3055\u308C\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30AF\u30ED\u30B9\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3067\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\n-helpfile <file>                  \u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u306E\u30EA\u30F3\u30AF\u5148\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3081\u308B\n-linksource                       HTML\u5F62\u5F0F\u3067\u30BD\u30FC\u30B9\u3092\u751F\u6210\u3059\u308B\n-sourcetab <tab length>           \u30BD\u30FC\u30B9\u5185\u306E\u30BF\u30D6\u306E\u7A7A\u767D\u6587\u5B57\u306E\u6570\u3092\u6307\u5B9A\u3059\u308B\n-keywords                         HTML\u306Emeta\u30BF\u30B0\u306B\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u60C5\u5831\u3092\u542B\u3081\u308B\n-stylesheetfile <path>            \u751F\u6210\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30B9\u30BF\u30A4\u30EB\u5909\u66F4\u7528\u30D5\u30A1\u30A4\u30EB\n-docencoding <name>               \u51FA\u529B\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3059\u308B
 
+doclet.usage.d.name=d
+doclet.usage.d.parameters=<directory>
+doclet.usage.d.description=\u51FA\u529B\u30D5\u30A1\u30A4\u30EB\u306E\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
 
+doclet.usage.use.name=use
+doclet.usage.use.description=\u30AF\u30E9\u30B9\u3068\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4F7F\u7528\u30DA\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u307E\u3059
+
+doclet.usage.version.name=version
+doclet.usage.version.description=@version\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.author.name=author
+doclet.usage.author.description=@author\u30D1\u30E9\u30B0\u30E9\u30D5\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.docfilessubdirs.name=docfilessubdirs
+doclet.usage.docfilessubdirs.description=doc-file\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u518D\u5E30\u7684\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3059
+
+doclet.usage.splitindex.name=splitindex
+doclet.usage.splitindex.description=1\u5B57\u3054\u3068\u306B1\u30D5\u30A1\u30A4\u30EB\u306B\u7D22\u5F15\u3092\u5206\u5272\u3057\u307E\u3059
+
+doclet.usage.windowtitle.name=windowtitle
+doclet.usage.windotitle.parameters=<text>
+doclet.usage.windowtitle.description=\ \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u7528\u306E\u30D6\u30E9\u30A6\u30B6\u30FB\u30A6\u30A3\u30F3\u30C9\u30A6\u30FB\u30BF\u30A4\u30C8\u30EB
+
+doclet.usage.doctitle.name=doctitle
+doclet.usage.doctitle.parameters=<html-code>
+doclet.usage.doctitle.description=\u6982\u8981\u30DA\u30FC\u30B8\u306B\u30BF\u30A4\u30C8\u30EB\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.header.name=\u30D8\u30C3\u30C0\u30FC
+doclet.usage.header.parameters=<html-code>
+doclet.usage.header.description=\u5404\u30DA\u30FC\u30B8\u306B\u30D8\u30C3\u30C0\u30FC\u30FB\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.html4.name=html4
+doclet.usage.html4.description=HTML 4.01\u51FA\u529B\u3092\u751F\u6210\u3057\u307E\u3059
+
+doclet.usage.html5.name=html5
+doclet.usage.html5.description=HTML 5\u51FA\u529B\u3092\u751F\u6210\u3057\u307E\u3059
+
+doclet.usage.footer.name=\u30D5\u30C3\u30BF\u30FC
+doclet.usage.footer.parameters=<html-code>
+doclet.usage.footer.description=\u5404\u30DA\u30FC\u30B8\u306B\u30D5\u30C3\u30BF\u30FC\u30FB\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.top.name=top
+doclet.usage.top.parameters=<html-code>
+doclet.usage.top.description=\u5404\u30DA\u30FC\u30B8\u306B\u4E0A\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.bottom.name=bottom
+doclet.usage.bottom.parameters=<html-code>
+doclet.usage.bottom.description=\u5404\u30DA\u30FC\u30B8\u306B\u4E0B\u90E8\u30C6\u30AD\u30B9\u30C8\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.link.name=link
+doclet.usage.link.parameters=<url>
+doclet.usage.link.description=<url>\u306Bjavadoc\u51FA\u529B\u3078\u306E\u30EA\u30F3\u30AF\u3092\u4F5C\u6210\u3057\u307E\u3059
+
+doclet.usage.linkoffline.name=linkoffline
+doclet.usage.linkoffline.parameters=<url1> <url2>
+doclet.usage.linkoffline.description=<url2>\u306B\u3042\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u4F7F\u7528\u3057\u3066<url1>\u306Edocs\u306B\u30EA\u30F3\u30AF\u3057\u307E\u3059
+
+doclet.usage.excludedocfilessubdir.name=excludedocfilessubdir
+doclet.usage.excludedocfilessubdir.parameters=<name>:..
+doclet.usage.excludedocfilessubdir.description=\u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u306Edoc-files\u30B5\u30D6\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u3059\u3079\u3066\u9664\u5916\u3057\u307E\u3059
+
+doclet.usage.group.name=group
+doclet.usage.group.parameters=<name> <p1>:<p2>..
+doclet.usage.group.description=\u6307\u5B9A\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6982\u8981\u30DA\u30FC\u30B8\u306B\u304A\u3044\u3066\u30B0\u30EB\u30FC\u30D7\u5316\u3057\u307E\u3059
+
+doclet.usage.nocomment.name=nocomment
+doclet.usage.nocomment.description=\u8A18\u8FF0\u304A\u3088\u3073\u30BF\u30B0\u3092\u6291\u5236\u3057\u3066\u5BA3\u8A00\u306E\u307F\u3092\u751F\u6210\u3057\u307E\u3059
+
+doclet.usage.nodeprecated.name=nodeprecated
+doclet.usage.nodeprecated.description=@deprecated\u60C5\u5831\u3092\u9664\u5916\u3057\u307E\u3059
+
+doclet.usage.noqualifier.name=noqualifier
+doclet.usage.noqualifier.parameters=<name1>:<name2>:..
+doclet.usage.noqualifier.description=\u51FA\u529B\u304B\u3089\u4FEE\u98FE\u5B50\u306E\u30EA\u30B9\u30C8\u3092\u9664\u5916\u3057\u307E\u3059
+
+doclet.usage.nosince.name=nosince
+doclet.usage.nosince.description=@since\u60C5\u5831\u3092\u9664\u5916\u3057\u307E\u3059
+
+doclet.usage.notimestamp.name=notimestamp
+doclet.usage.notimestamp.description=\u975E\u8868\u793A\u306E\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u3092\u9664\u5916\u3057\u307E\u3059
+
+doclet.usage.nodeprecatedlist.name=nodeprecatedlist
+doclet.usage.nodeprecatedlist.description=\u975E\u63A8\u5968\u306E\u30EA\u30B9\u30C8\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.notree.name=notree
+doclet.usage.notree.description=\u30AF\u30E9\u30B9\u968E\u5C64\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.noindex.name=noindex
+doclet.usage.noindex.description=\u7D22\u5F15\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.nohelp.name=nohelp
+doclet.usage.nohelp.description=\u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.nonavbar.name=nonavbar
+doclet.usage.nonavbar.description=\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.nooverview.name=nooverview
+doclet.usage.nooverview.description=\u6982\u8981\u30DA\u30FC\u30B8\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.serialwarn.name=serialwarn
+doclet.usage.serialwarn.description=@serial\u30BF\u30B0\u306B\u95A2\u3059\u308B\u8B66\u544A\u3092\u751F\u6210\u3057\u307E\u305B\u3093
+
+doclet.usage.tag.name=tag
+doclet.usage.tag.parameters=<name>:<locations>:<header>
+doclet.usage.tag.description=\u5358\u4E00\u306E\u5F15\u6570\u3092\u6301\u3064\u30AB\u30B9\u30BF\u30E0\u30FB\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u307E\u3059
+
+doclet.usage.taglet.name=taglet
+doclet.usage.taglet.description=\u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u5B8C\u5168\u4FEE\u98FE\u540D\u3092\u767B\u9332\u3057\u307E\u3059
+
+doclet.usage.tagletpath.name=tagletpath
+doclet.usage.tagletpath.description=\u30BF\u30B0\u30EC\u30C3\u30C8\u306E\u30D1\u30B9
+
+doclet.usage.charset.name=charset
+doclet.usage.charset.parameters=<charset>
+doclet.usage.charset.description=\u751F\u6210\u3055\u308C\u308B\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30AF\u30ED\u30B9\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3067\u306E\u6587\u5B57\u30BB\u30C3\u30C8
+
+doclet.usage.helpfile.name=helpfile
+doclet.usage.helpfile.parameters=<file>
+doclet.usage.helpfile.description=\u30D8\u30EB\u30D7\u30FB\u30EA\u30F3\u30AF\u306E\u30EA\u30F3\u30AF\u5148\u30D5\u30A1\u30A4\u30EB\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.linksource.name=linksource
+doclet.usage.linksource.description=HTML\u5F62\u5F0F\u3067\u30BD\u30FC\u30B9\u3092\u751F\u6210\u3057\u307E\u3059
+
+doclet.usage.sourcetab.name=sourcetab
+doclet.usage.sourcetab.parameters=<tab length>
+doclet.usage.sourcetab.description=\u30BD\u30FC\u30B9\u5185\u306E\u30BF\u30D6\u306E\u7A7A\u767D\u6587\u5B57\u306E\u6570\u3092\u6307\u5B9A\u3057\u307E\u3059
+
+doclet.usage.keywords.name=keywords
+doclet.usage.keywords.description=HTML\u306Emeta\u30BF\u30B0\u306B\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u60C5\u5831\u3092\u542B\u3081\u307E\u3059
+
+doclet.usage.stylesheetfile.name=stylesheetfile
+doclet.usage.stylesheetfile.parameters=<path>
+doclet.usage.stylesheetfile.description=\u751F\u6210\u3055\u308C\u305F\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30B9\u30BF\u30A4\u30EB\u5909\u66F4\u7528\u30D5\u30A1\u30A4\u30EB
+
+doclet.usage.docencoding.name=docencoding
+doclet.usage.docencoding.parameters=<name>
+doclet.usage.docencoding.description=\u51FA\u529B\u306E\u6587\u5B57\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3092\u6307\u5B9A\u3057\u307E\u3059
+
+doclet.xusage.xdocrootparent.name=Xdocrootparent
+doclet.xusage.xdocrootparent.parameters=<url>
+doclet.xusage.xdocrootparent.description=doc\u30B3\u30E1\u30F3\u30C8\u5185\u306E/..\u304C\u5F8C\u306B\u7D9A\u304F@docRoot\u306E\u3059\u3079\u3066\u3092<url>\u3067\u7F6E\u63DB\u3057\u307E\u3059
+
+doclet.xusage.xdoclint.name=Xdoclint
+doclet.xusage.xdoclint.description=javadoc\u30B3\u30E1\u30F3\u30C8\u306E\u554F\u984C\u306B\u95A2\u3059\u308B\u63A8\u5968\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3057\u307E\u3059
+
+doclet.xusage.xdoclint-extended.name=Xdoclint:
+doclet.xusage.xdoclint-extended.parameters=(all|none|[-]<group>)
 # L10N: do not localize these words: all none accessibility html missing reference syntax
-doclet.X.usage=\u6A19\u6E96\u306Edoclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:\n  -Xdocrootparent <url>            doc\u30B3\u30E1\u30F3\u30C8\u5185\u306E/..\u304C\u5F8C\u306B\u7D9A\u304F@docRoot\u306E\u3059\u3079\u3066\u3092\n                                   <url>\u3067\u7F6E\u63DB\u3057\u307E\u3059\n  -Xdoclint                        javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u63A8\u5968\u3055\u308C\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3057\u307E\u3059\n  -Xdoclint:(all|none|[-]<group>) \n        javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u7279\u5B9A\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n        \u3053\u3053\u3067\u3001<group>\u306Fhtml\u3001missing\u3001reference\u307E\u305F\u306Fsyntax\u306E\u3044\u305A\u308C\u304B\u3067\u3059\u3002\n
+doclet.xusage.xdoclint-extended.description=javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u7279\u5B9A\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n                                   javadoc\u30B3\u30E1\u30F3\u30C8\u5185\u306E\u554F\u984C\u306B\u5BFE\u3059\u308B\u7279\u5B9A\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002\n                                   \u3053\u3053\u3067\u3001<group>\u306Faccessibility\u3001html\u3001missing\u3001reference\u307E\u305F\u306Fsyntax\u306E\u3044\u305A\u308C\u304B\u3067\u3059\u3002\n
+
+doclet.xusage.xdoclint-package.name=Xdoclint/package:
+doclet.xusage.xdoclint-package.parameters=([-]<packages>)
+doclet.xusage.xdoclint-package.description=\u7279\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3057\u307E\u3059\u3002<packages>\u306F\n        \u30AB\u30F3\u30DE\u3067\u533A\u5207\u3089\u308C\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u30EA\u30B9\u30C8\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306F\u3001\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n        \u4FEE\u98FE\u3055\u308C\u305F\u540D\u524D\u3001\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u306E\u63A5\u982D\u8F9E\u306E\u5F8C\u306B.*'\u6307\u5B9A(\u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\n        \u3059\u3079\u3066\u306E\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u62E1\u5F35)\u3057\u305F\u3082\u306E\u3067\u3059\u3002\u30D1\u30C3\u30B1\u30FC\u30B8\u6307\u5B9A\u5B50\u306E\u524D\u306B-\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\n        \u6307\u5B9A\u3057\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u95A2\u3059\u308B\u30C1\u30A7\u30C3\u30AF\u3092\u7121\u52B9\u306B\u3067\u304D\u307E\u3059\u3002\n
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_zh_CN.properties b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_zh_CN.properties
index 23d1b9b..d732856 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_zh_CN.properties
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard_zh_CN.properties
@@ -1,12 +1,12 @@
-doclet.build_version=\u6807\u51C6 Doclet \u7248\u672C {0}
+doclet.build_version=\u6807\u51C6 Doclet (\u4E0B\u4E00\u4E2A) \u7248\u672C {0}
 doclet.Contents=\u76EE\u5F55
 doclet.Overview=\u6982\u89C8
 doclet.Window_Overview=\u6982\u89C8\u5217\u8868
 doclet.Window_Overview_Summary=\u6982\u89C8
 doclet.Package=\u7A0B\u5E8F\u5305
-doclet.Profile=\u914D\u7F6E\u6587\u4EF6
+doclet.Module=\u6A21\u5757
 doclet.All_Packages=\u6240\u6709\u7A0B\u5E8F\u5305
-doclet.All_Profiles=\u6240\u6709\u914D\u7F6E\u6587\u4EF6
+doclet.All_Modules=\u5168\u90E8\u6A21\u5757
 doclet.Tree=\u6811
 doclet.Class_Hierarchy=\u7C7B\u5206\u5C42\u7ED3\u6784
 doclet.Window_Class_Hierarchy=\u7C7B\u5206\u5C42\u7ED3\u6784
@@ -19,8 +19,8 @@
 doclet.Next_Class=\u4E0B\u4E00\u4E2A\u7C7B
 doclet.Prev_Package=\u4E0A\u4E00\u4E2A\u7A0B\u5E8F\u5305
 doclet.Next_Package=\u4E0B\u4E00\u4E2A\u7A0B\u5E8F\u5305
-doclet.Prev_Profile=\u4E0A\u4E00\u914D\u7F6E\u6587\u4EF6
-doclet.Next_Profile=\u4E0B\u4E00\u914D\u7F6E\u6587\u4EF6
+doclet.Prev_Module=\u4E0A\u4E00\u4E2A\u6A21\u5757
+doclet.Next_Module=\u4E0B\u4E00\u4E2A\u6A21\u5757
 doclet.Prev_Letter=\u4E0A\u4E00\u4E2A\u5B57\u6BCD
 doclet.Next_Letter=\u4E0B\u4E00\u4E2A\u5B57\u6BCD
 doclet.Href_Class_Title={0}\u4E2D\u7684\u7C7B
@@ -55,6 +55,7 @@
 doclet.Variable_in={0}\u4E2D\u7684\u53D8\u91CF
 doclet.Constructor_for={0}\u7684\u6784\u9020\u5668
 doclet.Static_method_in={0}\u4E2D\u7684\u9759\u6001\u65B9\u6CD5
+doclet.Search_tag_in={0}\u4E2D\u7684\u641C\u7D22\u6807\u8BB0
 doclet.Method_in={0}\u4E2D\u7684\u65B9\u6CD5
 doclet.package=\u7A0B\u5E8F\u5305
 doclet.MalformedURL=\u683C\u5F0F\u9519\u8BEF\u7684 URL: {0}
@@ -62,6 +63,7 @@
 doclet.URL_error=\u83B7\u53D6 URL \u65F6\u51FA\u9519: {0}
 doclet.see.class_or_package_not_found=\u6807\u8BB0{0}: \u627E\u4E0D\u5230\u5F15\u7528: {1}
 doclet.see.class_or_package_not_accessible=\u6807\u8BB0{0}: \u65E0\u6CD5\u8BBF\u95EE\u5F15\u7528: {1}
+doclet.tag.invalid_usage=\u6807\u8BB0 {0} \u7684\u7528\u6CD5\u65E0\u6548
 doclet.Deprecated_API=\u5DF2\u8FC7\u65F6\u7684 API
 doclet.Deprecated_Packages=\u5DF2\u8FC7\u65F6\u7A0B\u5E8F\u5305
 doclet.Deprecated_Classes=\u5DF2\u8FC7\u65F6\u7684\u7C7B
@@ -104,10 +106,7 @@
 doclet.Package_Hierarchies=\u7A0B\u5E8F\u5305\u5206\u5C42\u7ED3\u6784:
 doclet.Hierarchy_For_Package=\u7A0B\u5E8F\u5305{0}\u7684\u5206\u5C42\u7ED3\u6784
 doclet.Hierarchy_For_All_Packages=\u6240\u6709\u7A0B\u5E8F\u5305\u7684\u5206\u5C42\u7ED3\u6784
-doclet.Frame_Alert=\u6846\u67B6\u9884\u8B66
-doclet.Frame_Warning_Message=\u8BF7\u4F7F\u7528\u6846\u67B6\u529F\u80FD\u67E5\u770B\u6B64\u6587\u6863\u3002\u5982\u679C\u770B\u5230\u6B64\u6D88\u606F, \u5219\u8868\u660E\u60A8\u4F7F\u7528\u7684\u662F\u4E0D\u652F\u6301\u6846\u67B6\u7684 Web \u5BA2\u6237\u673A\u3002\u94FE\u63A5\u5230{0}\u3002
 doclet.No_Script_Message=\u60A8\u7684\u6D4F\u89C8\u5668\u5DF2\u7981\u7528 JavaScript\u3002
-doclet.Non_Frame_Version=\u975E\u6846\u67B6\u7248\u672C
 doclet.Description_From_Interface=\u4ECE\u63A5\u53E3\u590D\u5236\u7684\u8BF4\u660E:
 doclet.Description_From_Class=\u4ECE\u7C7B\u590D\u5236\u7684\u8BF4\u660E:
 doclet.No_Non_Deprecated_Classes_To_Document=\u627E\u4E0D\u5230\u53EF\u4EE5\u6587\u6863\u5316\u7684\u672A\u8FC7\u65F6\u7684\u7C7B\u3002
@@ -185,8 +184,157 @@
 doclet.Groupname_already_used=\u5728 -group \u9009\u9879\u4E2D, groupname \u5DF2\u4F7F\u7528: {0}
 doclet.Same_package_name_used=\u7A0B\u5E8F\u5305\u540D\u79F0\u5F62\u5F0F\u4F7F\u7528\u4E86\u4E24\u6B21: {0}
 doclet.exception_encountered=\u5904\u7406{1}\u65F6\u51FA\u73B0\u5F02\u5E38\u9519\u8BEF\n{0}
-doclet.usage=\u901A\u8FC7\u6807\u51C6 doclet \u63D0\u4F9B:\n  -d <directory>                   \u8F93\u51FA\u6587\u4EF6\u7684\u76EE\u6807\u76EE\u5F55\n  -use                             \u521B\u5EFA\u7C7B\u548C\u7A0B\u5E8F\u5305\u7528\u6CD5\u9875\u9762\n  -version                         \u5305\u542B @version \u6BB5\n  -author                          \u5305\u542B @author \u6BB5\n  -docfilessubdirs                 \u9012\u5F52\u590D\u5236\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55\n  -splitindex                      \u5C06\u7D22\u5F15\u5206\u4E3A\u6BCF\u4E2A\u5B57\u6BCD\u5BF9\u5E94\u4E00\u4E2A\u6587\u4EF6\n  -windowtitle <text>              \u6587\u6863\u7684\u6D4F\u89C8\u5668\u7A97\u53E3\u6807\u9898\n  -doctitle <html-code>            \u5305\u542B\u6982\u89C8\u9875\u9762\u7684\u6807\u9898\n  -header <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u7709\u6587\u672C\n  -footer <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u811A\u6587\u672C\n  -top    <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9876\u90E8\u6587\u672C\n  -bottom <html-code>              \u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u5E95\u90E8\u6587\u672C\n  -link <url>                      \u521B\u5EFA\u6307\u5411\u4F4D\u4E8E <url> \u7684 javadoc \u8F93\u51FA\u7684\u94FE\u63A5\n  -linkoffline <url> <url2>        \u5229\u7528\u4F4D\u4E8E <url2> \u7684\u7A0B\u5E8F\u5305\u5217\u8868\u94FE\u63A5\u81F3\u4F4D\u4E8E <url> \u7684\u6587\u6863\n  -excludedocfilessubdir <name1>:.. \u6392\u9664\u5177\u6709\u7ED9\u5B9A\u540D\u79F0\u7684\u6240\u6709\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55\u3002\n  -group <name> <p1>:<p2>..        \u5728\u6982\u89C8\u9875\u9762\u4E2D, \u5C06\u6307\u5B9A\u7684\u7A0B\u5E8F\u5305\u5206\u7EC4\n  -nocomment                       \u4E0D\u751F\u6210\u8BF4\u660E\u548C\u6807\u8BB0, \u53EA\u751F\u6210\u58F0\u660E\u3002\n  -nodeprecated                    \u4E0D\u5305\u542B @deprecated \u4FE1\u606F\n  -noqualifier <name1>:<name2>:... \u8F93\u51FA\u4E2D\u4E0D\u5305\u62EC\u6307\u5B9A\u9650\u5B9A\u7B26\u7684\u5217\u8868\u3002\n  -nosince                         \u4E0D\u5305\u542B @since \u4FE1\u606F\n  -notimestamp                     \u4E0D\u5305\u542B\u9690\u85CF\u65F6\u95F4\u6233\n  -nodeprecatedlist                \u4E0D\u751F\u6210\u5DF2\u8FC7\u65F6\u7684\u5217\u8868\n  -notree                          \u4E0D\u751F\u6210\u7C7B\u5206\u5C42\u7ED3\u6784\n  -noindex                         \u4E0D\u751F\u6210\u7D22\u5F15\n  -nohelp                          \u4E0D\u751F\u6210\u5E2E\u52A9\u94FE\u63A5\n  -nonavbar                        \u4E0D\u751F\u6210\u5BFC\u822A\u680F\n  -serialwarn                      \u751F\u6210\u6709\u5173 @serial \u6807\u8BB0\u7684\u8B66\u544A\n  -tag <name>:<locations>:<header> \u6307\u5B9A\u5355\u4E2A\u53C2\u6570\u5B9A\u5236\u6807\u8BB0\n  -taglet                          \u8981\u6CE8\u518C\u7684 Taglet \u7684\u5168\u9650\u5B9A\u540D\u79F0\n  -tagletpath                      Taglet \u7684\u8DEF\u5F84\n  -charset <charset>               \u7528\u4E8E\u8DE8\u5E73\u53F0\u67E5\u770B\u751F\u6210\u7684\u6587\u6863\u7684\u5B57\u7B26\u96C6\u3002\n  -helpfile <file>                 \u5305\u542B\u5E2E\u52A9\u94FE\u63A5\u6240\u94FE\u63A5\u5230\u7684\u6587\u4EF6\n  -linksource                      \u4EE5 HTML \u683C\u5F0F\u751F\u6210\u6E90\u6587\u4EF6\n  -sourcetab <tab length>          \u6307\u5B9A\u6E90\u4E2D\u6BCF\u4E2A\u5236\u8868\u7B26\u5360\u636E\u7684\u7A7A\u683C\u6570\n  -keywords                        \u4F7F\u7A0B\u5E8F\u5305, \u7C7B\u548C\u6210\u5458\u4FE1\u606F\u9644\u5E26 HTML \u5143\u6807\u8BB0\n  -stylesheetfile <path>           \u7528\u4E8E\u66F4\u6539\u751F\u6210\u6587\u6863\u7684\u6837\u5F0F\u7684\u6587\u4EF6\n  -docencoding <name>              \u6307\u5B9A\u8F93\u51FA\u7684\u5B57\u7B26\u7F16\u7801
 
+doclet.usage.d.name=d
+doclet.usage.d.parameters=<directory>
+doclet.usage.d.description=\u8F93\u51FA\u6587\u4EF6\u7684\u76EE\u6807\u76EE\u5F55
 
+doclet.usage.use.name=use
+doclet.usage.use.description=\u521B\u5EFA\u7C7B\u548C\u7A0B\u5E8F\u5305\u7528\u6CD5\u9875\u9762
+
+doclet.usage.version.name=version
+doclet.usage.version.description=\u5305\u542B @version \u6BB5
+
+doclet.usage.author.name=author
+doclet.usage.author.description=\u5305\u542B @author \u6BB5
+
+doclet.usage.docfilessubdirs.name=docfilessubdirs
+doclet.usage.docfilessubdirs.description=\u9012\u5F52\u590D\u5236\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55
+
+doclet.usage.splitindex.name=splitindex
+doclet.usage.splitindex.description=\u5C06\u7D22\u5F15\u5206\u4E3A\u6BCF\u4E2A\u5B57\u6BCD\u5BF9\u5E94\u4E00\u4E2A\u6587\u4EF6
+
+doclet.usage.windowtitle.name=windowtitle
+doclet.usage.windotitle.parameters=<text>
+doclet.usage.windowtitle.description=\u6587\u6863\u7684\u6D4F\u89C8\u5668\u7A97\u53E3\u6807\u9898
+
+doclet.usage.doctitle.name=doctitle
+doclet.usage.doctitle.parameters=<html-code>
+doclet.usage.doctitle.description=\u5305\u542B\u6982\u89C8\u9875\u9762\u7684\u6807\u9898
+
+doclet.usage.header.name=\u9875\u7709
+doclet.usage.header.parameters=<html-code>
+doclet.usage.header.description=\u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u7709\u6587\u672C
+
+doclet.usage.html4.name=html4
+doclet.usage.html4.description=\u751F\u6210 HTML 4.01 \u8F93\u51FA
+
+doclet.usage.html5.name=html5
+doclet.usage.html5.description=\u751F\u6210 HTML 5 \u8F93\u51FA
+
+doclet.usage.footer.name=\u9875\u811A
+doclet.usage.footer.parameters=<html-code>
+doclet.usage.footer.description=\u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9875\u811A\u6587\u672C
+
+doclet.usage.top.name=top
+doclet.usage.top.parameters=<html-code>
+doclet.usage.top.description=\u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u9876\u90E8\u6587\u672C
+
+doclet.usage.bottom.name=bottom
+doclet.usage.bottom.parameters=<html-code>
+doclet.usage.bottom.description=\u5305\u542B\u6BCF\u4E2A\u9875\u9762\u7684\u5E95\u90E8\u6587\u672C
+
+doclet.usage.link.name=link
+doclet.usage.link.parameters=<url>
+doclet.usage.link.description=\u521B\u5EFA\u6307\u5411 <url> \u4E2D\u7684 javadoc \u8F93\u51FA\u7684\u94FE\u63A5
+
+doclet.usage.linkoffline.name=linkoffline
+doclet.usage.linkoffline.parameters=<url1> <url2>
+doclet.usage.linkoffline.description=\u4F7F\u7528 <url2> \u4E2D\u7684\u7A0B\u5E8F\u5305\u5217\u8868\u94FE\u63A5\u5230 <url1> \u4E2D\u7684\u6587\u6863
+
+doclet.usage.excludedocfilessubdir.name=excludedocfilessubdir
+doclet.usage.excludedocfilessubdir.parameters=<name>:..
+doclet.usage.excludedocfilessubdir.description=\u6392\u9664\u5177\u6709\u7ED9\u5B9A\u540D\u79F0\u7684\u6240\u6709\u6587\u6863\u6587\u4EF6\u5B50\u76EE\u5F55
+
+doclet.usage.group.name=group
+doclet.usage.group.parameters=<name> <p1>:<p2>..
+doclet.usage.group.description=\u5C06\u6307\u5B9A\u7684\u7A0B\u5E8F\u5305\u5728\u6982\u89C8\u9875\u9762\u4E0A\u5206\u7EC4\u5728\u4E00\u8D77
+
+doclet.usage.nocomment.name=nocomment
+doclet.usage.nocomment.description=\u4E0D\u751F\u6210\u8BF4\u660E\u548C\u6807\u8BB0, \u53EA\u751F\u6210\u58F0\u660E
+
+doclet.usage.nodeprecated.name=nodeprecated
+doclet.usage.nodeprecated.description=\u4E0D\u5305\u542B @deprecated \u4FE1\u606F
+
+doclet.usage.noqualifier.name=noqualifier
+doclet.usage.noqualifier.parameters=<name1>:<name2>:..
+doclet.usage.noqualifier.description=\u8F93\u51FA\u4E2D\u4E0D\u5305\u62EC\u9650\u5B9A\u7B26\u7684\u5217\u8868
+
+doclet.usage.nosince.name=nosince
+doclet.usage.nosince.description=\u4E0D\u5305\u62EC @since \u4FE1\u606F
+
+doclet.usage.notimestamp.name=notimestamp
+doclet.usage.notimestamp.description=\u4E0D\u5305\u62EC\u9690\u85CF\u7684\u65F6\u95F4\u6233
+
+doclet.usage.nodeprecatedlist.name=nodeprecatedlist
+doclet.usage.nodeprecatedlist.description=\u4E0D\u751F\u6210\u5DF2\u8FC7\u65F6\u7684\u5217\u8868
+
+doclet.usage.notree.name=notree
+doclet.usage.notree.description=\u4E0D\u751F\u6210\u7C7B\u5206\u5C42\u7ED3\u6784
+
+doclet.usage.noindex.name=noindex
+doclet.usage.noindex.description=\u4E0D\u751F\u6210\u7D22\u5F15
+
+doclet.usage.nohelp.name=nohelp
+doclet.usage.nohelp.description=\u4E0D\u751F\u6210\u5E2E\u52A9\u94FE\u63A5
+
+doclet.usage.nonavbar.name=nonavbar
+doclet.usage.nonavbar.description=\u4E0D\u751F\u6210\u5BFC\u822A\u680F
+
+doclet.usage.nooverview.name=nooverview
+doclet.usage.nooverview.description=\u4E0D\u751F\u6210\u6982\u89C8\u9875\u9762
+
+doclet.usage.serialwarn.name=serialwarn
+doclet.usage.serialwarn.description=\u751F\u6210\u6709\u5173 @serial \u6807\u8BB0\u7684\u8B66\u544A
+
+doclet.usage.tag.name=tag
+doclet.usage.tag.parameters=<name>:<locations>:<header>
+doclet.usage.tag.description=\u6307\u5B9A\u5355\u4E2A\u53C2\u6570\u5B9A\u5236\u6807\u8BB0
+
+doclet.usage.taglet.name=taglet
+doclet.usage.taglet.description=\u8981\u6CE8\u518C\u7684 Taglet \u7684\u5168\u9650\u5B9A\u540D\u79F0
+
+doclet.usage.tagletpath.name=tagletpath
+doclet.usage.tagletpath.description=Taglet \u7684\u8DEF\u5F84
+
+doclet.usage.charset.name=charset
+doclet.usage.charset.parameters=<charset>
+doclet.usage.charset.description=\u7528\u4E8E\u8DE8\u5E73\u53F0\u67E5\u770B\u751F\u6210\u7684\u6587\u6863\u7684\u5B57\u7B26\u96C6
+
+doclet.usage.helpfile.name=helpfile
+doclet.usage.helpfile.parameters=<file>
+doclet.usage.helpfile.description=\u5305\u542B\u5E2E\u52A9\u94FE\u63A5\u6240\u94FE\u63A5\u5230\u7684\u6587\u4EF6
+
+doclet.usage.linksource.name=linksource
+doclet.usage.linksource.description=\u4EE5 HTML \u683C\u5F0F\u751F\u6210\u6E90\u6587\u4EF6
+
+doclet.usage.sourcetab.name=sourcetab
+doclet.usage.sourcetab.parameters=<tab length>
+doclet.usage.sourcetab.description=\u6307\u5B9A\u6E90\u4E2D\u6BCF\u4E2A\u5236\u8868\u7B26\u5360\u636E\u7684\u7A7A\u683C\u6570
+
+doclet.usage.keywords.name=keywords
+doclet.usage.keywords.description=\u968F\u7A0B\u5E8F\u5305, \u7C7B\u548C\u6210\u5458\u4FE1\u606F\u4E00\u8D77\u9644\u5E26 HTML \u5143\u6807\u8BB0
+
+doclet.usage.stylesheetfile.name=stylesheetfile
+doclet.usage.stylesheetfile.parameters=<path>
+doclet.usage.stylesheetfile.description=\u7528\u4E8E\u66F4\u6539\u751F\u6210\u6587\u6863\u7684\u6837\u5F0F\u7684\u6587\u4EF6
+
+doclet.usage.docencoding.name=docencoding
+doclet.usage.docencoding.parameters=<name>
+doclet.usage.docencoding.description=\u6307\u5B9A\u8F93\u51FA\u7684\u5B57\u7B26\u7F16\u7801
+
+doclet.xusage.xdocrootparent.name=Xdocrootparent
+doclet.xusage.xdocrootparent.parameters=<url>
+doclet.xusage.xdocrootparent.description=\u5C06\u6587\u6863\u6CE8\u91CA\u4E2D\u51FA\u73B0\u7684\u6240\u6709\u540E\u8DDF /.. \u7684 @docRoot \u66FF\u6362\u4E3A <url>
+
+doclet.xusage.xdoclint.name=Xdoclint
+doclet.xusage.xdoclint.description=\u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u5EFA\u8BAE\u7684\u68C0\u67E5
+
+doclet.xusage.xdoclint-extended.name=Xdoclint:
+doclet.xusage.xdoclint-extended.parameters=(all|none|[-]<group>)
 # L10N: do not localize these words: all none accessibility html missing reference syntax
-doclet.X.usage=\u901A\u8FC7\u6807\u51C6 doclet \u63D0\u4F9B:\n  -Xdocrootparent <url>            \u4F7F\u7528 <url> \u66FF\u6362\u6587\u6863\u6CE8\u91CA\u4E2D\u51FA\u73B0\u7684\n                                   \u6240\u6709\u5176\u540E\u8DDF\u968F /.. \u7684 @docRoot\n  -Xdoclint                        \u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u5EFA\u8BAE\u7684\u68C0\u67E5\n  -Xdoclint:(all|none|[-]<group>) \n        \u5BF9 javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u68C0\u67E5\u3002\n        \u5176\u4E2D <group> \u662F accessibility, html, missing, reference \u6216 syntax \u4E4B\u4E00\u3002\n
+doclet.xusage.xdoclint-extended.description=\u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u68C0\u67E5,\n                                   \u4E3A javadoc \u6CE8\u91CA\u4E2D\u7684\u95EE\u9898\u542F\u7528\u6216\u7981\u7528\u7279\u5B9A\u68C0\u67E5,\n                                   \u5176\u4E2D <group> \u4E3A accessibility, html, missing, reference \u6216 syntax \u4E4B\u4E00\u3002\n
+
+doclet.xusage.xdoclint-package.name=Xdoclint/package:
+doclet.xusage.xdoclint-package.parameters=([-]<packages>)
+doclet.xusage.xdoclint-package.description=\u5728\u7279\u5B9A\u7684\u7A0B\u5E8F\u5305\u4E2D\u542F\u7528\u6216\u7981\u7528\u68C0\u67E5\u3002<packages> \u662F\u9017\u53F7\u5206\u9694\u7684\n        \u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u5217\u8868\u3002\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u662F\u7A0B\u5E8F\u5305\u7684\u9650\u5B9A\u540D\u79F0\n        \u6216\u7A0B\u5E8F\u5305\u540D\u79F0\u524D\u7F00\u540E\u8DDF .*, \u5B83\u6269\u5C55\u5230\u7ED9\u5B9A\u7A0B\u5E8F\u5305\u7684\n        \u6240\u6709\u5B50\u7A0B\u5E8F\u5305\u3002\u5728\u7A0B\u5E8F\u5305\u8BF4\u660E\u7B26\u524D\u9762\u52A0\u4E0A - \u53EF\u4EE5\u4E3A\n        \u6307\u5B9A\u7A0B\u5E8F\u5305\u7981\u7528\u68C0\u67E5\u3002\n
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java
index a5ffa28..57d5cb6 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AbstractDoclet.java
@@ -126,7 +126,7 @@
      * @return SourceVersion
      */
     public SourceVersion sourceVersion() {
-        return SourceVersion.RELEASE_8;
+        return SourceVersion.RELEASE_9;
     }
 
 
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_ja.properties b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_ja.properties
index dc92f39..752e2cd 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_ja.properties
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_ja.properties
@@ -13,6 +13,7 @@
 doclet.Option_reuse=\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u518D\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.Option_doclint_no_qualifiers=\u30A2\u30AF\u30BB\u30B9\u4FEE\u98FE\u5B50\u306F-Xdoclint\u306E\u5F15\u6570\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
 doclet.Option_doclint_invalid_arg=-Xdoclint\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059
+doclet.Option_doclint_package_invalid_arg=-Xdoclint/package\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059
 doclet.exception_encountered= {0}\u3092\u691C\u51FA\n\t\u30D5\u30A1\u30A4\u30EB\u306E\u4F5C\u6210\u4E2D: {1}
 doclet.perform_copy_exception_encountered= \u30B3\u30D4\u30FC\u5B9F\u884C\u4E2D\u306B{0}\u3092\n\u691C\u51FA\u3057\u307E\u3057\u305F\u3002
 doclet.File_not_found=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
@@ -20,7 +21,6 @@
 doclet.Copying_File_0_To_Dir_1=\u30D5\u30A1\u30A4\u30EB{0}\u3092\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{1}\u306B\u30B3\u30D4\u30FC\u4E2D...
 doclet.Copying_File_0_To_File_1=\u30D5\u30A1\u30A4\u30EB{0}\u3092\u30D5\u30A1\u30A4\u30EB{1}\u306B\u30B3\u30D4\u30FC\u4E2D...
 doclet.No_Public_Classes_To_Document=\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3059\u308Bpublic\u307E\u305F\u306Fprotected\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
-doclet.Unable_to_create_directory_0=\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u3092\u4F5C\u6210\u3067\u304D\u307E\u305B\u3093
 doclet.destination_directory_not_directory_0=\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 doclet.destination_directory_not_writable_0=\u8EE2\u9001\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA{0}\u306F\u66F8\u8FBC\u307F\u53EF\u80FD\u3067\u306F\u3042\u308A\u307E\u305B\u3093
 doclet.Encoding_not_supported=\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0{0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093
@@ -29,7 +29,7 @@
 doclet.Building_Index_For_All_Classes=\u5168\u30AF\u30E9\u30B9\u306E\u30A4\u30F3\u30C7\u30C3\u30AF\u30B9\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059...
 doclet.sourcetab_warning=-sourcetab\u306E\u5F15\u6570\u306F0\u3088\u308A\u5927\u304D\u3044\u6574\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002
 doclet.Packages=\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.Profiles=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
+doclet.Modules=\u30E2\u30B8\u30E5\u30FC\u30EB
 doclet.Other_Packages=\u305D\u306E\u4ED6\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Notice_taglet_registered=\u767B\u9332\u3055\u308C\u305F\u30BF\u30B0\u30EC\u30C3\u30C8{0} ...
 doclet.Notice_taglet_unseen=\u6CE8\u610F: \u975E\u8868\u793A\u306E\u30AB\u30B9\u30BF\u30E0\u30FB\u30BF\u30B0: {0}
@@ -63,11 +63,11 @@
 doclet.UnknownTag={0}\u306F\u4E0D\u660E\u306A\u30BF\u30B0\u3067\u3059\u3002
 doclet.UnknownTagLowercase={0}\u306F\u4E0D\u660E\u306A\u30BF\u30B0\u3067\u3059\u3002\u5927\u6587\u5B57\u3068\u5C0F\u6587\u5B57\u306E\u533A\u5225\u3092\u9664\u3044\u3066\u306F\u65E2\u77E5\u306E\u30BF\u30B0\u3068\u540C\u3058\u3067\u3059\u3002
 doclet.noInheritedDoc=@inheritDoc\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001{0}\u306F\u3069\u306E\u30E1\u30BD\u30C3\u30C9\u3082\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u307E\u305F\u306F\u5B9F\u88C5\u3057\u3066\u3044\u307E\u305B\u3093\u3002
-doclet.malformed_html_link_tag=<a> \u30BF\u30B0\u306E\u5F62\u5F0F\u304C\u4E0D\u6B63:\n"{0}"
+# doclet.malformed_html_link_tag=<a> tag is malformed:\n"{0}"
 doclet.tag_misuse={0}\u30BF\u30B0\u306F{1}\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u3067\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3067\u304D\u308B\u306E\u306F\u6B21\u306E\u30BF\u30A4\u30D7\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u306E\u307F\u3067\u3059: {2}\u3002
 doclet.javafx_tag_misuse=\u30BF\u30B0@propertyGetter\u3001@propertySetter\u304A\u3088\u3073@propertyDescription\u306F\u3001JavaFX\u306E\u30D7\u30ED\u30D1\u30C6\u30A3getter\u3068setter\u306E\u307F\u3067\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
 doclet.Package_Summary=\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981
-doclet.Profile_Summary=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u30FB\u30B5\u30DE\u30EA\u30FC
+doclet.Module_Summary=\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u6982\u8981
 doclet.Interface_Summary=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u6982\u8981
 doclet.Annotation_Types_Summary=\u6CE8\u91C8\u578B\u306E\u6982\u8981
 doclet.Enum_Summary=\u5217\u6319\u578B\u306E\u6982\u8981
@@ -90,7 +90,7 @@
 doclet.Classes=\u30AF\u30E9\u30B9
 doclet.Packages=\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.packages=\u30D1\u30C3\u30B1\u30FC\u30B8
-doclet.profiles=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB
+doclet.modules=\u30E2\u30B8\u30E5\u30FC\u30EB
 doclet.All_Classes=\u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9
 doclet.All_Superinterfaces=\u3059\u3079\u3066\u306E\u30B9\u30FC\u30D1\u30FC\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:
 doclet.All_Implemented_Interfaces=\u3059\u3079\u3066\u306E\u5B9F\u88C5\u3055\u308C\u305F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9:
@@ -102,8 +102,8 @@
 doclet.annotationtype=\u6CE8\u91C8\u578B
 doclet.annotationtypes=\u6CE8\u91C8\u578B
 doclet.Enum=\u5217\u6319\u578B
-doclet.enum=\u5217\u6319\u578B
-doclet.enums=\u5217\u6319\u578B
+doclet.enum=\u5217\u6319
+doclet.enums=\u5217\u6319
 doclet.interface=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.interfaces=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.class=\u30AF\u30E9\u30B9
@@ -130,7 +130,7 @@
 doclet.Property_Detail=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u8A73\u7D30
 doclet.Method_Detail=\u30E1\u30BD\u30C3\u30C9\u306E\u8A73\u7D30
 doclet.Constructor_Detail=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u8A73\u7D30
-doclet.Deprecated=\u975E\u63A8\u5968\u3067\u3059\u3002
+doclet.Deprecated=\u63A8\u5968\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
 doclet.Groupname_already_used=-group\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u304A\u3044\u3066\u3001\u3059\u3067\u306B\u30B0\u30EB\u30FC\u30D7\u540D\u304C\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059: {0}
 doclet.value_tag_invalid_reference={0}(@value\u30BF\u30B0\u306B\u3088\u308A\u53C2\u7167\u3055\u308C\u3066\u3044\u308B)\u306F\u4E0D\u660E\u306A\u53C2\u7167\u3067\u3059\u3002
 doclet.value_tag_invalid_constant=@value\u30BF\u30B0({0}\u3092\u53C2\u7167\u3057\u3066\u3044\u308B)\u306F\u5B9A\u6570\u5185\u3067\u306E\u307F\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
@@ -148,18 +148,29 @@
 doclet.Constructors=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
 doclet.methods=\u30E1\u30BD\u30C3\u30C9
 doclet.Methods=\u30E1\u30BD\u30C3\u30C9
+doclet.All_Methods=\u3059\u3079\u3066\u306E\u30E1\u30BD\u30C3\u30C9
+doclet.Static_Methods=static\u30E1\u30BD\u30C3\u30C9
+doclet.Instance_Methods=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u30FB\u30E1\u30BD\u30C3\u30C9
+doclet.Abstract_Methods=abstract\u30E1\u30BD\u30C3\u30C9
+doclet.Concrete_Methods=concrete\u30E1\u30BD\u30C3\u30C9
+doclet.Default_Methods=\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30E1\u30BD\u30C3\u30C9
+doclet.Deprecated_Methods=\u63A8\u5968\u3055\u308C\u3066\u3044\u306A\u3044\u30E1\u30BD\u30C3\u30C9
 doclet.annotation_type_optional_members=\u4EFB\u610F\u8981\u7D20
 doclet.Annotation_Type_Optional_Members=\u4EFB\u610F\u8981\u7D20
 doclet.annotation_type_required_members=\u5FC5\u9808\u8981\u7D20
 doclet.Annotation_Type_Required_Members=\u5FC5\u9808\u8981\u7D20
 doclet.enum_constants=\u5217\u6319\u578B\u5B9A\u6570
-doclet.Enum_Constants=\u5217\u6319\u578B\u5B9A\u6570
+doclet.Enum_Constants=\u5217\u6319\u5B9A\u6570
 doclet.nested_classes=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9
 doclet.Nested_Classes=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9
 doclet.subclasses=\u30B5\u30D6\u30AF\u30E9\u30B9
 doclet.subinterfaces=\u30B5\u30D6\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.Modifier=\u4FEE\u98FE\u5B50
 doclet.Type=\u30BF\u30A4\u30D7
+doclet.Types=\u30BF\u30A4\u30D7
+doclet.Members=\u30E1\u30F3\u30D0\u30FC
+doclet.SearchTags=SearchTags
+doclet.search=SEARCH:
 doclet.Field=\u30D5\u30A3\u30FC\u30EB\u30C9
 doclet.Property=\u30D7\u30ED\u30D1\u30C6\u30A3
 doclet.Constructor=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF
@@ -175,11 +186,12 @@
 doclet.0_and_1={0}\u3068{1}
 
 #Documentation for Enums
-doclet.enum_values_doc.main=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u914D\u5217\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u8FD4\u3057\u307E\u3059\u3002\n\u3053\u306E\u30E1\u30BD\u30C3\u30C9\u306F\u6B21\u306E\u3088\u3046\u306B\u3057\u3066\u5B9A\u6570\u3092\u53CD\u5FA9\u3059\u308B\u305F\u3081\u306B\n\u4F7F\u7528\u3067\u304D\u307E\u3059:\n<pre>\nfor({0} c: {0}.values())\n&nbsp; System.out.println(c);\n</pre>\n
+doclet.enum_values_doc.firstsentence=\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u914D\u5217\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\n\u8FD4\u3057\u307E\u3059\u3002
+doclet.enum_values_doc.body=\  \u3053\u306E\u30E1\u30BD\u30C3\u30C9\u306F\u6B21\u306E\u3088\u3046\u306B\u3057\u3066\u5B9A\u6570\u3092\u53CD\u5FA9\u3059\u308B\u305F\u3081\u306B\n\u4F7F\u7528\u3067\u304D\u307E\u3059:\n<pre>\nfor({0} c: {0}.values())\n&nbsp; System.out.println(c);\n</pre>
+doclet.enum_values_doc.return=\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u3001\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u306E\u914D\u5217
 
-doclet.enum_values_doc.return=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u3001\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u306E\u914D\u5217
-
-doclet.enum_valueof_doc.main=\n\u6307\u5B9A\u3057\u305F\u540D\u524D\u3092\u6301\u3064\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u8FD4\u3057\u307E\u3059\u3002\n\u6587\u5B57\u5217\u306F\u3001\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u5BA3\u8A00\u3059\u308B\u306E\u306B\u4F7F\u7528\u3057\u305F\u8B58\u5225\u5B50\u3068<i>\u6B63\u78BA\u306B</i>\n\u4E00\u81F4\u3057\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n(\u4F59\u5206\u306A\u7A7A\u767D\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002)\n
+doclet.enum_valueof_doc.firstsentence=\u6307\u5B9A\u3057\u305F\u540D\u524D\u3092\u6301\u3064\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u8FD4\u3057\u307E\u3059\u3002
+doclet.enum_valueof_doc.body=\n\u6587\u5B57\u5217\u306F\u3001\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u5BA3\u8A00\u3059\u308B\u306E\u306B\u4F7F\u7528\u3057\u305F\u8B58\u5225\u5B50\u3068<i>\u6B63\u78BA\u306B</i>\n\u4E00\u81F4\u3057\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n(\u4F59\u5206\u306A\u7A7A\u767D\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002)
 
 doclet.enum_valueof_doc.param_name=\u8FD4\u3055\u308C\u308B\u5217\u6319\u578B\u5B9A\u6570\u306E\u540D\u524D\u3002
 
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_zh_CN.properties b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_zh_CN.properties
index 28e4f54..33930f0 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_zh_CN.properties
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets_zh_CN.properties
@@ -13,6 +13,7 @@
 doclet.Option_reuse=\u91CD\u590D\u4F7F\u7528\u7684\u9009\u9879: {0}
 doclet.Option_doclint_no_qualifiers=-Xdoclint \u53C2\u6570\u4E0D\u5141\u8BB8\u4F7F\u7528\u8BBF\u95EE\u9650\u5B9A\u7B26
 doclet.Option_doclint_invalid_arg=-Xdoclint \u9009\u9879\u7684\u53C2\u6570\u65E0\u6548
+doclet.Option_doclint_package_invalid_arg=-Xdoclint/package \u9009\u9879\u7684\u53C2\u6570\u65E0\u6548
 doclet.exception_encountered= \u5C1D\u8BD5\u521B\u5EFA\u6587\u4EF6{1}\u65F6 \n\t\u9047\u5230{0}
 doclet.perform_copy_exception_encountered= \u6267\u884C\u590D\u5236\u65F6 \n\u9047\u5230{0}\u3002
 doclet.File_not_found=\u627E\u4E0D\u5230\u6587\u4EF6: {0}
@@ -20,7 +21,6 @@
 doclet.Copying_File_0_To_Dir_1=\u6B63\u5728\u5C06\u6587\u4EF6{0}\u590D\u5236\u5230\u76EE\u5F55 {1}...
 doclet.Copying_File_0_To_File_1=\u6B63\u5728\u5C06\u6587\u4EF6{0}\u590D\u5236\u5230\u6587\u4EF6{1}...
 doclet.No_Public_Classes_To_Document=\u627E\u4E0D\u5230\u53EF\u4EE5\u6587\u6863\u5316\u7684\u516C\u5171\u6216\u53D7\u4FDD\u62A4\u7684\u7C7B\u3002
-doclet.Unable_to_create_directory_0=\u65E0\u6CD5\u521B\u5EFA\u76EE\u5F55 {0}
 doclet.destination_directory_not_directory_0=\u76EE\u6807\u76EE\u5F55\u4E0D\u662F\u76EE\u5F55 {0}
 doclet.destination_directory_not_writable_0=\u76EE\u6807\u76EE\u5F55\u4E0D\u53EF\u5199\u5165 {0}
 doclet.Encoding_not_supported=\u4E0D\u652F\u6301\u7F16\u7801: {0}
@@ -29,7 +29,7 @@
 doclet.Building_Index_For_All_Classes=\u6B63\u5728\u6784\u5EFA\u6240\u6709\u7C7B\u7684\u7D22\u5F15...
 doclet.sourcetab_warning=-sourcetab \u7684\u53C2\u6570\u5FC5\u987B\u662F\u5927\u4E8E 0 \u7684\u6574\u6570\u3002
 doclet.Packages=\u7A0B\u5E8F\u5305
-doclet.Profiles=\u914D\u7F6E\u6587\u4EF6
+doclet.Modules=\u6A21\u5757
 doclet.Other_Packages=\u5176\u4ED6\u7A0B\u5E8F\u5305
 doclet.Notice_taglet_registered=\u6CE8\u518C\u7684 Taglet {0}...
 doclet.Notice_taglet_unseen=\u6CE8: \u627E\u4E0D\u5230\u7684\u5B9A\u5236\u6807\u8BB0: {0}
@@ -63,11 +63,11 @@
 doclet.UnknownTag={0}\u662F\u672A\u77E5\u6807\u8BB0\u3002
 doclet.UnknownTagLowercase={0}\u662F\u672A\u77E5\u6807\u8BB0 - \u9664\u4E86\u5927\u5C0F\u5199\u4E4B\u5916\u5176\u4ED6\u65B9\u9762\u4E0E\u5DF2\u77E5\u6807\u8BB0\u76F8\u540C\u3002
 doclet.noInheritedDoc=\u4F7F\u7528\u4E86 @inheritDoc, \u4F46{0}\u672A\u8986\u76D6\u6216\u5B9E\u73B0\u4EFB\u4F55\u65B9\u6CD5\u3002
-doclet.malformed_html_link_tag=<a> \u6807\u8BB0\u683C\u5F0F\u9519\u8BEF: \n"{0}"
+# doclet.malformed_html_link_tag=<a> tag is malformed:\n"{0}"
 doclet.tag_misuse=\u4E0D\u80FD\u5728{1}\u6587\u6863\u4E2D\u4F7F\u7528\u6807\u8BB0{0}\u3002\u53EA\u80FD\u5728\u4EE5\u4E0B\u7C7B\u578B\u7684\u6587\u6863\u4E2D\u4F7F\u7528\u8BE5\u6807\u8BB0: {2}\u3002
 doclet.javafx_tag_misuse=\u6807\u8BB0 @propertyGetter, @propertySetter \u548C @propertyDescription \u53EA\u80FD\u5728 JavaFX \u5C5E\u6027 getter \u548C setter \u4E2D\u4F7F\u7528\u3002
 doclet.Package_Summary=\u7A0B\u5E8F\u5305\u6982\u8981
-doclet.Profile_Summary=\u6982\u8981\u4FE1\u606F\u6982\u8981
+doclet.Module_Summary=\u6A21\u5757\u6982\u8981
 doclet.Interface_Summary=\u63A5\u53E3\u6982\u8981
 doclet.Annotation_Types_Summary=\u6CE8\u91CA\u7C7B\u578B\u6982\u8981
 doclet.Enum_Summary=\u679A\u4E3E\u6982\u8981
@@ -90,7 +90,7 @@
 doclet.Classes=\u7C7B
 doclet.Packages=\u7A0B\u5E8F\u5305
 doclet.packages=\u7A0B\u5E8F\u5305
-doclet.profiles=\u914D\u7F6E\u6587\u4EF6
+doclet.modules=\u6A21\u5757
 doclet.All_Classes=\u6240\u6709\u7C7B
 doclet.All_Superinterfaces=\u6240\u6709\u8D85\u7EA7\u63A5\u53E3:
 doclet.All_Implemented_Interfaces=\u6240\u6709\u5DF2\u5B9E\u73B0\u7684\u63A5\u53E3:
@@ -148,6 +148,13 @@
 doclet.Constructors=\u6784\u9020\u5668
 doclet.methods=\u65B9\u6CD5
 doclet.Methods=\u65B9\u6CD5
+doclet.All_Methods=\u6240\u6709\u65B9\u6CD5
+doclet.Static_Methods=\u9759\u6001\u65B9\u6CD5
+doclet.Instance_Methods=\u5B9E\u4F8B\u65B9\u6CD5
+doclet.Abstract_Methods=\u62BD\u8C61\u65B9\u6CD5
+doclet.Concrete_Methods=\u5177\u4F53\u65B9\u6CD5
+doclet.Default_Methods=\u9ED8\u8BA4\u65B9\u6CD5
+doclet.Deprecated_Methods=\u5DF2\u8FC7\u65F6\u7684\u65B9\u6CD5
 doclet.annotation_type_optional_members=\u53EF\u9009\u5143\u7D20
 doclet.Annotation_Type_Optional_Members=\u53EF\u9009\u5143\u7D20
 doclet.annotation_type_required_members=\u5FC5\u9700\u7684\u5143\u7D20
@@ -160,6 +167,10 @@
 doclet.subinterfaces=\u5B50\u63A5\u53E3
 doclet.Modifier=\u9650\u5B9A\u7B26
 doclet.Type=\u7C7B\u578B
+doclet.Types=\u7C7B\u578B
+doclet.Members=\u6210\u5458
+doclet.SearchTags=\u641C\u7D22\u6807\u8BB0
+doclet.search=SEARCH:
 doclet.Field=\u5B57\u6BB5
 doclet.Property=\u5C5E\u6027
 doclet.Constructor=\u6784\u9020\u5668
@@ -175,11 +186,12 @@
 doclet.0_and_1={0}\u548C{1}
 
 #Documentation for Enums
-doclet.enum_values_doc.main=\n\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F, \u8FD4\u56DE\n\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4\u3002\u8BE5\u65B9\u6CD5\u53EF\u7528\u4E8E\u8FED\u4EE3\n\u5E38\u91CF, \u5982\u4E0B\u6240\u793A:\n<pre>\nfor ({0} c : {0}.values())\n&nbsp;   System.out.println(c);\n</pre>
+doclet.enum_values_doc.firstsentence=\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F, \n\u8FD4\u56DE\u4E00\u4E2A\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4\u3002
+doclet.enum_values_doc.body=\  \u8BE5\u65B9\u6CD5\u53EF\u7528\u4E8E\u8FED\u4EE3\n\u5E38\u91CF, \u5982\u4E0B\u6240\u793A:\n<pre>\nfor ({0} c : {0}.values())\n&nbsp;   System.out.println(c);\n</pre>
+doclet.enum_values_doc.return=\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F\u8FD4\u56DE\u7684\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4
 
-doclet.enum_values_doc.return=\n\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F\u8FD4\u56DE\u7684\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4
-
-doclet.enum_valueof_doc.main=\n\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u3002\n\u5B57\u7B26\u4E32\u5FC5\u987B\u4E0E\u7528\u4E8E\u58F0\u660E\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u7684\n\u6807\u8BC6\u7B26<i>\u5B8C\u5168</i>\u5339\u914D\u3002(\u4E0D\u5141\u8BB8\u6709\u591A\u4F59\n\u7684\u7A7A\u683C\u5B57\u7B26\u3002)
+doclet.enum_valueof_doc.firstsentence=\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u3002
+doclet.enum_valueof_doc.body=\n\u5B57\u7B26\u4E32\u5FC5\u987B\u4E0E\u7528\u4E8E\u58F0\u660E\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u7684\n\u6807\u8BC6\u7B26<i>\u5B8C\u5168</i>\u5339\u914D\u3002(\u4E0D\u5141\u8BB8\u6709\u591A\u4F59\n\u7684\u7A7A\u683C\u5B57\u7B26\u3002)
 
 doclet.enum_valueof_doc.param_name=\u8981\u8FD4\u56DE\u7684\u679A\u4E3E\u5E38\u91CF\u7684\u540D\u79F0\u3002
 
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_ja.properties b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_ja.properties
index d39bf1a..fadd979 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_ja.properties
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_ja.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,50 +23,52 @@
 # questions.
 #
 
-main.errors=\u30a8\u30e9\u30fc{0}\u500b
-main.error=\u30a8\u30e9\u30fc{0}\u500b
-main.warnings=\u8b66\u544a{0}\u500b
-main.warning=\u8b66\u544a{0}\u500b
+main.errors=\u30A8\u30E9\u30FC{0}\u500B
+main.error=\u30A8\u30E9\u30FC{0}\u500B
+main.warnings=\u8B66\u544A{0}\u500B
+main.warning=\u8B66\u544A{0}\u500B
 
-main.usage=\u4f7f\u7528\u65b9\u6cd5: javadoc [options] [packagenames] [sourcefiles] [@files]\n  -overview <file>          HTML\u30d5\u30a1\u30a4\u30eb\u304b\u3089\u6982\u8981\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u8aad\u307f\u8fbc\u3080\n  -public                   public\u30af\u30e9\u30b9\u3068\u30e1\u30f3\u30d0\u30fc\u306e\u307f\u3092\u793a\u3059\n  -protected                protected/public\u30af\u30e9\u30b9\u3068\u30e1\u30f3\u30d0\u30fc\u3092\u793a\u3059(\u30c7\u30d5\u30a9\u30eb\u30c8)\n  -package                  package/protected/public\u30af\u30e9\u30b9\u3068\u30e1\u30f3\u30d0\u30fc\u3092\u793a\u3059\n  -private                  \u3059\u3079\u3066\u306e\u30af\u30e9\u30b9\u3068\u30e1\u30f3\u30d0\u30fc\u3092\u793a\u3059\n  -help                     \u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30fb\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8868\u793a\u3057\u3066\u7d42\u4e86\u3059\u308b\n  -doclet <class>           \u4ee3\u66ffdoclet\u3092\u4ecb\u3057\u3066\u51fa\u529b\u3092\u751f\u6210\u3059\u308b\n  -docletpath <path>        doclet\u30af\u30e9\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u3092\u63a2\u3059\u5834\u6240\u3092\u6307\u5b9a\u3059\u308b\n  -sourcepath <pathlist>    \u30bd\u30fc\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u306e\u3042\u308b\u5834\u6240\u3092\u6307\u5b9a\u3059\u308b\n  -classpath <pathlist>     \u30e6\u30fc\u30b6\u30fc\u30fb\u30af\u30e9\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u306e\u3042\u308b\u5834\u6240\u3092\u6307\u5b9a\u3059\u308b\n  -cp <pathlist>                   \u30e6\u30fc\u30b6\u30fc\u30fb\u30af\u30e9\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u306e\u3042\u308b\u5834\u6240\u3092\u6307\u5b9a\u3059\u308b\r\n  -exclude <pkglist>        \u9664\u5916\u3059\u308b\u30d1\u30c3\u30b1\u30fc\u30b8\u30fb\u30ea\u30b9\u30c8\u3092\u6307\u5b9a\u3059\u308b\n  -subpackages <subpkglist> \u518d\u5e30\u7684\u306b\u30ed\u30fc\u30c9\u3059\u308b\u30b5\u30d6\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u6307\u5b9a\u3059\u308b\n  -breakiterator            BreakIterator\u3067\u6700\u521d\u306e\u6587\u3092\u8a08\u7b97\u3059\u308b\n  -bootclasspath <pathlist> \u30d6\u30fc\u30c8\u30b9\u30c8\u30e9\u30c3\u30d7\u30fb\u30af\u30e9\u30b9\u30fb\u30ed\u30fc\u30c0\u30fc\u306b\u3088\u308a\u30ed\u30fc\u30c9\u3055\u308c\u305f\n                                   \u30af\u30e9\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u306e\u5834\u6240\u3092\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u3059\u308b\n  -source <release>         \u6307\u5b9a\u3055\u308c\u305f\u30ea\u30ea\u30fc\u30b9\u3068\u30bd\u30fc\u30b9\u306e\u4e92\u63db\u6027\u3092\u63d0\u4f9b\u3059\u308b\n  -extdirs <dirlist>        \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u305f\u62e1\u5f35\u6a5f\u80fd\u306e\u5834\u6240\u3092\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u3059\u308b\n  -verbose                  Javadoc\u306e\u52d5\u4f5c\u306b\u3064\u3044\u3066\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u51fa\u529b\u3059\u308b\n  -locale <name>            en_US\u3084en_US_WIN\u306a\u3069\u306e\u4f7f\u7528\u3059\u308b\u30ed\u30b1\u30fc\u30eb\n  -encoding <name>          \u30bd\u30fc\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u306e\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u540d\n  -quiet                    \u72b6\u614b\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u8868\u793a\u3057\u306a\u3044\n  -J<flag>                  <flag>\u3092\u5b9f\u884c\u6642\u30b7\u30b9\u30c6\u30e0\u306b\u76f4\u63a5\u6e21\u3059\n  -X                        \u975e\u6a19\u6e96\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u6982\u8981\u3092\u51fa\u529b\u3057\u7d42\u4e86\u3059\u308b\n
+main.usage=\u4F7F\u7528\u65B9\u6CD5: javadoc [options] [packagenames] [sourcefiles] [@files]\n  -overview <file>          HTML\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u6982\u8981\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u8AAD\u307F\u8FBC\u3080\n  -public                   public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u306E\u307F\u3092\u793A\u3059\n  -protected                protected/public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8)\n  -package                  package/protected/public\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059\n  -private                  \u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u3068\u30E1\u30F3\u30D0\u30FC\u3092\u793A\u3059\n  -help                     \u30B3\u30DE\u30F3\u30C9\u884C\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8868\u793A\u3057\u3066\u7D42\u4E86\u3059\u308B\n  -doclet <class>           \u4EE3\u66FFdoclet\u3092\u4ECB\u3057\u3066\u51FA\u529B\u3092\u751F\u6210\u3059\u308B\n  -docletpath <path>        doclet\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u63A2\u3059\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -sourcepath <pathlist>    \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -classpath <pathlist>     \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n  -cp <pathlist>                   \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u3042\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\r\n  -exclude <pkglist>        \u9664\u5916\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EA\u30B9\u30C8\u3092\u6307\u5B9A\u3059\u308B\n  -subpackages <subpkglist> \u518D\u5E30\u7684\u306B\u30ED\u30FC\u30C9\u3059\u308B\u30B5\u30D6\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u6307\u5B9A\u3059\u308B\n  -breakiterator            BreakIterator\u3067\u6700\u521D\u306E\u6587\u3092\u8A08\u7B97\u3059\u308B\n  -bootclasspath <pathlist> \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30ED\u30FC\u30C0\u30FC\u306B\u3088\u308A\u30ED\u30FC\u30C9\u3055\u308C\u305F\n                                   \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n  -source <release>         \u6307\u5B9A\u3055\u308C\u305F\u30EA\u30EA\u30FC\u30B9\u3068\u30BD\u30FC\u30B9\u306E\u4E92\u63DB\u6027\u3092\u63D0\u4F9B\u3059\u308B\n  -extdirs <dirlist>        \u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3055\u308C\u305F\u62E1\u5F35\u6A5F\u80FD\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n  -verbose                  Javadoc\u306E\u52D5\u4F5C\u306B\u3064\u3044\u3066\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3059\u308B\n  -locale <name>            en_US\u3084en_US_WIN\u306A\u3069\u306E\u4F7F\u7528\u3059\u308B\u30ED\u30B1\u30FC\u30EB\n  -encoding <name>          \u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u540D\n  -quiet                    \u72B6\u614B\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3057\u306A\u3044\n  -J<flag>                  <flag>\u3092\u5B9F\u884C\u6642\u30B7\u30B9\u30C6\u30E0\u306B\u76F4\u63A5\u6E21\u3059\n  -X                        \u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6982\u8981\u3092\u51FA\u529B\u3057\u7D42\u4E86\u3059\u308B\n
 
-main.Xusage=\  -Xmaxerrs <number>        \u51fa\u529b\u3059\u308b\u30a8\u30e9\u30fc\u306e\u6700\u5927\u6570\u3092\u8a2d\u5b9a\u3059\u308b\n  -Xmaxwarns <number>       \u51fa\u529b\u3059\u308b\u8b66\u544a\u306e\u6700\u5927\u6570\u3092\u8a2d\u5b9a\u3059\u308b\n
+main.Xusage=\  -Xmaxerrs <number>        \u51FA\u529B\u3059\u308B\u30A8\u30E9\u30FC\u306E\u6700\u5927\u6570\u3092\u8A2D\u5B9A\u3059\u308B\n  -Xmaxwarns <number>       \u51FA\u529B\u3059\u308B\u8B66\u544A\u306E\u6700\u5927\u6570\u3092\u8A2D\u5B9A\u3059\u308B\n
 
-main.Xusage.foot=\u3053\u308c\u3089\u306f\u975e\u6a19\u6e96\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u3042\u308a\u4e88\u544a\u306a\u3057\u306b\u5909\u66f4\u3055\u308c\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002
+main.Xusage.foot=\u3053\u308C\u3089\u306F\u975E\u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u3042\u308A\u4E88\u544A\u306A\u3057\u306B\u5909\u66F4\u3055\u308C\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059\u3002
 
-main.option.already.seen={0}\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u8907\u6570\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002
-main.requires_argument=\u30aa\u30d7\u30b7\u30e7\u30f3{0}\u306b\u306f\u5f15\u6570\u304c\u5fc5\u8981\u3067\u3059\u3002
-main.locale_first=\u30aa\u30d7\u30b7\u30e7\u30f3-locale\u306f\u3001\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u306e\u6700\u521d\u306b\u6307\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
-main.invalid_flag={0}\u306f\u7121\u52b9\u306a\u30d5\u30e9\u30b0\u3067\u3059
-main.No_packages_or_classes_specified=\u30d1\u30c3\u30b1\u30fc\u30b8\u307e\u305f\u306f\u30af\u30e9\u30b9\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002
-main.incompatible.access.flags=-public\u3001-private\u3001-package\u307e\u305f\u306f-protected\u306e\u3046\u3061\u306e2\u3064\u4ee5\u4e0a\u3092\u6307\u5b9a\u3057\u307e\u3057\u305f\u3002
-main.cant.read={0}\u3092\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093
-main.Loading_source_files_for_package=\u30d1\u30c3\u30b1\u30fc\u30b8{0}\u306e\u30bd\u30fc\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u3092\u8aad\u307f\u8fbc\u3093\u3067\u3044\u307e\u3059...
-main.Loading_source_file=\u30bd\u30fc\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb{0}\u3092\u8aad\u307f\u8fbc\u3093\u3067\u3044\u307e\u3059...
-main.Building_tree=Javadoc\u60c5\u5831\u3092\u69cb\u7bc9\u3057\u3066\u3044\u307e\u3059...
-main.no_source_files_for_package=\u30d1\u30c3\u30b1\u30fc\u30b8{0}\u306e\u30bd\u30fc\u30b9\u30fb\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308a\u307e\u305b\u3093
-main.fatal.error=\u81f4\u547d\u7684\u30a8\u30e9\u30fc
-main.fatal.exception=\u81f4\u547d\u7684\u4f8b\u5916
-main.out.of.memory=java.lang.OutOfMemoryError: \u30e1\u30e2\u30ea\u30fc\u3092\u5897\u3084\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\u305f\u3068\u3048\u3070\u3001JDK\u306eclassic\u3082\u3057\u304f\u306fhotspot VM\u3067\u306f\u3001-J-Xmx32m\u306e\u3088\u3046\u306b\n-J-Xmx\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002
-main.done_in=[{0}\u30df\u30ea\u79d2\u3067\u5b8c\u4e86]
-main.must_return_int=doclet\u30af\u30e9\u30b9{0}\u3067\u306f\u3001\u30e1\u30bd\u30c3\u30c9{1}\u306fint\u3092\u8fd4\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
-main.must_return_boolean=doclet\u30af\u30e9\u30b9{0}\u3067\u306f\u3001\u30e1\u30bd\u30c3\u30c9{1}\u306fboolean\u3092\u8fd4\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
-main.must_return_languageversion=doclet\u30af\u30e9\u30b9{0}\u3067\u306f\u3001\u30e1\u30bd\u30c3\u30c9{1}\u306fLanguageVersion\u3092\u8fd4\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
-main.more_than_one_doclet_specified_0_and_1=\u8907\u6570\u306edoclet({0}\u3068{1})\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002
-main.doclet_class_not_found=doclet\u30af\u30e9\u30b9{0}\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093
-main.doclet_method_not_found=doclet\u30af\u30e9\u30b9{0}\u306b\u306f\u30e1\u30bd\u30c3\u30c9{1}\u304c\u3042\u308a\u307e\u305b\u3093
-main.doclet_method_not_accessible=doclet\u30af\u30e9\u30b9{0}\u3067\u306f\u3001\u30e1\u30bd\u30c3\u30c9{1}\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093
-main.internal_error_exception_thrown=doclet\u30af\u30e9\u30b9{0}\u306e\u5185\u90e8\u30a8\u30e9\u30fc\u3067\u3059\u3002\u30e1\u30bd\u30c3\u30c9{1}\u306f\u4f8b\u5916{2}\u3092\u30b9\u30ed\u30fc\u3057\u307e\u3057\u305f
-main.exception_thrown=doclet\u30af\u30e9\u30b9{0}\u3067\u306f\u3001\u30e1\u30bd\u30c3\u30c9{1}\u306f\u4f8b\u5916{2}\u3092\u30b9\u30ed\u30fc\u3057\u307e\u3057\u305f
-main.illegal_locale_name=\u30ed\u30b1\u30fc\u30eb{0}\u304c\u7121\u52b9\u3067\u3059
-main.malformed_locale_name=\u30ed\u30b1\u30fc\u30eb\u540d{0}\u306e\u66f8\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093
-main.file_not_found=\u30d5\u30a1\u30a4\u30eb"{0}"\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093
-main.illegal_package_name=\u30d1\u30c3\u30b1\u30fc\u30b8\u540d"{0}"\u306f\u4e0d\u6b63\u3067\u3059
-javadoc.class_not_found=\u30af\u30e9\u30b9{0}\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002
-javadoc.error=\u30a8\u30e9\u30fc
-javadoc.warning=\u8b66\u544a
+main.doclet.usage.header={0} doclet\u306B\u3088\u308A\u63D0\u4F9B\u3055\u308C\u308B\u3082\u306E:
 
-javadoc.error.msg={0}: \u30a8\u30e9\u30fc - {1}
-javadoc.warning.msg={0}: \u8b66\u544a - {1}
+main.option.already.seen={0}\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u8907\u6570\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
+main.requires_argument=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306B\u306F\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059\u3002
+main.invalid_flag={0}\u306F\u7121\u52B9\u306A\u30D5\u30E9\u30B0\u3067\u3059
+main.No_packages_or_classes_specified=\u30D1\u30C3\u30B1\u30FC\u30B8\u307E\u305F\u306F\u30AF\u30E9\u30B9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+main.incompatible.access.flags=-public\u3001-private\u3001-package\u307E\u305F\u306F-protected\u306E\u3046\u3061\u306E2\u3064\u4EE5\u4E0A\u3092\u6307\u5B9A\u3057\u307E\u3057\u305F\u3002
+main.cant.read={0}\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093
+main.Loading_source_files_for_package=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306E\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...
+main.Loading_source_file=\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB{0}\u3092\u8AAD\u307F\u8FBC\u3093\u3067\u3044\u307E\u3059...
+main.Building_tree=Javadoc\u60C5\u5831\u3092\u69CB\u7BC9\u3057\u3066\u3044\u307E\u3059...
+main.no_source_files_for_package=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306E\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u3042\u308A\u307E\u305B\u3093
+main.fatal.error=\u81F4\u547D\u7684\u30A8\u30E9\u30FC
+main.fatal.exception=\u81F4\u547D\u7684\u4F8B\u5916
+main.out.of.memory=java.lang.OutOfMemoryError: \u30E1\u30E2\u30EA\u30FC\u3092\u5897\u3084\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n\u305F\u3068\u3048\u3070\u3001JDK\u306Eclassic\u3082\u3057\u304F\u306Fhotspot VM\u3067\u306F\u3001-J-Xmx32m\u306E\u3088\u3046\u306B\n-J-Xmx\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002
+main.done_in=[{0}\u30DF\u30EA\u79D2\u3067\u5B8C\u4E86]
+main.more_than_one_doclet_specified_0_and_1=\u8907\u6570\u306Edoclet({0}\u3068{1})\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u3002
+main.doclet_no_classloader_found={0}\u3092\u30ED\u30FC\u30C9\u3059\u308B\u30AF\u30E9\u30B9\u30ED\u30FC\u30C0\u30FC\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
+main.could_not_instantiate_class=\u30AF\u30E9\u30B9{0}\u3092\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5316\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F
+main.doclet_class_not_found=doclet\u30AF\u30E9\u30B9{0}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+main.illegal_locale_name=\u30ED\u30B1\u30FC\u30EB{0}\u304C\u7121\u52B9\u3067\u3059
+main.malformed_locale_name=\u30ED\u30B1\u30FC\u30EB\u540D{0}\u306E\u66F8\u5F0F\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093
+main.file_not_found=\u30D5\u30A1\u30A4\u30EB"{0}"\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+main.file_ignored=\u30D5\u30A1\u30A4\u30EB\u306F\u7121\u8996\u3055\u308C\u307E\u3057\u305F: "{0}" (\u307E\u3060\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093)
+main.illegal_class_name=\u30AF\u30E9\u30B9\u540D\u304C\u4E0D\u6B63\u3067\u3059: "{0}"
+main.illegal_package_name=\u30D1\u30C3\u30B1\u30FC\u30B8\u540D"{0}"\u306F\u4E0D\u6B63\u3067\u3059
+main.release.bootclasspath.conflict=\u30AA\u30D7\u30B7\u30E7\u30F3{0}\u306F-release\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+main.unsupported.release.version=\u30EA\u30EA\u30FC\u30B9\u30FB\u30D0\u30FC\u30B8\u30E7\u30F3{0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093
+main.release.not.standard.file.manager=-release\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001\u6307\u5B9A\u3055\u308C\u305FJavaFileManager\u306FStandardJavaFileManager\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002
+main.unknown.error=\u4E0D\u660E\u306A\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F
+javadoc.class_not_found=\u30AF\u30E9\u30B9{0}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+javadoc.error=\u30A8\u30E9\u30FC
+javadoc.warning=\u8B66\u544A
+
+javadoc.error.msg={0}: \u30A8\u30E9\u30FC - {1}
+javadoc.warning.msg={0}: \u8B66\u544A - {1}
 javadoc.note.msg = {1}
 javadoc.note.pos.msg= {0}: {1}
diff --git a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_zh_CN.properties b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_zh_CN.properties
index f0bfeca..715e9e6 100644
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_zh_CN.properties
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/resources/javadoc_zh_CN.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -23,50 +23,52 @@
 # questions.
 #
 
-main.errors={0} \u4e2a\u9519\u8bef
-main.error={0} \u4e2a\u9519\u8bef
-main.warnings={0} \u4e2a\u8b66\u544a
-main.warning={0} \u4e2a\u8b66\u544a
+main.errors={0} \u4E2A\u9519\u8BEF
+main.error={0} \u4E2A\u9519\u8BEF
+main.warnings={0} \u4E2A\u8B66\u544A
+main.warning={0} \u4E2A\u8B66\u544A
 
-main.usage=\u7528\u6cd5: javadoc [options] [packagenames] [sourcefiles] [@files]\n  -overview <file>                 \u4ece HTML \u6587\u4ef6\u8bfb\u53d6\u6982\u89c8\u6587\u6863\n  -public                          \u4ec5\u663e\u793a public \u7c7b\u548c\u6210\u5458\n  -protected                       \u663e\u793a protected/public \u7c7b\u548c\u6210\u5458 (\u9ed8\u8ba4\u503c)\n  -package                         \u663e\u793a package/protected/public \u7c7b\u548c\u6210\u5458\n  -private                         \u663e\u793a\u6240\u6709\u7c7b\u548c\u6210\u5458\n  -help                            \u663e\u793a\u547d\u4ee4\u884c\u9009\u9879\u5e76\u9000\u51fa\n  -doclet <class>                  \u901a\u8fc7\u66ff\u4ee3 doclet \u751f\u6210\u8f93\u51fa\n  -docletpath <path>               \u6307\u5b9a\u67e5\u627e doclet \u7c7b\u6587\u4ef6\u7684\u4f4d\u7f6e\n  -sourcepath <pathlist>           \u6307\u5b9a\u67e5\u627e\u6e90\u6587\u4ef6\u7684\u4f4d\u7f6e\n  -classpath <pathlist>            \u6307\u5b9a\u67e5\u627e\u7528\u6237\u7c7b\u6587\u4ef6\u7684\u4f4d\u7f6e\n  -cp <pathlist>                   \u6307\u5b9a\u67e5\u627e\u7528\u6237\u7c7b\u6587\u4ef6\u7684\u4f4d\u7f6e\n  -exclude <pkglist>               \u6307\u5b9a\u8981\u6392\u9664\u7684\u7a0b\u5e8f\u5305\u5217\u8868\n  -subpackages <subpkglist>        \u6307\u5b9a\u8981\u9012\u5f52\u52a0\u8f7d\u7684\u5b50\u7a0b\u5e8f\u5305\n  -breakiterator                   \u8ba1\u7b97\u5e26\u6709 BreakIterator \u7684\u7b2c\u4e00\u4e2a\u8bed\u53e5\n  -bootclasspath <pathlist>        \u8986\u76d6\u7531\u5f15\u5bfc\u7c7b\u52a0\u8f7d\u5668\u6240\u52a0\u8f7d\u7684\n                                   \u7c7b\u6587\u4ef6\u7684\u4f4d\u7f6e\n  -source <release>                \u63d0\u4f9b\u4e0e\u6307\u5b9a\u53d1\u884c\u7248\u7684\u6e90\u517c\u5bb9\u6027\n  -extdirs <dirlist>               \u8986\u76d6\u6240\u5b89\u88c5\u6269\u5c55\u7684\u4f4d\u7f6e\n  -verbose                         \u8f93\u51fa\u6709\u5173 Javadoc \u6b63\u5728\u6267\u884c\u7684\u64cd\u4f5c\u7684\u4fe1\u606f\n  -locale <name>                   \u8981\u4f7f\u7528\u7684\u533a\u57df\u8bbe\u7f6e, \u4f8b\u5982 en_US \u6216 en_US_WIN\n  -encoding <name>                 \u6e90\u6587\u4ef6\u7f16\u7801\u540d\u79f0\n  -quiet                           \u4e0d\u663e\u793a\u72b6\u6001\u6d88\u606f\n  -J<flag>                         \u76f4\u63a5\u5c06 <flag> \u4f20\u9012\u5230\u8fd0\u884c\u65f6\u7cfb\u7edf\n  -X                               \u8f93\u51fa\u975e\u6807\u51c6\u9009\u9879\u7684\u63d0\u8981\n
+main.usage=\u7528\u6CD5: javadoc [options] [packagenames] [sourcefiles] [@files]\n  -overview <file>                 \u4ECE HTML \u6587\u4EF6\u8BFB\u53D6\u6982\u89C8\u6587\u6863\n  -public                          \u4EC5\u663E\u793A public \u7C7B\u548C\u6210\u5458\n  -protected                       \u663E\u793A protected/public \u7C7B\u548C\u6210\u5458 (\u9ED8\u8BA4\u503C)\n  -package                         \u663E\u793A package/protected/public \u7C7B\u548C\u6210\u5458\n  -private                         \u663E\u793A\u6240\u6709\u7C7B\u548C\u6210\u5458\n  -help                            \u663E\u793A\u547D\u4EE4\u884C\u9009\u9879\u5E76\u9000\u51FA\n  -doclet <class>                  \u901A\u8FC7\u66FF\u4EE3 doclet \u751F\u6210\u8F93\u51FA\n  -docletpath <path>               \u6307\u5B9A\u67E5\u627E doclet \u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -sourcepath <pathlist>           \u6307\u5B9A\u67E5\u627E\u6E90\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -classpath <pathlist>            \u6307\u5B9A\u67E5\u627E\u7528\u6237\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -cp <pathlist>                   \u6307\u5B9A\u67E5\u627E\u7528\u6237\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -exclude <pkglist>               \u6307\u5B9A\u8981\u6392\u9664\u7684\u7A0B\u5E8F\u5305\u5217\u8868\n  -subpackages <subpkglist>        \u6307\u5B9A\u8981\u9012\u5F52\u52A0\u8F7D\u7684\u5B50\u7A0B\u5E8F\u5305\n  -breakiterator                   \u8BA1\u7B97\u5E26\u6709 BreakIterator \u7684\u7B2C\u4E00\u4E2A\u8BED\u53E5\n  -bootclasspath <pathlist>        \u8986\u76D6\u7531\u5F15\u5BFC\u7C7B\u52A0\u8F7D\u5668\u6240\u52A0\u8F7D\u7684\n                                   \u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n  -source <release>                \u63D0\u4F9B\u4E0E\u6307\u5B9A\u53D1\u884C\u7248\u7684\u6E90\u517C\u5BB9\u6027\n  -extdirs <dirlist>               \u8986\u76D6\u6240\u5B89\u88C5\u6269\u5C55\u7684\u4F4D\u7F6E\n  -verbose                         \u8F93\u51FA\u6709\u5173 Javadoc \u6B63\u5728\u6267\u884C\u7684\u64CD\u4F5C\u7684\u4FE1\u606F\n  -locale <name>                   \u8981\u4F7F\u7528\u7684\u533A\u57DF\u8BBE\u7F6E, \u4F8B\u5982 en_US \u6216 en_US_WIN\n  -encoding <name>                 \u6E90\u6587\u4EF6\u7F16\u7801\u540D\u79F0\n  -quiet                           \u4E0D\u663E\u793A\u72B6\u6001\u6D88\u606F\n  -J<flag>                         \u76F4\u63A5\u5C06 <flag> \u4F20\u9012\u5230\u8FD0\u884C\u65F6\u7CFB\u7EDF\n  -X                               \u8F93\u51FA\u975E\u6807\u51C6\u9009\u9879\u7684\u63D0\u8981\n
 
-main.Xusage=\  -Xmaxerrs <number>               \u8bbe\u7f6e\u8981\u8f93\u51fa\u7684\u6700\u5927\u9519\u8bef\u6570\n  -Xmaxwarns <number>              \u8bbe\u7f6e\u8981\u8f93\u51fa\u7684\u6700\u5927\u8b66\u544a\u6570\n
+main.Xusage=\  -Xmaxerrs <number>               \u8BBE\u7F6E\u8981\u8F93\u51FA\u7684\u6700\u5927\u9519\u8BEF\u6570\n  -Xmaxwarns <number>              \u8BBE\u7F6E\u8981\u8F93\u51FA\u7684\u6700\u5927\u8B66\u544A\u6570\n
 
-main.Xusage.foot=\u8fd9\u4e9b\u9009\u9879\u90fd\u662f\u975e\u6807\u51c6\u9009\u9879, \u5982\u6709\u66f4\u6539, \u6055\u4e0d\u53e6\u884c\u901a\u77e5\u3002
+main.Xusage.foot=\u8FD9\u4E9B\u9009\u9879\u90FD\u662F\u975E\u6807\u51C6\u9009\u9879, \u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002
 
-main.option.already.seen={0}\u9009\u9879\u53ea\u80fd\u6307\u5b9a\u4e00\u6b21\u3002
-main.requires_argument=\u9009\u9879{0}\u9700\u8981\u53c2\u6570\u3002
-main.locale_first=\u5728\u547d\u4ee4\u884c\u4e2d, \u9009\u9879 -locale \u5fc5\u987b\u4e3a\u7b2c\u4e00\u4e2a\u9009\u9879\u3002
-main.invalid_flag=\u65e0\u6548\u7684\u6807\u8bb0: {0}
-main.No_packages_or_classes_specified=\u672a\u6307\u5b9a\u7a0b\u5e8f\u5305\u6216\u7c7b\u3002
-main.incompatible.access.flags=\u6307\u5b9a\u4e86\u591a\u4e2a -public, -private, -package \u6216 -protected\u3002
-main.cant.read=\u65e0\u6cd5\u8bfb\u53d6{0}
-main.Loading_source_files_for_package=\u6b63\u5728\u52a0\u8f7d\u7a0b\u5e8f\u5305{0}\u7684\u6e90\u6587\u4ef6...
-main.Loading_source_file=\u6b63\u5728\u52a0\u8f7d\u6e90\u6587\u4ef6{0}...
-main.Building_tree=\u6b63\u5728\u6784\u9020 Javadoc \u4fe1\u606f...
-main.no_source_files_for_package=\u6ca1\u6709\u7a0b\u5e8f\u5305{0}\u7684\u6e90\u6587\u4ef6
-main.fatal.error=\u81f4\u547d\u9519\u8bef
-main.fatal.exception=\u81f4\u547d\u5f02\u5e38\u9519\u8bef
-main.out.of.memory=java.lang.OutOfMemoryError: \u8bf7\u589e\u5927\u5185\u5b58\u3002\n\u4f8b\u5982, \u5bf9\u4e8e JDK \u7ecf\u5178\u6216 HotSpot VM, \u8bf7\u589e\u5927\u9009\u9879 -J-Xmx,\n\u4f8b\u5982 -J-Xmx32m\u3002
-main.done_in=[\u5728 {0} \u6beb\u79d2\u5185\u5b8c\u6210]
-main.must_return_int=\u5728 doclet \u7c7b{0}\u4e2d, \u65b9\u6cd5{1}\u5fc5\u987b\u8fd4\u56de\u6574\u578b\u503c\u3002
-main.must_return_boolean=\u5728 doclet \u7c7b{0}\u4e2d, \u65b9\u6cd5{1}\u5fc5\u987b\u8fd4\u56de\u5e03\u5c14\u503c\u3002
-main.must_return_languageversion=\u5728 doclet \u7c7b{0}\u4e2d, \u65b9\u6cd5{1}\u5fc5\u987b\u8fd4\u56de\u8bed\u8a00\u7248\u672c\u3002
-main.more_than_one_doclet_specified_0_and_1=\u6307\u5b9a\u4e86\u591a\u4e2a doclet ({0}\u548c{1})\u3002
-main.doclet_class_not_found=\u627e\u4e0d\u5230 doclet \u7c7b{0}
-main.doclet_method_not_found=doclet \u7c7b{0}\u4e0d\u5305\u542b{1}\u65b9\u6cd5
-main.doclet_method_not_accessible=\u5728 doclet \u7c7b{0}\u4e2d, \u65e0\u6cd5\u8bbf\u95ee\u65b9\u6cd5{1}
-main.internal_error_exception_thrown=\u5185\u90e8\u9519\u8bef: \u5728 doclet \u7c7b{0}\u4e2d, \u65b9\u6cd5{1}\u5df2\u629b\u51fa\u5f02\u5e38\u9519\u8bef{2}
-main.exception_thrown=\u5728 doclet \u7c7b{0}\u4e2d, \u65b9\u6cd5{1}\u5df2\u629b\u51fa\u5f02\u5e38\u9519\u8bef{2}
-main.illegal_locale_name=\u8bed\u8a00\u73af\u5883\u4e0d\u53ef\u7528: {0}
-main.malformed_locale_name=\u683c\u5f0f\u9519\u8bef\u7684\u8bed\u8a00\u73af\u5883\u540d\u79f0: {0}
-main.file_not_found=\u627e\u4e0d\u5230\u6587\u4ef6: "{0}"
-main.illegal_package_name=\u975e\u6cd5\u7684\u7a0b\u5e8f\u5305\u540d\u79f0: "{0}"
-javadoc.class_not_found=\u627e\u4e0d\u5230\u7c7b{0}\u3002
-javadoc.error=\u9519\u8bef
-javadoc.warning=\u8b66\u544a
+main.doclet.usage.header=\u7531 {0} doclet \u63D0\u4F9B:
 
-javadoc.error.msg={0}: \u9519\u8bef - {1}
-javadoc.warning.msg={0}: \u8b66\u544a - {1}
+main.option.already.seen={0}\u9009\u9879\u53EA\u80FD\u6307\u5B9A\u4E00\u6B21\u3002
+main.requires_argument=\u9009\u9879{0}\u9700\u8981\u53C2\u6570\u3002
+main.invalid_flag=\u65E0\u6548\u7684\u6807\u8BB0: {0}
+main.No_packages_or_classes_specified=\u672A\u6307\u5B9A\u7A0B\u5E8F\u5305\u6216\u7C7B\u3002
+main.incompatible.access.flags=\u6307\u5B9A\u4E86\u591A\u4E2A -public, -private, -package \u6216 -protected\u3002
+main.cant.read=\u65E0\u6CD5\u8BFB\u53D6{0}
+main.Loading_source_files_for_package=\u6B63\u5728\u52A0\u8F7D\u7A0B\u5E8F\u5305{0}\u7684\u6E90\u6587\u4EF6...
+main.Loading_source_file=\u6B63\u5728\u52A0\u8F7D\u6E90\u6587\u4EF6{0}...
+main.Building_tree=\u6B63\u5728\u6784\u9020 Javadoc \u4FE1\u606F...
+main.no_source_files_for_package=\u6CA1\u6709\u7A0B\u5E8F\u5305{0}\u7684\u6E90\u6587\u4EF6
+main.fatal.error=\u81F4\u547D\u9519\u8BEF
+main.fatal.exception=\u81F4\u547D\u5F02\u5E38\u9519\u8BEF
+main.out.of.memory=java.lang.OutOfMemoryError: \u8BF7\u589E\u5927\u5185\u5B58\u3002\n\u4F8B\u5982, \u5BF9\u4E8E JDK \u7ECF\u5178\u6216 HotSpot VM, \u8BF7\u589E\u5927\u9009\u9879 -J-Xmx,\n\u4F8B\u5982 -J-Xmx32m\u3002
+main.done_in=[\u5728 {0} \u6BEB\u79D2\u5185\u5B8C\u6210]
+main.more_than_one_doclet_specified_0_and_1=\u6307\u5B9A\u4E86\u591A\u4E2A doclet ({0}\u548C{1})\u3002
+main.doclet_no_classloader_found=\u65E0\u6CD5\u83B7\u53D6\u7C7B\u52A0\u8F7D\u5668\u6765\u52A0\u8F7D {0}
+main.could_not_instantiate_class=\u65E0\u6CD5\u5B9E\u4F8B\u5316\u7C7B {0}
+main.doclet_class_not_found=\u627E\u4E0D\u5230 doclet \u7C7B{0}
+main.illegal_locale_name=\u8BED\u8A00\u73AF\u5883\u4E0D\u53EF\u7528: {0}
+main.malformed_locale_name=\u683C\u5F0F\u9519\u8BEF\u7684\u8BED\u8A00\u73AF\u5883\u540D\u79F0: {0}
+main.file_not_found=\u627E\u4E0D\u5230\u6587\u4EF6: "{0}"
+main.file_ignored=\u5DF2\u5FFD\u7565\u6587\u4EF6: "{0}" (\u5C1A\u4E0D\u652F\u6301)
+main.illegal_class_name=\u975E\u6CD5\u7C7B\u540D: "{0}"
+main.illegal_package_name=\u975E\u6CD5\u7684\u7A0B\u5E8F\u5305\u540D\u79F0: "{0}"
+main.release.bootclasspath.conflict=\u9009\u9879{0}\u65E0\u6CD5\u4E0E -release \u4E00\u8D77\u4F7F\u7528
+main.unsupported.release.version=\u4E0D\u652F\u6301\u53D1\u884C\u7248\u672C {0}
+main.release.not.standard.file.manager=\u6307\u5B9A\u4E86 -release \u9009\u9879, \u4F46\u63D0\u4F9B\u7684 JavaFileManager \u4E0D\u662F StandardJavaFileManager\u3002
+main.unknown.error=\u51FA\u73B0\u672A\u77E5\u9519\u8BEF
+javadoc.class_not_found=\u627E\u4E0D\u5230\u7C7B{0}\u3002
+javadoc.error=\u9519\u8BEF
+javadoc.warning=\u8B66\u544A
+
+javadoc.error.msg={0}: \u9519\u8BEF - {1}
+javadoc.warning.msg={0}: \u8B66\u544A - {1}
 javadoc.note.msg = {1}
 javadoc.note.pos.msg= {0}: {1}
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPool.java b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPool.java
index 29a5ce3..e5dd6a0 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPool.java
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPool.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -119,22 +119,20 @@
     public static final int CONSTANT_InvokeDynamic = 18;
 
     public static enum RefKind {
-        REF_getField(1, "getfield"),
-        REF_getStatic(2, "getstatic"),
-        REF_putField(3, "putfield"),
-        REF_putStatic(4, "putstatic"),
-        REF_invokeVirtual(5, "invokevirtual"),
-        REF_invokeStatic(6, "invokestatic"),
-        REF_invokeSpecial(7, "invokespecial"),
-        REF_newInvokeSpecial(8, "newinvokespecial"),
-        REF_invokeInterface(9, "invokeinterface");
+        REF_getField(1),
+        REF_getStatic(2),
+        REF_putField(3),
+        REF_putStatic(4),
+        REF_invokeVirtual(5),
+        REF_invokeStatic(6),
+        REF_invokeSpecial(7),
+        REF_newInvokeSpecial(8),
+        REF_invokeInterface(9);
 
         public final int tag;
-        public final String name;
 
-        RefKind(int tag, String name) {
+        RefKind(int tag) {
             this.tag = tag;
-            this.name = name;
         }
 
         static RefKind getRefkind(int tag) {
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/ConstantWriter.java b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/ConstantWriter.java
index accef79..6705b86 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/ConstantWriter.java
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/ConstantWriter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -124,7 +124,7 @@
             }
 
             public Integer visitMethodHandle(CONSTANT_MethodHandle_info info, Void p) {
-                print("#" + info.reference_kind.tag + ":#" + info.reference_index);
+                print(info.reference_kind.tag + ":#" + info.reference_index);
                 tab();
                 println("// " + stringValue(info));
                 return 1;
@@ -326,7 +326,7 @@
 
         public String visitMethodHandle(CONSTANT_MethodHandle_info info, Void p) {
             try {
-                return info.reference_kind.name + " " + stringValue(info.getCPRefInfo());
+                return info.reference_kind + " " + stringValue(info.getCPRefInfo());
             } catch (ConstantPoolException e) {
                 return report(e);
             }
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_ja.properties b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_ja.properties
index 7278723..59e0e56 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_ja.properties
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_ja.properties
@@ -3,10 +3,9 @@
 
 err.bad.constant.pool={0}\u306E\u5B9A\u6570\u30D7\u30FC\u30EB\u306E\u8AAD\u53D6\u308A\u4E2D\u306B\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F: {1}
 err.class.not.found=\u30AF\u30E9\u30B9\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
-err.crash=\u91CD\u5927\u306A\u5185\u90E8\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F: {0}\n\u6B21\u306E\u60C5\u5831\u3092\u542B\u3080\u30D0\u30B0\u30FB\u30EC\u30DD\u30FC\u30C8\u3092\u30D5\u30A1\u30A4\u30EB\u3057\u3066\u304F\u3060\u3055\u3044:\n{1}
+err.crash=\u91CD\u5927\u306A\u5185\u90E8\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F: {0}\n\u6B21\u306E\u60C5\u5831\u3092\u542B\u3080bug\u30EC\u30DD\u30FC\u30C8\u3092\u30D5\u30A1\u30A4\u30EB\u3057\u3066\u304F\u3060\u3055\u3044:\n{1}
 err.end.of.file={0}\u306E\u8AAD\u53D6\u308A\u4E2D\u306B\u4E88\u671F\u3057\u306A\u3044\u30D5\u30A1\u30A4\u30EB\u306E\u7D42\u308F\u308A\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F
 err.file.not.found=\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
-err.h.not.supported=-h\u306F\u4F7F\u7528\u53EF\u80FD\u3067\u306A\u304F\u306A\u308A\u307E\u3057\u305F - 'javah'\u30D7\u30ED\u30B0\u30E9\u30E0\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044
 err.incompatible.options=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u7D44\u5408\u305B\u304C\u4E0D\u6B63\u3067\u3059: {0}
 err.internal.error=\u5185\u90E8\u30A8\u30E9\u30FC: {0} {1} {2}
 err.invalid.arg.for.option=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059: {0}
@@ -14,12 +13,14 @@
 err.missing.arg={0}\u306B\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 err.no.classes.specified=\u30AF\u30E9\u30B9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 err.not.standard.file.manager=\u6A19\u6E96\u30D5\u30A1\u30A4\u30EB\u30FB\u30DE\u30CD\u30FC\u30B8\u30E3\u3092\u4F7F\u7528\u3057\u3066\u3044\u308B\u5834\u5408\u306F\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u307F\u6307\u5B9A\u3067\u304D\u307E\u3059
+err.invalid.use.of.option=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u4F7F\u7528\u304C\u7121\u52B9\u3067\u3059: {0}
 err.unknown.option=\u4E0D\u660E\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
-err.verify.not.supported=-verify\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 err.no.SourceFile.attribute=SourceFile\u5C5E\u6027\u304C\u3042\u308A\u307E\u305B\u3093
 err.source.file.not.found=\u30BD\u30FC\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
 err.bad.innerclasses.attribute={0}\u306EInnerClasses\u5C5E\u6027\u304C\u4E0D\u6B63\u3067\u3059
-warn.Xold.not.supported=-Xold\u306F\u4F7F\u7528\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3057\u305F
+err.nomem=\u30E1\u30E2\u30EA\u30FC\u304C\u4E0D\u8DB3\u3057\u3066\u3044\u307E\u3059\u3002\u30E1\u30E2\u30EA\u30FC\u3092\u5897\u3084\u3059\u306B\u306F\u3001-J-Xmx\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002
+err.cant.find.module=\u30E2\u30B8\u30E5\u30FC\u30EB{0}\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+err.cant.find.module.ex=\u30E2\u30B8\u30E5\u30FC\u30EB{0}\u306E\u691C\u7D22\u4E2D\u306B\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F: {1}
 
 main.usage.summary=\u4F7F\u7528\u65B9\u6CD5: {0} <options> <classes>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30EA\u30B9\u30C8\u306B\u3064\u3044\u3066\u306F\u3001-help\u3092\u4F7F\u7528\u3057\u307E\u3059
 
@@ -57,9 +58,17 @@
 
 main.opt.cp=\  -cp <path>               \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B
 
-main.opt.bootclasspath=\  -bootclasspath <path>    \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u4F4D\u7F6E\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
+main.opt.bootclasspath=\  -bootclasspath <path>    \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u306E\u5834\u6240\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B
 
-main.opt.constants=\  -constants               \u9759\u7684final\u5B9A\u6570\u3092\u8868\u793A\u3059\u308B
+main.opt.upgrademodulepath=\  -upgrademodulepath <path>    \u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B
+
+main.opt.system=\  -system <jdk>            \u30B7\u30B9\u30C6\u30E0\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B
+
+main.opt.modulepath=\  -modulepath <path>       \u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B
+
+main.opt.constants=\  -constants               final\u5B9A\u6570\u3092\u8868\u793A\u3059\u308B
 
 
 main.opt.sysinfo=\  -sysinfo                 \u51E6\u7406\u3057\u3066\u3044\u308B\u30AF\u30E9\u30B9\u306E\u30B7\u30B9\u30C6\u30E0\u60C5\u5831(\u30D1\u30B9\u3001\u30B5\u30A4\u30BA\u3001\u65E5\u4ED8\u3001MD5\u30CF\u30C3\u30B7\u30E5)\n                           \u3092\u8868\u793A\u3059\u308B
+
+main.opt.m=\  -m <module-name>         \u9006\u30A2\u30BB\u30F3\u30D6\u30EB\u3055\u308C\u308B\u30AF\u30E9\u30B9\u3092\u542B\u3080\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u6307\u5B9A\u3059\u308B
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties
index b9027ec..74d437e 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties
@@ -6,7 +6,6 @@
 err.crash=\u51FA\u73B0\u4E25\u91CD\u7684\u5185\u90E8\u9519\u8BEF: {0}\n\u8BF7\u5EFA\u7ACB Bug \u62A5\u544A, \u5E76\u5305\u62EC\u4EE5\u4E0B\u4FE1\u606F:\n{1}
 err.end.of.file=\u8BFB\u53D6{0}\u65F6\u51FA\u73B0\u610F\u5916\u7684\u6587\u4EF6\u7ED3\u5C3E
 err.file.not.found=\u627E\u4E0D\u5230\u6587\u4EF6: {0}
-err.h.not.supported=-h \u4E0D\u518D\u53EF\u7528 - \u8BF7\u4F7F\u7528 'javah' \u7A0B\u5E8F
 err.incompatible.options=\u9009\u9879\u7EC4\u5408\u9519\u8BEF: {0}
 err.internal.error=\u5185\u90E8\u9519\u8BEF: {0} {1} {2}
 err.invalid.arg.for.option=\u9009\u9879\u7684\u53C2\u6570\u65E0\u6548: {0}
@@ -14,12 +13,14 @@
 err.missing.arg=\u6CA1\u6709\u4E3A{0}\u6307\u5B9A\u503C
 err.no.classes.specified=\u672A\u6307\u5B9A\u7C7B
 err.not.standard.file.manager=\u4F7F\u7528\u6807\u51C6\u6587\u4EF6\u7BA1\u7406\u5668\u65F6\u53EA\u80FD\u6307\u5B9A\u7C7B\u6587\u4EF6
+err.invalid.use.of.option=\u9009\u9879\u7684\u4F7F\u7528\u65E0\u6548: {0}
 err.unknown.option=\u672A\u77E5\u9009\u9879: {0}
-err.verify.not.supported=\u4E0D\u652F\u6301 -verify
 err.no.SourceFile.attribute=\u6CA1\u6709 SourceFile \u5C5E\u6027
 err.source.file.not.found=\u627E\u4E0D\u5230\u6E90\u6587\u4EF6
 err.bad.innerclasses.attribute={0}\u7684 InnerClasses \u5C5E\u6027\u9519\u8BEF
-warn.Xold.not.supported=-Xold \u4E0D\u518D\u53EF\u7528
+err.nomem=\u5185\u5B58\u4E0D\u8DB3\u3002\u8981\u589E\u5927\u5185\u5B58, \u8BF7\u4F7F\u7528 -J-Xmx \u9009\u9879\u3002
+err.cant.find.module=\u627E\u4E0D\u5230\u6A21\u5757 {0}
+err.cant.find.module.ex=\u67E5\u627E\u6A21\u5757 {0} \u65F6\u51FA\u73B0\u95EE\u9898: {1}
 
 main.usage.summary=\u7528\u6CD5: {0} <options> <classes>\n\u4F7F\u7528 -help \u5217\u51FA\u53EF\u80FD\u7684\u9009\u9879
 
@@ -59,7 +60,15 @@
 
 main.opt.bootclasspath=\  -bootclasspath <path>    \u8986\u76D6\u5F15\u5BFC\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E
 
-main.opt.constants=\  -constants               \u663E\u793A\u9759\u6001\u6700\u7EC8\u5E38\u91CF
+main.opt.upgrademodulepath=\  -upgrademodulepath <path>    \u6307\u5B9A\u67E5\u627E\u53EF\u5347\u7EA7\u6A21\u5757\u7684\u4F4D\u7F6E
+
+main.opt.system=\  -system <jdk>            \u6307\u5B9A\u67E5\u627E\u7CFB\u7EDF\u6A21\u5757\u7684\u4F4D\u7F6E
+
+main.opt.modulepath=\  -modulepath <path>       \u6307\u5B9A\u67E5\u627E\u5E94\u7528\u7A0B\u5E8F\u6A21\u5757\u7684\u4F4D\u7F6E
+
+main.opt.constants=\  -constants               \u663E\u793A\u6700\u7EC8\u5E38\u91CF
 
 
 main.opt.sysinfo=\  -sysinfo                 \u663E\u793A\u6B63\u5728\u5904\u7406\u7684\u7C7B\u7684\n                           \u7CFB\u7EDF\u4FE1\u606F (\u8DEF\u5F84, \u5927\u5C0F, \u65E5\u671F, MD5 \u6563\u5217)
+
+main.opt.m=\  -m <module-name>         \u6307\u5B9A\u5305\u542B\u8981\u53CD\u6C47\u7F16\u7684\u7C7B\u7684\u6A21\u5757
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/DepsAnalyzer.java b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/DepsAnalyzer.java
index c7444c7..128e2ea 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/DepsAnalyzer.java
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/DepsAnalyzer.java
@@ -181,11 +181,11 @@
      * Returns the dependences, either class name or package name
      * as specified in the given verbose level.
      */
-    Stream<String> dependences() {
+    Set<String> dependences() {
         return analyzer.archives().stream()
                        .map(analyzer::dependences)
                        .flatMap(Set::stream)
-                       .distinct();
+                       .collect(Collectors.toSet());
     }
 
     /**
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java
index edaafa2..698e728 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java
@@ -25,11 +25,8 @@
 
 package com.sun.tools.jdeps;
 
-import static com.sun.tools.jdeps.Analyzer.NOT_FOUND;
-import static com.sun.tools.jdeps.Analyzer.REMOVED_JDK_INTERNALS;
 import static com.sun.tools.jdeps.Analyzer.Type.*;
 import static com.sun.tools.jdeps.JdepsWriter.*;
-import static com.sun.tools.jdeps.JdepsConfiguration.ALL_MODULE_PATH;
 
 import java.io.IOException;
 import java.io.PrintWriter;
@@ -38,17 +35,7 @@
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.Deque;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-import java.util.Set;
-import java.util.function.Function;
+import java.util.*;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -598,24 +585,32 @@
                                          name, archive.getPathName())));
 
         if (options.findJDKInternals && !options.nowarning) {
-            Map<String, String> jdkInternals = analyzer.dependences()
-                .collect(Collectors.toMap(Function.identity(), this::replacementFor));
+            Map<String, String> jdkInternals = new TreeMap<>();
+            Set<String> deps = analyzer.dependences();
+            // find the ones with replacement
+            deps.forEach(cn -> replacementFor(cn).ifPresent(
+                repl -> jdkInternals.put(cn, repl))
+            );
+
+            if (!deps.isEmpty()) {
+                log.println();
+                warning("warn.replace.useJDKInternals", getMessage("jdeps.wiki.url"));
+            }
 
             if (!jdkInternals.isEmpty()) {
                 log.println();
-                warning("warn.replace.useJDKInternals", getMessage("jdeps.wiki.url"));
-
-                if (jdkInternals.values().stream().anyMatch(repl -> repl != null)) {
-                    log.println();
-                    log.format("%-40s %s%n", "JDK Internal API", "Suggested Replacement");
-                    log.format("%-40s %s%n", "----------------", "---------------------");
-                        jdkInternals.entrySet().stream()
-                            .filter(e -> e.getValue() != null)
-                            .sorted(Map.Entry.comparingByKey())
-                            .forEach(e -> log.format("%-40s %s%n", e.getKey(), e.getValue()));
-                }
+                log.format("%-40s %s%n", "JDK Internal API", "Suggested Replacement");
+                log.format("%-40s %s%n", "----------------", "---------------------");
+                jdkInternals.entrySet().stream()
+                    .forEach(e -> {
+                        String key = e.getKey();
+                        String[] lines = e.getValue().split("\\n");
+                        for (String s : lines) {
+                            log.format("%-40s %s%n", key, s);
+                            key = "";
+                        }
+                    });
             }
-
         }
         return ok;
     }
@@ -887,7 +882,7 @@
      * Returns the recommended replacement API for the given classname;
      * or return null if replacement API is not known.
      */
-    private String replacementFor(String cn) {
+    private Optional<String> replacementFor(String cn) {
         String name = cn;
         String value = null;
         while (value == null && name != null) {
@@ -899,6 +894,6 @@
                 name = i > 0 ? name.substring(0, i) : null;
             }
         }
-        return value;
+        return Optional.ofNullable(value);
     }
 }
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties
index d17b64b..82df8ba 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_ja.properties
@@ -1,45 +1,74 @@
-main.usage.summary=\u4F7F\u7528\u65B9\u6CD5: {0} <options> <classes...>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30EA\u30B9\u30C8\u306B\u3064\u3044\u3066\u306F\u3001-h\u3001-?\u307E\u305F\u306F--help\u3092\u4F7F\u7528\u3057\u307E\u3059
+main.usage.summary=\u4F7F\u7528\u65B9\u6CD5: {0} <options> [-m <module-name> | <classes...>]\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30EA\u30B9\u30C8\u306B\u3064\u3044\u3066\u306F\u3001-h\u3001-?\u307E\u305F\u306F-help\u3092\u4F7F\u7528\u3057\u307E\u3059
 
-main.usage=\u4F7F\u7528\u65B9\u6CD5: {0} <options> <classes...>\n<classes>\u306B\u306F\u3001.class\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u540D\u3001\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3001JAR\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u5B8C\u5168\u4FEE\u98FE\n\u30AF\u30E9\u30B9\u540D\u3092\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002\u4F7F\u7528\u3067\u304D\u308B\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:
+main.usage=\u4F7F\u7528\u65B9\u6CD5: {0} <options> [-m <module-name> | <classes...>]\n-m <module-name>\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3001\u6307\u5B9A\u3057\u305F\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u5206\u6790\u3055\u308C\u307E\u3059\n\u305D\u3046\u3067\u306A\u3044\u5834\u5408\u3001<classes>\u306B\u306F\u3001.class\u30D5\u30A1\u30A4\u30EB\u306E\u30D1\u30B9\u540D\u3001\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3001JAR\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\n\u5B8C\u5168\u4FEE\u98FE\u30AF\u30E9\u30B9\u540D\u3092\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002\n\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059:
 
 error.prefix=\u30A8\u30E9\u30FC:
 warn.prefix=\u8B66\u544A:
 
-main.opt.h=\  -h -?        -help                 \u3053\u306E\u4F7F\u7528\u65B9\u6CD5\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3057\u307E\u3059
+main.opt.h=\  -h -?        -help                   \u3053\u306E\u4F7F\u7528\u65B9\u6CD5\u306E\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u51FA\u529B\u3057\u307E\u3059
 
-main.opt.version=\  -version                           \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831
+main.opt.version=\  -version                             \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831
 
-main.opt.v=\  -v           -verbose              \u30AF\u30E9\u30B9\u30FB\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u3059\u3079\u3066\u51FA\u529B\u3057\u307E\u3059\n  -verbose:package                   \u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u51FA\u529B\u3057\u307E\u3059\n                                     (\u540C\u3058\u30A2\u30FC\u30AB\u30A4\u30D6\u5185\u306E\u4F9D\u5B58\u6027\u3092\u9664\u304F)\n  -verbose:class                     \u30AF\u30E9\u30B9\u30FB\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u51FA\u529B\u3057\u307E\u3059\n                                     (\u540C\u3058\u30A2\u30FC\u30AB\u30A4\u30D6\u5185\u306E\u4F9D\u5B58\u6027\u3092\u9664\u304F)
+main.opt.v=\  -v           -verbose                \u30AF\u30E9\u30B9\u30FB\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u3059\u3079\u3066\u51FA\u529B\u3057\u307E\u3059\n                                     -verbose:class -filter:none\u3068\u540C\u7B49\u3067\u3059\u3002\n  -verbose:package                     \u30D1\u30C3\u30B1\u30FC\u30B8\u30FB\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u51FA\u529B\u3057\u307E\u3059\n                                     (\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001\u540C\u3058\u30D1\u30C3\u30B1\u30FC\u30B8\u5185\u306E\u4F9D\u5B58\u6027\u3092\u9664\u304F)\n  -verbose:class                       \u30AF\u30E9\u30B9\u30FB\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u51FA\u529B\u3057\u307E\u3059\n                                     (\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001\u540C\u3058\u30D1\u30C3\u30B1\u30FC\u30B8\u5185\u306E\u4F9D\u5B58\u6027\u3092\u9664\u304F)
 
-main.opt.s=\  -s           -summary              \u4F9D\u5B58\u6027\u306E\u8981\u7D04\u306E\u307F\u51FA\u529B\u3057\u307E\u3059
+main.opt.f=\  -f <regex>   -filter <regex>       \u6307\u5B9A\u306E\u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u4F9D\u5B58\u6027\u3092\u30D5\u30A3\u30EB\u30BF\u3057\u307E\u3059\n                                     \u8907\u6570\u56DE\u6307\u5B9A\u3055\u308C\u305F\u5834\u5408\u3001\u6700\u5F8C\u306E\u3082\u306E\u304C\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002\n  -filter:package                    \u540C\u3058\u30D1\u30C3\u30B1\u30FC\u30B8\u5185\u306E\u4F9D\u5B58\u6027\u3092\u30D5\u30A3\u30EB\u30BF\u3057\u307E\u3059(\u30C7\u30D5\u30A9\u30EB\u30C8)\n  -filter:module                       \u540C\u3058\u30E2\u30B8\u30E5\u30FC\u30EB\u5185\u306E\u4F9D\u5B58\u6027\u3092\u30D5\u30A3\u30EB\u30BF\u3057\u307E\u3059\n  -filter:archive                    \u540C\u3058\u30A2\u30FC\u30AB\u30A4\u30D6\u5185\u306E\u4F9D\u5B58\u6027\u3092\u30D5\u30A3\u30EB\u30BF\u3057\u307E\u3059\n  -filter:none                       -filter:package\u304A\u3088\u3073-filter:archive\u306E\u30D5\u30A3\u30EB\u30BF\u30EA\u30F3\u30B0\u306F\u884C\u308F\u308C\u307E\u305B\u3093\n                                     -filter\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u6307\u5B9A\u3057\u305F\u30D5\u30A3\u30EB\u30BF\u30EA\u30F3\u30B0\u304C\u5F15\u304D\u7D9A\u304D\u9069\u7528\u3055\u308C\u307E\u3059\u3002
 
-main.opt.p=\  -p <pkgname> -package <pkgname>    \u6307\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u5185\u306E\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\n                                     (\u8907\u6570\u56DE\u6307\u5B9A\u53EF\u80FD)
+main.opt.s=\  -s           -summary                \u4F9D\u5B58\u6027\u306E\u6982\u8981\u306E\u307F\u51FA\u529B\u3057\u307E\u3059\u3002\n                                       -s\u30AA\u30D7\u30B7\u30E7\u30F3\u3092-m\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3059\u308B\u3068\u3001\u6307\u5B9A\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30C7\u30A3\u30B9\u30AF\u30EA\u30D7\u30BF\u3092\n                                       \u8AAD\u307F\u53D6\u308A\u3001\u30B0\u30E9\u30D5\u3092\u751F\u6210\u3057\u307E\u3059\u3002
 
-main.opt.e=\  -e <regex>   -regex <regex>        \u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u30D1\u30C3\u30B1\u30FC\u30B8\u5185\u306E\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\n                                     (-p\u3068-e\u306F\u6392\u4ED6\u7684)
+main.opt.p=\  -p <pkgname>                         \u6307\u5B9A\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u540D\u306B\u4E00\u81F4\u3059\u308B\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\n  -package <pkgname>                   (\u8907\u6570\u56DE\u6307\u5B9A\u53EF\u80FD)\u3002
 
-main.opt.include=\  -include <regex>                   \u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u30AF\u30E9\u30B9\u306B\u5206\u6790\u3092\u5236\u9650\u3057\u307E\u3059\n                                     \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\u5206\u6790\u5BFE\u8C61\u30AF\u30E9\u30B9\u306E\n                                     \u30EA\u30B9\u30C8\u304C\u30D5\u30A3\u30EB\u30BF\u51E6\u7406\u3055\u308C\u307E\u3059\u3002\u30D1\u30BF\u30FC\u30F3\u3092\u4F9D\u5B58\u6027\u306B\n                                     \u9069\u7528\u3059\u308B-p\u304A\u3088\u3073-e\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059
+main.opt.e=\  -e <regex>\n  -regex <regex>                       \u6307\u5B9A\u306E\u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\u3002
 
-main.opt.P=\  -P           -profile              \u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u3001\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u542B\u3080\u30D5\u30A1\u30A4\u30EB\u3092\u8868\u793A\u3057\u307E\u3059
+main.opt.module=\  -module <module-name>                \u6307\u5B9A\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u540D\u306B\u4E00\u81F4\u3059\u308B\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\n                                       (\u8907\u6570\u56DE\u6307\u5B9A\u53EF\u80FD)\u3002\n                                       -package\u3001-regex\u3001-requires\u306F\u76F8\u4E92\u306B\u6392\u4ED6\u7684\u3067\u3059\u3002
 
-main.opt.cp=\  -cp <path>   -classpath <path>     \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3057\u307E\u3059
+main.opt.include=\  -include <regex>                     \u30D1\u30BF\u30FC\u30F3\u306B\u4E00\u81F4\u3059\u308B\u30AF\u30E9\u30B9\u306B\u5206\u6790\u3092\u5236\u9650\u3057\u307E\u3059\n                                       \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\u5206\u6790\u5BFE\u8C61\u30AF\u30E9\u30B9\u306E\n                                       \u30EA\u30B9\u30C8\u304C\u30D5\u30A3\u30EB\u30BF\u3055\u308C\u307E\u3059\u3002\u30D1\u30BF\u30FC\u30F3\u3092\u4F9D\u5B58\u6027\u306B\n                                       \u9069\u7528\u3059\u308B-p\u304A\u3088\u3073-e\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059
 
-main.opt.R=\  -R           -recursive            \u3059\u3079\u3066\u306E\u4F9D\u5B58\u6027\u3092\u53CD\u5FA9\u7684\u306B\u8D70\u67FB\u3057\u307E\u3059
+main.opt.P=\  -P           -profile                \u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u542B\u3080\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u3092\u8868\u793A\u3057\u307E\u3059
 
-main.opt.apionly=\  -apionly                           \u5206\u6790\u3092API\u3001\u3064\u307E\u308A\u3001\u30D1\u30D6\u30EA\u30C3\u30AF\u30FB\u30AF\u30E9\u30B9\u306E\n                                     \u30D1\u30D6\u30EA\u30C3\u30AF\u30FB\u30E1\u30F3\u30D0\u30FC\u304A\u3088\u3073\u4FDD\u8B77\u3055\u308C\u305F\u30E1\u30F3\u30D0\u30FC\u306E\n                                     \u7F72\u540D\u306B\u304A\u3051\u308B\u4F9D\u5B58\u6027(\u30D5\u30A3\u30FC\u30EB\u30C9\u30FB\u30BF\u30A4\u30D7\u3001\u30E1\u30BD\u30C3\u30C9\u30FB\n                                     \u30D1\u30E9\u30E1\u30FC\u30BF\u30FB\u30BF\u30A4\u30D7\u3001\u623B\u3055\u308C\u305F\u30BF\u30A4\u30D7\u3001\u30C1\u30A7\u30C3\u30AF\u3055\u308C\u305F\n                                     \u4F8B\u5916\u30BF\u30A4\u30D7\u306A\u3069)\u306B\u5236\u9650\u3057\u307E\u3059
+main.opt.M=\  -M                                   \u30D1\u30C3\u30B1\u30FC\u30B8\u3092\u542B\u3080\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u8868\u793A\u3057\u307E\u3059
 
-main.opt.dotoutput=\  -dotoutput <dir>                   DOT\u30D5\u30A1\u30A4\u30EB\u51FA\u529B\u306E\u5B9B\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
+main.opt.cp=\  -cp <path>   -classpath <path>       \u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u7D22\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3057\u307E\u3059
 
-main.opt.depth=\  -depth=<depth>                     \u63A8\u79FB\u7684\u306A\u4F9D\u5B58\u6027\u5206\u6790\u306E\u6DF1\u3055\u3092\n                                     \u6307\u5B9A\u3057\u307E\u3059
+main.opt.mp=\  -mp <module path>...\n  -modulepath <module path>...         \u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9\u3092\u6307\u5B9A\u3057\u307E\u3059
+
+main.opt.upgrademodulepath=\  -upgrademodulepath <module path>...  \u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u30FB\u30E2\u30B8\u30E5\u30FC\u30EB\u30FB\u30D1\u30B9\u3092\u6307\u5B9A\u3057\u307E\u3059
+
+main.opt.m=\  -m <module-name>                     \u5206\u6790\u3055\u308C\u308B\u30E2\u30B8\u30E5\u30FC\u30EB\u3068\u305D\u306E\u63A8\u79FB\u7684\u306A\u4F9D\u5B58\u6027\u306E\n                                       \u540D\u524D\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002
+
+main.opt.R=\  -R           -recursive            \u3059\u3079\u3066\u306E\u30E9\u30F3\u30BF\u30A4\u30E0\u4F9D\u5B58\u6027\u3092\u518D\u5E30\u7684\u306B\u30C8\u30E9\u30D0\u30FC\u30B9\u3057\u307E\u3059\u3002\n                                     -R\u30AA\u30D7\u30B7\u30E7\u30F3\u306F-filter:none\u3092\u610F\u5473\u3057\u307E\u3059\u3002-p\u3001-e\u3001-f\n                                     \u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3001\u4E00\u81F4\u3059\u308B\u4F9D\u5B58\u6027\u306E\u307F\n                                     \u5206\u6790\u3055\u308C\u307E\u3059\u3002
+
+main.opt.ct=\  -ct          -compile-time           \u63A8\u79FB\u7684\u306A\u4F9D\u5B58\u6027\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u6642\u306E\u8868\u793A\n                                       \u4F8B: -R\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u6642\u306E\u8868\u793A\u3002\u4F9D\u5B58\u6027\u304C\n                                       \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3001JAR\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30E2\u30B8\u30E5\u30FC\u30EB\u304B\u3089\u691C\u51FA\u3055\u308C\u305F\u5834\u5408\u3001\n                                       \u305D\u306E\u5305\u542B\u3059\u308B\u30A2\u30FC\u30AB\u30A4\u30D6\u306E\u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u304C\u5206\u6790\u3055\u308C\u307E\u3059\u3002
+
+main.opt.apionly=\  -apionly                             \u5206\u6790\u3092API\u3001\u3064\u307E\u308A\u3001\u30D1\u30D6\u30EA\u30C3\u30AF\u30FB\u30AF\u30E9\u30B9\u306E\n                                     \u30D1\u30D6\u30EA\u30C3\u30AF\u30FB\u30E1\u30F3\u30D0\u30FC\u304A\u3088\u3073\u4FDD\u8B77\u3055\u308C\u305F\u30E1\u30F3\u30D0\u30FC\u306E\n                                     \u7F72\u540D\u306B\u304A\u3051\u308B\u4F9D\u5B58\u6027(\u30D5\u30A3\u30FC\u30EB\u30C9\u30FB\u30BF\u30A4\u30D7\u3001\u30E1\u30BD\u30C3\u30C9\u30FB\n                                     \u30D1\u30E9\u30E1\u30FC\u30BF\u30FB\u30BF\u30A4\u30D7\u3001\u623B\u3055\u308C\u305F\u30BF\u30A4\u30D7\u3001\u30C1\u30A7\u30C3\u30AF\u3055\u308C\u305F\n                                     \u4F8B\u5916\u30BF\u30A4\u30D7\u306A\u3069)\u306B\u5236\u9650\u3057\u307E\u3059
+
+main.opt.genmoduleinfo=\  -genmoduleinfo <dir>                 \u6307\u5B9A\u3057\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306Bmodule-info.java\u3092\u751F\u6210\u3057\u307E\u3059\u3002\n                                       \u6307\u5B9A\u3057\u305FJAR\u30D5\u30A1\u30A4\u30EB\u3092\u5206\u6790\u3057\u307E\u3059\u3002\n                                       \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F-dotoutput\u307E\u305F\u306F-cp\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002
+
+main.opt.check=\  -check                               -m\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u6307\u5B9A\u3057\u305F\u6307\u5B9A\u306E\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u4F9D\u5B58\u6027\u3092\n                                       \u5206\u6790\u3057\u307E\u3059\u3002\u9077\u79FB\u524A\u6E1B\u5F8C\u306E\u7D50\u679C\u30E2\u30B8\u30E5\u30FC\u30EB\u4F9D\u5B58\u6027\u30B0\u30E9\u30D5\u3092\n                                       \u51FA\u529B\u3057\u3001\u672A\u4F7F\u7528\u306E\u4FEE\u98FE\u3055\u308C\u305F\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3082\n                                       \u8B58\u5225\u3057\u307E\u3059\u3002
+
+
+main.opt.dotoutput=\  -dotoutput <dir>                     DOT\u30D5\u30A1\u30A4\u30EB\u51FA\u529B\u306E\u5B9B\u5148\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA
+
+main.opt.jdkinternals=\  -jdkinternals                        JDK\u5185\u90E8API\u306E\u30AF\u30E9\u30B9\u30EC\u30D9\u30EB\u306E\u4F9D\u5B58\u6027\u3092\u691C\u51FA\u3057\u307E\u3059\u3002\n                                     \u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u306F\u3001-include\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u6307\u5B9A\u3057\u306A\u3044\u3068\u3001\n                                     -classpath\u306E\u3059\u3079\u3066\u306E\u30AF\u30E9\u30B9\u3068\u5165\u529B\u30D5\u30A1\u30A4\u30EB\u3092\u5206\u6790\u3057\u307E\u3059\u3002\n                                     \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306F-p\u3001-e\u304A\u3088\u3073-s\u30AA\u30D7\u30B7\u30E7\u30F3\u3068\u4E00\u7DD2\u306B\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\n                                     \u8B66\u544A: JDK\u5185\u90E8API\u306F\u3001\u6B21\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\n                                     \u3042\u308A\u307E\u3059\u3002
+
+main.opt.depth=\  -depth=<depth>                       \u63A8\u79FB\u7684\u306A\u4F9D\u5B58\u6027\u5206\u6790\u306E\u6DF1\u3055\u3092\n                                       \u6307\u5B9A\u3057\u307E\u3059
+
+main.opt.q=\  -q           -quiet                  -genmoduleinfo\u51FA\u529B\u3067\u6B20\u843D\u3057\u3066\u3044\u308B\u4F9D\u5B58\u6027\u3092\u8868\u793A\u3057\u307E\u305B\u3093\u3002
 
 err.unknown.option=\u4E0D\u660E\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
 err.missing.arg={0}\u306B\u5024\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
-err.internal.error=\u5185\u90E8\u30A8\u30E9\u30FC: {0} {1} {2}
 err.invalid.arg.for.option=\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u5F15\u6570\u304C\u7121\u52B9\u3067\u3059: {0}
 err.option.after.class=\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u30AF\u30E9\u30B9\u306E\u524D\u306B\u6307\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059: {0}
-err.option.unsupported={0}\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093: {1}
+err.genmoduleinfo.not.jarfile=-genmoduleinfo\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u306F\u3001{0}\u306F\u6709\u52B9\u3067\u306F\u3042\u308A\u307E\u305B\u3093(JAR\u30D5\u30A1\u30A4\u30EB\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059)
 err.profiles.msg=\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u60C5\u5831\u304C\u3042\u308A\u307E\u305B\u3093
-err.dot.output.path=\u7121\u52B9\u306A\u30D1\u30B9: {0}
+err.exception.message={0}
+err.invalid.path=\u7121\u52B9\u306A\u30D1\u30B9: {0}
+err.invalid.module.option=-m {0}\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059\u304C\u3001{1}\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002
+err.invalid.filters=-package (-p)\u3001-regex (-e)\u3001-requires\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u3044\u305A\u308C\u304B\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059
+err.module.not.found=\u30E2\u30B8\u30E5\u30FC\u30EB\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+err.root.module.not.set=-m\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093
 warn.invalid.arg=\u7121\u52B9\u306A\u30AF\u30E9\u30B9\u540D\u307E\u305F\u306F\u30D1\u30B9\u540D\u304C\u5B58\u5728\u3057\u307E\u305B\u3093: {0}
 warn.split.package=\u30D1\u30C3\u30B1\u30FC\u30B8{0}\u306F{1} {2}\u3067\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u3059
+warn.replace.useJDKInternals=JDK\u5185\u90E8API\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u304A\u3089\u305A\u3001JDK\u5B9F\u88C5\u5C02\u7528\u3067\u3059\u304C\u3001\u4E92\u63DB\u6027\u306A\u3057\u3067\n\u524A\u9664\u307E\u305F\u306F\u5909\u66F4\u3055\u308C\u308B\u5834\u5408\u304C\u3042\u308A\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u4E2D\u65AD\u3055\u305B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\nJDK\u5185\u90E8API\u306E\u4F9D\u5B58\u6027\u3092\u524A\u9664\u3059\u308B\u3088\u3046\u30B3\u30FC\u30C9\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002\nJDK\u5185\u90E8API\u306E\u7F6E\u63DB\u306B\u95A2\u3059\u308B\u6700\u65B0\u306E\u66F4\u65B0\u306B\u3064\u3044\u3066\u306F\u3001\u6B21\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044:\n{0}
 
 artifact.not.found=\u898B\u3064\u304B\u308A\u307E\u305B\u3093
+jdeps.wiki.url=https://wiki.openjdk.java.net/display/JDK8/Java+Dependency+Analysis+Tool
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_zh_CN.properties b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_zh_CN.properties
index 0d5ac83..132c039 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_zh_CN.properties
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdeps_zh_CN.properties
@@ -1,45 +1,74 @@
-main.usage.summary=\u7528\u6CD5: {0} <options> <classes...>\n\u4F7F\u7528 -h, -? \u6216 --help \u5217\u51FA\u53EF\u80FD\u7684\u9009\u9879
+main.usage.summary=\u7528\u6CD5: {0} <options> [-m <module-name> | <classes...>]\n\u4F7F\u7528 -h, -? \u6216 -help \u5217\u51FA\u53EF\u80FD\u7684\u9009\u9879
 
-main.usage=\u7528\u6CD5: {0} <options> <classes...>\n\u5176\u4E2D <classes> \u53EF\u4EE5\u662F .class \u6587\u4EF6, \u76EE\u5F55, JAR \u6587\u4EF6\u7684\u8DEF\u5F84\u540D,\n\u4E5F\u53EF\u4EE5\u662F\u5168\u9650\u5B9A\u7C7B\u540D\u3002\u53EF\u80FD\u7684\u9009\u9879\u5305\u62EC:
+main.usage=\u7528\u6CD5: {0} <options> [-m <module-name> | <classes...>]\n\u5982\u679C\u6307\u5B9A -m <module-name>, \u5219\u5C06\u5BF9\u6307\u5B9A\u7684\u6A21\u5757\u8FDB\u884C\u5206\u6790,\n\u5426\u5219 <classes> \u53EF\u4EE5\u662F .class \u6587\u4EF6, \u76EE\u5F55\u6216\nJAR \u6587\u4EF6\u7684\u8DEF\u5F84\u540D, \u4E5F\u53EF\u4EE5\u662F\u5168\u9650\u5B9A\u7C7B\u540D\u3002\n\n\u53EF\u80FD\u7684\u9009\u9879\u5305\u62EC:
 
 error.prefix=\u9519\u8BEF:
 warn.prefix=\u8B66\u544A:
 
-main.opt.h=\  -h -?        -help                 \u8F93\u51FA\u6B64\u7528\u6CD5\u6D88\u606F
+main.opt.h=\  -h -?        -help                   \u8F93\u51FA\u6B64\u7528\u6CD5\u6D88\u606F
 
-main.opt.version=\  -version                           \u7248\u672C\u4FE1\u606F
+main.opt.version=\  -version                             \u7248\u672C\u4FE1\u606F
 
-main.opt.v=\  -v           -verbose              \u8F93\u51FA\u6240\u6709\u7C7B\u7EA7\u522B\u88AB\u4F9D\u8D56\u5BF9\u8C61\n  -verbose:package                   \u8F93\u51FA\u7A0B\u5E8F\u5305\u7EA7\u522B\u88AB\u4F9D\u8D56\u5BF9\u8C61, \u4E0D\u5305\u62EC\n                                     \u540C\u4E00\u6863\u6848\u4E2D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n  -verbose:class                     \u8F93\u51FA\u7C7B\u7EA7\u522B\u88AB\u4F9D\u8D56\u5BF9\u8C61, \u4E0D\u5305\u62EC\n                                     \u540C\u4E00\u6863\u6848\u4E2D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61
+main.opt.v=\  -v           -verbose                \u8F93\u51FA\u6240\u6709\u7C7B\u7EA7\u522B\u88AB\u4F9D\u8D56\u5BF9\u8C61\n                                     \u7B49\u540C\u4E8E -verbose:class -filter:none\u3002\n  -verbose:package                     \u9ED8\u8BA4\u60C5\u51B5\u4E0B\u8F93\u51FA\u7A0B\u5E8F\u5305\u7EA7\u522B\u88AB\u4F9D\u8D56\u5BF9\u8C61, \n                                     \u4E0D\u5305\u62EC\u540C\u4E00\u7A0B\u5E8F\u5305\u4E2D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n  -verbose:class                       \u9ED8\u8BA4\u60C5\u51B5\u4E0B\u8F93\u51FA\u7C7B\u7EA7\u522B\u88AB\u4F9D\u8D56\u5BF9\u8C61, \n                                     \u4E0D\u5305\u62EC\u540C\u4E00\u7A0B\u5E8F\u5305\u4E2D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61
 
-main.opt.s=\  -s           -summary              \u4EC5\u8F93\u51FA\u88AB\u4F9D\u8D56\u5BF9\u8C61\u6982\u8981
+main.opt.f=\  -f <regex>  -filter <regex>          \u7B5B\u9009\u4E0E\u6307\u5B9A\u6A21\u5F0F\u5339\u914D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n                                       \u5982\u679C\u591A\u6B21\u6307\u5B9A, \u5219\u5C06\u4F7F\u7528\u6700\u540E\u4E00\u4E2A\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002\n  -filter:package                      \u7B5B\u9009\u4F4D\u4E8E\u540C\u4E00\u7A0B\u5E8F\u5305\u5185\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61 (\u9ED8\u8BA4)\n  -filter:module                       \u7B5B\u9009\u4F4D\u4E8E\u540C\u4E00\u6A21\u5757\u5185\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n  -filter:archive                      \u7B5B\u9009\u4F4D\u4E8E\u540C\u4E00\u6863\u6848\u5185\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n  -filter:none                         \u4E0D\u4F7F\u7528 -filter:package \u548C -filter:archive \u7B5B\u9009\n                                       \u901A\u8FC7 -filter \u9009\u9879\u6307\u5B9A\u7684\u7B5B\u9009\u4ECD\u65E7\u9002\u7528\u3002
 
-main.opt.p=\  -p <pkgname> -package <pkgname>    \u67E5\u627E\u7ED9\u5B9A\u7A0B\u5E8F\u5305\u4E2D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n                                     (\u53EF\u80FD\u591A\u6B21\u6307\u5B9A)
+main.opt.s=\  -s           -summary                \u4EC5\u8F93\u51FA\u88AB\u4F9D\u8D56\u5BF9\u8C61\u6982\u8981\u3002\n                                       \u5982\u679C\u5C06 -s \u9009\u9879\u4E0E -m \u4E00\u8D77\u4F7F\u7528, \u5219\u5C06\u8BFB\u53D6\n                                       \u6307\u5B9A\u6A21\u5757\u7684\u6A21\u5757\u63CF\u8FF0\u7B26\u6765\u751F\u6210\u56FE\u5F62\u3002
 
-main.opt.e=\  -e <regex>   -regex <regex>        \u67E5\u627E\u4E0E\u6A21\u5F0F\u5339\u914D\u7684\u7A0B\u5E8F\u5305\u4E2D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n                                     (-p \u548C -e \u4E92\u76F8\u6392\u65A5)
+main.opt.p=\  -p <pkgname>                         \u67E5\u627E\u4E0E\u7ED9\u5B9A\u7A0B\u5E8F\u5305\u540D\u79F0\u5339\u914D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n  -package <pkgname>                   (\u53EF\u591A\u6B21\u6307\u5B9A)\u3002
 
-main.opt.include=\  -include <regex>                   \u5C06\u5206\u6790\u9650\u5236\u4E3A\u4E0E\u6A21\u5F0F\u5339\u914D\u7684\u7C7B\n                                     \u6B64\u9009\u9879\u7B5B\u9009\u8981\u5206\u6790\u7684\u7C7B\u7684\u5217\u8868\u3002\n                                     \u5B83\u53EF\u4EE5\u4E0E\u5411\u88AB\u4F9D\u8D56\u5BF9\u8C61\u5E94\u7528\u6A21\u5F0F\u7684\n                                     -p \u548C -e \u7ED3\u5408\u4F7F\u7528
+main.opt.e=\  -e <regex>\n  -regex <regex>                       \u67E5\u627E\u4E0E\u6307\u5B9A\u6A21\u5F0F\u5339\u914D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002
 
-main.opt.P=\  -P           -profile              \u663E\u793A\u914D\u7F6E\u6587\u4EF6\u6216\u5305\u542B\u7A0B\u5E8F\u5305\u7684\u6587\u4EF6
+main.opt.module=\  -module <module-name>                \u67E5\u627E\u4E0E\u7ED9\u5B9A\u6A21\u5757\u540D\u79F0\u5339\u914D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\n                                       (\u53EF\u591A\u6B21\u6307\u5B9A)\u3002\n                                       -package, -regex, -requires \u662F\u4E92\u65A5\u7684\u3002
 
-main.opt.cp=\  -cp <path>   -classpath <path>     \u6307\u5B9A\u67E5\u627E\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E
+main.opt.include=\  -include <regex>                     \u5C06\u5206\u6790\u9650\u5236\u4E3A\u4E0E\u6A21\u5F0F\u5339\u914D\u7684\u7C7B\n                                       \u6B64\u9009\u9879\u7B5B\u9009\u8981\u5206\u6790\u7684\u7C7B\u7684\u5217\u8868\u3002\n                                       \u5B83\u53EF\u4EE5\u4E0E\u5411\u88AB\u4F9D\u8D56\u5BF9\u8C61\u5E94\u7528\u6A21\u5F0F\u7684\n                                       -p \u548C -e \u7ED3\u5408\u4F7F\u7528
 
-main.opt.R=\  -R           -recursive            \u9012\u5F52\u904D\u5386\u6240\u6709\u88AB\u4F9D\u8D56\u5BF9\u8C61
+main.opt.P=\  -P           -profile                \u663E\u793A\u5305\u542B\u7A0B\u5E8F\u5305\u7684\u914D\u7F6E\u6587\u4EF6
 
-main.opt.apionly=\  -apionly                           \u901A\u8FC7\u516C\u5171\u7C7B (\u5305\u62EC\u5B57\u6BB5\u7C7B\u578B, \u65B9\u6CD5\u53C2\u6570\n                                     \u7C7B\u578B, \u8FD4\u56DE\u7C7B\u578B, \u53D7\u63A7\u5F02\u5E38\u9519\u8BEF\u7C7B\u578B\n                                     \u7B49) \u7684\u516C\u5171\u548C\u53D7\u4FDD\u62A4\u6210\u5458\u7684\u7B7E\u540D\n                                     \u9650\u5236\u5BF9 API (\u5373\u88AB\u4F9D\u8D56\u5BF9\u8C61)\n                                     \u8FDB\u884C\u5206\u6790
+main.opt.M=\  -M                                   \u663E\u793A\u5305\u542B\u7A0B\u5E8F\u5305\u7684\u6A21\u5757
 
-main.opt.dotoutput=\  -dotoutput <dir>                   DOT \u6587\u4EF6\u8F93\u51FA\u7684\u76EE\u6807\u76EE\u5F55
+main.opt.cp=\  -cp <path>   -classpath <path>       \u6307\u5B9A\u67E5\u627E\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E
 
-main.opt.depth=\  -depth=<depth>                     \u6307\u5B9A\u8FC7\u6E21\u88AB\u4F9D\u8D56\u5BF9\u8C61\u5206\u6790\n                                     \u7684\u6DF1\u5EA6
+main.opt.mp=\  -mp <module path>...\n  -modulepath <module path>...         \u6307\u5B9A\u6A21\u5757\u8DEF\u5F84
+
+main.opt.upgrademodulepath=\  -upgrademodulepath <module path>...  \u6307\u5B9A\u5347\u7EA7\u6A21\u5757\u8DEF\u5F84
+
+main.opt.m=\  -m <module-name>                     \u6307\u5B9A\u8981\u5206\u6790\u7684\u6A21\u5757\u540D\u79F0\n                                       \u53CA\u5176\u8FC7\u6E21\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002
+
+main.opt.R=\  -R           -recursive              \u9012\u5F52\u904D\u5386\u6240\u6709\u8FD0\u884C\u65F6\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002\n                                       -R \u9009\u9879\u8868\u793A -filter:none\u3002\u5982\u679C\n                                       \u6307\u5B9A\u4E86 -p, -e, -f \u9009\u9879, \u5219\u53EA\u5206\u6790\n                                       \u5339\u914D\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002
+
+main.opt.ct=\  -ct          -compile-time           \u8FC7\u6E21\u88AB\u4F9D\u8D56\u5BF9\u8C61\u7684\u7F16\u8BD1\u65F6\u89C6\u56FE, \u4F8B\u5982\n                                       -R \u9009\u9879\u7684\u7F16\u8BD1\u65F6\u89C6\u56FE\u3002\u5982\u679C\u4ECE\u76EE\u5F55,\n                                       JAR \u6587\u4EF6\u6216\u6A21\u5757\u4E2D\u627E\u5230\u88AB\u4F9D\u8D56\u5BF9\u8C61,\n                                       \u5219\u5C06\u5206\u6790\u8BE5\u6240\u5728\u6863\u6848\u4E2D\u7684\u6240\u6709\u7C7B\u6587\u4EF6\u3002
+
+main.opt.apionly=\  -apionly                             \u901A\u8FC7\u516C\u5171\u7C7B (\u5305\u62EC\u5B57\u6BB5\u7C7B\u578B, \u65B9\u6CD5\u53C2\u6570\n                                     \u7C7B\u578B, \u8FD4\u56DE\u7C7B\u578B, \u53D7\u63A7\u5F02\u5E38\u9519\u8BEF\u7C7B\u578B\n                                     \u7B49) \u7684\u516C\u5171\u548C\u53D7\u4FDD\u62A4\u6210\u5458\u7684\u7B7E\u540D\n                                     \u9650\u5236\u5BF9 API (\u5373\u88AB\u4F9D\u8D56\u5BF9\u8C61)\n                                     \u8FDB\u884C\u5206\u6790
+
+main.opt.genmoduleinfo=\  -genmoduleinfo <dir>                 \u5728\u6307\u5B9A\u76EE\u5F55\u4E0B\u751F\u6210 module-info.java\u3002\n                                       \u5C06\u5206\u6790\u6307\u5B9A\u7684 JAR \u6587\u4EF6\u3002\n                                       \u6B64\u9009\u9879\u4E0D\u80FD\u4E0E -dotoutput \u6216 -cp \u4E00\u8D77\u4F7F\u7528\u3002
+
+main.opt.check=\  -check                               \u5206\u6790\u901A\u8FC7 -m \u9009\u9879\u6307\u5B9A\u7684\u6A21\u5757\u7684\n                                       \u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002\u5B83\u8F93\u51FA\u5728\u8F6C\u6362\u51CF\u5C11\u540E\n                                       \u751F\u6210\u7684\u6A21\u5757\u4F9D\u8D56\u5173\u7CFB\u56FE\u5F62, \u8FD8\n                                       \u6807\u8BC6\u4EFB\u4F55\u672A\u4F7F\u7528\u7684\u5408\u683C\u5BFC\u51FA\u3002
+
+
+main.opt.dotoutput=\  -dotoutput <dir>                     DOT \u6587\u4EF6\u8F93\u51FA\u7684\u76EE\u6807\u76EE\u5F55
+
+main.opt.jdkinternals=\  -jdkinternals                        \u5728 JDK \u5185\u90E8 API \u4E0A\u67E5\u627E\u7C7B\u7EA7\u522B\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002\n                                     \u9ED8\u8BA4\u60C5\u51B5\u4E0B, \u5B83\u5206\u6790 -classpath \u4E0A\u7684\u6240\u6709\u7C7B\n                                     \u548C\u8F93\u5165\u6587\u4EF6, \u9664\u975E\u6307\u5B9A\u4E86 -include \u9009\u9879\u3002\n                                     \u6B64\u9009\u9879\u4E0D\u80FD\u4E0E -p, -e \u548C -s \u9009\u9879\u4E00\u8D77\u4F7F\u7528\u3002\n                                     \u8B66\u544A: \u5728\u4E0B\u4E00\u4E2A\u53D1\u884C\u7248\u4E2D\u53EF\u80FD\u65E0\u6CD5\u8BBF\u95EE\n                                     JDK \u5185\u90E8 API\u3002
+
+main.opt.depth=\  -depth=<depth>                       \u6307\u5B9A\u8FC7\u6E21\u88AB\u4F9D\u8D56\u5BF9\u8C61\u5206\u6790\n                                       \u7684\u6DF1\u5EA6
+
+main.opt.q=\  -q           -quiet                  \u5728 -genmoduleinfo \u8F93\u51FA\u4E2D\u4E0D\u663E\u793A\u7F3A\u5C11\u7684\u88AB\u4F9D\u8D56\u5BF9\u8C61\u3002
 
 err.unknown.option=\u672A\u77E5\u9009\u9879: {0}
 err.missing.arg=\u6CA1\u6709\u4E3A{0}\u6307\u5B9A\u503C
-err.internal.error=\u5185\u90E8\u9519\u8BEF: {0} {1} {2}
 err.invalid.arg.for.option=\u9009\u9879\u7684\u53C2\u6570\u65E0\u6548: {0}
 err.option.after.class=\u5FC5\u987B\u5728\u7C7B\u4E4B\u524D\u6307\u5B9A\u9009\u9879: {0}
-err.option.unsupported=\u4E0D\u652F\u6301{0}: {1}
+err.genmoduleinfo.not.jarfile={0} \u5BF9 -genmoduleinfo \u9009\u9879\u65E0\u6548 (\u5FC5\u987B\u4E3A JAR \u6587\u4EF6)
 err.profiles.msg=\u6CA1\u6709\u914D\u7F6E\u6587\u4EF6\u4FE1\u606F
-err.dot.output.path=\u65E0\u6548\u8DEF\u5F84: {0}
+err.exception.message={0}
+err.invalid.path=\u65E0\u6548\u8DEF\u5F84: {0}
+err.invalid.module.option=\u5DF2\u8BBE\u7F6E -m {0}, \u4F46\u5DF2\u6307\u5B9A {1}\u3002
+err.invalid.filters=\u53EA\u80FD\u8BBE\u7F6E -package (-p), -regex (-e), -requires \u9009\u9879\u4E2D\u7684\u4E00\u4E2A
+err.module.not.found=\u627E\u4E0D\u5230\u6A21\u5757: {0}
+err.root.module.not.set=-m \u672A\u8BBE\u7F6E
 warn.invalid.arg=\u7C7B\u540D\u65E0\u6548\u6216\u8DEF\u5F84\u540D\u4E0D\u5B58\u5728: {0}
 warn.split.package=\u5DF2\u5728{1} {2}\u4E2D\u5B9A\u4E49\u7A0B\u5E8F\u5305{0}
+warn.replace.useJDKInternals=\u4E0D\u652F\u6301 JDK \u5185\u90E8 API, \u5B83\u4EEC\u4E13\u7528\u4E8E\u901A\u8FC7\u4E0D\u517C\u5BB9\u65B9\u5F0F\u6765\u5220\u9664\n\u6216\u66F4\u6539\u7684 JDK \u5B9E\u73B0, \u53EF\u80FD\u4F1A\u635F\u574F\u60A8\u7684\u5E94\u7528\u7A0B\u5E8F\u3002\n\u8BF7\u4FEE\u6539\u60A8\u7684\u4EE3\u7801, \u6D88\u9664\u4E0E\u4EFB\u4F55 JDK \u5185\u90E8 API \u7684\u76F8\u5173\u6027\u3002\n\u6709\u5173 JDK \u5185\u90E8 API \u66FF\u6362\u7684\u6700\u65B0\u66F4\u65B0, \u8BF7\u67E5\u770B:\n{0}
 
 artifact.not.found=\u627E\u4E0D\u5230
+jdeps.wiki.url=https://wiki.openjdk.java.net/display/JDK8/Java+Dependency+Analysis+Tool
diff --git a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdkinternals.properties b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdkinternals.properties
index 1644f11..8044923 100644
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdkinternals.properties
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/jdkinternals.properties
@@ -22,6 +22,8 @@
 sun.security.krb5=Use com.sun.security.jgss
 sun.security.provider.PolicyFile=Use java.security.Policy.getInstance("JavaPolicy", new URIParameter(uri)) @since 1.6
 sun.security.provider.Sun=Use java.security.Security.getProvider(provider-name) @since 1.3
+sun.security.util.HostnameChecker=Use javax.net.ssl.SSLParameters.setEndpointIdentificationAlgorithm("HTTPS") @since 1.7\n\
+or javax.net.ssl.HttpsURLConnection.setHostnameVerifier() @since 1.4
 sun.security.util.SecurityConstants=Use appropriate java.security.Permission subclass @since 1.1
 sun.security.x509.X500Name=Use javax.security.auth.x500.X500Principal @since 1.4
 sun.tools.jar=Use java.util.jar or jar tool @since 1.2
diff --git a/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_ja.properties b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_ja.properties
new file mode 100644
index 0000000..ffeab73
--- /dev/null
+++ b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_ja.properties
@@ -0,0 +1,222 @@
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+#
+
+jshell.msg.welcome =JShell\u3078\u3088\u3046\u3053\u305D -- \u30D0\u30FC\u30B8\u30E7\u30F3{0}\n\u6982\u8981\u306B\u3064\u3044\u3066\u306F\u3001\u6B21\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044: /help intro\n
+jshell.err.opt.classpath.conflict = -classpath\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u7AF6\u5408\u3057\u3066\u3044\u307E\u3059\u3002
+jshell.err.opt.classpath.arg = -classpath\u3078\u306E\u5F15\u6570\u304C\u3042\u308A\u307E\u305B\u3093\u3002
+jshell.err.opt.startup.conflict = -startup\u307E\u305F\u306F-nostartup\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u7AF6\u5408\u3057\u3066\u3044\u307E\u3059\u3002
+jshell.err.opt.unknown = \u4E0D\u660E\u306A\u30AA\u30D7\u30B7\u30E7\u30F3: {0}
+
+jshell.msg.terminated =\u72B6\u614B\u30A8\u30F3\u30B8\u30F3\u304C\u7D42\u4E86\u3057\u307E\u3057\u305F\u3002\n\u6B21\u3092\u6307\u5B9A\u3057\u3066\u5B9A\u7FA9\u3092\u5FA9\u5143\u3057\u3066\u304F\u3060\u3055\u3044: /reload restore
+
+jshell.msg.use.one.of = \u6B21\u306E\u3044\u305A\u308C\u304B\u3092\u4F7F\u7528\u3057\u307E\u3059: {0}
+jshell.err.def.or.id.not.found = \u6307\u5B9A\u306E\u5B9A\u7FA9\u307E\u305F\u306FID\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {0}
+jshell.msg.see.classes.etc = /classes\u3001/methods\u3001/vars\u307E\u305F\u306F/list\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044
+jshell.err.arg = \u7121\u52B9\u306A''{0}''\u5F15\u6570: {1}
+jshell.msg.see = \u8A73\u7D30\u306F\u3001{0}\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+
+jshell.err.file.not.accessible = ''{0}''\u306E\u30D5\u30A1\u30A4\u30EB''{1}''\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093: {2}
+jshell.err.file.not.found = ''{0}''\u306E\u30D5\u30A1\u30A4\u30EB''{1}''\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {2}
+jshell.err.file.exception = ''{0}''\u306E\u30D5\u30A1\u30A4\u30EB''{1}''\u304C\u4F8B\u5916\u3092\u30B9\u30ED\u30FC\u3057\u307E\u3057\u305F: {2}
+jshell.err.file.filename = ''{0}''\u306B\u306F\u30D5\u30A1\u30A4\u30EB\u540D\u306E\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059\u3002
+
+jshell.err.startup.unexpected.exception = \u8D77\u52D5\u306E\u8AAD\u53D6\u308A\u4E2D\u306B\u4E88\u671F\u3057\u306A\u3044\u4F8B\u5916\u304C\u767A\u751F\u3057\u307E\u3057\u305F: {0}
+jshell.err.unexpected.exception = \u4E88\u671F\u3057\u306A\u3044\u4F8B\u5916: {0}
+
+jshell.err.no.such.command.or.snippet.id = \u6307\u5B9A\u3055\u308C\u305F\u30B3\u30DE\u30F3\u30C9\u307E\u305F\u306F\u30B9\u30CB\u30DA\u30C3\u30C8ID\u306F\u5B58\u5728\u3057\u307E\u305B\u3093: {0}
+jshell.err.command.ambiguous = \u30B3\u30DE\u30F3\u30C9: ''{0}''\u306F\u3042\u3044\u307E\u3044\u3067\u3059: {1}
+jshell.err.set.editor.arg = ''/set editor''\u30B3\u30DE\u30F3\u30C9\u306B\u306F\u30D1\u30B9\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059
+jshell.msg.set.editor.set = \u30A8\u30C7\u30A3\u30BF\u306F\u6B21\u306B\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059: {0}
+
+jshell.msg.try.list.without.args = \u5F15\u6570\u3092\u6307\u5B9A\u305B\u305A\u306B''/list''\u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+jshell.msg.no.active = \u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u5B9A\u7FA9\u304C\u3042\u308A\u307E\u305B\u3093\u3002
+
+jshell.msg.resetting = \u30EA\u30BB\u30C3\u30C8\u4E2D...
+jshell.msg.resetting.state = \u72B6\u614B\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3044\u307E\u3059\u3002
+
+jshell.err.reload.no.previous = \u5FA9\u5143\u3059\u308B\u4EE5\u524D\u306E\u5C65\u6B74\u304C\u3042\u308A\u307E\u305B\u3093
+jshell.err.reload.restarting.previous.state = \u518D\u8D77\u52D5\u3057\u3001\u4EE5\u524D\u306E\u72B6\u614B\u304B\u3089\u5FA9\u5143\u3057\u3066\u3044\u307E\u3059\u3002
+jshell.err.reload.restarting.state = \u518D\u8D77\u52D5\u3057\u3001\u72B6\u614B\u3092\u5FA9\u5143\u3057\u3066\u3044\u307E\u3059\u3002
+
+jshell.msg.vars.not.active = (\u975E\u30A2\u30AF\u30C6\u30A3\u30D6)
+
+jshell.err.out.of.range = \u7BC4\u56F2\u5916
+
+jshell.msg.error = \u30A8\u30E9\u30FC:
+jshell.msg.warning = \u8B66\u544A:
+
+jshell.err.set.arg = ''/set''\u30B3\u30DE\u30F3\u30C9\u306B\u306F\u3001\u30B5\u30D6\u30B3\u30DE\u30F3\u30C9\u304A\u3088\u3073\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059\u3002''/help /set''\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044
+jshell.err.set.ambiguous = ''/set''\u3078\u306E\u30B5\u30D6\u30B3\u30DE\u30F3\u30C9\u5F15\u6570\u304C\u3042\u3044\u307E\u3044\u3067\u3059: {0}
+
+jshell.err.classpath.arg = /classpath\u30B3\u30DE\u30F3\u30C9\u306B\u306F\u30D1\u30B9\u5F15\u6570\u304C\u5FC5\u8981\u3067\u3059\u3002
+jshell.msg.classpath = \u30D1\u30B9''{0}''\u304C\u30AF\u30E9\u30B9\u30D1\u30B9\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F
+
+jshell.err.help.arg = \u6307\u5B9A\u3057\u305F\u5F15\u6570\u3067\u59CB\u307E\u308B\u30B3\u30DE\u30F3\u30C9\u307E\u305F\u306F\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u306F\u3042\u308A\u307E\u305B\u3093: {0}
+jshell.msg.help.begin =Java\u8A00\u8A9E\u306E\u5F0F\u3001\u6587\u307E\u305F\u306F\u5BA3\u8A00\u3092\u5165\u529B\u3057\u307E\u3059\u3002\n\u307E\u305F\u306F\u3001\u6B21\u306E\u30B3\u30DE\u30F3\u30C9\u306E\u3044\u305A\u308C\u304B\u3092\u5165\u529B\u3057\u307E\u3059:\n
+jshell.msg.help.subject =\n\u8A73\u7D30\u306F\u3001''/help''\u306E\u5F8C\u306B\u30B3\u30DE\u30F3\u30C9\u307E\u305F\u306F\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u540D\u524D\u3092\u7D9A\u3051\u3066\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n\u305F\u3068\u3048\u3070\u3001''/help /list''\u307E\u305F\u306F''/help intro''\u306A\u3069\u3067\u3059\u3002\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8:\n
+
+jshell.err.drop.arg =/drop\u5F15\u6570\u306B\u306F\u3001\u524A\u9664\u3059\u308B\u30A4\u30F3\u30DD\u30FC\u30C8\u3001\u5909\u6570\u3001\u30E1\u30BD\u30C3\u30C9\u307E\u305F\u306F\u30AF\u30E9\u30B9\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\nID\u307E\u305F\u306F\u540D\u524D\u3067\u6307\u5B9A\u3057\u307E\u3059\u3002ID\u3092\u53C2\u7167\u3059\u308B\u306B\u306F/list\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u72B6\u614B\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u306B\u306F/reset\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002
+jshell.msg.drop.not.active = \u5F15\u6570\u306B\u3001\u524A\u9664\u3059\u308B\u30A4\u30F3\u30DD\u30FC\u30C8\u3001\u5909\u6570\u3001\u30E1\u30BD\u30C3\u30C9\u307E\u305F\u306F\u30AF\u30E9\u30B9\u304C\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3067\u3057\u305F\u3002
+jshell.err.drop.ambiguous = \u5F15\u6570\u304C\u3001\u8907\u6570\u306E\u30A4\u30F3\u30DD\u30FC\u30C8\u3001\u5909\u6570\u3001\u30E1\u30BD\u30C3\u30C9\u307E\u305F\u306F\u30AF\u30E9\u30B9\u3092\u53C2\u7167\u3057\u3066\u3044\u307E\u3059\u3002
+jshell.err.failed = \u5931\u6557\u3057\u307E\u3057\u305F\u3002
+jshell.msg.native.method = Native\u30E1\u30BD\u30C3\u30C9
+jshell.msg.unknown.source = \u4E0D\u660E\u306A\u30BD\u30FC\u30B9
+jshell.msg.goodbye = \u7D42\u4E86\u3057\u307E\u3059
+
+jshell.msg.help.for.help = \u30D8\u30EB\u30D7\u3092\u53C2\u7167\u3059\u308B\u306B\u306F\u3001/help\u3068\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+
+jshell.err.feedback.expected.new.feedback.mode = \u65B0\u898F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u304C\u5FC5\u8981\u3067\u3059 -- {0}
+jshell.err.feedback.expected.mode.name = \u65B0\u898F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u540D\u304C\u5FC5\u8981\u3067\u3059\u3002''{0}''\u306F\u65E2\u77E5\u306E\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3067\u3059 -- {1}
+jshell.err.feedback.command.quiet = ''command''\u307E\u305F\u306F''quiet''\u3092\u6307\u5B9A\u3057\u307E\u3059 -- {0}
+jshell.err.feedback.expected.field = \u5FC5\u8981\u306A\u30D5\u30A3\u30FC\u30EB\u30C9\u540D\u304C\u3042\u308A\u307E\u305B\u3093 -- {0}
+jshell.err.feedback.expected.mode = \u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u304C\u5FC5\u8981\u3067\u3059 -- {0}
+jshell.err.feedback.does.not.match.mode = \u73FE\u5728\u306E\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093: {0} -- {1}
+jshell.err.feedback.ambiguous.mode = \u8907\u6570\u306E\u73FE\u5728\u306E\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3068\u4E00\u81F4\u3057\u307E\u3059: {0} -- {1}
+jshell.err.feedback.expected.format = \u5FC5\u8981\u306A\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u304C\u3042\u308A\u307E\u305B\u3093 -- {0}
+jshell.err.feedback.must.be.quoted = \u30D5\u30A9\u30FC\u30DE\u30C3\u30C8''{0}''\u306F\u5F15\u7528\u7B26\u3067\u56F2\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059 -- {1}
+jshell.err.feedback.not.a.valid.selector = ''{1}''\u306E\u6709\u52B9\u306A\u30BB\u30EC\u30AF\u30BF''{0}''\u3067\u306F\u3042\u308A\u307E\u305B\u3093 -- {2}
+jshell.err.feedback.multiple.sections = ''{1}''\u306E\u30BB\u30EC\u30AF\u30BF\u30FB\u30EA\u30B9\u30C8''{0}''\u306E\u8907\u6570\u30BB\u30AF\u30B7\u30E7\u30F3\u5185\u306E\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E -- {2}
+jshell.err.feedback.different.selector.kinds = ''{1}''\u306E\u30BB\u30EC\u30AF\u30BF\u30FB\u30EA\u30B9\u30C8''{0}''\u306E\u540C\u3058\u30BB\u30AF\u30B7\u30E7\u30F3\u5185\u306E\u7570\u306A\u308B\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E -- {2}
+
+jshell.msg.feedback.new.mode = \u65B0\u898F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F: {0}
+jshell.msg.feedback.mode = \u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9: {0}
+jshell.msg.feedback.mode.following = \u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u306F\u6B21\u306E\u3044\u305A\u308C\u304B\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059:
+
+jshell.console.see.more = <\u8A73\u7D30\u306F\u3001\u30BF\u30D6\u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044>
+jshell.console.do.nothing = \u4F55\u3082\u3057\u306A\u3044
+jshell.console.choice = \u9078\u629E: 
+jshell.console.create.variable = \u5909\u6570\u306E\u4F5C\u6210
+jshell.console.resolvable = \n\u8B58\u5225\u5B50\u306F\u3053\u306E\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3067\u89E3\u6C7A\u3067\u304D\u307E\u3059\u3002
+jshell.console.no.candidate = \n\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u5019\u88DC\u306E\u5B8C\u5168\u4FEE\u98FE\u3055\u308C\u305F\u540D\u524D\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002
+jshell.console.incomplete = \n\u7D50\u679C\u304C\u4E0D\u5B8C\u5168\u3067\u3042\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u7D50\u679C\u3092\u5B8C\u5168\u306B\u3059\u308B\u306B\u306F\u3001\u5F8C\u3067\u518D\u8A66\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002
+
+
+help.usage = \u4F7F\u7528\u65B9\u6CD5:   jshell <options> <load files>\n\u4F7F\u7528\u53EF\u80FD\u306A\u30AA\u30D7\u30B7\u30E7\u30F3\u306B\u306F\u6B21\u306E\u3082\u306E\u304C\u3042\u308A\u307E\u3059:\n\t-classpath <path>          \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u51FA\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n\t-cp <path>                 \u30E6\u30FC\u30B6\u30FC\u30FB\u30AF\u30E9\u30B9\u30FB\u30D5\u30A1\u30A4\u30EB\u3092\u691C\u51FA\u3059\u308B\u5834\u6240\u3092\u6307\u5B9A\u3059\u308B\n\t-startup <file>            \u8D77\u52D5\u5B9A\u7FA9\u306E\u4EE3\u66FF\u3068\u3057\u3066\u5B9F\u884C\u3055\u308C\u308B\n\t-nostartup                 \u8D77\u52D5\u5B9A\u7FA9\u3092\u5B9F\u884C\u3057\u306A\u3044\n\t-help                      \u6A19\u6E96\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u6982\u8981\u3092\u51FA\u529B\u3059\u308B\n\t-version                   \u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\n
+
+help.list.summary = \u5165\u529B\u3057\u305F\u30BD\u30FC\u30B9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059
+help.list.args = [all|start|<name or id>]
+help.list =\u30B9\u30CB\u30DA\u30C3\u30C8ID\u304C\u4ED8\u304F\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u30BD\u30FC\u30B9\u3092\u8868\u793A\u3057\u307E\u3059\u3002\n\n/list\n\t\u5165\u529B\u3057\u305F\u3001\u307E\u305F\u306F/open\u3067\u8AAD\u307F\u53D6\u3063\u305F\u30B3\u30FC\u30C9\u306E\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\n/list start\n\t\u81EA\u52D5\u7684\u306B\u8A55\u4FA1\u3055\u308C\u305F\u8D77\u52D5\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\n/list all\n\t\u5931\u6557\u3001\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u6E08\u3001\u524A\u9664\u6E08\u304A\u3088\u3073\u8D77\u52D5\u3092\u542B\u3080\u3059\u3079\u3066\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\n\n/list <name>\n\t\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059(\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u30D7\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9)\n\n/list <id>\n\t\u6307\u5B9A\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8ID\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059
+
+help.edit.summary = \u540D\u524D\u307E\u305F\u306FID\u3067\u53C2\u7167\u3055\u308C\u308B\u30BD\u30FC\u30B9\u30FB\u30A8\u30F3\u30C8\u30EA\u3092\u7DE8\u96C6\u3057\u307E\u3059
+help.edit.args = <name or id>
+help.edit =\u5916\u90E8\u30A8\u30C7\u30A3\u30BF\u3067\u30B9\u30CB\u30DA\u30C3\u30C8\u307E\u305F\u306F\u30BD\u30FC\u30B9\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u7DE8\u96C6\u3057\u307E\u3059\u3002\n\u4F7F\u7528\u3059\u308B\u30A8\u30C7\u30A3\u30BF\u306F/set editor\u3067\u8A2D\u5B9A\u3055\u308C\u307E\u3059\u3002\n\u30A8\u30C7\u30A3\u30BF\u304C\u8A2D\u5B9A\u3055\u308C\u3066\u3044\u306A\u3044\u5834\u5408\u3001\u7C21\u6613\u30A8\u30C7\u30A3\u30BF\u304C\u8D77\u52D5\u3055\u308C\u307E\u3059\u3002\n\n/edit <name>\n\t\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u7DE8\u96C6\u3057\u307E\u3059(\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u30D7\u30EA\u30D5\u30A1\u30EC\u30F3\u30B9)\n\n/edit <id>\n\t\u6307\u5B9A\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8ID\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u7DE8\u96C6\u3057\u307E\u3059\n\n/edit\n\t\u5165\u529B\u3057\u305F\u3001\u307E\u305F\u306F/open\u3067\u8AAD\u307F\u53D6\u3089\u308C\u305F\u30B3\u30FC\u30C9\u306E\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u7DE8\u96C6\u3057\u307E\u3059
+
+help.drop.summary = \u540D\u524D\u307E\u305F\u306FID\u3067\u53C2\u7167\u3055\u308C\u308B\u30BD\u30FC\u30B9\u30FB\u30A8\u30F3\u30C8\u30EA\u3092\u524A\u9664\u3057\u307E\u3059
+help.drop.args = <name or id>
+help.drop =\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u524A\u9664\u3057\u307E\u3059 -- \u975E\u30A2\u30AF\u30C6\u30A3\u30D6\u306B\u3057\u307E\u3059\u3002\n\n/drop <name>\n\t\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u524A\u9664\u3057\u307E\u3059\n\n/drop <id>\n\t\u6307\u5B9A\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8ID\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u524A\u9664\u3057\u307E\u3059
+
+help.save.summary = \u30D5\u30A1\u30A4\u30EB\u306B\u30B9\u30CB\u30DA\u30C3\u30C8\u30FB\u30BD\u30FC\u30B9\u3092\u4FDD\u5B58\u3057\u307E\u3059\u3002
+help.save.args = [all|history|start] <file>
+help.save =\u6307\u5B9A\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\u307E\u305F\u306F\u30B3\u30DE\u30F3\u30C9(\u3042\u308B\u3044\u306F\u305D\u306E\u4E21\u65B9)\u3092\u6307\u5B9A\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3059\u3002\n\n/save <file>\n\t\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u30BD\u30FC\u30B9\u3092\u30D5\u30A1\u30A4\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3059\u3002\n\n/save all <file>\n\t\u3059\u3079\u3066\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u30BD\u30FC\u30B9\u3092\u30D5\u30A1\u30A4\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3059\u3002\n\t\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u6E08\u3001\u5931\u6557\u304A\u3088\u3073\u8D77\u52D5\u30B3\u30FC\u30C9\u3092\u542B\u3080\u30BD\u30FC\u30B9\u304C\u542B\u307E\u308C\u307E\u3059\u3002\n\n/save history <file>\n\tjshell\u306E\u8D77\u52D5\u4EE5\u964D\u5165\u529B\u3055\u308C\u305F\u3001\u3059\u3079\u3066\u306E\u30B3\u30DE\u30F3\u30C9\u304A\u3088\u3073\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u9806\u6B21\u5C65\u6B74\u3092\u4FDD\u5B58\u3057\u307E\u3059\u3002\n\n/save start <file>\n\t\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u8D77\u52D5\u5B9A\u7FA9\u3092\u30D5\u30A1\u30A4\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3059\u3002
+
+help.open.summary = \u30BD\u30FC\u30B9\u306E\u5165\u529B\u3068\u3057\u3066\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304D\u307E\u3059
+help.open.args = <file>
+help.open =\u30D5\u30A1\u30A4\u30EB\u3092\u958B\u304D\u3001\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\u3068\u3057\u3066\u305D\u306E\u5185\u5BB9\u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059\u3002\n\n/open <file>\n\tjshell\u306E\u5165\u529B\u3068\u3057\u3066\u6307\u5B9A\u3057\u305F\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059\u3002
+
+help.vars.summary = \u5BA3\u8A00\u3055\u308C\u305F\u5909\u6570\u304A\u3088\u3073\u305D\u306E\u5024\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059
+help.vars.args =
+help.vars =\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306Ajshell\u5909\u6570\u306E\u30BF\u30A4\u30D7\u3001\u540D\u524D\u304A\u3088\u3073\u5024\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002
+
+help.methods.summary = \u5BA3\u8A00\u3055\u308C\u305F\u30E1\u30BD\u30C3\u30C9\u304A\u3088\u3073\u305D\u306E\u7F72\u540D\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059
+help.methods.args =
+help.methods =\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306Ajshell\u30E1\u30BD\u30C3\u30C9\u306E\u540D\u524D\u3001\u30D1\u30E9\u30E1\u30FC\u30BF\u30FB\u30BF\u30A4\u30D7\u304A\u3088\u3073\u623B\u308A\u578B\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002
+
+help.classes.summary = \u5BA3\u8A00\u3055\u308C\u305F\u30AF\u30E9\u30B9\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059
+help.classes.args =
+help.classes =\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306Ajshell\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u304A\u3088\u3073\u5217\u6319\u578B\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002
+
+help.imports.summary = \u30A4\u30F3\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30A2\u30A4\u30C6\u30E0\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059
+help.imports.args =
+help.imports =\u73FE\u5728\u30A2\u30AF\u30C6\u30A3\u30D6\u306Ajshell\u306E\u30A4\u30F3\u30DD\u30FC\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002
+
+help.exit.summary = exit jshell
+help.exit.args =
+help.exit =jshell\u30C4\u30FC\u30EB\u3092\u7D42\u4E86\u3057\u307E\u3059\u3002\u4F5C\u696D\u306F\u4FDD\u5B58\u3055\u308C\u307E\u305B\u3093\u3002\n\u3053\u306E\u30B3\u30DE\u30F3\u30C9\u3092\u4F7F\u7528\u3059\u308B\u524D\u306B\u3059\u3079\u3066\u306E\u4F5C\u696D\u3092\u4FDD\u5B58\u3057\u3066\u304F\u3060\u3055\u3044
+
+help.reset.summary = reset jshell
+help.reset.args =
+help.reset =jshell\u30C4\u30FC\u30EB\u30FB\u30B3\u30FC\u30C9\u304A\u3088\u3073\u5B9F\u884C\u72B6\u614B\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u307E\u3059:\n\t* \u5165\u529B\u3057\u305F\u3059\u3079\u3066\u306E\u30B3\u30FC\u30C9\u304C\u5931\u308F\u308C\u307E\u3059\u3002\n\t* \u8D77\u52D5\u30B3\u30FC\u30C9\u304C\u518D\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002\n\t* \u5B9F\u884C\u72B6\u614B\u306F\u518D\u5EA6\u958B\u59CB\u3055\u308C\u307E\u3059\u3002\n\t* \u30AF\u30E9\u30B9\u30D1\u30B9\u306F\u30AF\u30EA\u30A2\u3055\u308C\u307E\u3059\u3002\n\u30C4\u30FC\u30EB\u8A2D\u5B9A\u306F\u6B21\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u3088\u3046\u306B\u4FDD\u6301\u3055\u308C\u307E\u3059: /set ...\n\u3053\u306E\u30B3\u30DE\u30F3\u30C9\u3092\u4F7F\u7528\u3059\u308B\u524D\u306B\u3059\u3079\u3066\u306E\u4F5C\u696D\u3092\u4FDD\u5B58\u3057\u3066\u304F\u3060\u3055\u3044
+
+help.reload.summary = \u30EA\u30BB\u30C3\u30C8\u3057\u3066\u95A2\u9023\u3059\u308B\u5C65\u6B74\u3092\u30EA\u30D7\u30EC\u30A4\u3057\u307E\u3059 -- \u73FE\u5728\u307E\u305F\u306F\u4EE5\u524D(restore)
+help.reload.args = [restore] [quiet]
+help.reload =jshell\u30C4\u30FC\u30EB\u30FB\u30B3\u30FC\u30C9\u304A\u3088\u3073\u5B9F\u884C\u72B6\u614B\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3001\u5404jshell\u6709\u52B9\u30B3\u30DE\u30F3\u30C9\n\u304A\u3088\u3073\u6709\u52B9\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u5165\u529B\u3055\u308C\u305F\u9806\u756A\u3067\u30EA\u30D7\u30EC\u30A4\u3057\u307E\u3059\u3002\n\n/reload\n\t\u30EA\u30BB\u30C3\u30C8\u3055\u308C\u3001jshell\u304C\u5165\u529B\u3055\u308C\u305F\u3001\u3042\u308B\u3044\u306F/reset\u307E\u305F\u306F\n\t/reload\u30B3\u30DE\u30F3\u30C9\u304C\u5B9F\u884C\u3055\u308C\u305F(\u6700\u65B0\u306E\u3044\u305A\u308C\u304B)\u4EE5\u964D\u306E\u6709\u52B9\u306A\u5C65\u6B74\u304C\n\t\u30EA\u30D7\u30EC\u30A4\u3055\u308C\u307E\u3059\u3002\n\n/reload restore\n\t\u30EA\u30BB\u30C3\u30C8\u3055\u308C\u3001jshell\u304C\u5B9F\u884C\u3055\u308C\u305F\u3001\u3042\u308B\u3044\u306F/reset\u307E\u305F\u306F/reload\u30B3\u30DE\u30F3\u30C9\u304C\n\t\u5B9F\u884C\u3055\u308C\u305F\u4EE5\u524D\u3068\u6700\u65B0\u306E\u6642\u9593\u306E\u9593\u306E\u6709\u52B9\u306A\u5C65\u6B74\u304C\u30EA\u30D7\u30EC\u30A4\u3055\u308C\u307E\u3059\u3002\n\t\u305D\u306E\u305F\u3081\u3001\u3053\u308C\u306F\u4EE5\u524D\u306Ejshell\u30C4\u30FC\u30EB\u30FB\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u5FA9\u5143\u306B\n\t\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002\n\n/reload [restore] quiet\n\t'quiet'\u5F15\u6570\u3092\u6307\u5B9A\u3059\u308B\u3068\u3001\u30EA\u30D7\u30EC\u30A4\u304C\u8868\u793A\u3055\u308C\u307E\u305B\u3093\u3002\u30A8\u30E9\u30FC\u306F\u8868\u793A\u3055\u308C\u307E\u3059\u3002
+
+help.classpath.summary = \u30AF\u30E9\u30B9\u30D1\u30B9\u306B\u30D1\u30B9\u3092\u8FFD\u52A0\u3057\u307E\u3059
+help.classpath.args = <path>
+help.classpath =\u30AF\u30E9\u30B9\u30D1\u30B9\u306B\u30D1\u30B9\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002
+
+help.history.summary = \u5165\u529B\u3057\u305F\u5185\u5BB9\u306E\u5C65\u6B74
+help.history.args =
+help.history =jshell\u306E\u8D77\u52D5\u4EE5\u964D\u5165\u529B\u3055\u308C\u305F\u3001\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\u306E\u5C65\u6B74\u3092\u8868\u793A\u3057\u307E\u3059\u3002
+
+help.debug.summary = jshell\u306E\u30C7\u30D0\u30C3\u30B0\u3092\u5207\u308A\u66FF\u3048\u307E\u3059
+help.debug.args = [0][r][g][f][c][d][e]
+help.debug =jshell\u5B9F\u88C5\u306B\u5BFE\u3059\u308B\u30C7\u30D0\u30C3\u30B0\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059\u3002\n0: \u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30D5\nr: \u30C4\u30FC\u30EB\u30FB\u30EC\u30D9\u30EB\u306E\u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30F3\ng: \u4E00\u822C\u7684\u306A\u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30F3\nf: \u30D5\u30A1\u30A4\u30EB\u30FB\u30DE\u30CD\u30FC\u30B8\u30E3\u306E\u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30F3\nc: \u5B8C\u4E86\u5206\u6790\u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30F3\nd: \u4F9D\u5B58\u6027\u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30F3\ne: \u30A4\u30D9\u30F3\u30C8\u30FB\u30C7\u30D0\u30C3\u30B0\u30FB\u30AA\u30F3
+
+help.help.summary = jshell\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u53D6\u5F97\u3057\u307E\u3059
+help.help.args = [<command>|<subject>]
+help.help =jshell\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059\u3002\n/help\n\tjshell\u30B3\u30DE\u30F3\u30C9\u304A\u3088\u3073\u30D8\u30EB\u30D7\u306E\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u3092\u30EA\u30B9\u30C8\u3057\u307E\u3059\u3002\n\n/help <command>\n\t\u6307\u5B9A\u3057\u305F\u30B3\u30DE\u30F3\u30C9\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059\u3002\u30B9\u30E9\u30C3\u30B7\u30E5\u3092\u542B\u3081\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\t\u5FC5\u8981\u306A\u306E\u306F\u30B3\u30DE\u30F3\u30C9\u306E\u6700\u521D\u306E\u6570\u6587\u5B57\u306E\u307F\u3067\u3059 -- \u8907\u6570\u3042\u308B\u5834\u5408\u306F\n\t\u305D\u308C\u305E\u308C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u4F8B:  /help /li\n\n/help <subject>\n\t\u6307\u5B9A\u3057\u305F\u30D8\u30EB\u30D7\u306E\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059\u3002\u4F8B: /help intro
+
+help.set.summary = jshell\u69CB\u6210\u60C5\u5831\u3092\u8A2D\u5B9A\u3057\u307E\u3059
+help.set.args = editor|start|feedback|newmode|prompt|format ...
+help.set =\u6B21\u306E\u3088\u3046\u306Ajshell\u69CB\u6210\u60C5\u5831\u3092\u8A2D\u5B9A\u3057\u307E\u3059:\n\u4F7F\u7528\u3059\u308B\u5916\u90E8\u30A8\u30C7\u30A3\u30BF\u3001\u4F7F\u7528\u3059\u308B\u8D77\u52D5\u5B9A\u7FA9\u3001\u65B0\u898F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3001\n\u30B3\u30DE\u30F3\u30C9\u30FB\u30D7\u30ED\u30F3\u30D7\u30C8\u3001\u4F7F\u7528\u3059\u308B\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u307E\u305F\u306F\u51FA\u529B\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3002\n\n/set editor <command> <optional-arg>...\n\t/edit\u30B3\u30DE\u30F3\u30C9\u3067\u8D77\u52D5\u3059\u308B\u30B3\u30DE\u30F3\u30C9\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002\n\t<command>\u306F\u30AA\u30DA\u30EC\u30FC\u30C6\u30A3\u30F3\u30B0\u30FB\u30B7\u30B9\u30C6\u30E0\u4F9D\u5B58\u6587\u5B57\u5217\u3067\u3059\u3002\n\n/set start <file>\n\t\u6307\u5B9A\u3057\u305F<file>\u306E\u5185\u5BB9\u304C\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u8D77\u52D5\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\u306B\u306A\u308A\u307E\u3059\u3002\n\n/set feedback <mode>\n\t\u5165\u529B\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\u306B\u5BFE\u3057\u3066\u8868\u793A\u3055\u308C\u308B\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u793A\u3059\u3001\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002\n\n/set newmode <new-mode> [command|quiet [<old-mode>]]\n\t\u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3092\u4F5C\u6210\u3057\u307E\u3059\u3002\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u65E2\u5B58\u306E\u30E2\u30FC\u30C9\u3092\u30B3\u30D4\u30FC\u3057\u307E\u3059\u3002\n\n/set prompt <mode> "<prompt>" "<continuation-prompt>"\n\t\u6307\u5B9A\u306E\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u306B\u5BFE\u3057\u3066\u8868\u793A\u3055\u308C\u308B\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002\n\n/set format <mode> <field> "<format>" <selector>...\n\t\u30BB\u30EC\u30AF\u30BF\u304C\u4E00\u81F4\u3057\u305F\u969B\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u8A2D\u5B9A\u3059\u308B\u3053\u3068\u3067\u3001\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3092\u69CB\u6210\u3057\u307E\u3059\u3002\n\n\u3053\u308C\u3089\u306E\u5F62\u5F0F\u306E\u8A73\u7D30\u306F\u3001\u5F62\u5F0F\u3092\u6307\u5B9A\u3057\u3066/help\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n\u4F8B:   /help /set format
+
+help.quest.summary = jshell\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u53D6\u5F97\u3057\u307E\u3059
+help.quest.args = [<command>|<subject>]
+help.quest =jshell\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059(/help\u306E\u7701\u7565\u5F62)\u3002\n/?\n\t\u30B3\u30DE\u30F3\u30C9\u304A\u3088\u3073\u30D8\u30EB\u30D7\u306E\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u306E\u30EA\u30B9\u30C8\u3092\u8868\u793A\u3057\u307E\u3059\u3002\n/? <command>\n\t\u6307\u5B9A\u3057\u305F\u30B3\u30DE\u30F3\u30C9\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059\u3002\u30B9\u30E9\u30C3\u30B7\u30E5\u3092\u542B\u3081\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\t\u5FC5\u8981\u306A\u306E\u306F\u30B3\u30DE\u30F3\u30C9\u306E\u6700\u521D\u306E\u6570\u6587\u5B57\u306E\u307F\u3067\u3059 -- \u8907\u6570\u4E00\u81F4\u3059\u308B\u5834\u5408\u306F\n\t\u305D\u308C\u305E\u308C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u4F8B:  /help /li\n/? <subject>\n\t\u6307\u5B9A\u3057\u305F\u30D8\u30EB\u30D7\u306E\u30B5\u30D6\u30B8\u30A7\u30AF\u30C8\u306B\u95A2\u3059\u308B\u60C5\u5831\u3092\u8868\u793A\u3057\u307E\u3059\u3002\u4F8B: /? intro
+
+help.bang.summary = \u6700\u5F8C\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u518D\u5B9F\u884C\u3057\u307E\u3059
+help.bang.args =
+help.bang =\u6700\u5F8C\u306B\u5165\u529B\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u518D\u8A55\u4FA1\u3057\u307E\u3059\u3002
+
+help.id.summary = ID\u3067\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u518D\u5B9F\u884C\u3057\u307E\u3059
+help.id.args =
+help.id =ID\u3067\u6307\u5B9A\u3055\u308C\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u518D\u8A55\u4FA1\u3057\u307E\u3059\u3002
+
+help.previous.summary = n\u56DE\u524D\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u518D\u5B9F\u884C\u3057\u307E\u3059
+help.previous.args =
+help.previous =n\u56DE\u524D\u306B\u5165\u529B\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\u3092\u518D\u8A55\u4FA1\u3057\u307E\u3059\u3002
+
+help.intro.summary = jshell\u30C4\u30FC\u30EB\u306E\u6982\u8981
+help.intro =jshell\u30C4\u30FC\u30EB\u3092\u4F7F\u7528\u3059\u308B\u3068\u3001Java\u30B3\u30FC\u30C9\u3092\u5B9F\u884C\u3057\u3066\u5373\u5EA7\u306B\u7D50\u679C\u3092\u53D6\u5F97\u3067\u304D\u307E\u3059\u3002\nint x = 8\u306A\u3069\u306EJava\u5B9A\u7FA9(\u5909\u6570\u3001\u30E1\u30BD\u30C3\u30C9\u3001\u30AF\u30E9\u30B9\u306A\u3069)\u3001\nx + x\u306A\u3069\u306EJava\u5F0F\u307E\u305F\u306FJava\u6587\u3092\u5165\u529B\u3057\u305F\u308A\u3001\n\u30A4\u30F3\u30DD\u30FC\u30C8\u3057\u305F\u308A\u3067\u304D\u307E\u3059\u3002\n\u3053\u308C\u3089\u306EJava\u30B3\u30FC\u30C9\u306E\u5C0F\u3055\u306A\u30C1\u30E3\u30F3\u30AF\u3092\u300C\u30B9\u30CB\u30DA\u30C3\u30C8\u300D\u3068\u547C\u3073\u307E\u3059\u3002\n\n\u307E\u305F\u3001/list\u306A\u3069\u306E\u5B9F\u884C\u3059\u308B\u5185\u5BB9\u3092\u7406\u89E3\u304A\u3088\u3073\u5236\u5FA1\u3067\u304D\u308Bjshell\u30B3\u30DE\u30F3\u30C9\u3082\n\u3042\u308A\u307E\u3059\n\n\u30B3\u30DE\u30F3\u30C9\u306E\u30EA\u30B9\u30C8\u3092\u53C2\u7167\u3059\u308B\u5834\u5408: /help
+
+help.shortcuts.summary = \u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u306E\u8AAC\u660E
+help.shortcuts =\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u308B\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\n<tab>\n\t\tJava\u8B58\u5225\u5B50\u3001jshell\u30B3\u30DE\u30F3\u30C9\u3001\u5834\u5408\u306B\u3088\u3063\u3066\u306F\n\t\tjshell\u30B3\u30DE\u30F3\u30C9\u5F15\u6570\u306E\u6700\u521D\u306E\u6570\u6587\u5B57\u3092\u5165\u529B\u3057\u305F\u5F8C\u306B\u3001\n\t\t<tab>\u30AD\u30FC\u3092\u62BC\u3059\u3068\u3001\u5165\u529B\u304C\u5B8C\u6210\u3057\u307E\u3059\u3002\n\t\t\u5B8C\u6210\u7D50\u679C\u304C\u8907\u6570\u3042\u308B\u5834\u5408\u3001\u4F7F\u7528\u53EF\u80FD\u306A\u5B8C\u6210\u7D50\u679C\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\n\nShift-<tab>\n\t\t\u30E1\u30BD\u30C3\u30C9\u307E\u305F\u306F\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u547C\u51FA\u3057\u306E\u540D\u524D\u3068\u5DE6\u4E38\u30AB\u30C3\u30B3\u306E\u5F8C\u306B\n\t\t<shift>\u30AD\u30FC\u3092\u62BC\u3057\u306A\u304C\u3089<tab>\u3092\u62BC\u3059\u3068\u3001\u4E00\u81F4\u3059\u308B\u3059\u3079\u3066\u306E\u30E1\u30BD\u30C3\u30C9/\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\n\t\t\u30B7\u30CE\u30D7\u30B7\u30B9\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\n\n<fix-shortcut> v\n\t\t\u5B8C\u5168\u306A\u5F0F\u306E\u5F8C\u306B\u3001\u300C<fix-shortcut> v\u300D\u3092\u62BC\u3059\u3068\u3001\u5F0F\u306E\u30BF\u30A4\u30D7\u306B\u57FA\u3065\u3044\u305F\u30BF\u30A4\u30D7\u306E\n\t\t\u65B0\u3057\u3044\u5909\u6570\u304C\u5C0E\u5165\u3055\u308C\u307E\u3059\u3002\n\t\t\u300C<fix-shortcut>\u300D\u306F[Alt]+[F1]\u307E\u305F\u306F[Alt]+[Enter]\u3067\u3001\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u306B\u3088\u3063\u3066\u7570\u306A\u308A\u307E\u3059\u3002\n\n<fix-shortcut> i\n\t\t\u89E3\u6C7A\u3067\u304D\u306A\u3044\u8B58\u5225\u5B50\u306E\u5F8C\u306B\u3001\u300C<fix-shortcut> i\u300D\u3092\u62BC\u3059\u3068\u3001jshell\u306F\u6307\u5B9A\u3057\u305F\n\t\t\u30AF\u30E9\u30B9\u30D1\u30B9\u306E\u5185\u5BB9\u306B\u57FA\u3065\u3044\u3066\u4F7F\u7528\u53EF\u80FD\u306A\u5B8C\u5168\u4FEE\u98FE\u3055\u308C\u305F\u540D\u524D\u3092\u63D0\u793A\u3057\u307E\u3059\u3002\n\t\t\u300C<fix-shortcut>\u300D\u306F[Alt]+[F1]\u307E\u305F\u306F[Alt]+[Enter]\u3067\u3001\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u306B\u3088\u3063\u3066\u7570\u306A\u308A\u307E\u3059\u3002
+
+help.set.format = \u30B9\u30CB\u30DA\u30C3\u30C8\u30FB\u30A4\u30D9\u30F3\u30C8\u3092\u30EC\u30DD\u30FC\u30C8\u3059\u308B\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002\n\n\t/set format <mode> <field> "<format>" <selector>...\n\n<mode>\u306F\u4E8B\u524D\u306B\u5B9A\u7FA9\u3055\u308C\u305F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u306E\u540D\u524D\u3067\u3059 -- '/help /set newmode'\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n<field>\u306F\u5B9A\u7FA9\u3059\u308B\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u56FA\u6709\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u306E\u540D\u524D\u3067\u3059\u3002\n<format>\u306F\u5F15\u7528\u7B26\u306B\u56F2\u307E\u308C\u305F\u6587\u5B57\u5217\u3067\u3001\u6B21\u306E\u5834\u5408\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u5024\u3067\u3059: \n\u30BB\u30EC\u30AF\u30BF\u304C\u4E00\u81F4\u3059\u308B(\u307E\u305F\u306F\u30BB\u30EC\u30AF\u30BF\u304C\u306A\u3044)\u3002\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u304C\u4F7F\u7528\u3055\u308C\u308B\u5834\u5408\u3001\n\u4E2D\u30AB\u30C3\u30B3\u3067\u56F2\u307E\u308C\u3066\u3044\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u540D\u304C\u305D\u306E\u3068\u304D\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u5024\u3067\u7F6E\u63DB\u3055\u308C\u307E\u3059\n\u3053\u308C\u3089\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u3001\u3053\u306E\u30B3\u30DE\u30F3\u30C9\u3067\u4E8B\u524D\u306B\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u308B\u5834\u5408\u3082\u3001\n\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u306B\u56FA\u6709\u306E\u3053\u308C\u3089\u306E\u4E8B\u524D\u5B9A\u7FA9\u6E08\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5834\u5408\u3082\u3042\u308A\u307E\u3059:\n\t{name}       == \u540D\u524D\u3001\u4F8B: \u5909\u6570\u540D\u3001 ...\n\t{type}       == \u30BF\u30A4\u30D7\u540D\u3002\u5909\u6570\u307E\u305F\u306F\u5F0F\u306E\u30BF\u30A4\u30D7\u3001\n\t\t\t\u30E1\u30BD\u30C3\u30C9\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FB\u30BF\u30A4\u30D7\n\t{value}      == \u5F0F\u307E\u305F\u306F\u5909\u6570\u306E\u521D\u671F\u5316\u306E\u7D50\u679C\u5024\n\t{unresolved} == \u672A\u89E3\u6C7A\u306E\u53C2\u7167\u306E\u30EA\u30B9\u30C8\n\t{errors}     == \u30EA\u30AB\u30D0\u30EA\u53EF\u80FD\u306A\u30A8\u30E9\u30FC\u306E\u30EA\u30B9\u30C8(\u51E6\u7406\u6642-\n\t\t\t"display"\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u307F)\n\t{err}        == \u672A\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u30FB\u30A8\u30E9\u30FC\u884C(\u51E6\u7406\u6642-\n\t\t\t"errorline"\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u307F)\n\u6B21\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u30C4\u30FC\u30EB\u306B\u3088\u3063\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u3001\u8868\u793A\u3055\u308C\u308B\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u6C7A\u5B9A\u3057\u307E\u3059:\n\t{display}    == \u30B9\u30CB\u30DA\u30C3\u30C8\u30FB\u30A4\u30D9\u30F3\u30C8\u306B\u5BFE\u3057\u3066\u8868\u793A\u3055\u308C\u308B\u30E1\u30C3\u30BB\u30FC\u30B8\n\t{errorline}  == \u300Cerrors\u300D\u30D5\u30A3\u30FC\u30EB\u30C9\u5185\u306E\u30A8\u30E9\u30FC\u884C\u306E\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\n\t{pre}        == \u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u63A5\u982D\u8F9E(\u30B3\u30DE\u30F3\u30C9\u30FB\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u958B\u59CB\u3059\u308B)\n\t{post}       == \u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u63A5\u5C3E\u8F9E(\u30B3\u30DE\u30F3\u30C9\u30FB\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u7D42\u4E86\u3059\u308B)\n\t{errorpre}   == \u30A8\u30E9\u30FC\u63A5\u982D\u8F9E(\u30A8\u30E9\u30FC\u30FB\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u958B\u59CB\u3059\u308B)\n\t{errorpost}  == \
+\u30A8\u30E9\u30FC\u63A5\u5C3E\u8F9E(\u30A8\u30E9\u30FC\u30FB\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u7D42\u4E86\u3059\u308B)\n\u3053\u308C\u3089\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306B\u306F\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u8A2D\u5B9A\u304C\u3042\u308A\u307E\u3059(\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059)\u3002\n<selector>\u306F\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8\u304C\u9069\u7528\u3055\u308C\u308B\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3067\u3059\u3002\n\u30BB\u30EC\u30AF\u30BF\u69CB\u9020\u306F\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u30EA\u30B9\u30C8\u306E\u30CF\u30A4\u30D5\u30F3\u533A\u5207\u308A\u30EA\u30B9\u30C8\u3067\u3059\u3002\n\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u30EA\u30B9\u30C8\u306F\u30011\u3064\u306E\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306E\u5024\u306E\u30AB\u30F3\u30DE\u533A\u5207\u308A\u30EA\u30B9\u30C8\u3067\u3059\u3002\n\u30BB\u30EC\u30AF\u30BF\u306F\u5404\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u30EA\u30B9\u30C8\u304C\u4E00\u81F4\u3059\u308C\u3070\u4E00\u81F4\u3068\u306A\u308A\u307E\u3059\u3002\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u30EA\u30B9\u30C8\u306F\n\u3044\u305A\u308C\u304B\u306E\u5024\u304C\u4E00\u81F4\u3059\u308C\u3070\u4E00\u81F4\u3068\u306A\u308A\u307E\u3059\u3002\n\n\u30B1\u30FC\u30B9\u30FB\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306F\u3001\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u7A2E\u985E\u3092\u793A\u3057\u307E\u3059\u3002\u5024\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\timport     -- \u30A4\u30F3\u30DD\u30FC\u30C8\u5BA3\u8A00\n\tclass      -- \u30AF\u30E9\u30B9\u5BA3\u8A00\n\tinterface  -- \u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u5BA3\u8A00\n\tenum       -- \u5217\u6319\u578B\u306E\u5BA3\u8A00\n\tannotation -- \u6CE8\u91C8\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u5BA3\u8A00\n\tmethod     -- \u30E1\u30BD\u30C3\u30C9\u5BA3\u8A00 -- \u6CE8\u610F: {type}==parameter-types\n\tvardecl    -- \u521D\u671F\u5316\u3057\u306A\u3044\u5909\u6570\u5BA3\u8A00\n\tvarinit    -- \u521D\u671F\u5316\u3059\u308B\u5909\u6570\u5BA3\u8A00\n\texpression -- \u5F0F -- \u6CE8\u610F: {name}==scratch-variable-name\n\tvarvalue   -- \u5909\u6570\u5024\u5F0F\n\tassignment -- \u5909\u6570\u3092\u5272\u308A\u5F53\u3066\u307E\u3059\n\tstatement  -- \u6587\n\u30A2\u30AF\u30B7\u30E7\u30F3\u30FB\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306F\u3001\u30B9\u30CB\u30DA\u30C3\u30C8\u306B\u767A\u751F\u3057\u305F\u5185\u5BB9\u3092\u793A\u3057\u307E\u3059\u3002\u5024\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\tadded     -- \u30B9\u30CB\u30DA\u30C3\u30C8\u304C\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\n\tmodified  -- \u65E2\u5B58\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u304C\u5909\u66F4\u3055\u308C\u307E\u3057\u305F\n\treplaced  -- \u65E2\u5B58\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u304C\u65B0\u898F\u30B9\u30CB\u30DA\u30C3\u30C8\u3067\u7F6E\u63DB\u3055\u308C\u307E\u3057\u305F\n\toverwrote -- \u65E2\u5B58\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u304C\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3055\u308C\u307E\u3057\u305F\n\tdropped   -- \u30B9\u30CB\u30DA\u30C3\u30C8\u304C\u524A\u9664\u3055\u308C\u307E\u3057\u305F\n\tused      -- \u4F7F\u7528\u3067\u304D\u306A\u3044\u3068\u304D\u306B\u30B9\u30CB\u30DA\u30C3\u30C8\u304C\u4F7F\u7528\u3055\u308C\u307E\u3057\u305F\n\u767A\u751F\u6642\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306F\u3001\u3053\u308C\u304C\u76F4\u63A5\u307E\u305F\u306F\u9593\u63A5\u30A2\u30AF\u30B7\u30E7\u30F3\u3067\u3042\u308B\u304B\u3092\u793A\u3057\u307E\u3059\u3002\u5024\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\tprimary -- \u5165\u529B\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\n\tupdate  -- \u4F9D\u5B58\u30B9\u30CB\u30DA\u30C3\u30C8\u3078\u306E\u66F4\u65B0\n\u89E3\u6C7A\u72B6\u614B\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306F\u3001\u30B9\u30CB\u30DA\u30C3\u30C8\u306E\u89E3\u6C7A/\u5B9A\u7FA9\u306E\u72B6\u614B\u3092\u793A\u3057\u307E\u3059\u3002\u5024\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\tok         -- \
+\u6B63\u3057\u304F\u89E3\u6C7A\u3055\u308C\u307E\u3057\u305F\n\tdefined    -- \u5FA9\u5143\u53EF\u80FD\u3067\u672A\u89E3\u6C7A\u306E\u53C2\u7167\u306B\u3082\u304B\u304B\u308F\u3089\u305A\u5B9A\u7FA9\u3055\u308C\u307E\u3057\u305F\n\tnotdefined -- \u5FA9\u5143\u53EF\u80FD\u3067\u672A\u89E3\u6C7A\u306E\u53C2\u7167\u306E\u305F\u3081\u5B9A\u7FA9\u3055\u308C\u307E\u305B\u3093\n\u672A\u89E3\u6C7A\u6570\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306F\u3001\u672A\u89E3\u6C7A\u306E\u53C2\u7167\u306E\u6570\u3092\u793A\u3057\u307E\u3059\u3002\u5024\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\tunresolved0 -- \u672A\u89E3\u6C7A\u306E\u540D\u524D\u306F\u3042\u308A\u307E\u305B\u3093\n\tunresolved1 -- 1\u3064\u306E\u540D\u524D\u304C\u89E3\u6C7A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n\tunresolved2 -- 2\u3064\u4EE5\u4E0A\u306E\u540D\u524D\u304C\u89E3\u6C7A\u3055\u308C\u3066\u3044\u307E\u305B\u3093\n\u30A8\u30E9\u30FC\u6570\u30BB\u30EC\u30AF\u30BF\u7A2E\u985E\u306F\u3001\u30A8\u30E9\u30FC\u306E\u6570\u3092\u793A\u3057\u307E\u3059\u3002\u5024\u306F\u6B21\u306E\u3068\u304A\u308A\u3067\u3059:\n\terror0 -- \u30A8\u30E9\u30FC\u306A\u3057\n\terror1 -- 1\u3064\u306E\u30A8\u30E9\u30FC\n\terror2 -- 2\u3064\u4EE5\u4E0A\u306E\u30A8\u30E9\u30FC\n\n\u4F8B:\n\t/set format myformat action 'Created' added-primary\n\t/set format myformat action 'Update replaced' replaced-update\n\t/set format myformat display '{pre}{action} class {name}{post}' class-ok\n\t/set format myformat display '{pre}{action} variable {name}, reset to null{post}' replaced-vardecl,varinit-ok-update\n\n\u30D5\u30A3\u30FC\u30EB\u30C9\u306B\u5BFE\u3059\u308B\u5F8C\u7D9A\u306E\u30BB\u30EC\u30AF\u30BF\u306B\u3088\u308A\u3001\u4EE5\u524D\u306B\u4F7F\u7528\u3055\u308C\u305F\u30BB\u30EC\u30AF\u30C8\u306E\u4E00\u90E8\u307E\u305F\u306F\u3059\u3079\u3066\u304C\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3055\u308C\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059 -- \u6700\u5F8C\u306E\u30BB\u30EC\u30AF\u30BF\u304C\u6709\u52B9\u306B\u306A\u308A\u307E\u3059\n
+
+help.set.feedback = \u5165\u529B\u3057\u305F\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\u306B\u5BFE\u3057\u3066\u8868\u793A\u3055\u308C\u308B\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u793A\u3059\u3001\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002\n\n\t/set feedback <mode>\n\n<mode>\u306F\u4E8B\u524D\u306B\u5B9A\u7FA9\u3055\u308C\u305F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u306E\u540D\u524D\u3067\u3059\u3002\n\u4E00\u610F\u306B\u3059\u308B\u305F\u3081\u306B\u5FC5\u8981\u306A\u6587\u5B57\u3092\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002\n\u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9\u30E2\u30FC\u30C9\u306F\u8FFD\u52A0\u3067\u304D\u307E\u3059\u3002'/help /set newmode'\u3092\u53C2\u7167\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n\u73FE\u5728\u5B9A\u7FA9\u6E08\u306E\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9:\n
+
+help.set.newmode = \u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u3092\u4F5C\u6210\u3057\u307E\u3059\u3002\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u65E2\u5B58\u306E\u30E2\u30FC\u30C9\u3092\u30B3\u30D4\u30FC\u3057\u307E\u3059\u3002\n\n\t/set newmode <new-mode> [command|quiet [<old-mode>]]\n\n<new-mode>\u306F\u4F5C\u6210\u3059\u308B\u30E2\u30FC\u30C9\u306E\u540D\u524D\u3067\u3059\u3002\n<old-mode>\u306F\u4E8B\u524D\u306B\u5B9A\u7FA9\u3055\u308C\u305F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u306E\u540D\u524D\u3067\u3059\u3002\n<old-mode>\u304C\u3042\u308B\u5834\u5408\u3001\u305D\u306E\u8A2D\u5B9A\u304C\u65B0\u898F\u30E2\u30FC\u30C9\u306B\u30B3\u30D4\u30FC\u3055\u308C\u307E\u3059\u3002\n'command'\u307E\u305F\u306F'quiet'\u306B\u3088\u308A\u3001\u60C5\u5831/\u691C\u8A3C\u4E2D\u306E\u30B3\u30DE\u30F3\u30C9\u30FB\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u3092\u8868\u793A\u3059\u308B\u304B\u3069\u3046\u304B\u304C\u6C7A\u5B9A\u3057\u307E\u3059\u3002\n\n\u65B0\u898F\u30E2\u30FC\u30C9\u3092\u4F5C\u6210\u3057\u305F\u3089\u3001'/set format'\u304A\u3088\u3073'/set prompt'\u3092\u4F7F\u7528\u3057\u3066\u69CB\u6210\u3057\u307E\u3059\u3002\n\u65B0\u898F\u30E2\u30FC\u30C9\u3092\u4F7F\u7528\u3059\u308B\u306B\u306F\u3001'/set feedback'\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002\n
+help.set.prompt = \u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002\u6A19\u6E96\u30D7\u30ED\u30F3\u30D7\u30C8\u3068\u7D9A\u884C\u30D7\u30ED\u30F3\u30D7\u30C8\u306E\u4E21\u65B9\u3092\u8A2D\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n\n\t/set prompt <mode> "<prompt>" "<continuation-prompt>"\n\n<mode>\u306F\u4E8B\u524D\u306B\u5B9A\u7FA9\u3055\u308C\u305F\u30D5\u30A3\u30FC\u30C9\u30D0\u30C3\u30AF\u30FB\u30E2\u30FC\u30C9\u306E\u540D\u524D\u3067\u3059\u3002\n<prompt>\u304A\u3088\u3073<continuation-prompt>\u306F\u5165\u529B\u30D7\u30ED\u30F3\u30D7\u30C8\u3068\u3057\u3066\u51FA\u529B\u3055\u308C\u308B\u5F15\u7528\u7B26\u3067\u56F2\u307E\u308C\u305F\u6587\u5B57\u5217\u3067\u3059\u3002\n\u30AA\u30D7\u30B7\u30E7\u30F3\u3067\u3001\u4E21\u65B9\u3068\u3082\u3001\u6B21\u306E\u30B9\u30CB\u30DA\u30C3\u30C8ID\u3067\u7F6E\u304D\u63DB\u3048\u3089\u308C\u308B'%s'\u3092\u542B\u3080\u3053\u3068\u304C\u3067\u304D\u307E\u3059 --\n\u5165\u529B\u3057\u305F\u5185\u5BB9\u304C\u305D\u306EID\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u306A\u3044\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u30A8\u30E9\u30FC\u307E\u305F\u306F\u30B3\u30DE\u30F3\u30C9\u3067\u3042\u308B\u5834\u5408\u306A\u3069\u3067\u3059\u3002\n\u7D9A\u884C\u30D7\u30ED\u30F3\u30D7\u30C8\u306F\u8907\u6570\u884C\u30B9\u30CB\u30DA\u30C3\u30C8\u306E2\u884C\u76EE\u4EE5\u964D\u3067\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002\n
+
+help.set.editor =/edit\u30B3\u30DE\u30F3\u30C9\u3067\u8D77\u52D5\u3059\u308B\u30B3\u30DE\u30F3\u30C9\u3092\u6307\u5B9A\u3057\u307E\u3059\u3002\n\n\t/set editor <command> <optional-arg>...\n\n<command>\u306F\u30AA\u30DA\u30EC\u30FC\u30C6\u30A3\u30F3\u30B0\u30FB\u30B7\u30B9\u30C6\u30E0\u4F9D\u5B58\u6587\u5B57\u5217\u3067\u3059\u3002\n<command>\u306B\u306F\u30B9\u30DA\u30FC\u30B9\u3067\u533A\u5207\u3089\u308C\u305F\u5F15\u6570(\u30D5\u30E9\u30B0\u306A\u3069)\u304C\u542B\u307E\u308C\u308B\u3053\u3068\u304C\u3042\u308A\u307E\u3059 -- <optional-arg>....\n/edit\u3092\u4F7F\u7528\u3059\u308B\u969B\u306B\u3001\u7DE8\u96C6\u3059\u308B\u4E00\u6642\u30D5\u30A1\u30A4\u30EB\u304C\u6700\u5F8C\u306E\u5F15\u6570\u3068\u3057\u3066\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002
+
+help.set.start =\u8D77\u52D5\u69CB\u6210\u3092\u8A2D\u5B9A\u3057\u307E\u3059 -- \u8D77\u52D5\u6642\u306B\u8AAD\u307F\u53D6\u3089\u308C\u308B\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\u306E\u30B7\u30FC\u30B1\u30F3\u30B9\u3002\n\n\t/set start <file>\n\n\u6307\u5B9A\u3057\u305F<file>\u306E\u5185\u5BB9\u304C\u3001\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u8D77\u52D5\u30B9\u30CB\u30DA\u30C3\u30C8\u304A\u3088\u3073\u30B3\u30DE\u30F3\u30C9\n(jshell\u30C4\u30FC\u30EB\u306E\u8D77\u52D5\u6642\u307E\u305F\u306F\u30EA\u30BB\u30C3\u30C8\u6642\u306B\u5B9F\u884C\u3055\u308C\u308B)\u306B\u306A\u308A\u307E\u3059\u3002
+
+startup.feedback = /set newmode normal command    \n/set prompt normal '\\n-> ' '>> '    \n/set format normal pre '|  '    \n/set format normal post '%n'    \n/set format normal errorpre '|  '    \n/set format normal errorpost '%n'    \n\n/set format normal errorline '{post}{pre}    {err}'    \n\n/set format normal action 'Added' added-primary    \n/set format normal action 'Modified' modified-primary    \n/set format normal action 'Replaced' replaced-primary    \n/set format normal action 'Overwrote' overwrote-primary    \n/set format normal action 'Dropped' dropped-primary    \n/set format normal action '  Update added' added-update    \n/set format normal action '  Update modified' modified-update    \n/set format normal action '  Update replaced' replaced-update    \n/set format normal action '  Update overwrote' overwrote-update    \n/set format normal action '  Update dropped' dropped-update    \n\n/set format normal until ', however, it cannot be instanciated or its methods invoked until'  defined-class-primary    \n/set format normal until ', however, its methods cannot be invoked until'                     defined-interface-primary    \n/set format normal until ', however, it cannot be used until'                                 defined-enum,annotation-primary    \n/set format normal until ', however, it cannot be invoked until'                              defined-method-primary    \n/set format normal until ', however, it cannot be referenced until'                           notdefined-primary    \n/set format normal until ' which cannot be instanciated or its methods invoked until'         defined-class-update    \n/set format normal until ' whose methods cannot be invoked until'                             defined-interface-update    \n/set format normal until ' which cannot be invoked until'                                     defined-method-update    \n/set format normal until ' which cannot be referenced until'                                  notdefined-update    \n\n/set format normal unrerr '{unresolved} is declared'                                           unresolved1-error0    \n/set format normal unrerr '{unresolved} are declared'                                          unresolved2-error0    \n/set format normal unrerr ' this error is corrected: {errors}'                                 unresolved0-error1    \n/set format normal unrerr '{unresolved} is declared and this error is corrected: {errors}'     unresolved1-error1    \n/set format normal unrerr '{unresolved} are declared and this error is corrected: {errors}'    unresolved2-error1    \n/set format normal unrerr ' these errors are corrected: {errors}'                              unresolved0-error2    \n/set format normal unrerr '{unresolved} is declared and these errors are corrected: {errors}'  unresolved1-error2    \n/set format normal unrerr '{unresolved} are declared and these errors are corrected: {errors}' unresolved2-error2    \n\n/set format normal resolve '{until}{unrerr}'                                                added,modified,replaced,used    \n\n/set format normal typeKind 'class'                  class    \n/set format normal typeKind 'interface'              interface    \n/set format normal typeKind 'enum'                   enum    \n/set format normal typeKind 'annotation interface'   annotation    \n\n/set format normal display '{pre}{action} {typeKind} {name}{resolve}{post}'                 class,interface,enum,annotation    \n/set format normal display '{pre}{action} method {name}({type}){resolve}{post}'             method    \n\n/set format normal display '{pre}{action} variable {name} of type {type}{resolve}{post}'    vardecl    \n/set format normal display '{pre}{action} variable {name} of type {type} with initial value {value}{resolve}{post}'    varinit    \n/set format normal display '{pre}{action} variable {name}, reset to null{post}'             replaced-vardecl,varinit-ok-update    \n/set format normal display \
+'{pre}{action} variable {name}{resolve}{post}'                   vardecl,varinit-notdefined    \n/set format normal display '{pre}{action} variable {name}{post}'                            overwrote,dropped-vardecl,varinit    \n\n/set format normal display '{pre}Expression value is: {value}{post}{pre}  assigned to temporary variable {name} of type {type}{post}' expression    \n/set format normal display '{pre}Variable {name} of type {type} has value {value}{post}'    varvalue    \n/set format normal display '{pre}Variable {name} has been assigned the value {value}{post}' assignment    \n\n/set format normal display '{pre}Attempted to use {typeKind} {name}{resolve}{post}'         used-class,interface,enum,annotation    \n/set format normal display '{pre}Attempted to call method {name}({type}){resolve}{post}'    used-method    \n\n/set feedback normal    \n\n/set newmode off quiet    \n/set prompt off '-> ' '>> '    \n/set format off pre '|  '    \n/set format off post '%n'    \n/set format off errorpre '|  '    \n/set format off errorpost '%n'    \n/set format off display ''    \n
diff --git a/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_zh_CN.properties b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_zh_CN.properties
new file mode 100644
index 0000000..dd70aaa
--- /dev/null
+++ b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n_zh_CN.properties
@@ -0,0 +1,221 @@
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+#
+
+jshell.msg.welcome =\u6B22\u8FCE\u4F7F\u7528 JShell -- \u7248\u672C {0}\n\u8981\u5927\u81F4\u4E86\u89E3\u8BE5\u7248\u672C, \u8BF7\u952E\u5165: /help intro\n
+jshell.err.opt.classpath.conflict = \u51B2\u7A81\u7684 -classpath \u9009\u9879\u3002
+jshell.err.opt.classpath.arg = \u7F3A\u5C11 -classpath \u7684\u53C2\u6570\u3002
+jshell.err.opt.startup.conflict = \u51B2\u7A81\u7684 -startup \u6216 -nostartup \u9009\u9879\u3002
+jshell.err.opt.unknown = \u672A\u77E5\u9009\u9879: {0}
+
+jshell.msg.terminated =\u72B6\u6001\u5F15\u64CE\u5DF2\u7EC8\u6B62\u3002\n\u4F7F\u7528 /reload restore \u53EF\u8FD8\u539F\u5B9A\u4E49
+
+jshell.msg.use.one.of = \u4F7F\u7528\u4EE5\u4E0B\u4E4B\u4E00: {0}
+jshell.err.def.or.id.not.found = \u672A\u627E\u5230\u5177\u6709\u4EE5\u4E0B\u540D\u79F0\u7684\u5B9A\u4E49\u6216 ID: {0}
+jshell.msg.see.classes.etc = \u8BF7\u53C2\u9605 /classes, /methods, /vars \u6216 /list
+jshell.err.arg = \u65E0\u6548\u7684 ''{0}'' \u53C2\u6570: {1}
+jshell.msg.see = \u6709\u5173\u5E2E\u52A9\u4FE1\u606F, \u8BF7\u53C2\u9605{0}\u3002
+
+jshell.err.file.not.accessible = \u65E0\u6CD5\u8BBF\u95EE ''{0}'' \u7684\u6587\u4EF6 ''{1}'': {2}
+jshell.err.file.not.found = \u627E\u4E0D\u5230 ''{0}'' \u7684\u6587\u4EF6 ''{1}'': {2}
+jshell.err.file.exception = ''{0}'' \u7684\u6587\u4EF6 ''{1}'' \u5F15\u53D1\u4E86\u5F02\u5E38\u9519\u8BEF: {2}
+jshell.err.file.filename = ''{0}'' \u9700\u8981\u6587\u4EF6\u540D\u53C2\u6570\u3002
+
+jshell.err.startup.unexpected.exception = \u8BFB\u53D6\u542F\u52A8\u65F6\u51FA\u73B0\u610F\u5916\u7684\u5F02\u5E38\u9519\u8BEF: {0}
+jshell.err.unexpected.exception = \u610F\u5916\u5F02\u5E38\u9519\u8BEF: {0}
+
+jshell.err.no.such.command.or.snippet.id = \u6CA1\u6709\u8FD9\u6837\u7684\u547D\u4EE4\u6216\u7247\u6BB5 id: {0}
+jshell.err.command.ambiguous = \u547D\u4EE4 ''{0}'' \u4E0D\u660E\u786E: {1}
+jshell.err.set.editor.arg = ''/set editor'' \u547D\u4EE4\u8981\u6C42\u8DEF\u5F84\u53C2\u6570
+jshell.msg.set.editor.set = \u7F16\u8F91\u5668\u8BBE\u7F6E\u4E3A: {0}
+
+jshell.msg.try.list.without.args = \u5C1D\u8BD5\u4F7F\u7528\u4E0D\u5E26\u53C2\u6570\u7684 ''/list''\u3002
+jshell.msg.no.active = \u6CA1\u6709\u6D3B\u52A8\u5B9A\u4E49\u3002
+
+jshell.msg.resetting = \u6B63\u5728\u91CD\u7F6E...
+jshell.msg.resetting.state = \u6B63\u5728\u91CD\u7F6E\u72B6\u6001\u3002
+
+jshell.err.reload.no.previous = \u6CA1\u6709\u53EF\u8FD8\u539F\u7684\u4E0A\u4E00\u4E2A\u5386\u53F2\u8BB0\u5F55
+jshell.err.reload.restarting.previous.state = \u6B63\u5728\u91CD\u65B0\u542F\u52A8\u5E76\u8FD8\u539F\u5230\u5148\u524D\u7684\u72B6\u6001\u3002
+jshell.err.reload.restarting.state = \u6B63\u5728\u91CD\u65B0\u542F\u52A8\u5E76\u8FD8\u539F\u72B6\u6001\u3002
+
+jshell.msg.vars.not.active = (\u4E0D\u6D3B\u52A8)
+
+jshell.err.out.of.range = \u8D85\u51FA\u8303\u56F4
+
+jshell.msg.error = \u9519\u8BEF:
+jshell.msg.warning = \u8B66\u544A:
+
+jshell.err.set.arg = ''/set'' \u547D\u4EE4\u8981\u6C42\u5B50\u547D\u4EE4\u548C\u53C2\u6570\u3002\u8BF7\u53C2\u9605: ''/help /set''
+jshell.err.set.ambiguous = ''/set'' \u7684\u5B50\u547D\u4EE4\u53C2\u6570\u4E0D\u660E\u786E: {0}
+
+jshell.err.classpath.arg = /classpath \u547D\u4EE4\u8981\u6C42\u8DEF\u5F84\u53C2\u6570\u3002
+jshell.msg.classpath = \u8DEF\u5F84 ''{0}'' \u5DF2\u6DFB\u52A0\u5230\u7C7B\u8DEF\u5F84
+
+jshell.err.help.arg = \u6CA1\u6709\u547D\u4EE4\u6216\u4E3B\u9898\u4EE5\u63D0\u4F9B\u7684\u53C2\u6570\u5F00\u59CB: {0}
+jshell.msg.help.begin =\u952E\u5165 Java \u8BED\u8A00\u8868\u8FBE\u5F0F, \u8BED\u53E5\u6216\u58F0\u660E\u3002\n\u6216\u8005\u952E\u5165\u4EE5\u4E0B\u547D\u4EE4\u4E4B\u4E00:\n
+jshell.msg.help.subject =\n\u6709\u5173\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u952E\u5165 ''/help'', \u540E\u8DDF\u547D\u4EE4\u6216\u4E3B\u9898\u7684\u540D\u79F0\u3002\n\u4F8B\u5982 ''/help /list'' \u6216 ''/help intro''\u3002\u4E3B\u9898:\n
+
+jshell.err.drop.arg =\u5728 /drop \u53C2\u6570\u4E2D, \u8BF7\u6307\u5B9A\u8981\u5220\u9664\u7684\u5BFC\u5165, \u53D8\u91CF, \u65B9\u6CD5\u6216\u7C7B\u3002\n\u6309 id \u6216\u540D\u79F0\u6307\u5B9A\u3002\u4F7F\u7528 /list \u53EF\u67E5\u770B id\u3002\u4F7F\u7528 /reset \u53EF\u91CD\u7F6E\u6240\u6709\u72B6\u6001\u3002
+jshell.msg.drop.not.active = \u53C2\u6570\u672A\u6307\u5B9A\u8981\u5220\u9664\u7684\u6D3B\u52A8\u5BFC\u5165, \u53D8\u91CF, \u65B9\u6CD5\u6216\u7C7B\u3002
+jshell.err.drop.ambiguous = \u53C2\u6570\u5F15\u7528\u4E86\u591A\u4E2A\u5BFC\u5165, \u53D8\u91CF, \u65B9\u6CD5\u6216\u7C7B\u3002
+jshell.err.failed = \u5931\u8D25\u3002
+jshell.msg.native.method = \u672C\u673A\u65B9\u6CD5
+jshell.msg.unknown.source = \u672A\u77E5\u6E90
+jshell.msg.goodbye = \u518D\u89C1
+
+jshell.msg.help.for.help = \u952E\u5165 /help \u4EE5\u83B7\u53D6\u5E2E\u52A9\u4FE1\u606F\u3002
+
+jshell.err.feedback.expected.new.feedback.mode = \u9884\u671F\u65B0\u7684\u53CD\u9988\u6A21\u5F0F -- {0}
+jshell.err.feedback.expected.mode.name = \u9884\u671F\u65B0\u7684\u53CD\u9988\u6A21\u5F0F\u540D\u79F0\u3002''{0}'' \u662F\u5DF2\u77E5\u7684\u53CD\u9988\u6A21\u5F0F -- {1}
+jshell.err.feedback.command.quiet = \u6307\u5B9A ''command'' \u6216 ''quiet'' -- {0}
+jshell.err.feedback.expected.field = \u7F3A\u5C11\u9884\u671F\u7684\u5B57\u6BB5\u540D -- {0}
+jshell.err.feedback.expected.mode = \u9884\u671F\u53CD\u9988\u6A21\u5F0F -- {0}
+jshell.err.feedback.does.not.match.mode = \u4E0D\u5339\u914D\u4EFB\u4F55\u5F53\u524D\u53CD\u9988\u6A21\u5F0F: {0} -- {1}
+jshell.err.feedback.ambiguous.mode = \u5339\u914D\u4E86\u591A\u4E2A\u5F53\u524D\u53CD\u9988\u6A21\u5F0F: {0} -- {1}
+jshell.err.feedback.expected.format = \u7F3A\u5C11\u9884\u671F\u683C\u5F0F -- {0}
+jshell.err.feedback.must.be.quoted = \u683C\u5F0F ''{0}'' \u5FC5\u987B\u4F7F\u7528\u5F15\u53F7\u62EC\u8D77\u6765 -- {1}
+jshell.err.feedback.not.a.valid.selector = \u4E0D\u662F ''{1}'' \u4E2D\u6709\u6548\u7684\u9009\u62E9\u5668 ''{0}'' -- {2}
+jshell.err.feedback.multiple.sections = \u9009\u62E9\u5668\u7C7B\u578B\u5728 ''{1}'' \u4E2D\u9009\u62E9\u5668\u5217\u8868 ''{0}'' \u7684\u591A\u4E2A\u90E8\u5206\u4E2D -- {2}
+jshell.err.feedback.different.selector.kinds = \u4E0D\u540C\u7684\u9009\u62E9\u5668\u7C7B\u578B\u4F4D\u4E8E ''{1}'' \u4E2D\u9009\u62E9\u5668\u5217\u8868 ''{0}'' \u7684\u76F8\u540C\u90E8\u5206\u4E2D -- {2}
+
+jshell.msg.feedback.new.mode = \u5DF2\u521B\u5EFA\u65B0\u7684\u53CD\u9988\u6A21\u5F0F: {0}
+jshell.msg.feedback.mode = \u53CD\u9988\u6A21\u5F0F: {0}
+jshell.msg.feedback.mode.following = \u53CD\u9988\u6A21\u5F0F\u5E94\u8BE5\u4E3A\u4EE5\u4E0B\u4E4B\u4E00:
+
+jshell.console.see.more = <\u6309 Tab \u53EF\u67E5\u770B\u66F4\u591A\u5185\u5BB9>
+jshell.console.do.nothing = \u4E0D\u6267\u884C\u4EFB\u4F55\u64CD\u4F5C
+jshell.console.choice = \u9009\u9879: 
+jshell.console.create.variable = \u521B\u5EFA\u53D8\u91CF
+jshell.console.resolvable = \n\u6807\u8BC6\u7B26\u53EF\u5728\u6B64\u4E0A\u4E0B\u6587\u4E2D\u89E3\u6790\u3002
+jshell.console.no.candidate = \n\u6CA1\u6709\u627E\u5230\u53EF\u5BFC\u5165\u7684\u5019\u9009\u5168\u9650\u5B9A\u540D\u79F0\u3002
+jshell.console.incomplete = \n\u7ED3\u679C\u53EF\u80FD\u4E0D\u5B8C\u6574; \u8BF7\u7A0D\u5019\u91CD\u8BD5\u4EE5\u83B7\u53D6\u5B8C\u6574\u7ED3\u679C\u3002
+
+
+help.usage = \u7528\u6CD5:   jshell <options> <load files>\n\u5176\u4E2D, \u53EF\u80FD\u7684\u9009\u9879\u5305\u62EC:\n\t-classpath <path>          \u6307\u5B9A\u67E5\u627E\u7528\u6237\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n\t-cp <path>                 \u6307\u5B9A\u67E5\u627E\u7528\u6237\u7C7B\u6587\u4EF6\u7684\u4F4D\u7F6E\n\t-startup <file>            \u5BF9\u542F\u52A8\u5B9A\u4E49\u6267\u884C\u5355\u6B21\u66FF\u6362\n\t-nostartup                 \u4E0D\u8FD0\u884C\u542F\u52A8\u5B9A\u4E49\n\t-help                      \u8F93\u51FA\u6807\u51C6\u9009\u9879\u7684\u63D0\u8981\n\t-version                   \u7248\u672C\u4FE1\u606F\n
+
+help.list.summary = \u5217\u51FA\u60A8\u952E\u5165\u7684\u6E90
+help.list.args = [all|start|<name or id>]
+help.list =\u663E\u793A\u524D\u9762\u5E26\u6709\u7247\u6BB5 ID \u7684\u7247\u6BB5\u6E90\u3002\n\n/list\n\t\u5217\u51FA\u60A8\u952E\u5165\u7684\u6216\u4F7F\u7528 /open \u8BFB\u53D6\u7684\u5F53\u524D\u6D3B\u52A8\u7684\u4EE3\u7801\u7247\u6BB5\n\n/list start\n\t\u5217\u51FA\u81EA\u52A8\u8BC4\u4F30\u7684\u542F\u52A8\u7247\u6BB5\n\n/list all\n\t\u5217\u51FA\u6240\u6709\u7247\u6BB5, \u5305\u62EC\u5931\u8D25\u7684\u7247\u6BB5, \u8986\u76D6\u7684\u7247\u6BB5, \u5220\u9664\u7684\u7247\u6BB5\u548C\u542F\u52A8\u7247\u6BB5\n\n/list <name>\n\t\u5217\u51FA\u5177\u6709\u6307\u5B9A\u540D\u79F0\u7684\u7247\u6BB5 (\u7279\u522B\u662F\u6D3B\u52A8\u7247\u6BB5)\n\n/list <id>\n\t\u5217\u51FA\u5177\u6709\u6307\u5B9A\u7247\u6BB5 id \u7684\u7247\u6BB5
+
+help.edit.summary = \u7F16\u8F91\u6309\u540D\u79F0\u6216 id \u5F15\u7528\u7684\u6E90\u6761\u76EE
+help.edit.args = <\u540D\u79F0\u6216 id>
+help.edit =\u5728\u5916\u90E8\u7F16\u8F91\u5668\u4E2D\u7F16\u8F91\u6E90\u7684\u7247\u6BB5\u3002\n\u4F7F\u7528 /set editor \u53EF\u4EE5\u8BBE\u7F6E\u8981\u4F7F\u7528\u7684\u7F16\u8F91\u5668\u3002\n\u5982\u679C\u5C1A\u672A\u8BBE\u7F6E\u7F16\u8F91\u5668, \u5219\u5C06\u542F\u52A8\u4E00\u4E2A\u7B80\u5355\u7684\u7F16\u8F91\u5668\u3002\n\n/edit <name>\n\t\u7F16\u8F91\u5177\u6709\u6307\u5B9A\u540D\u79F0\u7684\u7247\u6BB5 (\u7279\u522B\u662F\u6D3B\u52A8\u7247\u6BB5)\n\n/edit <id>\n\t\u7F16\u8F91\u5177\u6709\u6307\u5B9A\u7247\u6BB5 id \u7684\u7247\u6BB5\n\n/edit\n\t\u7F16\u8F91\u60A8\u952E\u5165\u6216\u4F7F\u7528 /open \u8BFB\u53D6\u7684\u5F53\u524D\u6D3B\u52A8\u7684\u4EE3\u7801\u7247\u6BB5
+
+help.drop.summary = \u5220\u9664\u6309\u540D\u79F0\u6216 id \u5F15\u7528\u7684\u6E90\u6761\u76EE
+help.drop.args = <\u540D\u79F0\u6216 id>
+help.drop =\u5220\u9664\u7247\u6BB5 -- \u4F7F\u7247\u6BB5\u5904\u4E8E\u4E0D\u6D3B\u52A8\u72B6\u6001\u3002\n\n/drop <name>\n\t\u5220\u9664\u5177\u6709\u6307\u5B9A\u540D\u79F0\u7684\u7247\u6BB5\n\n/drop <id>\n\t\u5220\u9664\u5177\u6709\u6307\u5B9A\u7247\u6BB5 id \u7684\u7247\u6BB5
+
+help.save.summary = \u5C06\u7247\u6BB5\u6E90\u4FDD\u5B58\u5230\u6587\u4EF6\u3002
+help.save.args = [all|history|start] <file>
+help.save =\u5C06\u6307\u5B9A\u7684\u7247\u6BB5\u548C/\u6216\u547D\u4EE4\u4FDD\u5B58\u5230\u6307\u5B9A\u6587\u4EF6\u3002\n\n/save <file>\n\t\u5C06\u5F53\u524D\u6D3B\u52A8\u7247\u6BB5\u7684\u6E90\u4FDD\u5B58\u5230\u6587\u4EF6\u3002\n\n/save all <file>\n\t\u5C06\u6240\u6709\u7247\u6BB5\u7684\u6E90\u4FDD\u5B58\u5230\u6587\u4EF6\u3002\n\t\u8FD9\u5305\u62EC\u8986\u76D6\u7684\u6E90, \u5931\u8D25\u7684\u6E90\u4EE5\u53CA\u542F\u52A8\u4EE3\u7801\u3002\n\n/save history <file>\n\t\u4FDD\u5B58\u81EA\u542F\u52A8 jshell \u4EE5\u6765\u8F93\u5165\u7684\u6240\u6709\u547D\u4EE4\u548C\u7247\u6BB5\u7684\u987A\u5E8F\u5386\u53F2\u8BB0\u5F55\u3002\n\n/save start <file>\n\t\u5C06\u9ED8\u8BA4\u7684\u542F\u52A8\u5B9A\u4E49\u4FDD\u5B58\u5230\u6587\u4EF6\u3002
+
+help.open.summary = \u6253\u5F00\u6587\u4EF6\u4F5C\u4E3A\u6E90\u8F93\u5165
+help.open.args = <file>
+help.open =\u6253\u5F00\u6587\u4EF6\u5E76\u8BFB\u53D6\u5176\u5185\u5BB9\u4F5C\u4E3A\u7247\u6BB5\u548C\u547D\u4EE4\u3002\n\n/open <file>\n\t\u8BFB\u53D6\u6307\u5B9A\u7684\u6587\u4EF6\u4F5C\u4E3A jshell \u8F93\u5165\u3002
+
+help.vars.summary = \u5217\u51FA\u5DF2\u58F0\u660E\u53D8\u91CF\u53CA\u5176\u503C
+help.vars.args =
+help.vars =\u5217\u51FA\u5F53\u524D\u6D3B\u52A8\u7684 jshell \u53D8\u91CF\u7684\u7C7B\u578B, \u540D\u79F0\u548C\u503C\u3002
+
+help.methods.summary = \u5217\u51FA\u5DF2\u58F0\u660E\u65B9\u6CD5\u53CA\u5176\u7B7E\u540D
+help.methods.args =
+help.methods =\u5217\u51FA\u5F53\u524D\u6D3B\u52A8\u7684 jshell \u65B9\u6CD5\u7684\u540D\u79F0, \u53C2\u6570\u7C7B\u578B\u548C\u8FD4\u56DE\u503C\u3002
+
+help.classes.summary = \u5217\u51FA\u5DF2\u58F0\u660E\u7684\u7C7B
+help.classes.args =
+help.classes =\u5217\u51FA\u5F53\u524D\u6D3B\u52A8\u7684 jshell \u7C7B, \u63A5\u53E3\u548C\u679A\u4E3E\u3002
+
+help.imports.summary = \u5217\u51FA\u5BFC\u5165\u7684\u9879
+help.imports.args =
+help.imports =\u5217\u51FA\u5F53\u524D\u6D3B\u52A8\u7684 jshell \u5BFC\u5165\u3002
+
+help.exit.summary = \u9000\u51FA jshell
+help.exit.args =
+help.exit =\u9000\u51FA jshell \u5DE5\u5177\u3002\u4E0D\u4FDD\u5B58\u5DE5\u4F5C\u3002\n\u5728\u4F7F\u7528\u6B64\u547D\u4EE4\u524D\u5E94\u8BE5\u5148\u4FDD\u5B58\u4EFB\u4F55\u5DE5\u4F5C
+
+help.reset.summary = \u91CD\u542F jshell
+help.reset.args =
+help.reset =\u91CD\u542F jshell \u5DE5\u5177\u4EE3\u7801\u548C\u6267\u884C\u72B6\u6001:\n\t* \u6240\u6709\u8F93\u5165\u7684\u4EE3\u7801\u90FD\u5C06\u4E22\u5931\u3002\n\t* \u91CD\u65B0\u6267\u884C\u542F\u52A8\u4EE3\u7801\u3002\n\t* \u91CD\u65B0\u542F\u52A8\u6267\u884C\u72B6\u6001\u3002\n\t* \u6E05\u9664\u7C7B\u8DEF\u5F84\u3002\n\u5C06\u5DE5\u5177\u8BBE\u7F6E\u4FDD\u6301\u4E3A\u901A\u8FC7\u4EE5\u4E0B\u547D\u4EE4\u6267\u884C\u7684\u8BBE\u7F6E: /set ...\n\u5728\u4F7F\u7528\u6B64\u547D\u4EE4\u524D\u5E94\u8BE5\u5148\u4FDD\u5B58\u4EFB\u4F55\u5DE5\u4F5C
+
+help.reload.summary = \u91CD\u542F\u548C\u91CD\u653E\u76F8\u5173\u5386\u53F2\u8BB0\u5F55 -- \u5F53\u524D\u5386\u53F2\u8BB0\u5F55\u6216\u4E0A\u4E00\u4E2A\u5386\u53F2\u8BB0\u5F55 (restore)
+help.reload.args = [restore] [quiet]
+help.reload =\u91CD\u542F jshell \u5DE5\u5177\u4EE3\u7801\u548C\u6267\u884C\u72B6\u6001, \u7136\u540E\u6309\u7167 jshell \u6709\u6548\n\u547D\u4EE4\u548C\u6709\u6548\u7247\u6BB5\u7684\u8F93\u5165\u987A\u5E8F\u91CD\u653E\u6BCF\u4E2A\u547D\u4EE4\u548C\u6BCF\u4E2A\u7247\u6BB5\u3002\n\n/reload\n\t\u91CD\u542F\u548C\u91CD\u653E\u81EA\u8FDB\u5165 jshell \u4EE5\u6765\u7684\u6709\u6548\u5386\u53F2\u8BB0\u5F55,\n\t\u6216\u8005\u6267\u884C /reset \u6216 /reload \u547D\u4EE4\u4E2D\u6700\u8FD1\u7684\u90A3\u4E2A\n\t\u547D\u4EE4\u3002\n\n/reload restore\n\t\u91CD\u542F\u5E76\u91CD\u653E\u4E0A\u4E00\u6B21\u8FDB\u5165 jshell \u4EE5\u53CA\u6700\u8FD1\u8FDB\u5165 jshell\n\t\u4E4B\u95F4\u7684\u6709\u6548\u5386\u53F2\u8BB0\u5F55, \u6216\u8005\u6267\u884C /reset \u6216 /reload\n\t\u547D\u4EE4\u3002\u8FD9\u8FDB\u800C\u53EF\u7528\u4E8E\u8FD8\u539F\u4E0A\u4E00\u4E2A\n\tjshell \u5DE5\u5177\u4F1A\u8BDD\u3002\n\n/reload [restore] quiet\n\t\u4F7F\u7528 'quiet' \u53C2\u6570\u65F6, \u4E0D\u663E\u793A\u91CD\u653E\u3002\u5C06\u663E\u793A\u9519\u8BEF\u3002
+
+help.classpath.summary = \u5C06\u8DEF\u5F84\u6DFB\u52A0\u5230\u7C7B\u8DEF\u5F84
+help.classpath.args = <path>
+help.classpath =\u5411\u7C7B\u8DEF\u5F84\u9644\u52A0\u5176\u4ED6\u8DEF\u5F84\u3002
+
+help.history.summary = \u60A8\u952E\u5165\u7684\u5185\u5BB9\u7684\u5386\u53F2\u8BB0\u5F55
+help.history.args =
+help.history =\u663E\u793A\u81EA\u542F\u52A8\u6B64 jshell \u4EE5\u6765\u8F93\u5165\u7684\u7247\u6BB5\u548C\u547D\u4EE4\u7684\u5386\u53F2\u8BB0\u5F55\u3002
+
+help.debug.summary = \u5207\u6362 jshell \u7684\u8C03\u8BD5
+help.debug.args = [0][r][g][f][c][d][e]
+help.debug =\u663E\u793A jshell \u5B9E\u73B0\u7684\u8C03\u8BD5\u4FE1\u606F\n0: \u7981\u7528\u8C03\u8BD5\nr: \u542F\u7528\u5DE5\u5177\u7EA7\u522B\u8C03\u8BD5\ng: \u542F\u7528\u5E38\u89C4\u8C03\u8BD5\nf: \u542F\u7528\u6587\u4EF6\u7BA1\u7406\u5668\u8C03\u8BD5\nc: \u542F\u7528\u8F93\u5165\u63D0\u793A\u5206\u6790\u8C03\u8BD5\nd: \u542F\u7528\u88AB\u4F9D\u8D56\u5BF9\u8C61\u8C03\u8BD5\ne: \u542F\u7528\u4E8B\u4EF6\u8C03\u8BD5
+
+help.help.summary = \u83B7\u53D6 jshell \u7684\u76F8\u5173\u4FE1\u606F
+help.help.args = [<command>|<subject>]
+help.help =\u663E\u793A\u6709\u5173 jshell \u7684\u4FE1\u606F\u3002\n/help\n\t\u5217\u51FA jshell \u547D\u4EE4\u548C\u5E2E\u52A9\u4E3B\u9898\u3002\n\n/help <command>\n\t\u663E\u793A\u6709\u5173\u6307\u5B9A\u547D\u4EE4\u7684\u4FE1\u606F\u3002\u5FC5\u987B\u5305\u542B\u659C\u6760\u3002\n\t\u53EA\u9700\u8981\u547D\u4EE4\u7684\u524D\u51E0\u4E2A\u5B57\u6BCD -- \u5982\u679C\u6709\u591A\u4E2A\u5339\u914D\u9879,\n\t\u5219\u5C06\u663E\u793A\u6240\u6709\u5B57\u6BCD\u3002\u793A\u4F8B: /help /li\n\n/help <subject>\n\t\u663E\u793A\u6709\u5173\u6307\u5B9A\u5E2E\u52A9\u4E3B\u9898\u7684\u4FE1\u606F\u3002\u793A\u4F8B: /help intro
+
+help.set.summary = \u8BBE\u7F6E jshell \u914D\u7F6E\u4FE1\u606F
+help.set.args = editor|start|feedback|newmode|prompt|format ...
+help.set =\u8BBE\u7F6E jshell \u914D\u7F6E\u4FE1\u606F, \u5305\u62EC:\n\u8981\u4F7F\u7528\u7684\u5916\u90E8\u7F16\u8F91\u5668, \u8981\u4F7F\u7528\u7684\u542F\u52A8\u5B9A\u4E49, \u65B0\u7684\u53CD\u9988\u6A21\u5F0F,\n\u547D\u4EE4\u63D0\u793A\u7B26, \u8981\u4F7F\u7528\u7684\u53CD\u9988\u6A21\u5F0F\u6216\u8F93\u51FA\u7684\u683C\u5F0F\u3002\n\n/set editor <command> <optional-arg>...\n\t\u6307\u5B9A\u8981\u4E3A /edit \u547D\u4EE4\u542F\u52A8\u7684\u547D\u4EE4\u3002\n\t<command> \u662F\u4E0E\u64CD\u4F5C\u7CFB\u7EDF\u76F8\u5173\u7684\u5B57\u7B26\u4E32\u3002\n\n/set start <file>\n\t\u6307\u5B9A <file> \u7684\u5185\u5BB9\u5C06\u6210\u4E3A\u9ED8\u8BA4\u542F\u52A8\u7247\u6BB5\u548C\u547D\u4EE4\u3002\n\n/set feedback <mode>\n\t\u8BBE\u7F6E\u7528\u4E8E\u63CF\u8FF0\u4E3A\u6240\u8F93\u5165\u7684\u7247\u6BB5\u548C\u547D\u4EE4\u663E\u793A\u7684\u53CD\u9988\u7684\u53CD\u9988\u6A21\u5F0F\u3002\n\n/set newmode <new-mode> [command|quiet [<old-mode>]]\n\t\u521B\u5EFA\u7528\u6237\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F, \u4E5F\u53EF\u4EE5\u9009\u62E9\u4ECE\u73B0\u6709\u6A21\u5F0F\u590D\u5236\u3002\n\n/set prompt <mode> "<prompt>" "<continuation-prompt>"\n\t\u8BBE\u7F6E\u4E3A\u7ED9\u5B9A\u53CD\u9988\u6A21\u5F0F\u663E\u793A\u7684\u63D0\u793A\u7B26\u3002\n\n/set format <mode> <field> "<format>" <selector>...\n\t\u901A\u8FC7\u8BBE\u7F6E\u5F53\u9009\u62E9\u5668\u5339\u914D\u65F6\u5B57\u6BB5\u7684\u683C\u5F0F\u6765\u914D\u7F6E\u53CD\u9988\u6A21\u5F0F\u3002\n\n\u8981\u83B7\u53D6\u6709\u5173\u5176\u4E2D\u4E00\u4E2A\u683C\u5F0F\u7684\u8BE6\u7EC6\u4FE1\u606F, \u8BF7\u5BF9\u6307\u5B9A\u7684\u683C\u5F0F\u4F7F\u7528 /help\u3002\n\u4F8B\u5982:   /help /set format
+
+help.quest.summary = \u83B7\u53D6 jshell \u7684\u76F8\u5173\u4FE1\u606F
+help.quest.args = [<command>|<subject>]
+help.quest =\u663E\u793A\u6709\u5173 jshell \u7684\u4FE1\u606F (\u5BF9 /help \u4F7F\u7528\u7F29\u5199\u5F62\u5F0F)\u3002\n/?\n\t\u663E\u793A\u547D\u4EE4\u548C\u5E2E\u52A9\u4E3B\u9898\u7684\u5217\u8868\u3002\n/? <command>\n\t\u663E\u793A\u6709\u5173\u6307\u5B9A\u547D\u4EE4\u7684\u4FE1\u606F\u3002\u5FC5\u987B\u5305\u542B\u659C\u6760\u3002\n\t\u53EA\u9700\u8981\u547D\u4EE4\u7684\u524D\u51E0\u4E2A\u5B57\u6BCD -- \u5982\u679C\u6709\u591A\u4E2A\n\t\u5339\u914D\u9879, \u5219\u5C06\u663E\u793A\u6240\u6709\u5B57\u6BCD\u3002\u793A\u4F8B:  /? /li\n/? <subject>\n\t\u663E\u793A\u6709\u5173\u6307\u5B9A\u5E2E\u52A9\u4E3B\u9898\u7684\u4FE1\u606F\u3002\u793A\u4F8B: /? intro
+
+help.bang.summary = \u91CD\u65B0\u8FD0\u884C\u4E0A\u4E00\u4E2A\u7247\u6BB5
+help.bang.args =
+help.bang =\u91CD\u65B0\u8BC4\u4F30\u6700\u8FD1\u8F93\u5165\u7684\u7247\u6BB5\u3002
+
+help.id.summary = \u6309 id \u91CD\u65B0\u8FD0\u884C\u7247\u6BB5
+help.id.args =
+help.id =\u91CD\u65B0\u8BC4\u4F30\u7531 id \u6267\u884C\u7684\u7247\u6BB5\u3002
+
+help.previous.summary = \u91CD\u65B0\u8FD0\u884C\u524D\u9762\u7684\u7B2C n \u4E2A\u7247\u6BB5
+help.previous.args =
+help.previous =\u91CD\u65B0\u8BC4\u4F30\u6700\u8FD1\u8F93\u5165\u7684\u7B2C n \u4E2A\u7247\u6BB5\u3002
+
+help.intro.summary = jshell \u5DE5\u5177\u7684\u7B80\u4ECB
+help.intro =\u4F7F\u7528 jshell \u5DE5\u5177\u53EF\u4EE5\u6267\u884C Java \u4EE3\u7801, \u4ECE\u800C\u7ACB\u5373\u83B7\u53D6\u7ED3\u679C\u3002\n\u60A8\u53EF\u4EE5\u8F93\u5165 Java \u5B9A\u4E49 (\u53D8\u91CF, \u65B9\u6CD5, \u7C7B, \u7B49\u7B49), \u4F8B\u5982:  int x = 8\n\u6216 Java \u8868\u8FBE\u5F0F, \u4F8B\u5982:  x + x\n\u6216 Java \u8BED\u53E5\u6216\u5BFC\u5165\u3002\n\u8FD9\u4E9B\u5C0F\u5757\u7684 Java \u4EE3\u7801\u79F0\u4E3A '\u7247\u6BB5'\u3002\n\n\u8FD9\u4E9B jshell \u547D\u4EE4\u8FD8\u53EF\u4EE5\u8BA9\u60A8\u4E86\u89E3\u548C\n\u63A7\u5236\u60A8\u6B63\u5728\u6267\u884C\u7684\u64CD\u4F5C, \u4F8B\u5982:  /list\n\n\u6709\u5173\u547D\u4EE4\u7684\u5217\u8868, \u8BF7\u6267\u884C: /help
+
+help.shortcuts.summary = \u5FEB\u6377\u65B9\u5F0F\u7684\u8BF4\u660E
+help.shortcuts =\u652F\u6301\u7684\u5FEB\u6377\u65B9\u5F0F\u5305\u62EC:\n\n<tab>\n\t\t\u5728\u8F93\u5165 Java \u6807\u8BC6\u7B26, jshell \u547D\u4EE4\u6216 jshell\n\t\t\u547D\u4EE4\u53C2\u6570 (\u5728\u67D0\u4E9B\u60C5\u51B5\u4E0B) \u7684\u524D\u51E0\u4E2A\u5B57\u6BCD\u540E,\n\t\t\u6309 <tab> \u952E\u53EF\u4EE5\u5B8C\u6210\u8F93\u5165\u3002\n\t\t\u5982\u679C\u6709\u591A\u4E2A\u8F93\u5165\u63D0\u793A, \u5219\u663E\u793A\u53EF\u80FD\u7684\u8F93\u5165\u63D0\u793A\u3002\n\nShift-<tab>\n\t\t\u5728\u65B9\u6CD5\u6216\u6784\u9020\u5668\u8C03\u7528\u7684\u540D\u79F0\u548C\u5DE6\u62EC\u53F7\u540E\u9762,\n\t\t\u6309\u4F4F <shift> \u952E\u5E76\u6309 <tab> \u53EF\u67E5\u770B\u6240\u6709\n\t\t\u5339\u914D\u7684\u65B9\u6CD5/\u6784\u9020\u5668\u7684\u63D0\u8981\u3002\n\n<fix-shortcut> v\n\t\t\u5728\u5B8C\u6574\u7684\u8868\u8FBE\u5F0F\u540E\u9762, \u6309 "<fix-shortcut> v" \u53EF\u4EE5\u5F15\u5165\u65B0\u7684\u53D8\u91CF,\n\t\t\u5176\u7C7B\u578B\u57FA\u4E8E\u8868\u8FBE\u5F0F\u7684\u7C7B\u578B\u3002\n\t\t"<fix-shortcut>" \u53EF\u4EE5\u662F Alt-F1 \u6216 Alt-Enter, \u5177\u4F53\u53D6\u51B3\u4E8E\u5E73\u53F0\u3002\n\n<fix-shortcut> i\n\t\t\u5728\u4E0D\u53EF\u89E3\u6790\u7684\u6807\u8BC6\u7B26\u540E\u9762, \u6309 "<fix-shortcut> i", \u6B64\u65F6 jshell \u5C06\u4F1A\n\t\t\u6839\u636E\u6307\u5B9A\u7C7B\u8DEF\u5F84\u7684\u5185\u5BB9\u63D0\u8BAE\u53EF\u80FD\u7684\u5168\u9650\u5B9A\u540D\u79F0\u3002\n\t\t"<fix-shortcut>" \u53EF\u4EE5\u662F Alt-F1 \u6216 Alt-Enter, \u5177\u4F53\u53D6\u51B3\u4E8E\u5E73\u53F0\u3002
+
+help.set.format = \u8BBE\u7F6E\u7528\u4E8E\u62A5\u544A\u7247\u6BB5\u4E8B\u4EF6\u7684\u683C\u5F0F\u3002\n\n\t/set format <mode> <field> "<format>" <selector>...\n\n\u5176\u4E2D <mode> \u662F\u4EE5\u524D\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F\u7684\u540D\u79F0 -- \u8BF7\u53C2\u9605 '/help /set newmode'\u3002\n\u5176\u4E2D <field> \u662F\u8981\u5B9A\u4E49\u7684\u4E0A\u4E0B\u6587\u7279\u5B9A\u683C\u5F0F\u7684\u540D\u79F0\u3002\n\u5176\u4E2D <format> \u662F\u4E00\u4E2A\u5E26\u5F15\u53F7\u7684\u5B57\u7B26\u4E32, \u8BE5\u5B57\u7B26\u4E32\u5C06\u4E3A\n\u5B57\u6BB5\u7684\u503C (\u5982\u679C\u9009\u62E9\u5668\u5339\u914D, \u6216\u8005\u6CA1\u6709\u4EFB\u4F55\u9009\u62E9\u5668)\u3002\n\u5728\u4F7F\u7528\u683C\u5F0F\u65F6, \u7528\u5927\u62EC\u53F7\u62EC\u8D77\u7684\u5B57\u6BB5\u540D\u5C06\u4F1A\u5728\u76F8\u5E94\u65F6\u95F4\n\u4F7F\u7528\u5B57\u6BB5\u503C\u66FF\u6362\u3002\u8FD9\u4E9B\u5B57\u6BB5\u53EF\u80FD\u5DF2\u4F7F\u7528\u6B64\u547D\u4EE4\u5B9A\u4E49, \n\u4E5F\u53EF\u80FD\u662F\u7279\u5B9A\u4E8E\u4E0A\u4E0B\u6587\u7684\u4EE5\u4E0B\u9884\u5B9A\u4E49\u5B57\u6BB5\u4E4B\u4E00:\n\t{name}       == \u540D\u79F0, \u4F8B\u5982: \u53D8\u91CF\u7684\u540D\u79F0, ...\n\t{type}       == \u7C7B\u578B\u540D\u79F0\u3002\u53D8\u91CF\u6216\u8868\u8FBE\u5F0F\u7684\u7C7B\u578B,\n\t\t\t\u65B9\u6CD5\u7684\u53C2\u6570\u7C7B\u578B\n\t{value}      == \u8868\u8FBE\u5F0F\u6216\u53D8\u91CF\u521D\u59CB\u5316\u7684\u7ED3\u679C\u503C\n\t{unresolved} == \u672A\u89E3\u6790\u5F15\u7528\u7684\u5217\u8868\n\t{errors}     == \u53EF\u6062\u590D\u9519\u8BEF\u7684\u5217\u8868 (\u53EA\u5728\u5904\u7406\n\t\t\t"display" \u5B57\u6BB5\u671F\u95F4)\n\t{err}        == \u65E0\u683C\u5F0F\u7684\u9519\u8BEF\u884C (\u53EA\u5728\u5904\u7406\n\t\t\t"errorline" \u5B57\u6BB5\u671F\u95F4)\n\u8BE5\u5DE5\u5177\u8BBF\u95EE\u4EE5\u4E0B\u5B57\u6BB5\u6765\u786E\u5B9A\u6240\u663E\u793A\u7684\u53CD\u9988:\n\t{display}    == \u4E3A\u7247\u6BB5\u4E8B\u4EF6\u663E\u793A\u7684\u6D88\u606F\n\t{errorline}  == "errors" \u5B57\u6BB5\u4E2D\u7684\u4E00\u4E2A\u9519\u8BEF\u884C\u7684\u683C\u5F0F\n\t{pre}        == \u53CD\u9988\u524D\u7F00 (\u4F5C\u4E3A\u547D\u4EE4\u53CD\u9988\u7684\u5F00\u5934)\n\t{post}       == \u53CD\u9988\u540E\u7F00 (\u4F5C\u4E3A\u547D\u4EE4\u53CD\u9988\u7684\u7ED3\u5C3E)\n\t{errorpre}   == \u9519\u8BEF\u524D\u7F00 (\u4F5C\u4E3A\u9519\u8BEF\u53CD\u9988\u7684\u5F00\u5934)\n\t{errorpost}  == \u9519\u8BEF\u540E\u7F00 (\u4F5C\u4E3A\u9519\u8BEF\u53CD\u9988\u7684\u7ED3\u5C3E)\n\u8FD9\u4E9B\u5B57\u6BB5\u5177\u6709\u9ED8\u8BA4\u8BBE\u7F6E (\u53EF\u8986\u76D6)\u3002\n\u5176\u4E2D <selector> \u662F\u5E94\u7528\u683C\u5F0F\u7684\u4E0A\u4E0B\u6587\u3002\n\u9009\u62E9\u5668\u7ED3\u6784\u662F\u4E00\u4E2A\u7531\u9009\u62E9\u5668\u7C7B\u578B\u5217\u8868\u6784\u6210\u7684\u5217\u8868, \u4F7F\u7528\u8FDE\u5B57\u7B26\u5206\u9694\u3002\n\u9009\u62E9\u5668\u7C7B\u578B\u5217\u8868\u662F\u5355\u4E2A\u9009\u62E9\u5668\u7C7B\u578B\u7684\u503C\u7684\u5217\u8868, \u4F7F\u7528\u9017\u53F7\u5206\u9694\u3002\n\u5982\u679C\u6BCF\u4E2A\u9009\u62E9\u5668\u7C7B\u578B\u5217\u8868\u5339\u914D, \u5219\u9009\u62E9\u5668\u5339\u914D; \u5982\u679C\u5176\u4E2D\u67D0\u4E2A\u503C\n\u5339\u914D, \u5219\u9009\u62E9\u5668\u7C7B\u578B\u5217\u8868\u5339\u914D\u3002\n\ncase \u9009\u62E9\u5668\u7C7B\u578B\u63CF\u8FF0\u4E86\u7247\u6BB5\u7684\u7C7B\u578B\u3002\u503C\u5305\u62EC:\n\timport     -- \u5BFC\u5165\u58F0\u660E\n\tclass      -- \u7C7B\u58F0\u660E\n\tinterface  -- \u63A5\u53E3\u58F0\u660E\n\tenum       -- \u679A\u4E3E\u58F0\u660E\n\tannotation -- \u6CE8\u91CA\u63A5\u53E3\u58F0\u660E\n\tmethod     -- \u65B9\u6CD5\u58F0\u660E -- \u6CE8: {type}==parameter-types\n\tvardecl    -- \u4E0D\u5E26\u521D\u59CB\u5316\u7684\u53D8\u91CF\u58F0\u660E\n\tvardecl    -- \u5E26\u521D\u59CB\u5316\u7684\u53D8\u91CF\u58F0\u660E\n\texpression -- \u8868\u8FBE\u5F0F -- \u6CE8: {name}==scratch-variable-name\n\tvarvalue   -- \u53D8\u91CF\u503C\u8868\u8FBE\u5F0F\n\tassignment -- \u5206\u914D\u53D8\u91CF\n\tstatement  -- \
+\u8BED\u53E5\n\u64CD\u4F5C\u9009\u62E9\u5668\u7C7B\u578B\u63CF\u8FF0\u4E86\u5BF9\u7247\u6BB5\u6267\u884C\u7684\u64CD\u4F5C\u3002\u503C\u5305\u62EC:\n\tadded     -- \u7247\u6BB5\u5DF2\u6DFB\u52A0\n\tmodified  -- \u73B0\u6709\u7247\u6BB5\u5DF2\u4FEE\u6539\n\treplaced  -- \u73B0\u6709\u7247\u6BB5\u5DF2\u66FF\u6362\u4E3A\u65B0\u7247\u6BB5\n\toverwrote -- \u73B0\u6709\u7247\u6BB5\u5DF2\u8986\u76D6\n\tdropped   -- \u7247\u6BB5\u5DF2\u5220\u9664\n\tused      -- \u7247\u6BB5\u5728\u4E0D\u80FD\u4F7F\u7528\u7684\u65F6\u5019\u5DF2\u88AB\u4F7F\u7528\nwhen-did-it-occur \u9009\u62E9\u5668\u7C7B\u578B\u63CF\u8FF0\u4E86\u8FD9\u662F\u76F4\u63A5\u64CD\u4F5C\u8FD8\u662F\u95F4\u63A5\u64CD\u4F5C\u3002\u503C\u5305\u62EC:\n\tprimary -- \u8F93\u5165\u7684\u7247\u6BB5\n\tupdate  -- \u5BF9\u76F8\u5173\u7247\u6BB5\u7684\u66F4\u65B0\nresolution-state \u9009\u62E9\u5668\u7C7B\u578B\u63CF\u8FF0\u4E86\u7247\u6BB5\u7684\u89E3\u6790/\u5B9A\u4E49\u72B6\u6001\u3002\u503C\u5305\u62EC:\n\tok         -- \u5DF2\u6B63\u786E\u89E3\u6790\n\tdefined    -- \u5DF2\u5B9A\u4E49, \u4F46\u5B58\u5728\u53EF\u6062\u590D\u7684\u672A\u89E3\u6790\u5F15\u7528\n\tnotdefined -- \u7531\u4E8E\u5B58\u5728\u53EF\u6062\u590D\u7684\u672A\u89E3\u6790\u5F15\u7528\u800C\u672A\u5B9A\u4E49\nunresolved-count \u9009\u62E9\u5668\u7C7B\u578B\u63CF\u8FF0\u4E86\u672A\u89E3\u6790\u5F15\u7528\u7684\u6570\u91CF\u3002\u503C\u5305\u62EC:\n\tunresolved0 -- \u4E0D\u5B58\u5728\u672A\u89E3\u6790\u7684\u540D\u79F0\n\tunresolved1 -- \u4E00\u4E2A\u540D\u79F0\u672A\u89E3\u6790\n\tunresolved2 -- \u4E24\u4E2A\u6216\u66F4\u591A\u540D\u79F0\u672A\u89E3\u6790\nerrors-count \u9009\u62E9\u5668\u7C7B\u578B\u63CF\u8FF0\u4E86\u9519\u8BEF\u7684\u6570\u91CF\u3002\u503C\u5305\u62EC:\n\terror0 -- \u65E0\u9519\u8BEF\n\terror1 -- \u4E00\u4E2A\u9519\u8BEF\n\terror2 -- \u4E24\u4E2A\u6216\u66F4\u591A\u9519\u8BEF\n\n\u793A\u4F8B:\n\t/set format myformat action 'Created' added-primary\n\t/set format myformat action 'Update replaced' replaced-update\n\t/set format myformat display '{pre}{action} class {name}{post}' class-ok\n\t/set format myformat display '{pre}{action} variable {name}, reset to null{post}' replaced-vardecl,varinit-ok-update\n\n\u8BF7\u6CE8\u610F, \u67D0\u4E2A\u5B57\u6BB5\u7684\u540E\u7EED\u9009\u62E9\u5668\u53EF\u80FD\u4F1A\u8986\u76D6\u90E8\u5206\u6216\u5168\u90E8\u4EE5\u524D\u4F7F\u7528\u7684\u9009\u62E9\u5668 -- \u91C7\u7528\u6700\u540E\u4E00\u4E2A\u9009\u62E9\u5668\n
+
+help.set.feedback = \u8BBE\u7F6E\u7528\u4E8E\u63CF\u8FF0\u4E3A\u6240\u8F93\u5165\u7684\u7247\u6BB5\u548C\u547D\u4EE4\u663E\u793A\u7684\u53CD\u9988\u7684\u53CD\u9988\u6A21\u5F0F\u3002\n\n\t/set feedback <mode>\n\n\u5176\u4E2D <mode> \u662F\u4EE5\u524D\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F\u7684\u540D\u79F0\u3002\n\u60A8\u53EF\u4EE5\u4F7F\u7528\u8DB3\u591F\u591A\u7684\u5B57\u6BCD\u6765\u63D0\u4F9B\u552F\u4E00\u7684\u540D\u79F0\u3002\n\u53EF\u4EE5\u6DFB\u52A0\u7528\u6237\u5B9A\u4E49\u7684\u6A21\u5F0F, \u5177\u4F53\u8BF7\u53C2\u9605 '/help /set newmode'\n\u5F53\u524D\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F:\n
+
+help.set.newmode = \u521B\u5EFA\u7528\u6237\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F, \u4E5F\u53EF\u4EE5\u9009\u62E9\u4ECE\u73B0\u6709\u6A21\u5F0F\u590D\u5236\u3002\n\n\t/set newmode <new-mode> [command|quiet [<old-mode>]]\n\n\u5176\u4E2D <new-mode> \u662F\u60A8\u5E0C\u671B\u521B\u5EFA\u7684\u6A21\u5F0F\u7684\u540D\u79F0\u3002\n\u800C <old-mode> \u662F\u4EE5\u524D\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F\u7684\u540D\u79F0\u3002\n\u5982\u679C\u5B58\u5728 <old-mode>, \u5176\u8BBE\u7F6E\u5C06\u88AB\u590D\u5236\u5230\u65B0\u6A21\u5F0F\u3002\n'command' \u4E0E 'quiet' \u51B3\u5B9A\u4E86\u662F\u5426\u663E\u793A\u4FE1\u606F\u6027/\u9A8C\u8BC1\u547D\u4EE4\u53CD\u9988\u3002\n\n\u4E00\u65E6\u521B\u5EFA\u65B0\u6A21\u5F0F, \u5373\u53EF\u4F7F\u7528 '/set format' \u548C '/set prompt' \u8FDB\u884C\u914D\u7F6E\u3002\n\u4F7F\u7528 '/set feedback' \u53EF\u4F7F\u7528\u65B0\u6A21\u5F0F\u3002\n
+help.set.prompt = \u8BBE\u7F6E\u63D0\u793A\u7B26\u3002\u5FC5\u987B\u540C\u65F6\u8BBE\u7F6E\u6B63\u5E38\u63D0\u793A\u7B26\u548C continuation-prompt\u3002\n\n\t/set prompt <mode> "<prompt>" "<continuation-prompt>"\n\n\u5176\u4E2D <mode> \u662F\u4EE5\u524D\u5B9A\u4E49\u7684\u53CD\u9988\u6A21\u5F0F\u7684\u540D\u79F0\u3002\n\u800C <prompt> \u548C <continuation-prompt> \u662F\u4F5C\u4E3A\u8F93\u5165\u63D0\u793A\u7B26\u8F93\u51FA\u7684\u5E26\u5F15\u53F7\u7684\u5B57\u7B26\u4E32;\n\u5B83\u4EEC\u5747\u53EF\u9009\u62E9\u6027\u5730\u5305\u542B '%s', \u8BE5\u53D8\u91CF\u5C06\u88AB\u66FF\u6362\u4E3A\u4E0B\u4E00\u4E2A\u7247\u6BB5 id --\n\u8BF7\u6CE8\u610F, \u53EF\u80FD\u65E0\u6CD5\u5411\u6240\u8F93\u5165\u5185\u5BB9\u5206\u914D\u8BE5 id, \u4F8B\u5982\u8FD9\u53EF\u80FD\u662F\u4E00\u4E2A\u9519\u8BEF\u6216\u547D\u4EE4\u3002\ncontinuation-prompt \u5728\u591A\u884C\u7247\u6BB5\u7684\u7B2C\u4E8C\u884C\u4EE5\u53CA\u540E\u7EED\u884C\u4E0A\u4F7F\u7528\u3002\n
+
+help.set.editor =\u6307\u5B9A\u8981\u4E3A /edit \u547D\u4EE4\u542F\u52A8\u7684\u547D\u4EE4\u3002\n\n\t/set editor <command> <optional-arg>...\n\n<command> \u662F\u4E00\u4E2A\u64CD\u4F5C\u7CFB\u7EDF\u76F8\u5173\u5B57\u7B26\u4E32\u3002\n<command> \u53EF\u4EE5\u5305\u542B\u7528\u7A7A\u683C\u5206\u9694\u7684\u53C2\u6570 (\u4F8B\u5982\u6807\u8BB0) -- <optional-arg>....\n\u5728\u4F7F\u7528 /edit \u65F6, \u8981\u7F16\u8F91\u7684\u4E34\u65F6\u6587\u4EF6\u5C06\u4F5C\u4E3A\u6700\u540E\u4E00\u4E2A\u53C2\u6570\u9644\u52A0\u3002
+
+help.set.start =\u8BBE\u7F6E\u542F\u52A8\u914D\u7F6E -- \u5728\u542F\u52A8\u65F6\u8BFB\u53D6\u7684\u4E00\u7CFB\u5217\u7247\u6BB5\u548C\u547D\u4EE4\u3002\n\n\t/set start <file>\n\n\u6307\u5B9A <file> \u7684\u5185\u5BB9\u5C06\u6210\u4E3A\u9ED8\u8BA4\u542F\u52A8\u7247\u6BB5\u548C\u547D\u4EE4 --\n\u5B83\u4EEC\u5C06\u5728\u542F\u52A8\u6216\u91CD\u542F jshell \u5DE5\u5177\u65F6\u8FD0\u884C\u3002
+
+startup.feedback = /set newmode normal command    \n/set prompt normal '\\n-> ' '>> '    \n/set format normal pre '|  '    \n/set format normal post '%n'    \n/set format normal errorpre '|  '    \n/set format normal errorpost '%n'    \n\n/set format normal errorline '{post}{pre}    {err}'    \n\n/set format normal action 'Added' added-primary    \n/set format normal action 'Modified' modified-primary    \n/set format normal action 'Replaced' replaced-primary    \n/set format normal action 'Overwrote' overwrote-primary    \n/set format normal action 'Dropped' dropped-primary    \n/set format normal action '  Update added' added-update    \n/set format normal action '  Update modified' modified-update    \n/set format normal action '  Update replaced' replaced-update    \n/set format normal action '  Update overwrote' overwrote-update    \n/set format normal action '  Update dropped' dropped-update    \n\n/set format normal until ', however, it cannot be instanciated or its methods invoked until'  defined-class-primary    \n/set format normal until ', however, its methods cannot be invoked until'                     defined-interface-primary    \n/set format normal until ', however, it cannot be used until'                                 defined-enum,annotation-primary    \n/set format normal until ', however, it cannot be invoked until'                              defined-method-primary    \n/set format normal until ', however, it cannot be referenced until'                           notdefined-primary    \n/set format normal until ' which cannot be instanciated or its methods invoked until'         defined-class-update    \n/set format normal until ' whose methods cannot be invoked until'                             defined-interface-update    \n/set format normal until ' which cannot be invoked until'                                     defined-method-update    \n/set format normal until ' which cannot be referenced until'                                  notdefined-update    \n\n/set format normal unrerr '{unresolved} is declared'                                           unresolved1-error0    \n/set format normal unrerr '{unresolved} are declared'                                          unresolved2-error0    \n/set format normal unrerr ' this error is corrected: {errors}'                                 unresolved0-error1    \n/set format normal unrerr '{unresolved} is declared and this error is corrected: {errors}'     unresolved1-error1    \n/set format normal unrerr '{unresolved} are declared and this error is corrected: {errors}'    unresolved2-error1    \n/set format normal unrerr ' these errors are corrected: {errors}'                              unresolved0-error2    \n/set format normal unrerr '{unresolved} is declared and these errors are corrected: {errors}'  unresolved1-error2    \n/set format normal unrerr '{unresolved} are declared and these errors are corrected: {errors}' unresolved2-error2    \n\n/set format normal resolve '{until}{unrerr}'                                                added,modified,replaced,used    \n\n/set format normal typeKind 'class'                  class    \n/set format normal typeKind 'interface'              interface    \n/set format normal typeKind 'enum'                   enum    \n/set format normal typeKind 'annotation interface'   annotation    \n\n/set format normal display '{pre}{action} {typeKind} {name}{resolve}{post}'                 class,interface,enum,annotation    \n/set format normal display '{pre}{action} method {name}({type}){resolve}{post}'             method    \n\n/set format normal display '{pre}{action} variable {name} of type {type}{resolve}{post}'    vardecl    \n/set format normal display '{pre}{action} variable {name} of type {type} with initial value {value}{resolve}{post}'    varinit    \n/set format normal display '{pre}{action} variable {name}, reset to null{post}'             replaced-vardecl,varinit-ok-update    \n/set format normal display \
+'{pre}{action} variable {name}{resolve}{post}'                   vardecl,varinit-notdefined    \n/set format normal display '{pre}{action} variable {name}{post}'                            overwrote,dropped-vardecl,varinit    \n\n/set format normal display '{pre}Expression value is: {value}{post}{pre}  assigned to temporary variable {name} of type {type}{post}' expression    \n/set format normal display '{pre}Variable {name} of type {type} has value {value}{post}'    varvalue    \n/set format normal display '{pre}Variable {name} has been assigned the value {value}{post}' assignment    \n\n/set format normal display '{pre}Attempted to use {typeKind} {name}{resolve}{post}'         used-class,interface,enum,annotation    \n/set format normal display '{pre}Attempted to call method {name}({type}){resolve}{post}'    used-method    \n\n/set feedback normal    \n\n/set newmode off quiet    \n/set prompt off '-> ' '>> '    \n/set format off pre '|  '    \n/set format off post '%n'    \n/set format off errorpre '|  '    \n/set format off errorpost '%n'    \n/set format off display ''    \n
diff --git a/langtools/src/jdk.jshell/share/classes/jdk/jshell/resources/l10n_ja.properties b/langtools/src/jdk.jshell/share/classes/jdk/jshell/resources/l10n_ja.properties
new file mode 100644
index 0000000..c781757
--- /dev/null
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/resources/l10n_ja.properties
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+#
+
+jshell.diag.modifier.plural.fatal = \u4FEE\u98FE\u5B50{0}\u306F\u3001\u30C8\u30C3\u30D7\u30FB\u30EC\u30D9\u30EB\u5BA3\u8A00\u3067\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+jshell.diag.modifier.plural.ignore = \u4FEE\u98FE\u5B50{0}\u306F\u3001\u30C8\u30C3\u30D7\u30FB\u30EC\u30D9\u30EB\u5BA3\u8A00\u3067\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u7121\u8996\u3055\u308C\u307E\u3059
+jshell.diag.modifier.single.fatal = \u4FEE\u98FE\u5B50{0}\u306F\u3001\u30C8\u30C3\u30D7\u30FB\u30EC\u30D9\u30EB\u5BA3\u8A00\u3067\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093
+jshell.diag.modifier.single.ignore = \u4FEE\u98FE\u5B50{0}\u306F\u3001\u30C8\u30C3\u30D7\u30FB\u30EC\u30D9\u30EB\u5BA3\u8A00\u3067\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u7121\u8996\u3055\u308C\u307E\u3059
+
+jshell.exc.null = \u30B9\u30CB\u30DA\u30C3\u30C8\u306Fnull\u306B\u3067\u304D\u307E\u305B\u3093
+jshell.exc.alien = \u3053\u306EJShell\u304B\u3089\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093
+jshell.exc.closed = JShell ({0})\u306F\u30AF\u30ED\u30FC\u30BA\u3055\u308C\u307E\u3057\u305F\u3002
+jshell.exc.var.not.valid = varValue() {0}\u306E\u30B9\u30CB\u30DA\u30C3\u30C8\u30FB\u30D1\u30E9\u30E1\u30FC\u30BF\u306FVALID\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u304C\u3001{1}\u3067\u3059
diff --git a/langtools/src/jdk.jshell/share/classes/jdk/jshell/resources/l10n_zh_CN.properties b/langtools/src/jdk.jshell/share/classes/jdk/jshell/resources/l10n_zh_CN.properties
new file mode 100644
index 0000000..21f107c
--- /dev/null
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/resources/l10n_zh_CN.properties
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+#
+
+jshell.diag.modifier.plural.fatal = \u4FEE\u9970\u7B26 {0} \u4E0D\u5141\u8BB8\u5728\u9876\u7EA7\u58F0\u660E\u4E2D\u4F7F\u7528
+jshell.diag.modifier.plural.ignore = \u4FEE\u9970\u7B26 {0} \u4E0D\u5141\u8BB8\u5728\u9876\u7EA7\u58F0\u660E\u4E2D\u4F7F\u7528, \u5DF2\u5FFD\u7565
+jshell.diag.modifier.single.fatal = \u4FEE\u9970\u7B26 {0} \u4E0D\u5141\u8BB8\u5728\u9876\u7EA7\u58F0\u660E\u4E2D\u4F7F\u7528
+jshell.diag.modifier.single.ignore = \u4FEE\u9970\u7B26 {0} \u4E0D\u5141\u8BB8\u5728\u9876\u7EA7\u58F0\u660E\u4E2D\u4F7F\u7528, \u5DF2\u5FFD\u7565
+
+jshell.exc.null = \u7247\u6BB5\u4E0D\u80FD\u4E3A\u7A7A\u503C
+jshell.exc.alien = \u7247\u6BB5\u4E0D\u6765\u81EA\u4E8E\u6B64 JShell
+jshell.exc.closed = JShell ({0}) \u5DF2\u5173\u95ED\u3002
+jshell.exc.var.not.valid = varValue() {0} \u7684\u7247\u6BB5\u53C2\u6570\u5FC5\u987B\u4E3AVALID, \u8BE5\u53C2\u6570\u4E3A: {1}
diff --git a/langtools/test/Makefile b/langtools/test/Makefile
index f5b43ab..d573f1f 100644
--- a/langtools/test/Makefile
+++ b/langtools/test/Makefile
@@ -84,12 +84,14 @@
 endif
 
 # Default JTREG to run
-ifdef JPRT_JTREG_HOME
-  JTREG_HOME = $(JPRT_JTREG_HOME)
-else ifdef JT_HOME
-  JTREG_HOME = $(JT_HOME)
-else
-  JTREG_HOME = $(SLASH_JAVA)/re/jtreg/4.1-jigsaw/nightly/binaries/jtreg/
+ifndef JTREG_HOME
+  ifdef JPRT_JTREG_HOME
+    JTREG_HOME = $(JPRT_JTREG_HOME)
+  else ifdef JT_HOME
+    JTREG_HOME = $(JT_HOME)
+  else
+    JTREG_HOME = $(SLASH_JAVA)/re/jtreg/4.2/promoted/latest/
+  endif
 endif
 JTREG = $(JTREG_HOME)/bin/jtreg
 JTDIFF = $(JTREG_HOME)/bin/jtdiff
@@ -105,10 +107,12 @@
 endif
 
 # Default JCK to run
-ifdef JPRT_JCK_HOME
-  JCK_HOME = $(JPRT_JCK_HOME)
-else
-  JCK_HOME = $(SLASH_JAVA)/re/jck/8/promoted/latest/binaries
+ifndef JCK_HOME
+  ifdef JPRT_JCK_HOME
+    JCK_HOME = $(JPRT_JCK_HOME)
+  else
+    JCK_HOME = $(SLASH_JAVA)/re/jck/8/promoted/latest/binaries
+  endif
 endif
 
 # Default JDK for JTREG and JCK
@@ -203,10 +207,10 @@
 endif
 
 # Default verbosity setting for jtreg
-JTREG_VERBOSE = fail,error,nopass
+JTREG_VERBOSE ?= fail,error,nopass
 
 # Default verbosity setting for jck
-JCK_VERBOSE = non-pass
+JCK_VERBOSE ?= non-pass
 
 # Assertions: some tests show failures when assertions are enabled.
 # Since javac is typically loaded via the bootclassloader (either via TESTJAVA
@@ -232,10 +236,6 @@
 # to a given level. Redefine function or preceding FATAL_*_EXIT codes as needed.
 EXIT_IF_FATAL = status=$$?; if [ $$status -ge $(1) ]; then exit $$status ; fi
 
-# The test directories to run
-DEFAULT_TESTDIRS = .
-TESTDIRS = $(DEFAULT_TESTDIRS)
-
 # Root of all test results
 TEST_OUTPUT_DIR = $(TEST_ROOT)/../build/$(PLATFORM)-$(ARCH)/test/langtools
 ABS_TEST_OUTPUT_DIR := \
@@ -260,9 +260,17 @@
 jck-runtime: $(JPRT_CLEAN) jck-runtime-tests $(JPRT_ARCHIVE_BUNDLE) jck-runtime-summary
 	@echo "Testing completed successfully"
 
+# a way to select tests from outside
+# works for targets 'jtreg', 'jck-compiler', and 'jck-runtime'
+ifdef TEST_SELECTION
+  JTREG_TESTDIRS = $(TEST_SELECTION)
+  JCK_COMPILER_TESTDIRS = $(TEST_SELECTION)
+  JCK_RUNTIME_TESTDIRS = $(TEST_SELECTION)
+endif
+
 # for use with JPRT -testrule
 all:		JTREG_TESTDIRS = .
-jtreg:		JTREG_TESTDIRS = .
+jtreg:		JTREG_TESTDIRS ?= .
 apt:		JTREG_TESTDIRS = tools/apt
 javac: 		JTREG_TESTDIRS = tools/javac
 javadoc:	JTREG_TESTDIRS = tools/javadoc com/sun/javadoc
@@ -270,11 +278,6 @@
 javap:		JTREG_TESTDIRS = tools/javap
 jdeps:		JTREG_TESTDIRS = tools/jdeps
 
-# a way to select jtreg tests from outside
-ifdef TEST_SELECTION
-  JTREG_TESTDIRS = $(TEST_SELECTION)
-endif
-
 
 # Run jtreg tests
 #
@@ -438,11 +441,11 @@
 
 # Check to make sure these directories exist
 check-jck:
-	if [ ! -d '$(JCK_HOME)' ]; then \
+	@if [ ! -d '$(JCK_HOME)' ]; then \
 	    echo "JCK_HOME $(JCK_HOME) missing" ; \
 	    $(EXIT) 1 ; \
 	fi
-	if [ ! -d '$(PRODUCT_HOME)' ]; then \
+	@if [ ! -d '$(PRODUCT_HOME)' ]; then \
 	    echo "PRODUCT_HOME $(PRODUCT_HOME) missing" ; \
 	    $(EXIT) 1 ; \
 	fi
diff --git a/langtools/test/tools/javac/T8058244/MissingErrorInDefaultSuperCallTest.java b/langtools/test/tools/javac/T8058244/MissingErrorInDefaultSuperCallTest.java
new file mode 100644
index 0000000..5b2b08f
--- /dev/null
+++ b/langtools/test/tools/javac/T8058244/MissingErrorInDefaultSuperCallTest.java
@@ -0,0 +1,23 @@
+/*
+ * @test /nodynamiccopyright/
+ * @bug 8058244
+ * @summary missing error in qualified default super call
+ * @library /tools/lib
+ * @modules jdk.compiler/com.sun.tools.javac.api
+ *          jdk.compiler/com.sun.tools.javac.main
+ * @compile/fail/ref=MissingErrorInDefaultSuperCallTest.out -XDrawDiagnostics MissingErrorInDefaultSuperCallTest.java
+ */
+
+public class MissingErrorInDefaultSuperCallTest {
+    interface I {
+        default int f(){return 0;}
+    }
+
+    class J implements I {}
+
+    class T extends J implements I {
+        public int f() {
+            return I.super.f();
+        }
+    }
+}
diff --git a/langtools/test/tools/javac/T8058244/MissingErrorInDefaultSuperCallTest.out b/langtools/test/tools/javac/T8058244/MissingErrorInDefaultSuperCallTest.out
new file mode 100644
index 0000000..8117fac
--- /dev/null
+++ b/langtools/test/tools/javac/T8058244/MissingErrorInDefaultSuperCallTest.out
@@ -0,0 +1,2 @@
+MissingErrorInDefaultSuperCallTest.java:20:21: compiler.err.illegal.default.super.call: MissingErrorInDefaultSuperCallTest.I, (compiler.misc.redundant.supertype: MissingErrorInDefaultSuperCallTest.I, MissingErrorInDefaultSuperCallTest.J)
+1 error
diff --git a/langtools/test/tools/javac/T8068460/PrettyPrintingForLoopsTest.java b/langtools/test/tools/javac/T8068460/PrettyPrintingForLoopsTest.java
new file mode 100644
index 0000000..843d3f3
--- /dev/null
+++ b/langtools/test/tools/javac/T8068460/PrettyPrintingForLoopsTest.java
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8068460
+ * @summary Pretty printing for loops
+ * @library /tools/javac/lib
+ * @modules jdk.compiler/com.sun.tools.javac.api
+ *          jdk.compiler/com.sun.tools.javac.file
+ *          jdk.compiler/com.sun.tools.javac.tree
+ *          jdk.compiler/com.sun.tools.javac.util
+ * @build JavacTestingAbstractProcessor
+ * @run main PrettyPrintingForLoopsTest
+ */
+
+import java.io.IOException;
+import java.io.StringWriter;
+import java.net.URI;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.tools.JavaFileObject;
+import javax.tools.SimpleJavaFileObject;
+import javax.tools.StandardJavaFileManager;
+
+import com.sun.source.tree.CompilationUnitTree;
+import com.sun.source.util.JavacTask;
+import com.sun.tools.javac.api.JavacTool;
+import com.sun.tools.javac.tree.JCTree;
+import com.sun.tools.javac.tree.Pretty;
+import com.sun.tools.javac.util.Assert;
+
+public class PrettyPrintingForLoopsTest {
+
+    public static void main(String... args) throws IOException {
+        new PrettyPrintingForLoopsTest().testForLoop();
+    }
+
+    public void testForLoop() throws IOException {
+        List files = Arrays.asList(new JavaSource(""));
+        JavacTool tool = JavacTool.create();
+        try (StandardJavaFileManager fm = tool.getStandardFileManager(null, null, null)) {
+            JavacTask task = tool.getTask(null, fm, null, null, null, files);
+            Iterable trees = task.parse();
+            CompilationUnitTree thisTree = (CompilationUnitTree)trees.iterator().next();
+            String thisSrc = prettyPrint((JCTree) thisTree);
+            Assert.check(thisSrc.equals(JavaSource.source));
+        }
+    }
+
+    private static String prettyPrint(JCTree tree) throws IOException {
+        StringWriter sw = new StringWriter();
+        new Pretty(sw, true).printExpr(tree);
+        return sw.toString().replaceAll(System.getProperty("line.separator"), "\n");
+    }
+
+    static class JavaSource extends SimpleJavaFileObject {
+        static String source = "\n" +
+                "class Test {\n" +
+                "    \n" +
+                "    void m() {\n" +
+                "        for (int i; true; i++) {\n" +
+                "            i = 0;\n" +
+                "        }\n" +
+                "        for (int i = 0, j, k = 23, l; i < 42; i++) {\n" +
+                "        }\n" +
+                "    }\n" +
+                "}";
+
+        public JavaSource(String stmt) {
+            super(URI.create("myfo:/Test.java"), JavaFileObject.Kind.SOURCE);
+        }
+
+        @Override
+        public CharSequence getCharContent(boolean ignoreEncodingErrors) {
+            return source;
+        }
+    }
+}
diff --git a/langtools/test/tools/javac/generics/inference/8019824/T8019824.out b/langtools/test/tools/javac/generics/inference/8019824/T8019824.out
index 481268c..a30c235f 100644
--- a/langtools/test/tools/javac/generics/inference/8019824/T8019824.out
+++ b/langtools/test/tools/javac/generics/inference/8019824/T8019824.out
@@ -1,2 +1,2 @@
-T8019824.java:9:25: compiler.err.cant.apply.symbol: kindname.method, make, java.lang.Class<C>, java.lang.Class<compiler.misc.type.captureof: 1, ? extends T8019824.Foo<?,?>>, kindname.class, T8019824, (compiler.misc.incompatible.eq.upper.bounds: C, compiler.misc.type.captureof: 1, ? extends T8019824.Foo<?,?>, T8019824.Foo<compiler.misc.type.captureof: 2, ?,B>)
+T8019824.java:9:25: compiler.err.cant.apply.symbol: kindname.method, make, java.lang.Class<C>, java.lang.Class<compiler.misc.type.captureof: 1, ? extends T8019824.Foo<?,?>>, kindname.class, T8019824, (compiler.misc.incompatible.eq.upper.bounds: C, compiler.misc.type.captureof: 1, ? extends T8019824.Foo<?,?>, T8019824.Foo<A,B>)
 1 error
diff --git a/langtools/test/tools/javac/generics/inference/8159680/T8159680.java b/langtools/test/tools/javac/generics/inference/8159680/T8159680.java
new file mode 100644
index 0000000..0f8ac18
--- /dev/null
+++ b/langtools/test/tools/javac/generics/inference/8159680/T8159680.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8159680
+ * @summary Inference failure with unchecked subtyping and arrays
+ * @compile T8159680.java
+ */
+
+class T8159680 {
+
+    static class Condition<T> {}
+
+    @SafeVarargs
+    static <T> Condition<T> allOf(Condition<? super T>... conditions) {
+        return null;
+    }
+
+    @SafeVarargs
+    static void test(Condition<? super Number>... conditions) {
+        allOf(conditions);
+    }
+}
diff --git a/langtools/test/tools/javac/modules/GraphsTest.java b/langtools/test/tools/javac/modules/GraphsTest.java
index aadc180..f0d523b 100644
--- a/langtools/test/tools/javac/modules/GraphsTest.java
+++ b/langtools/test/tools/javac/modules/GraphsTest.java
@@ -73,6 +73,7 @@
     @Test
     public void diamond(Path base) throws Exception {
 
+        Path modSrc = Files.createDirectories(base.resolve("modSrc"));
         Path modules = Files.createDirectories(base.resolve("modules"));
 
         new ModuleBuilder(tb, "J")
@@ -94,19 +95,19 @@
                 .requiresPublic("J", jarModules)
                 .classes("package openO; public class O { openJ.J j; }")
                 .classes("package closedO; public class O { }")
-                .build(modules);
+                .build(modSrc, modules);
         new ModuleBuilder(tb, "N")
                 .requiresPublic("O", modules, jarModules)
                 .exports("openN")
                 .classes("package openN; public class N { }")
                 .classes("package closedN; public class N { }")
-                .build(modules);
+                .build(modSrc, modules);
         new ModuleBuilder(tb, "L")
                 .requiresPublic("O", modules, jarModules)
                 .exports("openL")
                 .classes("package openL; public class L { }")
                 .classes("package closedL; public class L { }")
-                .build(modules);
+                .build(modSrc, modules);
         ModuleBuilder m = new ModuleBuilder(tb, "M");
         //positive case
         Path positiveSrc = m
@@ -140,14 +141,14 @@
             throw new Exception("Expected output not found");
         }
         //multi module mode
-        m.write(modules);
+        m.write(modSrc);
         List<String> out = new JavacTask(tb)
                 .options("-XDrawDiagnostics",
-                        "-modulesourcepath", modules + "/*/src",
+                        "-modulesourcepath", modSrc.toString(),
                         "-mp", jarModules.toString()
                 )
                 .outdir(Files.createDirectories(base.resolve("negative")))
-                .files(findJavaFiles(modules))
+                .files(findJavaFiles(modSrc))
                 .run(Task.Expect.FAIL)
                 .writeAll()
                 .getOutputLines(Task.OutputKind.DIRECT);
@@ -179,23 +180,23 @@
     */
     @Test
     public void reexportOfQualifiedExport(Path base) throws Exception {
-        Path modules = base.resolve("modules");
+        Path modSrc = base.resolve("modSrc");
         new ModuleBuilder(tb, "M")
                 .requiresPublic("N")
-                .write(modules);
+                .write(modSrc);
         new ModuleBuilder(tb, "N")
                 .exportsTo("pack", "M")
                 .classes("package pack; public class Clazz { }")
-                .write(modules);
+                .write(modSrc);
         new ModuleBuilder(tb, "L")
                 .requires("M")
                 .classes("package p; public class A { A(pack.Clazz cl){} } ")
-                .write(modules);
+                .write(modSrc);
         String log = new JavacTask(tb)
                 .options("-XDrawDiagnostics",
-                        "-modulesourcepath", modules + "/*/src")
+                        "-modulesourcepath", modSrc.toString())
                 .outdir(Files.createDirectories(base.resolve("negative")))
-                .files(findJavaFiles(modules))
+                .files(findJavaFiles(modSrc))
                 .run(Task.Expect.FAIL)
                 .writeAll()
                 .getOutput(Task.OutputKind.DIRECT);
diff --git a/langtools/test/tools/javac/modules/ModulePathTest.java b/langtools/test/tools/javac/modules/ModulePathTest.java
index 9fb6398..db5a7e7 100644
--- a/langtools/test/tools/javac/modules/ModulePathTest.java
+++ b/langtools/test/tools/javac/modules/ModulePathTest.java
@@ -303,7 +303,7 @@
 
     @Test
     public void relativePath(Path base) throws Exception {
-        final Path modules = base.resolve("modules");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1").build(modules);
 
         Path src = base.resolve("src");
@@ -319,7 +319,7 @@
 
     @Test
     public void duplicatePaths_1(Path base) throws Exception {
-        final Path modules = base.resolve("modules");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1").build(modules);
 
         Path src = base.resolve("src");
@@ -335,7 +335,7 @@
 
     @Test
     public void duplicatePaths_2(Path base) throws Exception {
-        final Path modules = base.resolve("modules");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1").build(modules);
 
         Path src = base.resolve("src");
@@ -352,24 +352,25 @@
 
     @Test
     public void oneModuleHidesAnother(Path base) throws Exception {
-        final Path module = base.resolve("modules");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .exports("pkg1")
                 .classes("package pkg1; public class E { }")
-                .build(module);
+                .build(modules);
 
-        final Path deepModuleDir = module.resolve("deepModuleDir");
+        Path deepModuleDirSrc = base.resolve("deepModuleDirSrc");
+        Path deepModuleDir = modules.resolve("deepModuleDir");
         new ModuleBuilder(tb, "m1")
                 .exports("pkg2")
                 .classes("package pkg2; public class E { }")
-                .build(deepModuleDir);
+                .build(deepModuleDirSrc, deepModuleDir);
 
         Path src = base.resolve("src");
         tb.writeJavaFiles(src, "module m2 { requires m1; }", " package p; class A { void main() { pkg2.E.class.getName(); } }");
 
         new JavacTask(tb, Task.Mode.CMDLINE)
                 .options("-XDrawDiagnostics",
-                        "-modulepath", deepModuleDir + PATH_SEP + module)
+                        "-modulepath", deepModuleDir + PATH_SEP + modules)
                 .files(findJavaFiles(src))
                 .run()
                 .writeAll();
@@ -377,7 +378,7 @@
 
     @Test
     public void modulesInDifferentContainers(Path base) throws Exception {
-        final Path modules = base.resolve("modules");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .exports("one")
                 .classes("package one; public class A { }")
diff --git a/langtools/test/tools/javac/modules/PackageConflictTest.java b/langtools/test/tools/javac/modules/PackageConflictTest.java
index c091089..915051e 100644
--- a/langtools/test/tools/javac/modules/PackageConflictTest.java
+++ b/langtools/test/tools/javac/modules/PackageConflictTest.java
@@ -125,6 +125,7 @@
 
     @Test
     public void testSimple2(Path base) throws Exception {
+        Path modSrc = base.resolve("modSrc");
         Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "N")
                 .exports("pack")
@@ -133,12 +134,12 @@
         new ModuleBuilder(tb, "M")
                 .requires("N")
                 .classes("package pack; public class B { pack.A f; }")
-                .write(modules);
+                .write(modSrc);
 
         String log = new JavacTask(tb)
                 .options("-XDrawDiagnostics", "-mp", modules.toString())
                 .outdir(Files.createDirectories(base.resolve("classes")))
-                .files(findJavaFiles(modules.resolve("M")))
+                .files(findJavaFiles(modSrc.resolve("M")))
                 .run(Task.Expect.FAIL)
                 .writeAll()
                 .getOutput(Task.OutputKind.DIRECT);
@@ -149,21 +150,21 @@
 
     @Test
     public void testPrivateConflict(Path base) throws Exception {
-        Path modules = base.resolve("modules");
+        Path modSrc = base.resolve("modSrc");
         new ModuleBuilder(tb, "N")
                 .exports("publ")
                 .classes("package pack; public class A { }")
                 .classes("package publ; public class B { }")
-                .write(modules);
+                .write(modSrc);
         new ModuleBuilder(tb, "M")
                 .requires("N")
                 .classes("package pack; public class C { publ.B b; }")
-                .write(modules);
+                .write(modSrc);
 
         String log = new JavacTask(tb)
-                .options("-XDrawDiagnostics", "-modulesourcepath", modules + "/*/src")
+                .options("-XDrawDiagnostics", "-modulesourcepath", modSrc.toString())
                 .outdir(Files.createDirectories(base.resolve("classes")))
-                .files(findJavaFiles(modules))
+                .files(findJavaFiles(modSrc))
                 .run(Task.Expect.SUCCESS)
                 .writeAll()
                 .getOutput(Task.OutputKind.DIRECT);
@@ -175,6 +176,7 @@
 
     @Test
     public void testPrivateConflictOnModulePath(Path base) throws Exception {
+        Path modSrc = base.resolve("modSrc");
         Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "N")
                 .exports("publ")
@@ -184,12 +186,12 @@
         new ModuleBuilder(tb, "M")
                 .requires("N")
                 .classes("package pack; public class C { publ.B b; }")
-                .write(modules);
+                .write(modSrc);
 
         String log = new JavacTask(tb)
                 .options("-XDrawDiagnostics", "-mp", modules.toString())
                 .outdir(Files.createDirectories(base.resolve("classes")))
-                .files(findJavaFiles(modules.resolve("M")))
+                .files(findJavaFiles(modSrc.resolve("M")))
                 .run(Task.Expect.SUCCESS)
                 .writeAll()
                 .getOutput(Task.OutputKind.DIRECT);
@@ -201,6 +203,7 @@
 
     @Test
     public void testRequiresConflictExports(Path base) throws Exception {
+        Path modSrc = base.resolve("modSrc");
         Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "M")
                 .exports("pack")
@@ -214,12 +217,12 @@
                 .requires("M")
                 .requires("N")
                 .classes("package pkg; public class C { pack.A a; pack.B b; }")
-                .write(modules);
+                .write(modSrc);
 
         List<String> log = new JavacTask(tb)
                 .options("-XDrawDiagnostics", "-mp", modules.toString())
                 .outdir(Files.createDirectories(base.resolve("classes")))
-                .files(findJavaFiles(modules.resolve("K")))
+                .files(findJavaFiles(modSrc.resolve("K")))
                 .run(Task.Expect.FAIL)
                 .writeAll()
                 .getOutputLines(Task.OutputKind.DIRECT);
@@ -232,39 +235,39 @@
     }
 
     @Test
-    public void testQulifiedExportsToDifferentModules(Path base) throws Exception {
-        Path modules = base.resolve("modules");
-        new ModuleBuilder(tb, "U").write(modules);
+    public void testQualifiedExportsToDifferentModules(Path base) throws Exception {
+        Path modSrc = base.resolve("modSrc");
+        new ModuleBuilder(tb, "U").write(modSrc);
         new ModuleBuilder(tb, "M")
                 .exports("pkg to U")
                 .classes("package pkg; public class A { public static boolean flagM; }")
-                .write(modules);
+                .write(modSrc);
         new ModuleBuilder(tb, "N")
                 .exports("pkg to K")
                 .classes("package pkg; public class A { public static boolean flagN; }")
-                .write(modules);
+                .write(modSrc);
         ModuleBuilder moduleK = new ModuleBuilder(tb, "K");
         moduleK.requires("M")
                 .requires("N")
                 .classes("package p; public class DependsOnN { boolean f = pkg.A.flagN; } ")
-                .write(modules);
+                .write(modSrc);
         new JavacTask(tb)
-                .options("-modulesourcepath", modules + "/*/src")
+                .options("-modulesourcepath", modSrc.toString())
                 .outdir(Files.createDirectories(base.resolve("classes")))
-                .files(findJavaFiles(modules.resolve("K")))
+                .files(findJavaFiles(modSrc.resolve("K")))
                 .run(Task.Expect.SUCCESS)
                 .writeAll();
 
         //negative case
         moduleK.classes("package pkg; public class DuplicatePackage { } ")
                 .classes("package p; public class DependsOnM { boolean f = pkg.A.flagM; } ")
-                .write(modules);
+                .write(modSrc);
 
         List<String> output = new JavacTask(tb)
                 .options("-XDrawDiagnostics",
-                        "-modulesourcepath", modules + "/*/src")
+                        "-modulesourcepath", modSrc.toString())
                 .outdir(Files.createDirectories(base.resolve("classes")))
-                .files(findJavaFiles(modules.resolve("K")))
+                .files(findJavaFiles(modSrc.resolve("K")))
                 .run(Task.Expect.FAIL)
                 .writeAll()
                 .getOutputLines(Task.OutputKind.DIRECT);
diff --git a/langtools/test/tools/javac/modules/UpgradeModulePathTest.java b/langtools/test/tools/javac/modules/UpgradeModulePathTest.java
index 988076c..d4b50d3 100644
--- a/langtools/test/tools/javac/modules/UpgradeModulePathTest.java
+++ b/langtools/test/tools/javac/modules/UpgradeModulePathTest.java
@@ -49,25 +49,25 @@
 
     @Test
     public void simpleUsage(Path base) throws Exception {
-        final Path module = base.resolve("modules");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .exports("pkg1")
                 .classes("package pkg1; public class E { }")
-                .build(module);
+                .build(modules);
 
-        final Path upgradeModule = base.resolve("upgradeModule");
+        final Path upgradeModules = base.resolve("upgradeModules");
         new ModuleBuilder(tb, "m1")
                 .exports("pkg2")
                 .classes("package pkg2; public class E { }")
-                .build(upgradeModule);
+                .build(upgradeModules);
 
         Path src = base.resolve("src");
         tb.writeJavaFiles(src, "module m2 { requires m1; }",
                 "package p; class A { void main() { pkg2.E.class.getName(); } }");
 
         new JavacTask(tb, Task.Mode.CMDLINE)
-                .options("-modulepath", module.toString(),
-                        "-upgrademodulepath", upgradeModule.toString())
+                .options("-modulepath", modules.toString(),
+                        "-upgrademodulepath", upgradeModules.toString())
                 .files(findJavaFiles(src))
                 .run()
                 .writeAll();
diff --git a/langtools/test/tools/javac/modules/UsesTest.java b/langtools/test/tools/javac/modules/UsesTest.java
index 136a689..5e8f031 100644
--- a/langtools/test/tools/javac/modules/UsesTest.java
+++ b/langtools/test/tools/javac/modules/UsesTest.java
@@ -163,6 +163,7 @@
 
     @Test
     public void testMultiOnModulePath(Path base) throws Exception {
+        Path modSrc = base.resolve("modSrc");
         Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .exports("p")
@@ -171,18 +172,19 @@
         new ModuleBuilder(tb, "m2")
                 .requires("m1")
                 .uses("p.C")
-                .write(modules);
+                .write(modSrc);
 
         new JavacTask(tb)
                 .options("-mp", modules.toString())
                 .outdir(modules)
-                .files(findJavaFiles(modules.resolve("m2")))
+                .files(findJavaFiles(modSrc.resolve("m2")))
                 .run(Task.Expect.SUCCESS)
                 .writeAll();
     }
 
     @Test
     public void testMultiOnModulePathInner(Path base) throws Exception {
+        Path modSrc = base.resolve("modSrc");
         Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .exports("p")
@@ -191,12 +193,12 @@
         new ModuleBuilder(tb, "m2")
                 .requires("m1")
                 .uses("p.C.Inner")
-                .write(modules);
+                .write(modSrc);
 
         new JavacTask(tb)
                 .options("-mp", modules.toString())
                 .outdir(modules)
-                .files(findJavaFiles(modules.resolve("m2")))
+                .files(findJavaFiles(modSrc.resolve("m2")))
                 .run(Task.Expect.SUCCESS)
                 .writeAll();
     }
diff --git a/langtools/test/tools/javac/modules/XModuleTest.java b/langtools/test/tools/javac/modules/XModuleTest.java
index 1658f14..7edd474 100644
--- a/langtools/test/tools/javac/modules/XModuleTest.java
+++ b/langtools/test/tools/javac/modules/XModuleTest.java
@@ -237,16 +237,17 @@
 
     @Test
     public void testWithModulePath(Path base) throws Exception {
-        Path module = base.resolve("modules");
+        Path modSrc = base.resolve("modSrc");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .classes("package pkg1; public interface E { }")
-                .build(module);
+                .build(modSrc, modules);
 
         Path src = base.resolve("src");
         tb.writeJavaFiles(src, "package p; interface A extends pkg1.E { }");
 
         new JavacTask(tb, Task.Mode.CMDLINE)
-                .options("-modulepath", module.toString(),
+                .options("-modulepath", modules.toString(),
                         "-Xmodule:m1")
                 .files(findJavaFiles(src))
                 .run()
@@ -255,14 +256,14 @@
         //checks module bounds still exist
         new ModuleBuilder(tb, "m2")
                 .classes("package pkg2; public interface D { }")
-                .build(module);
+                .build(modSrc, modules);
 
         Path src2 = base.resolve("src2");
         tb.writeJavaFiles(src2, "package p; interface A extends pkg2.D { }");
 
         List<String> log = new JavacTask(tb, Task.Mode.CMDLINE)
                 .options("-XDrawDiagnostics",
-                        "-modulepath", module.toString(),
+                        "-modulepath", modules.toString(),
                         "-Xmodule:m1")
                 .files(findJavaFiles(src2))
                 .run(Task.Expect.FAIL)
@@ -278,21 +279,23 @@
 
     @Test
     public void testWithUpgradeModulePath(Path base) throws Exception {
-        Path module = base.resolve("modules");
+        Path modSrc = base.resolve("modSrc");
+        Path modules = base.resolve("modules");
         new ModuleBuilder(tb, "m1")
                 .classes("package pkg1; public interface E { }")
-                .build(module);
+                .build(modSrc, modules);
 
+        Path upgrSrc = base.resolve("upgradeSrc");
         Path upgrade = base.resolve("upgrade");
         new ModuleBuilder(tb, "m1")
                 .classes("package pkg1; public interface D { }")
-                .build(upgrade);
+                .build(upgrSrc, upgrade);
 
         Path src = base.resolve("src");
         tb.writeJavaFiles(src, "package p; interface A extends pkg1.D { }");
 
         new JavacTask(tb, Task.Mode.CMDLINE)
-                .options("-modulepath", module.toString(),
+                .options("-modulepath", modules.toString(),
                         "-upgrademodulepath", upgrade.toString(),
                         "-Xmodule:m1")
                 .files(findJavaFiles(src))
diff --git a/langtools/test/tools/jdeps/jdkinternals/ShowReplacement.java b/langtools/test/tools/jdeps/jdkinternals/ShowReplacement.java
new file mode 100644
index 0000000..6f6075d
--- /dev/null
+++ b/langtools/test/tools/jdeps/jdkinternals/ShowReplacement.java
@@ -0,0 +1,106 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8159524
+ * @summary Tests JDK internal APIs with and without replacements
+ * @library ../lib
+ * @modules jdk.jdeps/com.sun.tools.jdeps
+ * @build CompilerUtils JdepsUtil
+ * @run testng ShowReplacement
+ */
+
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Map;
+
+import org.testng.annotations.BeforeTest;
+import org.testng.annotations.Test;
+
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertTrue;
+
+public class ShowReplacement {
+    private static final String TEST_SRC = System.getProperty("test.src");
+
+    private static final Path CLASSES_DIR = Paths.get("classes");
+
+    private static final Map<String, String> REPLACEMENTS = Map.of(
+        "sun.security.util.HostnameChecker",
+        "Use javax.net.ssl.SSLParameters.setEndpointIdentificationAlgorithm(\"HTTPS\") @since 1.7",
+        "",
+        "or javax.net.ssl.HttpsURLConnection.setHostnameVerifier() @since 1.4");
+
+    /**
+     * Compiles classes used by the test
+     */
+    @BeforeTest
+    public void compileAll() throws Exception {
+        CompilerUtils.cleanDir(CLASSES_DIR);
+
+        assertTrue(CompilerUtils.compile(Paths.get(TEST_SRC, "p"),
+                                         CLASSES_DIR,
+                                         "-XaddExports:java.base/sun.security.util=ALL-UNNAMED"));
+    }
+
+    @Test
+    public void withReplacement() {
+        Path file = Paths.get("p", "WithRepl.class");
+        String[] output = JdepsUtil.jdeps("-jdkinternals", CLASSES_DIR.resolve(file).toString());
+        int i = 0;
+        while (!output[i].contains("Suggested Replacement")) {
+            i++;
+        }
+
+        // must match the number of JDK internal APIs
+        int count = output.length-i-2;
+        assertEquals(count, REPLACEMENTS.size());
+
+        for (int j=i+2; j < output.length; j++) {
+            String line = output[j];
+            int pos = line.indexOf("Use ");
+            if (pos < 0)
+                pos = line.indexOf("or");
+
+            assertTrue(pos > 0);
+            String name = line.substring(0, pos).trim();
+            String repl = line.substring(pos, line.length()).trim();
+            assertEquals(REPLACEMENTS.get(name), repl);
+        }
+    }
+
+    @Test
+    public void noReplacement() {
+        Path file = Paths.get("p", "NoRepl.class");
+        String[] output = JdepsUtil.jdeps("-jdkinternals", CLASSES_DIR.resolve(file).toString());
+        int i = 0;
+        // expect no replacement
+        while (i < output.length && !output[i].contains("Suggested Replacement")) {
+            i++;
+        }
+
+        // no replacement
+        assertEquals(output.length-i, 0);
+    }
+}
diff --git a/langtools/test/tools/jdeps/jdkinternals/p/NoRepl.java b/langtools/test/tools/jdeps/jdkinternals/p/NoRepl.java
new file mode 100644
index 0000000..8cc5240
--- /dev/null
+++ b/langtools/test/tools/jdeps/jdkinternals/p/NoRepl.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package p;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import sun.security.util.DerEncoder;
+
+public class NoRepl implements DerEncoder {
+    public void derEncode(OutputStream out) throws IOException {
+        throw new IOException();
+    }
+}
diff --git a/langtools/test/tools/jdeps/jdkinternals/p/WithRepl.java b/langtools/test/tools/jdeps/jdkinternals/p/WithRepl.java
new file mode 100644
index 0000000..d31b993
--- /dev/null
+++ b/langtools/test/tools/jdeps/jdkinternals/p/WithRepl.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package p;
+
+import sun.security.util.HostnameChecker;
+
+public class WithRepl {
+   public static void main(String[] argv) throws Exception {
+        HostnameChecker hc = HostnameChecker.getInstance(HostnameChecker.TYPE_LDAP);
+   }
+}
diff --git a/langtools/test/tools/lib/toolbox/JavadocTask.java b/langtools/test/tools/lib/toolbox/JavadocTask.java
new file mode 100644
index 0000000..2034ca0
--- /dev/null
+++ b/langtools/test/tools/lib/toolbox/JavadocTask.java
@@ -0,0 +1,406 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package toolbox;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+import javax.tools.DocumentationTool.DocumentationTask;
+import javax.tools.JavaFileManager;
+import javax.tools.JavaFileObject;
+import javax.tools.StandardJavaFileManager;
+import javax.tools.StandardLocation;
+import javax.tools.ToolProvider;
+
+import jdk.javadoc.internal.api.JavadocTool;
+
+/**
+ * A task to configure and run the documentation tool, javadoc.
+ */
+public class JavadocTask extends AbstractTask<JavadocTask> {
+    private boolean includeStandardOptions;
+    private List<Path> classpath;
+    private List<Path> sourcepath;
+    private Path outdir;
+    private List<String> options;
+    private List<String> classes;
+    private List<String> files;
+    private List<JavaFileObject> fileObjects;
+    private JavaFileManager fileManager;
+
+    private JavadocTool jdtool;
+    private StandardJavaFileManager internalFileManager;
+    private Class<?> docletClass = null; // use the standard doclet by default
+
+    /**
+     * Creates a task to execute {@code javadoc} using API mode.
+     * @param toolBox the {@code ToolBox} to use
+     */
+    public JavadocTask(ToolBox toolBox) {
+        super(toolBox, Task.Mode.API);
+    }
+
+    /**
+     * Creates a task to execute {@code javadoc} in a specified mode.
+     * @param toolBox the {@code ToolBox} to use
+     * @param mode the mode to be used
+     */
+    public JavadocTask(ToolBox toolBox, Task.Mode mode) {
+        super(toolBox, mode);
+    }
+
+    /**
+     * Sets the classpath.
+     * @param classpath the classpath
+     * @return this task object
+     */
+    public JavadocTask classpath(String classpath) {
+        this.classpath = Stream.of(classpath.split(File.pathSeparator))
+                .filter(s -> !s.isEmpty())
+                .map(s -> Paths.get(s))
+                .collect(Collectors.toList());
+        return this;
+    }
+
+    /**
+     * Sets the classpath.
+     * @param classpath the classpath
+     * @return this task object
+     */
+    public JavadocTask classpath(Path... classpath) {
+        this.classpath = Arrays.asList(classpath);
+        return this;
+    }
+
+    /**
+     * Sets the classpath.
+     * @param classpath the classpath
+     * @return this task object
+     */
+    public JavadocTask classpath(List<Path> classpath) {
+        this.classpath = classpath;
+        return this;
+    }
+
+    /**
+     * Sets the sourcepath.
+     * @param sourcepath the sourcepath
+     * @return this task object
+     */
+    public JavadocTask sourcepath(String sourcepath) {
+        this.sourcepath = Stream.of(sourcepath.split(File.pathSeparator))
+                .filter(s -> !s.isEmpty())
+                .map(s -> Paths.get(s))
+                .collect(Collectors.toList());
+        return this;
+    }
+
+    /**
+     * Sets the sourcepath.
+     * @param sourcepath the sourcepath
+     * @return this task object
+     */
+    public JavadocTask sourcepath(Path... sourcepath) {
+        this.sourcepath = Arrays.asList(sourcepath);
+        return this;
+    }
+
+    /**
+     * Sets the sourcepath.
+     * @param sourcepath the sourcepath
+     * @return this task object
+     */
+    public JavadocTask sourcepath(List<Path> sourcepath) {
+        this.sourcepath = sourcepath;
+        return this;
+    }
+
+    /**
+     * Sets the output directory.
+     * @param outdir the output directory
+     * @return this task object
+     */
+    public JavadocTask outdir(String outdir) {
+        this.outdir = Paths.get(outdir);
+        return this;
+    }
+
+    /**
+     * Sets the output directory.
+     * @param outdir the output directory
+     * @return this task object
+     */
+    public JavadocTask outdir(Path outdir) {
+        this.outdir = outdir;
+        return this;
+    }
+
+    /**
+     * Sets the options.
+     * @param options the options
+     * @return this task object
+     */
+    public JavadocTask options(String... options) {
+        this.options = Arrays.asList(options);
+        return this;
+    }
+
+    /**
+     * Sets the files to be documented.
+     * @param files the files
+     * @return this task object
+     */
+    public JavadocTask files(String... files) {
+        this.files = Arrays.asList(files);
+        return this;
+    }
+
+    /**
+     * Sets the files to be documented.
+     * @param files the files
+     * @return this task object
+     */
+    public JavadocTask files(Path... files) {
+        this.files = Stream.of(files)
+                .map(Path::toString)
+                .collect(Collectors.toList());
+        return this;
+    }
+
+    /**
+     * Sets the files to be documented.
+     * @param files the files
+     * @return this task object
+     */
+    public JavadocTask files(List<Path> files) {
+        this.files = files.stream()
+                .map(Path::toString)
+                .collect(Collectors.toList());
+        return this;
+    }
+
+    /**
+     * Sets the sources to be documented.
+     * Each source string is converted into an in-memory object that
+     * can be passed directly to the tool.
+     * @param sources the sources
+     * @return this task object
+     */
+    public JavadocTask sources(String... sources) {
+        fileObjects = Stream.of(sources)
+                .map(s -> new ToolBox.JavaSource(s))
+                .collect(Collectors.toList());
+        return this;
+    }
+
+    /**
+     * Sets the file manager to be used by this task.
+     * @param fileManager the file manager
+     * @return this task object
+     */
+    public JavadocTask fileManager(JavaFileManager fileManager) {
+        this.fileManager = fileManager;
+        return this;
+    }
+
+    /**
+     * Sets the doclet class to be invoked by javadoc.
+     * Note: this is applicable only in API mode.
+     * @param docletClass the user specified doclet
+     * @return this task object
+     */
+    public JavadocTask docletClass(Class<?> docletClass) {
+        this.docletClass = docletClass;
+        return this;
+    }
+
+    /**
+     * {@inheritDoc}
+     * @return the name "javadoc"
+     */
+    @Override
+    public String name() {
+        return "javadoc";
+    }
+
+    /**
+     * Calls the javadoc tool with the arguments as currently configured.
+     * @return a Result object indicating the outcome of the execution
+     * and the content of any output written to stdout, stderr, or the
+     * main stream by the tool.
+     */
+    @Override
+    public Task.Result run() {
+        if (mode == Task.Mode.EXEC)
+            return runExec();
+
+        AbstractTask.WriterOutput direct = new AbstractTask.WriterOutput();
+        // The following are to catch output to System.out and System.err,
+        // in case these are used instead of the primary (main) stream
+        AbstractTask.StreamOutput sysOut = new AbstractTask.StreamOutput(System.out, System::setOut);
+        AbstractTask.StreamOutput sysErr = new AbstractTask.StreamOutput(System.err, System::setErr);
+        int rc;
+        Map<Task.OutputKind, String> outputMap = new HashMap<>();
+        try {
+            switch (mode == null ? Task.Mode.API : mode) {
+                case API:
+                    rc = runAPI(direct.pw);
+                    break;
+                case CMDLINE:
+                    rc = runCommand(direct.pw);
+                    break;
+                default:
+                    throw new IllegalStateException();
+            }
+        } catch (IOException e) {
+            toolBox.out.println("Exception occurred: " + e);
+            rc = 99;
+        } finally {
+            outputMap.put(Task.OutputKind.STDOUT, sysOut.close());
+            outputMap.put(Task.OutputKind.STDERR, sysErr.close());
+            outputMap.put(Task.OutputKind.DIRECT, direct.close());
+        }
+        return checkExit(new Task.Result(toolBox, this, rc, outputMap));
+    }
+
+    private int runAPI(PrintWriter pw) throws IOException {
+        try {
+            jdtool = (JavadocTool) ToolProvider.getSystemDocumentationTool();
+            jdtool = new JavadocTool();
+
+            if (fileManager == null)
+                fileManager = internalFileManager = jdtool.getStandardFileManager(null, null, null);
+            if (outdir != null)
+                setLocationFromPaths(StandardLocation.CLASS_OUTPUT, Collections.singletonList(outdir));
+            if (classpath != null)
+                setLocationFromPaths(StandardLocation.CLASS_PATH, classpath);
+            if (sourcepath != null)
+                setLocationFromPaths(StandardLocation.SOURCE_PATH, sourcepath);
+            List<String> allOpts = new ArrayList<>();
+            if (options != null)
+                allOpts.addAll(options);
+
+            Iterable<? extends JavaFileObject> allFiles = joinFiles(files, fileObjects);
+            DocumentationTask task = jdtool.getTask(pw,
+                    fileManager,
+                    null,  // diagnostic listener; should optionally collect diags
+                    docletClass,
+                    allOpts,
+                    allFiles);
+            return ((DocumentationTask) task).call() ? 0 : 1;
+        } finally {
+            if (internalFileManager != null)
+                internalFileManager.close();
+        }
+    }
+
+    private void setLocationFromPaths(StandardLocation location, List<Path> files) throws IOException {
+        if (!(fileManager instanceof StandardJavaFileManager))
+            throw new IllegalStateException("not a StandardJavaFileManager");
+        ((StandardJavaFileManager) fileManager).setLocationFromPaths(location, files);
+    }
+
+    private int runCommand(PrintWriter pw) {
+        List<String> args = getAllArgs();
+        String[] argsArray = args.toArray(new String[args.size()]);
+        return jdk.javadoc.internal.tool.Main.execute(argsArray, pw);
+    }
+
+    private Task.Result runExec() {
+        List<String> args = new ArrayList<>();
+        Path javadoc = toolBox.getJDKTool("javadoc");
+        args.add(javadoc.toString());
+        if (includeStandardOptions) {
+            args.addAll(toolBox.split(System.getProperty("test.tool.vm.opts"), " +"));
+        }
+        args.addAll(getAllArgs());
+
+        String[] argsArray = args.toArray(new String[args.size()]);
+        ProcessBuilder pb = getProcessBuilder();
+        pb.command(argsArray);
+        try {
+            return runProcess(toolBox, this, pb.start());
+        } catch (IOException | InterruptedException e) {
+            throw new Error(e);
+        }
+    }
+
+    private List<String> getAllArgs() {
+        List<String> args = new ArrayList<>();
+        if (options != null)
+            args.addAll(options);
+        if (outdir != null) {
+            args.add("-d");
+            args.add(outdir.toString());
+        }
+        if (classpath != null) {
+            args.add("-classpath");
+            args.add(toSearchPath(classpath));
+        }
+        if (sourcepath != null) {
+            args.add("-sourcepath");
+            args.add(toSearchPath(sourcepath));
+        }
+        if (classes != null)
+            args.addAll(classes);
+        if (files != null)
+            args.addAll(files);
+
+        return args;
+    }
+
+    private String toSearchPath(List<Path> files) {
+        return files.stream()
+            .map(Path::toString)
+            .collect(Collectors.joining(File.pathSeparator));
+    }
+
+    private Iterable<? extends JavaFileObject> joinFiles(
+            List<String> files, List<JavaFileObject> fileObjects) {
+        if (files == null)
+            return fileObjects;
+        if (internalFileManager == null)
+            internalFileManager = jdtool.getStandardFileManager(null, null, null);
+        Iterable<? extends JavaFileObject> filesAsFileObjects =
+                internalFileManager.getJavaFileObjectsFromStrings(files);
+        if (fileObjects == null)
+            return filesAsFileObjects;
+        List<JavaFileObject> combinedList = new ArrayList<>();
+        for (JavaFileObject o : filesAsFileObjects)
+            combinedList.add(o);
+        combinedList.addAll(fileObjects);
+        return combinedList;
+    }
+}
diff --git a/langtools/test/tools/lib/toolbox/ModuleBuilder.java b/langtools/test/tools/lib/toolbox/ModuleBuilder.java
index 6c6ed65..fef43d0 100644
--- a/langtools/test/tools/lib/toolbox/ModuleBuilder.java
+++ b/langtools/test/tools/lib/toolbox/ModuleBuilder.java
@@ -27,83 +27,185 @@
 import java.io.IOException;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.LinkedHashSet;
 import java.util.List;
+import java.util.Set;
 import java.util.stream.Collectors;
 
+/**
+ * Builder for module declarations.
+ */
 public class ModuleBuilder {
 
     private final ToolBox tb;
     private final String name;
-    private String requires = "";
-    private String exports = "";
-    private String uses = "";
-    private String provides = "";
-    private String modulePath = "";
+    private String comment = "";
+    private List<String> requires = new ArrayList<>();
+    private List<String> exports = new ArrayList<>();
+    private List<String> uses = new ArrayList<>();
+    private List<String> provides = new ArrayList<>();
     private List<String> content = new ArrayList<>();
+    private Set<Path> modulePath = new LinkedHashSet<>();
 
+    /**
+     * Creates a builder for a module.
+     * @param tb a Toolbox that can be used to compile the module declaration.
+     * @param name the name of the module to be built
+     */
     public ModuleBuilder(ToolBox tb, String name) {
         this.tb = tb;
         this.name = name;
     }
 
+    /**
+     * Sets the doc comment for the declaration.
+     * @param comment the content of the comment, excluding the initial
+     *  '/**', leading whitespace and asterisks, and the final trailing '&#02a;/'.
+     * @return this builder
+     */
+    public ModuleBuilder comment(String comment) {
+        this.comment = comment;
+        return this;
+    }
+
+    /**
+     * Adds a "requires public" directive to the declaration.
+     * @param requires the name of the module that is required
+     * @param modulePath a path in which to locate the modules
+     *    if the declaration is compiled
+     * @return this builder
+     */
     public ModuleBuilder requiresPublic(String requires, Path... modulePath) {
-        return requires("public " + requires, modulePath);
+        this.requires.add("requires public " + requires + ";");
+        this.modulePath.addAll(Arrays.asList(modulePath));
+        return this;
     }
 
+    /**
+     * Adds a "requires" directive to the declaration.
+     * @param requires the name of the module that is required
+     * @param modulePath a path in while to locate the modules
+     *    if the declaration is compiled
+     * @return this builder
+     */
     public ModuleBuilder requires(String requires, Path... modulePath) {
-        this.requires += "    requires " + requires + ";\n";
-        this.modulePath += Arrays.stream(modulePath)
-                .map(Path::toString)
-                .collect(Collectors.joining(File.pathSeparator));
+        this.requires.add("requires " + requires + ";");
+        this.modulePath.addAll(Arrays.asList(modulePath));
         return this;
     }
 
+    /**
+     * Adds a qualified "exports" directive to the declaration.
+     * @param pkg the name of the package to be exported
+     * @param module the name of the module to which it is to be exported
+     * @return this builder
+     */
     public ModuleBuilder exportsTo(String pkg, String module) {
-        return exports(pkg + " to " + module);
+        this.exports.add("exports " + pkg + " to " + module + ";");
+        return this;
     }
 
+    /**
+     * Adds an unqualified "exports" directive to the declaration.
+     * @param pkg the name of the package to be exported
+     * @param module the name of the module to which it is to be exported
+     * @return this builder
+     */
     public ModuleBuilder exports(String pkg) {
-        this.exports += "    exports " + pkg + ";\n";
+        this.exports.add("exports " + pkg + ";");
         return this;
     }
 
-    public ModuleBuilder uses(String uses) {
-        this.uses += "    uses " + uses + ";\n";
+    /**
+     * Adds a "uses" directive to the declaration.
+     * @param service the name of the service type
+     * @return this builder
+     */
+    public ModuleBuilder uses(String service) {
+        this.uses.add("uses " + service + ";");
         return this;
     }
 
+    /**
+     * Adds a "provides" directive to the declaration.
+     * @param service the name of the service type
+     * @param implementation the name of the implementation type
+     * @return this builder
+     */
     public ModuleBuilder provides(String service, String implementation) {
-        this.provides += "    provides " + service + " with " + implementation + ";\n";
+        this.provides.add("provides " + service + " with " + implementation + ";");
         return this;
     }
 
+    /**
+     * Adds type definitions to the module.
+     * @param content a series of strings, each representing the content of
+     *  a compilation unit to be included with the module
+     * @return this builder
+     */
     public ModuleBuilder classes(String... content) {
         this.content.addAll(Arrays.asList(content));
         return this;
     }
 
-    public Path write(Path where) throws IOException {
-        Files.createDirectories(where);
+    /**
+     * Writes the module declaration and associated additional compilation
+     * units to a module directory within a given directory.
+     * @param srcDir the directory in which a directory will be created
+     *  to contain the source files for the module
+     * @return the directory containing the source files for the module
+     */
+    public Path write(Path srcDir) throws IOException {
+        Files.createDirectories(srcDir);
         List<String> sources = new ArrayList<>();
-        sources.add("module " + name + "{"
-                + requires
-                + exports
-                + uses
-                + provides
-                + "}");
+        StringBuilder sb = new StringBuilder();
+        if (!comment.isEmpty()) {
+            sb.append("/**\n").append(comment.replace("\n", " *")).append(" */\n");
+        }
+        sb.append("module ").append(name).append(" {");
+        requires.forEach(r -> sb.append("    " + r + "\n"));
+        exports.forEach(e -> sb.append("    " + e + "\n"));
+        uses.forEach(u -> sb.append("    " + u + "\n"));
+        provides.forEach(p -> sb.append("    " + p + "\n"));
+        sb.append("}");
+        sources.add(sb.toString());
         sources.addAll(content);
-        Path moduleSrc = where.resolve(name + "/src");
+        Path moduleSrc = srcDir.resolve(name);
         tb.writeJavaFiles(moduleSrc, sources.toArray(new String[]{}));
         return moduleSrc;
     }
 
-    public void build(Path where) throws IOException {
-        Path moduleSrc = write(where);
+    /**
+     * Writes the source files for the module to an interim directory,
+     * and then compiles them to a given directory.
+     * @param modules the directory in which a directory will be created
+     *    to contain the compiled class files for the module
+     * @throws IOException if an error occurs while compiling the files
+     */
+    public void build(Path modules) throws IOException {
+        build(Paths.get(modules + "Src"), modules);
+    }
+
+    /**
+     * Writes the source files for the module to a specified directory,
+     * and then compiles them to a given directory.
+     * @param srcDir the directory in which a directory will be created
+     *  to contain the source files for the module
+     * @param modules the directory in which a directory will be created
+     *    to contain the compiled class files for the module
+     * @throws IOException if an error occurs while compiling the files
+     */
+    public void build(Path src, Path modules) throws IOException {
+        Path moduleSrc = write(src);
+        String mp = modulePath.stream()
+                .map(Path::toString)
+                .collect(Collectors.joining(File.pathSeparator));
         new JavacTask(tb)
-                .outdir(where.resolve(name))
-                .options("-mp", modulePath)
+                .outdir(Files.createDirectories(modules.resolve(name)))
+                .options("-mp", mp)
                 .files(tb.findJavaFiles(moduleSrc))
                 .run()
                 .writeAll();
diff --git a/langtools/test/tools/lib/toolbox/ToolBox.java b/langtools/test/tools/lib/toolbox/ToolBox.java
index 5ac6117..8fa346c 100644
--- a/langtools/test/tools/lib/toolbox/ToolBox.java
+++ b/langtools/test/tools/lib/toolbox/ToolBox.java
@@ -369,13 +369,25 @@
      * @throws IOException if an error occurred while searching for files
      */
     public Path[] findJavaFiles(Path... paths) throws IOException {
+        return findFiles(".java", paths);
+    }
+
+    /**
+     * Find files matching the file extension, in one or more directories.
+     * <p>Similar to the shell "find" command: {@code find paths -name \*.ext}.
+     * @param fileExtension the extension to search for
+     * @param paths the directories in which to search for files
+     * @return the files matching the file extension
+     * @throws IOException if an error occurred while searching for files
+     */
+    public Path[] findFiles(String fileExtension, Path... paths) throws IOException {
         Set<Path> files = new TreeSet<>();  // use TreeSet to force a consistent order
         for (Path p : paths) {
             Files.walkFileTree(p, new SimpleFileVisitor<Path>() {
                 @Override
                 public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
                         throws IOException {
-                    if (file.getFileName().toString().endsWith(".java")) {
+                    if (file.getFileName().toString().endsWith(fileExtension)) {
                         files.add(file);
                     }
                     return FileVisitResult.CONTINUE;
diff --git a/make/Bundles.gmk b/make/Bundles.gmk
index 140f31a..376cd31 100644
--- a/make/Bundles.gmk
+++ b/make/Bundles.gmk
@@ -77,7 +77,8 @@
         ifneq ($$($1_SUBDIR), )
           ifeq ($$($1_TYPE)-$(TAR_SUPPORTS_TRANSFORM)-$$($1_UNZIP_DEBUGINFO), tar.gz-true-false)
 	    $(CD) $$($1_BASE_DIR) \
-	        && ( $(TAR) cf - -$(TAR_INCLUDE_PARAM) $(SUPPORT_OUTPUTDIR)/bundles/_$1_files \
+	        && ( $(TAR) cf - $(TAR_CREATE_EXTRA_PARAM) \
+                    -$(TAR_INCLUDE_PARAM) $(SUPPORT_OUTPUTDIR)/bundles/_$1_files \
 	            --transform 's|^|$$($1_SUBDIR)/|' $(TAR_IGNORE_EXIT_VALUE) ) \
 	        | $(GZIP) > $$@
           else
@@ -97,7 +98,8 @@
             endif
             ifeq ($$($1_TYPE), tar.gz)
 	      $(CD) $(SUPPORT_OUTPUTDIR)/bundles/$1 && \
-	          ( $(TAR) cf - $$($1_SUBDIR) $(TAR_IGNORE_EXIT_VALUE) ) | $(GZIP) > $$@
+	          ( $(TAR) cf - $(TAR_CREATE_EXTRA_PARAM) $$($1_SUBDIR) $(TAR_IGNORE_EXIT_VALUE) ) \
+	          | $(GZIP) > $$@
             else ifeq ($$($1_TYPE), zip)
 	      $(CD) $(SUPPORT_OUTPUTDIR)/bundles/$1 && $(ZIP) -qr $$@ .
             endif
@@ -105,7 +107,8 @@
         else
           ifeq ($$($1_TYPE), tar.gz)
 	    $(CD) $$($1_BASE_DIR) \
-	        && ( $(TAR) cf - -$(TAR_INCLUDE_PARAM) $(SUPPORT_OUTPUTDIR)/bundles/_$1_files \
+	        && ( $(TAR) cf - $(TAR_CREATE_EXTRA_PARAM) \
+	            -$(TAR_INCLUDE_PARAM) $(SUPPORT_OUTPUTDIR)/bundles/_$1_files \
 	            $(TAR_IGNORE_EXIT_VALUE) ) \
 	        | $(GZIP) > $$@
           else ifeq ($$($1_TYPE), zip)
diff --git a/nashorn/.hgtags b/nashorn/.hgtags
index aef6e1b..3c9d686 100644
--- a/nashorn/.hgtags
+++ b/nashorn/.hgtags
@@ -356,3 +356,4 @@
 7ab7fc00b147e5b50d6bd5516147680f11c0b165 jdk-9+120
 5992041b0794fa5f25518673d63e8f35bcc89360 jdk-9+121
 b1de131a3fed6845c78bdda358ee127532f16a3f jdk-9+122
+9ed859b4faaf9ff7cd35f9e7f51c7e630303067a jdk-9+123
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java
index 801d0c8..a2d4276 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/scripting/NashornScriptEngine.java
@@ -318,6 +318,9 @@
         // Create new global instance mirror and associate with the Bindings.
         final ScriptObjectMirror mirror = createGlobalMirror();
         bindings.put(NASHORN_GLOBAL, mirror);
+        // Since we created this global explicitly for the non-default script context we set the
+        // current script context in global permanently so that invokes work as expected. See JDK-8150219
+        mirror.getHomeGlobal().setInitScriptContext(ctxt);
         return mirror.getHomeGlobal();
     }
 
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/objects/Global.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/objects/Global.java
index fba4d56..4a489b8 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/objects/Global.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/objects/Global.java
@@ -1087,6 +1087,8 @@
     private ThreadLocal<ScriptContext> scontext;
     // current ScriptEngine associated - can be null.
     private ScriptEngine engine;
+    // initial ScriptContext - usually null and only used for special case
+    private volatile ScriptContext initscontext;
 
     // ES6 global lexical scope.
     private final LexicalScope lexicalScope;
@@ -1112,9 +1114,22 @@
         return scontext.get();
     }
 
+    /**
+     * Set the initial script context
+     * @param ctxt initial script context
+     */
+    public void setInitScriptContext(final ScriptContext ctxt) {
+        this.initscontext = ctxt;
+    }
+
     private ScriptContext currentContext() {
         final ScriptContext sc = scontext != null? scontext.get() : null;
-        return (sc != null)? sc : (engine != null? engine.getContext() : null);
+        if (sc != null) {
+            return sc;
+        } else if (initscontext != null) {
+            return initscontext;
+        }
+        return engine != null? engine.getContext() : null;
     }
 
     @Override
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java
index 9e00aed..b9a926d 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/parser/Parser.java
@@ -143,6 +143,7 @@
 import jdk.nashorn.internal.runtime.ParserException;
 import jdk.nashorn.internal.runtime.RecompilableScriptFunctionData;
 import jdk.nashorn.internal.runtime.ScriptEnvironment;
+import jdk.nashorn.internal.runtime.ScriptFunctionData;
 import jdk.nashorn.internal.runtime.ScriptingFunctions;
 import jdk.nashorn.internal.runtime.Source;
 import jdk.nashorn.internal.runtime.Timing;
@@ -157,6 +158,9 @@
 @Logger(name="parser")
 public class Parser extends AbstractParser implements Loggable {
     private static final String ARGUMENTS_NAME = CompilerConstants.ARGUMENTS_VAR.symbolName();
+    private static final String CONSTRUCTOR_NAME = "constructor";
+    private static final String GET_NAME = "get";
+    private static final String SET_NAME = "set";
 
     /** Current env. */
     private final ScriptEnvironment env;
@@ -277,7 +281,7 @@
      * @return function node resulting from successful parse
      */
     public FunctionNode parse() {
-        return parse(PROGRAM.symbolName(), 0, source.getLength(), false);
+        return parse(PROGRAM.symbolName(), 0, source.getLength(), 0);
     }
 
     /**
@@ -298,13 +302,13 @@
      * @param scriptName name for the script, given to the parsed FunctionNode
      * @param startPos start position in source
      * @param len length of parse
-     * @param allowPropertyFunction if true, "get" and "set" are allowed as first tokens of the program, followed by
-     * a property getter or setter function. This is used when reparsing a function that can potentially be defined as a
-     * property getter or setter in an object literal.
+     * @param reparseFlags flags provided by {@link RecompilableScriptFunctionData} as context for
+     * the code being reparsed. This allows us to recognize special forms of functions such
+     * as property getters and setters or instances of ES6 method shorthand in object literals.
      *
      * @return function node resulting from successful parse
      */
-    public FunctionNode parse(final String scriptName, final int startPos, final int len, final boolean allowPropertyFunction) {
+    public FunctionNode parse(final String scriptName, final int startPos, final int len, final int reparseFlags) {
         final boolean isTimingEnabled = env.isTimingEnabled();
         final long t0 = isTimingEnabled ? System.nanoTime() : 0L;
         log.info(this, " begin for '", scriptName, "'");
@@ -317,7 +321,7 @@
 
             scanFirstToken();
             // Begin parse.
-            return program(scriptName, allowPropertyFunction);
+            return program(scriptName, reparseFlags);
         } catch (final Exception e) {
             handleParseException(e);
 
@@ -421,7 +425,7 @@
             final ParserContextBlockNode body = newBlock();
 
             functionDeclarations = new ArrayList<>();
-            sourceElements(false);
+            sourceElements(0);
             addFunctionDeclarations(function);
             functionDeclarations = null;
 
@@ -646,7 +650,7 @@
         // Set up new block. Captures first token.
         final ParserContextBlockNode newBlock = newBlock();
         try {
-            statement(false, false, true, labelledStatement);
+            statement(false, 0, true, labelledStatement);
         } finally {
             restoreBlock(newBlock);
         }
@@ -897,7 +901,7 @@
      *
      * Parse the top level script.
      */
-    private FunctionNode program(final String scriptName, final boolean allowPropertyFunction) {
+    private FunctionNode program(final String scriptName, final int reparseFlags) {
         // Make a pseudo-token for the script holding its start and length.
         final long functionToken = Token.toDesc(FUNCTION, Token.descPosition(Token.withDelimiter(token)), source.getLength());
         final int  functionLine  = line;
@@ -913,7 +917,7 @@
         final ParserContextBlockNode body = newBlock();
 
         functionDeclarations = new ArrayList<>();
-        sourceElements(allowPropertyFunction);
+        sourceElements(reparseFlags);
         addFunctionDeclarations(script);
         functionDeclarations = null;
 
@@ -961,10 +965,10 @@
      *
      * Parse the elements of the script or function.
      */
-    private void sourceElements(final boolean shouldAllowPropertyFunction) {
+    private void sourceElements(final int reparseFlags) {
         List<Node>    directiveStmts        = null;
         boolean       checkDirective        = true;
-        boolean       allowPropertyFunction = shouldAllowPropertyFunction;
+        int           functionFlags          = reparseFlags;
         final boolean oldStrictMode         = isStrictMode;
 
 
@@ -978,8 +982,8 @@
 
                 try {
                     // Get the next element.
-                    statement(true, allowPropertyFunction, false, false);
-                    allowPropertyFunction = false;
+                    statement(true, functionFlags, false, false);
+                    functionFlags = 0;
 
                     // check for directive prologues
                     if (checkDirective) {
@@ -1097,15 +1101,15 @@
      *     GeneratorDeclaration
      */
     private void statement() {
-        statement(false, false, false, false);
+        statement(false, 0, false, false);
     }
 
     /**
      * @param topLevel does this statement occur at the "top level" of a script or a function?
-     * @param allowPropertyFunction allow property "get" and "set" functions?
+     * @param reparseFlags reparse flags to decide whether to allow property "get" and "set" functions or ES6 methods.
      * @param singleStatement are we in a single statement context?
      */
-    private void statement(final boolean topLevel, final boolean allowPropertyFunction, final boolean singleStatement, final boolean labelledStatement) {
+    private void statement(final boolean topLevel, final int reparseFlags, final boolean singleStatement, final boolean labelledStatement) {
         switch (type) {
         case LBRACE:
             block();
@@ -1194,19 +1198,31 @@
                     labelStatement();
                     return;
                 }
+                final boolean allowPropertyFunction = (reparseFlags & ScriptFunctionData.IS_PROPERTY_ACCESSOR) != 0;
+                final boolean isES6Method = (reparseFlags & ScriptFunctionData.IS_ES6_METHOD) != 0;
                 if(allowPropertyFunction) {
                     final String ident = (String)getValue();
                     final long propertyToken = token;
                     final int propertyLine = line;
-                    if ("get".equals(ident)) {
+                    if (GET_NAME.equals(ident)) {
                         next();
                         addPropertyFunctionStatement(propertyGetterFunction(propertyToken, propertyLine));
                         return;
-                    } else if ("set".equals(ident)) {
+                    } else if (SET_NAME.equals(ident)) {
                         next();
                         addPropertyFunctionStatement(propertySetterFunction(propertyToken, propertyLine));
                         return;
                     }
+                } else if (isES6Method) {
+                    final String ident = (String)getValue();
+                    IdentNode identNode = createIdentNode(token, finish, ident).setIsPropertyName();
+                    final long propertyToken = token;
+                    final int propertyLine = line;
+                    next();
+                    // Code below will need refinement once we fully support ES6 class syntax
+                    final int flags = CONSTRUCTOR_NAME.equals(ident) ? FunctionNode.ES6_IS_CLASS_CONSTRUCTOR : FunctionNode.ES6_IS_METHOD;
+                    addPropertyFunctionStatement(propertyMethodFunction(identNode, propertyToken, propertyLine, false, flags, false));
+                    return;
                 }
             }
 
@@ -1338,7 +1354,7 @@
                 final PropertyNode classElement = methodDefinition(isStatic, classHeritage != null, generator);
                 if (classElement.isComputed()) {
                     classElements.add(classElement);
-                } else if (!classElement.isStatic() && classElement.getKeyName().equals("constructor")) {
+                } else if (!classElement.isStatic() && classElement.getKeyName().equals(CONSTRUCTOR_NAME)) {
                     if (constructor == null) {
                         constructor = classElement;
                     } else {
@@ -1407,7 +1423,7 @@
         }
 
         final Block body = new Block(classToken, ctorFinish, Block.IS_BODY, statements);
-        final IdentNode ctorName = className != null ? className : createIdentNode(identToken, ctorFinish, "constructor");
+        final IdentNode ctorName = className != null ? className : createIdentNode(identToken, ctorFinish, CONSTRUCTOR_NAME);
         final ParserContextFunctionNode function = createParserContextFunctionNode(ctorName, classToken, FunctionNode.Kind.NORMAL, classLineNumber, parameters);
         function.setLastToken(lastToken);
 
@@ -1442,16 +1458,16 @@
         int flags = FunctionNode.ES6_IS_METHOD;
         if (!computed) {
             final String name = ((PropertyKey)propertyName).getPropertyName();
-            if (!generator && isIdent && type != LPAREN && name.equals("get")) {
+            if (!generator && isIdent && type != LPAREN && name.equals(GET_NAME)) {
                 final PropertyFunction methodDefinition = propertyGetterFunction(methodToken, methodLine, flags);
                 verifyAllowedMethodName(methodDefinition.key, isStatic, methodDefinition.computed, generator, true);
                 return new PropertyNode(methodToken, finish, methodDefinition.key, null, methodDefinition.functionNode, null, isStatic, methodDefinition.computed);
-            } else if (!generator && isIdent && type != LPAREN && name.equals("set")) {
+            } else if (!generator && isIdent && type != LPAREN && name.equals(SET_NAME)) {
                 final PropertyFunction methodDefinition = propertySetterFunction(methodToken, methodLine, flags);
                 verifyAllowedMethodName(methodDefinition.key, isStatic, methodDefinition.computed, generator, true);
                 return new PropertyNode(methodToken, finish, methodDefinition.key, null, null, methodDefinition.functionNode, isStatic, methodDefinition.computed);
             } else {
-                if (!isStatic && !generator && name.equals("constructor")) {
+                if (!isStatic && !generator && name.equals(CONSTRUCTOR_NAME)) {
                     flags |= FunctionNode.ES6_IS_CLASS_CONSTRUCTOR;
                     if (subclass) {
                         flags |= FunctionNode.ES6_IS_SUBCLASS_CONSTRUCTOR;
@@ -1469,10 +1485,10 @@
      */
     private void verifyAllowedMethodName(final Expression key, final boolean isStatic, final boolean computed, final boolean generator, final boolean accessor) {
         if (!computed) {
-            if (!isStatic && generator && ((PropertyKey) key).getPropertyName().equals("constructor")) {
+            if (!isStatic && generator && ((PropertyKey) key).getPropertyName().equals(CONSTRUCTOR_NAME)) {
                 throw error(AbstractParser.message("generator.constructor"), key.getToken());
             }
-            if (!isStatic && accessor && ((PropertyKey) key).getPropertyName().equals("constructor")) {
+            if (!isStatic && accessor && ((PropertyKey) key).getPropertyName().equals(CONSTRUCTOR_NAME)) {
                 throw error(AbstractParser.message("accessor.constructor"), key.getToken());
             }
             if (isStatic && ((PropertyKey) key).getPropertyName().equals("prototype")) {
@@ -3133,11 +3149,11 @@
                 final long getSetToken = propertyToken;
 
                 switch (ident) {
-                case "get":
+                case GET_NAME:
                     final PropertyFunction getter = propertyGetterFunction(getSetToken, functionLine);
                     return new PropertyNode(propertyToken, finish, getter.key, null, getter.functionNode, null, false, getter.computed);
 
-                case "set":
+                case SET_NAME:
                     final PropertyFunction setter = propertySetterFunction(getSetToken, functionLine);
                     return new PropertyNode(propertyToken, finish, setter.key, null, null, setter.functionNode, false, setter.computed);
                 default:
@@ -4132,7 +4148,7 @@
                     final List<Statement> prevFunctionDecls = functionDeclarations;
                     functionDeclarations = new ArrayList<>();
                     try {
-                        sourceElements(false);
+                        sourceElements(0);
                         addFunctionDeclarations(functionNode);
                     } finally {
                         functionDeclarations = prevFunctionDecls;
@@ -5111,7 +5127,7 @@
                 break;
             default:
                 // StatementListItem
-                statement(true, false, false, false);
+                statement(true, 0, false, false);
                 break;
             }
         }
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java
index 8805fb6..d59b20a 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java
@@ -364,6 +364,9 @@
         if (functionNode.getKind() == FunctionNode.Kind.GETTER || functionNode.getKind() == FunctionNode.Kind.SETTER) {
             flags |= IS_PROPERTY_ACCESSOR;
         }
+        if (functionNode.isMethod() || functionNode.isClassConstructor()) {
+            flags |= IS_ES6_METHOD;
+        }
         return flags;
     }
 
@@ -402,7 +405,7 @@
         parser.setReparsedFunction(this);
 
         final FunctionNode program = parser.parse(CompilerConstants.PROGRAM.symbolName(), descPosition,
-                Token.descLength(token), isPropertyAccessor());
+                Token.descLength(token), flags);
         // Parser generates a program AST even if we're recompiling a single function, so when we are only
         // recompiling a single function, extract it from the program.
         return (isProgram() ? program : extractFunctionFromScript(program)).setName(null, functionName);
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/ScriptFunctionData.java b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/ScriptFunctionData.java
index f1e8f66..c11082f 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/ScriptFunctionData.java
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/ScriptFunctionData.java
@@ -93,6 +93,8 @@
     public static final int IS_VARIABLE_ARITY    = 1 << 5;
     /** Is this a object literal property getter or setter? */
     public static final int IS_PROPERTY_ACCESSOR = 1 << 6;
+    /** Is this an ES6 method? */
+    public static final int IS_ES6_METHOD        = 1 << 7;
 
     /** Flag for strict or built-in functions */
     public static final int IS_STRICT_OR_BUILTIN = IS_STRICT | IS_BUILTIN;
@@ -130,10 +132,6 @@
         return (flags & IS_VARIABLE_ARITY) != 0;
     }
 
-    final boolean isPropertyAccessor() {
-        return (flags & IS_PROPERTY_ACCESSOR) != 0;
-    }
-
     /**
      * Used from e.g. Native*$Constructors as an explicit call. TODO - make arity immutable and final
      * @param arity new arity
@@ -148,7 +146,7 @@
     /**
      * Used from nasgen generated code.
      *
-     * @param doc documentation for this function
+     * @param docKey documentation key for this function
      */
     void setDocumentationKey(final String docKey) {
     }
diff --git a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/resources/Functions.properties b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/resources/Functions.properties
index 9165125..b399420 100644
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/resources/Functions.properties
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/resources/Functions.properties
@@ -99,3 +99,39 @@
 Function.prototype.call=invokes the function with the given this-reference and arguments
 
 Function.prototype.bind=returns a new function with bound this-reference and arguments
+
+Math.abs=returns absolute value of the argument
+
+Math.acos=returns an approximation to the arc cosine of argument, return value is expressed in radians
+
+Math.asin=returns an approximation to the arc sine of argument, return value is expressed in radians
+
+Math.atan=returns an approximation to the arc tangent of argument, return value expressed in radians
+
+Math.atan2=returns an approximation to the arc tangent of the quotient argument1/argument2, signs of argument1 and argument2 are used to determine quadrant of the result
+
+Math.ceil=returns smallest value that is not less than argument and is equal to a mathematical integer, returns argument itself if it is an integer
+
+Math.cos=returns an approximation to the cosine of argument, argument is expressed in radians
+
+Math.exp=returns an approximation to the value of exponential function of argument, e raised to the power of argument where e is the base of natural logarithms
+
+Math.floor=returns the greatest value that is not greater than argument and is equal to mathematical integer, returns argument itself if it is an integer
+
+Math.log=returns an approximation to the natural logarithm of argument
+
+Math.max=returns the largest of the given arguments
+
+Math.min=returns the smallest of the given arguments
+
+Math.pow=returns an approximation to the result of raising argument1 to the power of argument2
+
+Math.random=returns random value between 0 to 1, inclusive 0 and exclusive 1
+
+Math.round=returns mathematical integer value that is closest to the given argument
+
+Math.sin=returns an approximation to the sine of given argument, argument is expressed in radians
+
+Math.sqrt=returns an approximation to the square root of given argument
+
+Math.tan=returns an approximation to the tangent of given argument
diff --git a/nashorn/test/script/basic/es6/JDK-8156614.js b/nashorn/test/script/basic/es6/JDK-8156614.js
new file mode 100644
index 0000000..5a2e309
--- /dev/null
+++ b/nashorn/test/script/basic/es6/JDK-8156614.js
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is 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.
+ */
+
+/**
+ * JDK-8156614: Lazy parsing of ES6 shorthand method syntax is broken
+ *
+ * @test
+ * @run
+ * @option --language=es6
+ */
+
+var obj = {
+    foo() { return this.baz(this.bar); },
+    bar: 'hello',
+    baz(s) { return s; }
+};
+
+Assert.assertEquals(obj.foo(), obj.bar);
diff --git a/nashorn/test/src/jdk/nashorn/api/scripting/test/ScopeTest.java b/nashorn/test/src/jdk/nashorn/api/scripting/test/ScopeTest.java
index 05b614a..a4c1f94 100644
--- a/nashorn/test/src/jdk/nashorn/api/scripting/test/ScopeTest.java
+++ b/nashorn/test/src/jdk/nashorn/api/scripting/test/ScopeTest.java
@@ -30,6 +30,8 @@
 import static org.testng.Assert.assertTrue;
 import static org.testng.Assert.fail;
 import javax.script.Bindings;
+import javax.script.Compilable;
+import javax.script.CompiledScript;
 import javax.script.Invocable;
 import javax.script.ScriptContext;
 import javax.script.ScriptEngine;
@@ -911,4 +913,27 @@
          Object value = ((Invocable)engine).invokeFunction("newfunc");
          assertTrue(((Number)value).intValue() == 42);
     }
+
+    // @bug 8150219 ReferenceError in 1.8.0_72
+    // When we create a Global for a non-default ScriptContext that needs one keep the
+    // ScriptContext associated with the Global so that invoke methods work as expected.
+    @Test
+    public void invokeFunctionWithCustomScriptContextTest() throws Exception {
+        final ScriptEngine engine = new ScriptEngineManager().getEngineByName("nashorn");
+
+        // create an engine and a ScriptContext, but don't set it as default
+        ScriptContext scriptContext = new SimpleScriptContext();
+
+        // Set some value in the context
+        scriptContext.setAttribute("myString", "foo", ScriptContext.ENGINE_SCOPE);
+
+        // Evaluate script with custom context and get back a function
+        final String script = "function (c) { return myString.indexOf(c); }";
+        CompiledScript compiledScript = ((Compilable)engine).compile(script);
+        Object func = compiledScript.eval(scriptContext);
+
+        // Invoked function should be able to see context it was evaluated with
+        Object result = ((Invocable) engine).invokeMethod(func, "call", func, "o", null);
+        assertTrue(((Number)result).intValue() == 1);
+    }
 }