Merge
diff --git a/.hgtags b/.hgtags
index 56dcc4a..6788e75 100644
--- a/.hgtags
+++ b/.hgtags
@@ -122,3 +122,6 @@
 8294c99e685a1f6d1d37c45cd97854cf74be771e jdk7-b145
 dca1e8a87e8f756f95b99bac8fe795750d42e1b0 jdk7-b146
 a2a589fc29543ed32919c78a1810ad93a6fcf5bc jdk7-b147
+de9223c94f9c710b3eebb599cd3586f36c8b94a9 jdk8-b01
+1b9d19620eb4606a25b1e28f86d66c8bfa867e06 jdk8-b02
+6815e85bf96d6d3875954f9777660372cd70d065 jdk8-b03
diff --git a/.hgtags-top-repo b/.hgtags-top-repo
index e748d19..301b641 100644
--- a/.hgtags-top-repo
+++ b/.hgtags-top-repo
@@ -122,3 +122,6 @@
 55e9ebf032186c333e5964ed044419830ac02693 jdk7-b145
 2d38c2a79c144c30cd04d143d83ee7ec6af40771 jdk7-b146
 d91364304d7c4ecd34caffdba2b840aeb0d10b51 jdk7-b147
+f42e3d9394b40a423d345b8da22687b5462e5f25 jdk8-b01
+69f592185747226a9c765a9fe139c1d34d616f9c jdk8-b02
+587bb549dff83131b65f40aa51864f69562f34a7 jdk8-b03
diff --git a/README b/README
index db7346b..45b71d2 100644
--- a/README
+++ b/README
@@ -9,11 +9,14 @@
   will be needed.
 
   This one root repository can be obtained with something like:
-    hg clone http://hg.openjdk.java.net/jdk7/jdk7 openjdk7
-  To make sure you have all the nested repositories, you can run:
-    cd openjdk7 && sh ./get_source.sh
-  (This is identical to using the Mercurial Forest Extension command 
-   'hg fclone http://hg.openjdk.java.net/jdk7/jdk7 openjdk7').
+
+    hg clone http://hg.openjdk.java.net/jdk8/jdk8 openjdk8
+  
+  To make sure you have all the nested repositories, you can run the
+  get_source.sh script located in the same respository as this file:
+
+    cd openjdk8 && sh ./get_source.sh
+
   People unfamiliar with Mercurial should read the first few chapters of
   the Mercurial book: http://hgbook.red-bean.com/read/
 
@@ -22,7 +25,7 @@
 Simple Build Instructions:
   
   0. Get the necessary system software/packages installed on your system, see
-     http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html
+     http://hg.openjdk.java.net/jdk8/build/raw-file/tip/README-builds.html
 
   1. If you don't have a jdk6 installed, download and install a JDK 6 from
      http://java.sun.com/javase/downloads/index.jsp
diff --git a/README-builds.html b/README-builds.html
index 87b7cd8..1761534 100644
--- a/README-builds.html
+++ b/README-builds.html
@@ -126,38 +126,15 @@
             <a href="http://openjdk.java.net/guide/repositories.html#installConfig">
                 Developer Guide: Installing and Configuring Mercurial</a>
             section for more information.
-            The Forest Extension is not part of the Mercurial install,
-            and is optional,
-            but can be obtained with the following commands:
-            <blockquote>
-                <tt>
-                    hg clone https://bitbucket.org/pmezard/hgforest-crew/overview/ <i>YourHgForest</i>
-                </tt>
-            </blockquote>
-            Once you have the file <tt>forest.py</tt>, you need to add these
-            lines to your <tt>${HOME}/.hgrc</tt> file:
-            <blockquote>
-                <tt>
-                    [extensions]
-                    <br>forest = <i>YourHgForest</i>/forest.py
-                </tt>
-            </blockquote>
 
             <!-- ------------------------------------------------------ -->
             <h3><a name="get_source">Getting the Source</a></h3>
             <blockquote>
                 To get the entire set of OpenJDK Mercurial repositories
-                using the Forest Extension:
+                use the script <code>get_source.sh</code> located in the root repository:
                 <blockquote>
                     <tt>
-                        hg fclone http://hg.openjdk.java.net/jdk7/jdk7 <i>YourOpenJDK</i>
-                    </tt>
-                </blockquote>
-                To get the entire set of OpenJDK Mercurial repositories
-                without using the Forest Extension:
-                <blockquote>
-                    <tt>
-                        hg clone http://hg.openjdk.java.net/jdk7/jdk7 <i>YourOpenJDK</i>
+                        hg clone http://hg.openjdk.java.net/jdk8/jdk8 <i>YourOpenJDK</i>
                         <br>cd <i>YourOpenJDK</i>
                         <br>sh ./get_source.sh
                     </tt>
@@ -172,9 +149,6 @@
                         <br>sh ./make/scripts/hgforest.sh pull -u
                     </tt>
                 </blockquote>
-                You may find this script <tt>make/scripts/hgforest.sh</tt> faster
-                than the <tt>hg</tt> forest commands provided by the
-                Forest Extension.
             </blockquote>
 
         </blockquote>
@@ -558,7 +532,7 @@
                     understood that this is not ideal for the open source community.
                     It is possible this process could change in the future.
                     <br>
-                    <b>NOTE:</b> The <a href="http://download.java.net/openjdk/jdk7/">
+                    <b>NOTE:</b> The <a href="http://download.java.net/openjdk/jdk8/">
                         Complete OpenJDK Source Bundles</a> <u>will</u> contain the JAXP and
                     JAX-WS sources.
                 </p>
@@ -578,7 +552,7 @@
                         </li>
                         <li>
                             The OpenJDK team copies this new bundle into shared
-                            area (e.g. <tt>/java/devtools/share/jdk7-drops</tt>).
+                            area (e.g. <tt>/java/devtools/share/jdk8-drops</tt>).
                             Older bundles are never deleted so we retain the history.
                         </li>
                         <li>
@@ -1726,7 +1700,7 @@
                     The location of any source drop bundles
                     (see <a href="#drops">Managing the Source Drops</a>).
                     The default will be
-                    <tt>$(ALT_JDK_DEVTOOLS_PATH)/share/jdk7-drops</tt>.
+                    <tt>$(ALT_JDK_DEVTOOLS_PATH)/share/jdk8-drops</tt>.
                 </dd>
                 <dt><a name="ALT_UNIXCCS_PATH"><tt>ALT_UNIXCCS_PATH</tt></a></dt>
                 <dd>
@@ -1931,7 +1905,7 @@
                             PATH, INCLUDE, LIB, LIBPATH, and WINDOWSSDKDIR
                             variables set in your shell environment.
                             These bat files are not easy to use from a shell environment.
-                            However, there is a script placed in the root jdk7 repository called
+                            However, there is a script placed in the root jdk8 repository called
                             vsvars.sh that can help, it should only be done once in a shell
                             that will be doing the build, e.g.<br>
                             <tt>sh ./make/scripts/vsvars.sh -v10 > settings<br>
diff --git a/corba/.hgtags b/corba/.hgtags
index 35cd3eb..01289dc 100644
--- a/corba/.hgtags
+++ b/corba/.hgtags
@@ -122,3 +122,6 @@
 77ec0541aa2aa4da27e9e385a118a2e51e7fca24 jdk7-b145
 770227a4087e4e401fe87ccd19738440111c3948 jdk7-b146
 73323cb3396260d93e0ab731fd2d431096ceed0f jdk7-b147
+949fb60ca830364571e7c4c9964e6b351ca929ec jdk8-b01
+ed8d94519a87b4adac270c3eec9134ff1f62bff5 jdk8-b02
+cd0da00694fbce642db9be936d3e4909a71d911d jdk8-b03
diff --git a/hotspot/.hgtags b/hotspot/.hgtags
index f1ba1ce..8b06316 100644
--- a/hotspot/.hgtags
+++ b/hotspot/.hgtags
@@ -174,3 +174,6 @@
 9ad1548c6b63d596c411afc35147ffd5254426d9 hs21-b12
 c149193c768b8b7233da4c3a3fdc0756b975848e hs21-b13
 c149193c768b8b7233da4c3a3fdc0756b975848e jdk7-b143
+0cc8a70952c368e06de2adab1f2649a408f5e577 jdk8-b01
+31e253c1da429124bb87570ab095d9bc89850d0a jdk8-b02
+3a2fb61165dfc72e398179a2796d740c8da5b8c0 jdk8-b03
diff --git a/hotspot/THIRD_PARTY_README b/hotspot/THIRD_PARTY_README
index db47234..ee5463a 100644
--- a/hotspot/THIRD_PARTY_README
+++ b/hotspot/THIRD_PARTY_README
@@ -1,38 +1,12 @@
 DO NOT TRANSLATE OR LOCALIZE.
+-----------------------------
 
-%% This notice is provided with respect to Thai dictionary for text breaking, which may be included with this software: 
+%% This notice is provided with respect to ASM Bytecode Manipulation 
+Framework v3.1, which is included with JRE 7, JDK 7, and OpenJDK 7.
 
---- begin of LICENSE file ---
+--- begin of LICENSE ---
 
-Copyright (C) 1982 The Royal Institute, Thai Royal Government.
-
-Copyright (C) 1998 National Electronics and Computer Technology Center,
- National Science and Technology Development Agency,
- Ministry of Science Technology and Environment,
- Thai Royal Government.
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without
-limitation the rights to use, copy, modify, merge, publish, distribute,
-sublicense, and/or sell copies of the Software, and to permit persons to
-whom the Software is furnished to do so, subject to the following
-conditions:
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-USE OR OTHER DEALINGS IN THE SOFTWARE.
-
---- end of LICENSE file ---
-%% This notice is provided with respect to ASM, which may be included with this software: 
-Copyright (c) 2000-2007 INRIA, France Telecom
+Copyright (c) 2000-2005 INRIA, France Telecom
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
@@ -61,18 +35,3110 @@
 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 THE POSSIBILITY OF SUCH DAMAGE.
-%% This notice is provided with respect to zlib 1.1.3, which may be included with this software:   
 
-Acknowledgments:
+--- end of LICENSE ---
 
-  The deflate format used by zlib was defined by Phil Katz. The deflate
-  and zlib specifications were written by L. Peter Deutsch. Thanks to all the
-  people who reported problems and suggested various improvements in zlib;
-  they are too numerous to cite here.
+--------------------------------------------------------------------------------
 
-Copyright notice:
+%% This notice is provided with respect to CodeViewer 1.0, which is included 
+with JDK 7.
 
- (C) 1995-1998 Jean-loup Gailly and Mark Adler
+--- begin of LICENSE ---
+
+Copyright 1999 by CoolServlets.com.
+
+Any errors or suggested improvements to this class can be reported as
+instructed on CoolServlets.com. We hope you enjoy this program... your
+comments will encourage further development!  This software is distributed
+under the terms of the BSD License.  Redistribution and use in source and
+binary forms, with or without modification, are permitted provided that the
+following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+Neither name of CoolServlets.com nor the names of its contributors may be
+used to endorse or promote products derived from this software without
+specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY COOLSERVLETS.COM AND CONTRIBUTORS ``AS IS'' AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Cryptix AES 3.2.0, which is
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Cryptix General License
+
+Copyright (c) 1995-2005 The Cryptix Foundation Limited.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+  1. Redistributions of source code must retain the copyright notice,
+     this list of conditions and the following disclaimer.
+
+  2. Redistributions in binary form must reproduce the above copyright
+     notice, this list of conditions and the following disclaimer in
+     the documentation and/or other materials provided with the
+     distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE CRYPTIX FOUNDATION LIMITED AND
+CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE CRYPTIX FOUNDATION LIMITED OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to CUP Parser Generator for 
+Java 0.10k, which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Copyright 1996-1999 by Scott Hudson, Frank Flannery, C. Scott Ananian
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted, provided
+that the above copyright notice appear in all copies and that both the
+copyright notice and this permission notice and warranty disclaimer appear in
+supporting documentation, and that the names of the authors or their
+employers not be used in advertising or publicity pertaining to distribution of
+the software without specific, written prior permission.
+
+The authors and their employers disclaim all warranties with regard to
+this software, including all implied warranties of merchantability and fitness.
+In no event shall the authors or their employers be liable for any special,
+indirect or consequential damages or any damages whatsoever resulting from
+loss of use, data or profits, whether in an action of contract, negligence or
+other tortious action, arising out of or in connection with the use or
+performance of this software.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Document Object Model (DOM) Level 2
+& 3, which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+W3C SOFTWARE NOTICE AND LICENSE
+
+http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+
+This work (and included software, documentation such as READMEs, or other
+related items) is being provided by the copyright holders under the following
+license. By obtaining, using and/or copying this work, you (the licensee)
+agree that you have read, understood, and will comply with the following terms
+and conditions.
+
+Permission to copy, modify, and distribute this software and its
+documentation, with or without modification, for any purpose and without fee
+or royalty is hereby granted, provided that you include the following on ALL
+copies of the software and documentation or portions thereof, including
+modifications:
+
+   1.The full text of this NOTICE in a location viewable to users of the
+   redistributed or derivative work.
+
+   2.Any pre-existing intellectual property disclaimers, notices, or terms and
+   conditions. If none exist, the W3C Software Short Notice should be included
+   (hypertext is preferred, text is permitted) within the body of any
+   redistributed or derivative code.
+
+   3.Notice of any changes or modifications to the files, including the date
+   changes were made. (We recommend you provide URIs to the location from
+   which the code is derived.)
+
+THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS
+MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
+LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR
+PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY
+THIRD PARTY PATENTS,COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL
+OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
+DOCUMENTATION.  The name and trademarks of copyright holders may NOT be used
+in advertising or publicity pertaining to the software without specific,
+written prior permission. Title to copyright in this software and any
+associated documentation will at all times remain with copyright holders.
+
+____________________________________
+
+This formulation of W3C's notice and license became active on December 31
+2002. This version removes the copyright ownership notice such that this
+license can be used with materials other than those owned by the W3C, reflects
+that ERCIM is now a host of the W3C, includes references to this specific
+dated version of the license, and removes the ambiguous grant of "use".
+Otherwise, this version is the same as the previous version and is written so
+as to preserve the Free Software Foundation's assessment of GPL compatibility
+and OSI's certification under the Open Source Definition. Please see our
+Copyright FAQ for common questions about using materials from our site,
+including specific terms and conditions for packages like libwww, Amaya, and
+Jigsaw. Other questions about this notice can be directed to
+site-policy@w3.org.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Elliptic Curve Cryptography, which 
+is included with JRE 7, JDK 7, and OpenJDK 7.
+
+You are receiving a copy of the Elliptic Curve Cryptography library in source
+form with the JDK 7 source distribution and object code in the JRE 7 & JDK 7
+runtime.
+
+The terms of the Oracle license do NOT apply to the Elliptic Curve
+Cryptography library program; it is licensed under the following license,
+separately from the Oracle programs you receive. If you do not wish to install
+this program, you may delete the library named libsunec.so (on Solaris and
+Linux systems) or sunec.dll (on Windows systems) from the JRE bin directory
+reserved for native libraries.
+
+--- begin of LICENSE ---
+
+                  GNU LESSER GENERAL PUBLIC LICENSE
+                       Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                            Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+                  GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                            NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+                     END OF TERMS AND CONDITIONS
+
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2.1 of the License, or (at your option) any later version.
+
+    This library 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
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to FontConfig 2.5, which is 
+included with JRE 7, JDK 7, and OpenJDK 7 source distributions on
+Linux and Solaris.
+
+--- begin of LICENSE ---
+
+Copyright © 2001,2003 Keith Packard
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that the
+above copyright notice appear in all copies and that both that copyright
+notice and this permission notice appear in supporting documentation, and that
+the name of Keith Packard not be used in advertising or publicity pertaining
+to distribution of the software without specific, written prior permission.
+Keith Packard makes no representations about the suitability of this software
+for any purpose.  It is provided "as is" without express or implied warranty.
+
+KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL KEITH
+PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
+DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to IAIK PKCS#11 Wrapper, 
+which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+IAIK PKCS#11 Wrapper License
+
+Copyright (c) 2002 Graz University of Technology. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+3. The end-user documentation included with the redistribution, if any, must
+   include the following acknowledgment:
+
+   "This product includes software developed by IAIK of Graz University of
+    Technology."
+
+   Alternately, this acknowledgment may appear in the software itself, if and
+   wherever such third-party acknowledgments normally appear.
+
+4. The names "Graz University of Technology" and "IAIK of Graz University of
+   Technology" must not be used to endorse or promote products derived from this
+   software without prior written permission.
+
+5. Products derived from this software may not be called "IAIK PKCS Wrapper",
+   nor may "IAIK" appear in their name, without prior written permission of
+   Graz University of Technology.
+
+THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+LICENSOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to ICU4C 4.0.1 and ICU4J 4.4, which 
+is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Copyright (c) 1995-2010 International Business Machines Corporation and others 
+
+All rights reserved. 
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, and/or sell copies of the
+Software, and to permit persons to whom the Software is furnished to do so,
+provided that the above copyright notice(s) and this permission notice appear
+in all copies of the Software and that both the above copyright notice(s) and
+this permission notice appear in supporting documentation.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN
+NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE
+LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY
+DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder shall not
+be used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization of the copyright holder.
+All trademarks and registered trademarks mentioned herein are the property of
+their respective owners.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to IJG JPEG 6b, which is 
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+This software is copyright (C) 1991-1998, Thomas G. Lane.
+All Rights Reserved except as specified below.
+
+Permission is hereby granted to use, copy, modify, and distribute this
+software (or portions thereof) for any purpose, without fee, subject to these
+conditions:
+(1) If any part of the source code for this software is distributed, then this
+README file must be included, with this copyright and no-warranty notice
+unaltered; and any additions, deletions, or changes to the original files
+must be clearly indicated in accompanying documentation.
+(2) If only executable code is distributed, then the accompanying
+documentation must state that "this software is based in part on the work of
+the Independent JPEG Group".
+(3) Permission for use of this software is granted only if the user accepts
+full responsibility for any undesirable consequences; the authors accept
+NO LIABILITY for damages of any kind.
+
+These conditions apply to any software derived from or based on the IJG code,
+not just to the unmodified library.  If you use our work, you ought to
+acknowledge us.
+
+Permission is NOT granted for the use of any IJG author's name or company name
+in advertising or publicity relating to this software or products derived from
+it.  This software may be referred to only as "the Independent JPEG Group's
+software".
+
+We specifically permit and encourage the use of this software as the basis of
+commercial products, provided that all warranty or liability claims are
+assumed by the product vendor.
+
+--- end of LICENSE ---
+
+--------------------------------------------------------------------------------
+
+%% This notice is provided with respect to JOpt-Simple v3.0,  which is 
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+ Copyright (c) 2004-2009 Paul R. Holser, Jr.
+
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+--- end of LICENSE ---
+
+--------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Kerberos functionality, which 
+which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+ (C) Copyright IBM Corp. 1999 All Rights Reserved.
+ Copyright 1997 The Open Group Research Institute. All rights reserved.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Kerberos functionality from 
+FundsXpress, INC., which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+ Copyright (C) 1998 by the FundsXpress, INC.
+
+ All rights reserved.
+
+ Export of this software from the United States of America may require
+ a specific license from the United States Government.  It is the
+ responsibility of any person or organization contemplating export to
+ obtain such a license before exporting.
+
+ WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
+ distribute this software and its documentation for any purpose and
+ without fee is hereby granted, provided that the above copyright
+ notice appear in all copies and that both that copyright notice and
+ this permission notice appear in supporting documentation, and that
+ the name of FundsXpress. not be used in advertising or publicity pertaining
+ to distribution of the software without specific, written prior
+ permission.  FundsXpress makes no representations about the suitability of
+ this software for any purpose.  It is provided "as is" without express
+ or implied warranty.
+
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Kronos OpenGL headers, which is 
+included with JDK 7 and OpenJDK 7 source distributions.
+
+--- begin of LICENSE ---
+
+ Copyright (c) 2007 The Khronos Group Inc.
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and/or associated documentation files (the "Materials"), to
+ deal in the Materials without restriction, including without limitation the
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Materials, and to permit persons to whom the Materials are
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all
+ copies or substantial portions of the Materials.
+
+ THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS IN THE
+ MATERIALS.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% Portions Copyright Eastman Kodak Company 1992
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to libpng 1.2.18, which is 
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+This copy of the libpng notices is provided for your convenience.  In case of
+any discrepancy between this copy and the notices in the file png.h that is
+included in the libpng distribution, the latter shall prevail.
+
+COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
+
+If you modify libpng you may insert additional notices immediately following
+this sentence.
+
+libpng versions 1.2.6, August 15, 2004, through 1.2.18, May 15, 2007, are
+Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are
+distributed according to the same disclaimer and license as libpng-1.2.5
+with the following individual added to the list of Contributing Authors
+
+   Cosmin Truta
+
+libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are
+Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
+distributed according to the same disclaimer and license as libpng-1.0.6
+with the following individuals added to the list of Contributing Authors
+
+   Simon-Pierre Cadieux
+   Eric S. Raymond
+   Gilles Vollant
+
+and with the following additions to the disclaimer:
+
+   There is no warranty against interference with your enjoyment of the
+   library or against infringement.  There is no warranty that our
+   efforts or the library will fulfill any of your particular purposes
+   or needs.  This library is provided with all faults, and the entire
+   risk of satisfactory quality, performance, accuracy, and effort is with
+   the user.
+
+libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
+Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are
+distributed according to the same disclaimer and license as libpng-0.96,
+with the following individuals added to the list of Contributing Authors:
+
+   Tom Lane
+   Glenn Randers-Pehrson
+   Willem van Schaik
+
+libpng versions 0.89, June 1996, through 0.96, May 1997, are
+Copyright (c) 1996, 1997 Andreas Dilger
+Distributed according to the same disclaimer and license as libpng-0.88,
+with the following individuals added to the list of Contributing Authors:
+
+   John Bowler
+   Kevin Bracey
+   Sam Bushell
+   Magnus Holmgren
+   Greg Roelofs
+   Tom Tanner
+
+libpng versions 0.5, May 1995, through 0.88, January 1996, are
+Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
+
+For the purposes of this copyright and license, "Contributing Authors"
+is defined as the following set of individuals:
+
+   Andreas Dilger
+   Dave Martindale
+   Guy Eric Schalnat
+   Paul Schmidt
+   Tim Wegner
+
+The PNG Reference Library is supplied "AS IS".  The Contributing Authors
+and Group 42, Inc. disclaim all warranties, expressed or implied,
+including, without limitation, the warranties of merchantability and of
+fitness for any purpose.  The Contributing Authors and Group 42, Inc.
+assume no liability for direct, indirect, incidental, special, exemplary,
+or consequential damages, which may result from the use of the PNG
+Reference Library, even if advised of the possibility of such damage.
+
+Permission is hereby granted to use, copy, modify, and distribute this
+source code, or portions hereof, for any purpose, without fee, subject
+to the following restrictions:
+
+1. The origin of this source code must not be misrepresented.
+
+2. Altered versions must be plainly marked as such and must not
+   be misrepresented as being the original source.
+
+3. This Copyright notice may not be removed or altered from any
+   source or altered source distribution.
+
+The Contributing Authors and Group 42, Inc. specifically permit, without
+fee, and encourage the use of this source code as a component to
+supporting the PNG file format in commercial products.  If you use this
+source code in a product, acknowledgment is not required but would be
+appreciated.
+
+
+A "png_get_copyright" function is available, for convenient use in "about"
+boxes and the like:
+
+   printf("%s",png_get_copyright(NULL));
+
+Also, the PNG logo (in PNG format, of course) is supplied in the
+files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
+
+Libpng is OSI Certified Open Source Software.  OSI Certified Open Source is a
+certification mark of the Open Source Initiative.
+
+Glenn Randers-Pehrson
+glennrp at users.sourceforge.net
+May 15, 2007
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to libungif 4.1.3, which is 
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+The GIFLIB distribution is Copyright (c) 1997  Eric S. Raymond
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Little CMS 2.0, which is 
+included with OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Little CMS
+Copyright (c) 1998-2010 Marti Maria Saguer
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% Lucida is a registered trademark or trademark of Bigelow & Holmes in the
+U.S. and other countries.
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Mesa 3D Graphics Library v4.1,
+which is included with JRE 7, JDK 7, and OpenJDK 7 source distributions.
+
+--- begin of LICENSE ---
+
+ Mesa 3-D graphics library
+ Version:  4.1
+
+ Copyright (C) 1999-2002  Brian Paul   All Rights Reserved.
+
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of this software and associated documentation files (the "Software"),
+ to deal in the Software without restriction, including without limitation
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ and/or sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to PC/SC Lite for Suse Linux v.1.1.1,
+which is included with JRE 7, JDK 7, and OpenJDK 7 on Linux and Solaris.
+
+--- begin of LICENSE ---
+
+Copyright (c) 1999-2004 David Corcoran <corcoran@linuxnet.com>
+Copyright (c) 1999-2004 Ludovic Rousseau <ludovic.rousseau (at) free.fr>
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+1. Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+3. All advertising materials mentioning features or use of this software
+   must display the following acknowledgement:
+     This product includes software developed by: 
+      David Corcoran <corcoran@linuxnet.com>
+      http://www.linuxnet.com (MUSCLE)
+4. The name of the author may not be used to endorse or promote products
+   derived from this software without specific prior written permission.
+
+Changes to this license can be made only by the copyright author with 
+explicit written consent.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Relax NG Object/Parser v.20050510,
+which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Copyright (c) Kohsuke Kawaguchi
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions: The above copyright
+notice and this permission notice shall be included in all copies or
+substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to RelaxNGCC v1.12, which is 
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Copyright (c) 2000-2003 Daisuke Okajima and Kohsuke Kawaguchi.  
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+3. The end-user documentation included with the redistribution, if any, must
+   include the following acknowledgment:
+
+    "This product includes software developed by Daisuke Okajima
+    and Kohsuke Kawaguchi (http://relaxngcc.sf.net/)."
+
+Alternately, this acknowledgment may appear in the software itself, if and
+wherever such third-party acknowledgments normally appear.
+
+4. The names of the copyright holders must not be used to endorse or promote
+   products derived from this software without prior written permission. For
+   written permission, please contact the copyright holders.
+
+5. Products derived from this software may not be called "RELAXNGCC", nor may
+  "RELAXNGCC" appear in their name, without prior written permission of the
+  copyright holders.
+
+THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.IN NO EVENT SHALL THE APACHE
+SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Mozilla Rhino v1.7R3, which 
+is included with JRE 7, JDK 7, and OpenJDK 7
+
+--- begin of LICENSE ---
+
+                          MOZILLA PUBLIC LICENSE
+                                Version 1.1
+
+                              ---------------
+
+1. Definitions.
+
+     1.0.1. "Commercial Use" means distribution or otherwise making the
+     Covered Code available to a third party.
+
+     1.1. "Contributor" means each entity that creates or contributes to
+     the creation of Modifications.
+
+     1.2. "Contributor Version" means the combination of the Original
+     Code, prior Modifications used by a Contributor, and the Modifications
+     made by that particular Contributor.
+
+     1.3. "Covered Code" means the Original Code or Modifications or the
+     combination of the Original Code and Modifications, in each case
+     including portions thereof.
+
+     1.4. "Electronic Distribution Mechanism" means a mechanism generally
+     accepted in the software development community for the electronic
+     transfer of data.
+
+     1.5. "Executable" means Covered Code in any form other than Source
+     Code.
+
+     1.6. "Initial Developer" means the individual or entity identified
+     as the Initial Developer in the Source Code notice required by Exhibit
+     A.
+
+     1.7. "Larger Work" means a work which combines Covered Code or
+     portions thereof with code not governed by the terms of this License.
+
+     1.8. "License" means this document.
+
+     1.8.1. "Licensable" means having the right to grant, to the maximum
+     extent possible, whether at the time of the initial grant or
+     subsequently acquired, any and all of the rights conveyed herein.
+
+     1.9. "Modifications" means any addition to or deletion from the
+     substance or structure of either the Original Code or any previous
+     Modifications. When Covered Code is released as a series of files, a
+     Modification is:
+          A. Any addition to or deletion from the contents of a file
+          containing Original Code or previous Modifications.
+
+          B. Any new file that contains any part of the Original Code or
+          previous Modifications.
+
+     1.10. "Original Code" means Source Code of computer software code
+     which is described in the Source Code notice required by Exhibit A as
+     Original Code, and which, at the time of its release under this
+     License is not already Covered Code governed by this License.
+
+     1.10.1. "Patent Claims" means any patent claim(s), now owned or
+     hereafter acquired, including without limitation,  method, process,
+     and apparatus claims, in any patent Licensable by grantor.
+
+     1.11. "Source Code" means the preferred form of the Covered Code for
+     making modifications to it, including all modules it contains, plus
+     any associated interface definition files, scripts used to control
+     compilation and installation of an Executable, or source code
+     differential comparisons against either the Original Code or another
+     well known, available Covered Code of the Contributor's choice. The
+     Source Code can be in a compressed or archival form, provided the
+     appropriate decompression or de-archiving software is widely available
+     for no charge.
+
+     1.12. "You" (or "Your")  means an individual or a legal entity
+     exercising rights under, and complying with all of the terms of, this
+     License or a future version of this License issued under Section 6.1.
+     For legal entities, "You" includes any entity which controls, is
+     controlled by, or is under common control with You. For purposes of
+     this definition, "control" means (a) the power, direct or indirect,
+     to cause the direction or management of such entity, whether by
+     contract or otherwise, or (b) ownership of more than fifty percent
+     (50%) of the outstanding shares or beneficial ownership of such
+     entity.
+
+2. Source Code License.
+
+     2.1. The Initial Developer Grant.
+     The Initial Developer hereby grants You a world-wide, royalty-free,
+     non-exclusive license, subject to third party intellectual property
+     claims:
+          (a)  under intellectual property rights (other than patent or
+          trademark) Licensable by Initial Developer to use, reproduce,
+          modify, display, perform, sublicense and distribute the Original
+          Code (or portions thereof) with or without Modifications, and/or
+          as part of a Larger Work; and
+
+          (b) under Patents Claims infringed by the making, using or
+          selling of Original Code, to make, have made, use, practice,
+          sell, and offer for sale, and/or otherwise dispose of the
+          Original Code (or portions thereof).
+
+          (c) the licenses granted in this Section 2.1(a) and (b) are
+          effective on the date Initial Developer first distributes
+          Original Code under the terms of this License.
+
+          (d) Notwithstanding Section 2.1(b) above, no patent license is
+          granted: 1) for code that You delete from the Original Code; 2)
+          separate from the Original Code;  or 3) for infringements caused
+          by: i) the modification of the Original Code or ii) the
+          combination of the Original Code with other software or devices.
+
+     2.2. Contributor Grant.
+     Subject to third party intellectual property claims, each Contributor
+     hereby grants You a world-wide, royalty-free, non-exclusive license
+
+          (a)  under intellectual property rights (other than patent or
+          trademark) Licensable by Contributor, to use, reproduce, modify,
+          display, perform, sublicense and distribute the Modifications
+          created by such Contributor (or portions thereof) either on an
+          unmodified basis, with other Modifications, as Covered Code
+          and/or as part of a Larger Work; and
+
+          (b) under Patent Claims infringed by the making, using, or
+          selling of  Modifications made by that Contributor either alone
+          and/or in combination with its Contributor Version (or portions
+          of such combination), to make, use, sell, offer for sale, have
+          made, and/or otherwise dispose of: 1) Modifications made by that
+          Contributor (or portions thereof); and 2) the combination of
+          Modifications made by that Contributor with its Contributor
+          Version (or portions of such combination).
+
+          (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
+          effective on the date Contributor first makes Commercial Use of
+          the Covered Code.
+
+          (d)    Notwithstanding Section 2.2(b) above, no patent license is
+          granted: 1) for any code that Contributor has deleted from the
+          Contributor Version; 2)  separate from the Contributor Version;
+          3)  for infringements caused by: i) third party modifications of
+          Contributor Version or ii)  the combination of Modifications made
+          by that Contributor with other software  (except as part of the
+          Contributor Version) or other devices; or 4) under Patent Claims
+          infringed by Covered Code in the absence of Modifications made by
+          that Contributor.
+
+3. Distribution Obligations.
+
+     3.1. Application of License.
+     The Modifications which You create or to which You contribute are
+     governed by the terms of this License, including without limitation
+     Section 2.2. The Source Code version of Covered Code may be
+     distributed only under the terms of this License or a future version
+     of this License released under Section 6.1, and You must include a
+     copy of this License with every copy of the Source Code You
+     distribute. You may not offer or impose any terms on any Source Code
+     version that alters or restricts the applicable version of this
+     License or the recipients' rights hereunder. However, You may include
+     an additional document offering the additional rights described in
+     Section 3.5.
+
+     3.2. Availability of Source Code.
+     Any Modification which You create or to which You contribute must be
+     made available in Source Code form under the terms of this License
+     either on the same media as an Executable version or via an accepted
+     Electronic Distribution Mechanism to anyone to whom you made an
+     Executable version available; and if made available via Electronic
+     Distribution Mechanism, must remain available for at least twelve (12)
+     months after the date it initially became available, or at least six
+     (6) months after a subsequent version of that particular Modification
+     has been made available to such recipients. You are responsible for
+     ensuring that the Source Code version remains available even if the
+     Electronic Distribution Mechanism is maintained by a third party.
+
+     3.3. Description of Modifications.
+     You must cause all Covered Code to which You contribute to contain a
+     file documenting the changes You made to create that Covered Code and
+     the date of any change. You must include a prominent statement that
+     the Modification is derived, directly or indirectly, from Original
+     Code provided by the Initial Developer and including the name of the
+     Initial Developer in (a) the Source Code, and (b) in any notice in an
+     Executable version or related documentation in which You describe the
+     origin or ownership of the Covered Code.
+
+     3.4. Intellectual Property Matters
+          (a) Third Party Claims.
+          If Contributor has knowledge that a license under a third party's
+          intellectual property rights is required to exercise the rights
+          granted by such Contributor under Sections 2.1 or 2.2,
+          Contributor must include a text file with the Source Code
+          distribution titled "LEGAL" which describes the claim and the
+          party making the claim in sufficient detail that a recipient will
+          know whom to contact. If Contributor obtains such knowledge after
+          the Modification is made available as described in Section 3.2,
+          Contributor shall promptly modify the LEGAL file in all copies
+          Contributor makes available thereafter and shall take other steps
+          (such as notifying appropriate mailing lists or newsgroups)
+          reasonably calculated to inform those who received the Covered
+          Code that new knowledge has been obtained.
+
+          (b) Contributor APIs.
+          If Contributor's Modifications include an application programming
+          interface and Contributor has knowledge of patent licenses which
+          are reasonably necessary to implement that API, Contributor must
+          also include this information in the LEGAL file.
+
+               (c)    Representations.
+          Contributor represents that, except as disclosed pursuant to
+          Section 3.4(a) above, Contributor believes that Contributor's
+          Modifications are Contributor's original creation(s) and/or
+          Contributor has sufficient rights to grant the rights conveyed by
+          this License.
+
+     3.5. Required Notices.
+     You must duplicate the notice in Exhibit A in each file of the Source
+     Code.  If it is not possible to put such notice in a particular Source
+     Code file due to its structure, then You must include such notice in a
+     location (such as a relevant directory) where a user would be likely
+     to look for such a notice.  If You created one or more Modification(s)
+     You may add your name as a Contributor to the notice described in
+     Exhibit A.  You must also duplicate this License in any documentation
+     for the Source Code where You describe recipients' rights or ownership
+     rights relating to Covered Code.  You may choose to offer, and to
+     charge a fee for, warranty, support, indemnity or liability
+     obligations to one or more recipients of Covered Code. However, You
+     may do so only on Your own behalf, and not on behalf of the Initial
+     Developer or any Contributor. You must make it absolutely clear than
+     any such warranty, support, indemnity or liability obligation is
+     offered by You alone, and You hereby agree to indemnify the Initial
+     Developer and every Contributor for any liability incurred by the
+     Initial Developer or such Contributor as a result of warranty,
+     support, indemnity or liability terms You offer.
+
+     3.6. Distribution of Executable Versions.
+     You may distribute Covered Code in Executable form only if the
+     requirements of Section 3.1-3.5 have been met for that Covered Code,
+     and if You include a notice stating that the Source Code version of
+     the Covered Code is available under the terms of this License,
+     including a description of how and where You have fulfilled the
+     obligations of Section 3.2. The notice must be conspicuously included
+     in any notice in an Executable version, related documentation or
+     collateral in which You describe recipients' rights relating to the
+     Covered Code. You may distribute the Executable version of Covered
+     Code or ownership rights under a license of Your choice, which may
+     contain terms different from this License, provided that You are in
+     compliance with the terms of this License and that the license for the
+     Executable version does not attempt to limit or alter the recipient's
+     rights in the Source Code version from the rights set forth in this
+     License. If You distribute the Executable version under a different
+     license You must make it absolutely clear that any terms which differ
+     from this License are offered by You alone, not by the Initial
+     Developer or any Contributor. You hereby agree to indemnify the
+     Initial Developer and every Contributor for any liability incurred by
+     the Initial Developer or such Contributor as a result of any such
+     terms You offer.
+
+     3.7. Larger Works.
+     You may create a Larger Work by combining Covered Code with other code
+     not governed by the terms of this License and distribute the Larger
+     Work as a single product. In such a case, You must make sure the
+     requirements of this License are fulfilled for the Covered Code.
+
+4. Inability to Comply Due to Statute or Regulation.
+
+     If it is impossible for You to comply with any of the terms of this
+     License with respect to some or all of the Covered Code due to
+     statute, judicial order, or regulation then You must: (a) comply with
+     the terms of this License to the maximum extent possible; and (b)
+     describe the limitations and the code they affect. Such description
+     must be included in the LEGAL file described in Section 3.4 and must
+     be included with all distributions of the Source Code. Except to the
+     extent prohibited by statute or regulation, such description must be
+     sufficiently detailed for a recipient of ordinary skill to be able to
+     understand it.
+
+5. Application of this License.
+
+     This License applies to code to which the Initial Developer has
+     attached the notice in Exhibit A and to related Covered Code.
+
+6. Versions of the License.
+
+     6.1. New Versions.
+     Netscape Communications Corporation ("Netscape") may publish revised
+     and/or new versions of the License from time to time. Each version
+     will be given a distinguishing version number.
+
+     6.2. Effect of New Versions.
+     Once Covered Code has been published under a particular version of the
+     License, You may always continue to use it under the terms of that
+     version. You may also choose to use such Covered Code under the terms
+     of any subsequent version of the License published by Netscape. No one
+     other than Netscape has the right to modify the terms applicable to
+     Covered Code created under this License.
+
+     6.3. Derivative Works.
+     If You create or use a modified version of this License (which you may
+     only do in order to apply it to code which is not already Covered Code
+     governed by this License), You must (a) rename Your license so that
+     the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",
+     "MPL", "NPL" or any confusingly similar phrase do not appear in your
+     license (except to note that your license differs from this License)
+     and (b) otherwise make it clear that Your version of the license
+     contains terms which differ from the Mozilla Public License and
+     Netscape Public License. (Filling in the name of the Initial
+     Developer, Original Code or Contributor in the notice described in
+     Exhibit A shall not of themselves be deemed to be modifications of
+     this License.)
+
+7. DISCLAIMER OF WARRANTY.
+
+     COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
+     WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+     WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
+     DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
+     THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
+     IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
+     YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
+     COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
+     OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
+     ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
+
+8. TERMINATION.
+
+     8.1.  This License and the rights granted hereunder will terminate
+     automatically if You fail to comply with terms herein and fail to cure
+     such breach within 30 days of becoming aware of the breach. All
+     sublicenses to the Covered Code which are properly granted shall
+     survive any termination of this License. Provisions which, by their
+     nature, must remain in effect beyond the termination of this License
+     shall survive.
+
+     8.2.  If You initiate litigation by asserting a patent infringement
+     claim (excluding declatory judgment actions) against Initial Developer
+     or a Contributor (the Initial Developer or Contributor against whom
+     You file such action is referred to as "Participant")  alleging that:
+
+     (a)  such Participant's Contributor Version directly or indirectly
+     infringes any patent, then any and all rights granted by such
+     Participant to You under Sections 2.1 and/or 2.2 of this License
+     shall, upon 60 days notice from Participant terminate prospectively,
+     unless if within 60 days after receipt of notice You either: (i)
+     agree in writing to pay Participant a mutually agreeable reasonable
+     royalty for Your past and future use of Modifications made by such
+     Participant, or (ii) withdraw Your litigation claim with respect to
+     the Contributor Version against such Participant.  If within 60 days
+     of notice, a reasonable royalty and payment arrangement are not
+     mutually agreed upon in writing by the parties or the litigation claim
+     is not withdrawn, the rights granted by Participant to You under
+     Sections 2.1 and/or 2.2 automatically terminate at the expiration of
+     the 60 day notice period specified above.
+
+     (b)  any software, hardware, or device, other than such Participant's
+     Contributor Version, directly or indirectly infringes any patent, then
+     any rights granted to You by such Participant under Sections 2.1(b)
+     and 2.2(b) are revoked effective as of the date You first made, used,
+     sold, distributed, or had made, Modifications made by that
+     Participant.
+
+     8.3.  If You assert a patent infringement claim against Participant
+     alleging that such Participant's Contributor Version directly or
+     indirectly infringes any patent where such claim is resolved (such as
+     by license or settlement) prior to the initiation of patent
+     infringement litigation, then the reasonable value of the licenses
+     granted by such Participant under Sections 2.1 or 2.2 shall be taken
+     into account in determining the amount or value of any payment or
+     license.
+
+     8.4.  In the event of termination under Sections 8.1 or 8.2 above,
+     all end user license agreements (excluding distributors and resellers)
+     which have been validly granted by You or any distributor hereunder
+     prior to termination shall survive termination.
+
+9. LIMITATION OF LIABILITY.
+
+     UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
+     (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
+     DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
+     OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR
+     ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
+     CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,
+     WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
+     COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
+     INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
+     LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
+     RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
+     PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
+     EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
+     THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
+
+10. U.S. GOVERNMENT END USERS.
+
+     The Covered Code is a "commercial item," as that term is defined in
+     48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer
+     software" and "commercial computer software documentation," as such
+     terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
+     C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
+     all U.S. Government End Users acquire Covered Code with only those
+     rights set forth herein.
+
+11. MISCELLANEOUS.
+
+     This License represents the complete agreement concerning subject
+     matter hereof. If any provision of this License is held to be
+     unenforceable, such provision shall be reformed only to the extent
+     necessary to make it enforceable. This License shall be governed by
+     California law provisions (except to the extent applicable law, if
+     any, provides otherwise), excluding its conflict-of-law provisions.
+     With respect to disputes in which at least one party is a citizen of,
+     or an entity chartered or registered to do business in the United
+     States of America, any litigation relating to this License shall be
+     subject to the jurisdiction of the Federal Courts of the Northern
+     District of California, with venue lying in Santa Clara County,
+     California, with the losing party responsible for costs, including
+     without limitation, court costs and reasonable attorneys' fees and
+     expenses. The application of the United Nations Convention on
+     Contracts for the International Sale of Goods is expressly excluded.
+     Any law or regulation which provides that the language of a contract
+     shall be construed against the drafter shall not apply to this
+     License.
+
+12. RESPONSIBILITY FOR CLAIMS.
+
+     As between Initial Developer and the Contributors, each party is
+     responsible for claims and damages arising, directly or indirectly,
+     out of its utilization of rights under this License and You agree to
+     work with Initial Developer and Contributors to distribute such
+     responsibility on an equitable basis. Nothing herein is intended or
+     shall be deemed to constitute any admission of liability.
+
+13. MULTIPLE-LICENSED CODE.
+
+     Initial Developer may designate portions of the Covered Code as
+     "Multiple-Licensed".  "Multiple-Licensed" means that the Initial
+     Developer permits you to utilize portions of the Covered Code under
+     Your choice of the NPL or the alternative licenses, if any, specified
+     by the Initial Developer in the file described in Exhibit A.
+
+EXHIBIT A - Mozilla Public License.
+
+     ``The contents of this file are subject to the Mozilla Public License
+     Version 1.1 (the "License"); you may not use this file except in
+     compliance with the License. You may obtain a copy of the License at
+     http://www.mozilla.org/MPL/
+
+     Software distributed under the License is distributed on an "AS IS"
+     basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
+     License for the specific language governing rights and limitations
+     under the License.
+
+     The Original Code is ______________________________________.
+
+     The Initial Developer of the Original Code is ________________________.
+     Portions created by ______________________ are Copyright (C) ______
+     _______________________. All Rights Reserved.
+
+     Contributor(s): ______________________________________.
+
+     Alternatively, the contents of this file may be used under the terms
+     of the _____ license (the  "[___] License"), in which case the
+     provisions of [______] License are applicable instead of those
+     above.  If you wish to allow use of your version of this file only
+     under the terms of the [____] License and not to allow others to use
+     your version of this file under the MPL, indicate your decision by
+     deleting  the provisions above and replace  them with the notice and
+     other provisions required by the [___] License.  If you do not delete
+     the provisions above, a recipient may use your version of this file
+     under either the MPL or the [___] License."
+
+     [NOTE: The text of this Exhibit A may differ slightly from the text of
+     the notices in the Source Code files of the Original Code. You should
+     use the text of this Exhibit A rather than the text found in the
+     Original Code Source Code for Your Modifications.]
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to SAX 2.0.1, which is included 
+with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+ SAX is free!
+
+ In fact, it's not possible to own a license to SAX, since it's been placed in
+ the public domain.
+
+ No Warranty
+
+ Because SAX is released to the public domain, there is no warranty for the
+ design or for the software implementation, to the extent permitted by
+ applicable law. Except when otherwise stated in writing the copyright holders
+ and/or other parties provide SAX "as is" without warranty of any kind, either
+ expressed or implied, including, but not limited to, the implied warranties
+ of merchantability and fitness for a particular purpose. The entire risk as
+ to the quality and performance of SAX is with you. Should SAX prove
+ defective, you assume the cost of all necessary servicing, repair or
+ correction.
+
+ In no event unless required by applicable law or agreed to in writing will
+ any copyright holder, or any other party who may modify and/or redistribute
+ SAX, be liable to you for damages, including any general, special, incidental
+ or consequential damages arising out of the use or inability to use SAX
+ (including but not limited to loss of data or data being rendered inaccurate
+ or losses sustained by you or third parties or a failure of the SAX to
+ operate with any other programs), even if such holder or other party has been
+ advised of the possibility of such damages.
+
+ Copyright Disclaimers 
+
+ This page includes statements to that effect by David Megginson, who would
+ have been able to claim copyright for the original work.  SAX 1.0
+
+ Version 1.0 of the Simple API for XML (SAX), created collectively by the
+ membership of the XML-DEV mailing list, is hereby released into the public
+ domain.
+
+ No one owns SAX: you may use it freely in both commercial and non-commercial
+ applications, bundle it with your software distribution, include it on a
+ CD-ROM, list the source code in a book, mirror the documentation at your own
+ web site, or use it in any other way you see fit.
+
+ David Megginson, sax@megginson.com
+ 1998-05-11
+
+ SAX 2.0 
+
+ I hereby abandon any property rights to SAX 2.0 (the Simple API for XML), and
+ release all of the SAX 2.0 source code, compiled code, and documentation
+ contained in this distribution into the Public Domain. SAX comes with NO
+ WARRANTY or guarantee of fitness for any purpose.
+
+ David Megginson, david@megginson.com
+ 2000-05-05
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to SoftFloat version 2b, which is 
+included with JRE 7, JDK 7, and OpenJDK 7 on Linux/ARM.
+
+--- begin of LICENSE ---
+
+Use of any of this software is governed by the terms of the license below:
+
+SoftFloat was written by me, John R. Hauser. This work was made possible in 
+part by the International Computer Science Institute, located at Suite 600, 
+1947 Center Street, Berkeley, California 94704. Funding was partially 
+provided by the National Science Foundation under grant MIP-9311980. The 
+original version of this code was written as part of a project to build 
+a fixed-point vector processor in collaboration with the University of 
+California at Berkeley, overseen by Profs. Nelson Morgan and John Wawrzynek. 
+
+THIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE. Although reasonable effort 
+has been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT 
+TIMES RESULT IN INCORRECT BEHAVIOR. USE OF THIS SOFTWARE IS RESTRICTED TO 
+PERSONS AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ALL 
+LOSSES, COSTS, OR OTHER PROBLEMS THEY INCUR DUE TO THE SOFTWARE, AND WHO 
+FURTHERMORE EFFECTIVELY INDEMNIFY JOHN HAUSER AND THE INTERNATIONAL COMPUTER 
+SCIENCE INSTITUTE (possibly via similar legal warning) AGAINST ALL LOSSES, 
+COSTS, OR OTHER PROBLEMS INCURRED BY THEIR CUSTOMERS AND CLIENTS DUE TO THE 
+SOFTWARE. 
+
+Derivative works are acceptable, even for commercial purposes, provided 
+that the minimal documentation requirements stated in the source code are 
+satisfied. 
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% Portions licensed from Taligent, Inc.
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Thai Dictionary, which is 
+included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Copyright (C) 1982 The Royal Institute, Thai Royal Government.
+
+Copyright (C) 1998 National Electronics and Computer Technology Center,
+National Science and Technology Development Agency,
+Ministry of Science Technology and Environment,
+Thai Royal Government.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Unicode 6.0.0, CLDR v1.4.1, & CLDR
+v1.9, which is included with JRE 7, JDK 7, and OpenJDK 7.
+
+--- begin of LICENSE ---
+
+Unicode Terms of Use
+
+For the general privacy policy governing access to this site, see the Unicode
+Privacy Policy. For trademark usage, see the Unicode® Consortium Name and
+Trademark Usage Policy.
+
+A. Unicode Copyright.
+   1. Copyright © 1991-2011 Unicode, Inc. All rights reserved.
+
+   2. Certain documents and files on this website contain a legend indicating
+      that "Modification is permitted." Any person is hereby authorized,
+      without fee, to modify such documents and files to create derivative
+      works conforming to the Unicode® Standard, subject to Terms and
+      Conditions herein.
+
+    3. Any person is hereby authorized, without fee, to view, use, reproduce,
+       and distribute all documents and files solely for informational
+       purposes in the creation of products supporting the Unicode Standard,
+       subject to the Terms and Conditions herein.
+
+    4. Further specifications of rights and restrictions pertaining to the use
+       of the particular set of data files known as the "Unicode Character
+       Database" can be found in Exhibit 1.
+
+    5. Each version of the Unicode Standard has further specifications of
+       rights and restrictions of use. For the book editions (Unicode 5.0 and
+       earlier), these are found on the back of the title page. The online
+       code charts carry specific restrictions. All other files, including
+       online documentation of the core specification for Unicode 6.0 and
+       later, are covered under these general Terms of Use.
+
+    6. No license is granted to "mirror" the Unicode website where a fee is
+       charged for access to the "mirror" site.
+
+    7. Modification is not permitted with respect to this document. All copies
+       of this document must be verbatim.
+
+B. Restricted Rights Legend. Any technical data or software which is licensed
+   to the United States of America, its agencies and/or instrumentalities
+   under this Agreement is commercial technical data or commercial computer
+   software developed exclusively at private expense as defined in FAR 2.101,
+   or DFARS 252.227-7014 (June 1995), as applicable. For technical data, use,
+   duplication, or disclosure by the Government is subject to restrictions as
+   set forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov
+   1995) and this Agreement. For Software, in accordance with FAR 12-212 or
+   DFARS 227-7202, as applicable, use, duplication or disclosure by the
+   Government is subject to the restrictions set forth in this Agreement.
+
+C. Warranties and Disclaimers.
+   1. This publication and/or website may include technical or typographical
+      errors or other inaccuracies . Changes are periodically added to the
+      information herein; these changes will be incorporated in new editions
+      of the publication and/or website. Unicode may make improvements and/or
+      changes in the product(s) and/or program(s) described in this
+      publication and/or website at any time.
+
+    2. If this file has been purchased on magnetic or optical media from
+       Unicode, Inc. the sole and exclusive remedy for any claim will be
+       exchange of the defective media within ninety (90) days of original
+       purchase.
+
+    3. EXCEPT AS PROVIDED IN SECTION C.2, THIS PUBLICATION AND/OR SOFTWARE IS
+       PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS, IMPLIED,
+       OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF
+       MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
+       UNICODE AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR
+       OMISSIONS IN THIS PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH
+       ARE REFERENCED BY OR LINKED TO THIS PUBLICATION OR THE UNICODE WEBSITE.
+
+D. Waiver of Damages. In no event shall Unicode or its licensors be liable for
+   any special, incidental, indirect or consequential damages of any kind, or
+   any damages whatsoever, whether or not Unicode was advised of the
+   possibility of the damage, including, without limitation, those resulting
+   from the following: loss of use, data or profits, in connection with the
+   use, modification or distribution of this information or its derivatives.
+
+E.Trademarks & Logos.
+   1. The Unicode Word Mark and the Unicode Logo are trademarks of Unicode,
+      Inc.  “The Unicode Consortium” and “Unicode, Inc.” are trade names of
+      Unicode, Inc.  Use of the information and materials found on this
+      website indicates your acknowledgement of Unicode, Inc.’s exclusive
+      worldwide rights in the Unicode Word Mark, the Unicode Logo, and the
+      Unicode trade names.
+
+   2. The Unicode Consortium Name and Trademark Usage Policy (“Trademark
+      Policy”) are incorporated herein by reference and you agree to abide by
+      the provisions of the Trademark Policy, which may be changed from time
+      to time in the sole discretion of Unicode, Inc.
+
+   3. All third party trademarks referenced herein are the property of their
+      respective owners.
+
+Miscellaneous.
+   1. Jurisdiction and Venue. This server is operated from a location in the
+      State of California, United States of America. Unicode makes no
+      representation that the materials are appropriate for use in other
+      locations. If you access this server from other locations, you are
+      responsible for compliance with local laws. This Agreement, all use of
+      this site and any claims and damages resulting from use of this site are
+      governed solely by the laws of the State of California without regard to
+      any principles which would apply the laws of a different jurisdiction.
+      The user agrees that any disputes regarding this site shall be resolved
+      solely in the courts located in Santa Clara County, California. The user
+      agrees said courts have personal jurisdiction and agree to waive any
+      right to transfer the dispute to any other forum.
+
+   2. Modification by Unicode.  Unicode shall have the right to modify this
+      Agreement at any time by posting it to this site. The user may not
+      assign any part of this Agreement without Unicode’s prior written
+      consent.
+
+   3. Taxes. The user agrees to pay any taxes arising from access to this
+      website or use of the information herein, except for those based on
+      Unicode’s net income.
+
+   4. Severability.  If any provision of this Agreement is declared invalid or
+      unenforceable, the remaining provisions of this Agreement shall remain
+      in effect.
+
+   5. Entire Agreement. This Agreement constitutes the entire agreement
+      between the parties.
+
+EXHIBIT 1
+UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE
+
+Unicode Data Files include all data files under the directories
+http://www.unicode.org/Public/, http://www.unicode.org/reports/, and
+http://www.unicode.org/cldr/data/. Unicode Data Files do not include PDF
+online code charts under the directory http://www.unicode.org/Public/.
+Software includes any source code published in the Unicode Standard or under
+the directories http://www.unicode.org/Public/,
+http://www.unicode.org/reports/, and http://www.unicode.org/cldr/data/.
+
+NOTICE TO USER: Carefully read the following legal agreement. BY DOWNLOADING,
+INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA
+FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO
+BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT
+AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR
+SOFTWARE.
+
+COPYRIGHT AND PERMISSION NOTICE
+
+Copyright © 1991-2011 Unicode, Inc. All rights reserved. Distributed under the
+Terms of Use in http://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of the Unicode data files and any associated documentation (the "Data Files")
+or Unicode software and any associated documentation (the "Software") to deal
+in the Data Files or Software without restriction, including without
+limitation the rights to use, copy, modify, merge, publish, distribute, and/or
+sell copies of the Data Files or Software, and to permit persons to whom the
+Data Files or Software are furnished to do so, provided that (a) the above
+copyright notice(s) and this permission notice appear with all copies of the
+Data Files or Software, (b) both the above copyright notice(s) and this
+permission notice appear in associated documentation, and (c) there is clear
+notice in each modified Data File or in the Software as well as in the
+documentation associated with the Data File(s) or Software that the data or
+software has been modified.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD
+PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN
+THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
+PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
+ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE
+DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder shall not
+be used in advertising or otherwise to promote the sale, use or other dealings
+in these Data Files or Software without prior written authorization of the
+copyright holder.
+
+Unicode and the Unicode logo are trademarks of Unicode, Inc. in the United
+States and other countries. All third party trademarks referenced herein are
+the property of their respective owners.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to UPX v3.01, which is included 
+with JRE 7 on Windows.
+
+--- begin of LICENSE ---
+
+Use of any of this software is governed by the terms of the license below:
+
+
+                 ooooo     ooo ooooooooo.   ooooooo  ooooo
+                 `888'     `8' `888   `Y88.  `8888    d8'
+                  888       8   888   .d88'    Y888..8P
+                  888       8   888ooo88P'      `8888'
+                  888       8   888            .8PY888.
+                  `88.    .8'   888           d8'  `888b
+                    `YbodP'    o888o        o888o  o88888o
+
+
+                    The Ultimate Packer for eXecutables
+          Copyright (c) 1996-2000 Markus Oberhumer & Laszlo Molnar
+               http://wildsau.idv.uni-linz.ac.at/mfx/upx.html
+                          http://www.nexus.hu/upx
+                            http://upx.tsx.org
+
+
+PLEASE CAREFULLY READ THIS LICENSE AGREEMENT, ESPECIALLY IF YOU PLAN
+TO MODIFY THE UPX SOURCE CODE OR USE A MODIFIED UPX VERSION.
+
+
+ABSTRACT
+========
+
+   UPX and UCL are copyrighted software distributed under the terms
+   of the GNU General Public License (hereinafter the "GPL").
+
+   The stub which is imbedded in each UPX compressed program is part
+   of UPX and UCL, and contains code that is under our copyright. The
+   terms of the GNU General Public License still apply as compressing
+   a program is a special form of linking with our stub.
+
+   As a special exception we grant the free usage of UPX for all
+   executables, including commercial programs.
+   See below for details and restrictions.
+
+
+COPYRIGHT
+=========
+
+   UPX and UCL are copyrighted software. All rights remain with the authors.
+
+   UPX is Copyright (C) 1996-2000 Markus Franz Xaver Johannes Oberhumer
+   UPX is Copyright (C) 1996-2000 Laszlo Molnar
+
+   UCL is Copyright (C) 1996-2000 Markus Franz Xaver Johannes Oberhumer
+
+
+GNU GENERAL PUBLIC LICENSE
+==========================
+
+   UPX and the UCL library are free software; you can redistribute them
+   and/or modify them under the terms of the GNU General Public License as
+   published by the Free Software Foundation; either version 2 of
+   the License, or (at your option) any later version.
+
+   UPX and UCL are distributed in the hope that they 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 for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; see the file COPYING.
+
+
+SPECIAL EXCEPTION FOR COMPRESSED EXECUTABLES
+============================================
+
+   The stub which is imbedded in each UPX compressed program is part
+   of UPX and UCL, and contains code that is under our copyright. The
+   terms of the GNU General Public License still apply as compressing
+   a program is a special form of linking with our stub.
+
+   Hereby Markus F.X.J. Oberhumer and Laszlo Molnar grant you special
+   permission to freely use and distribute all UPX compressed programs
+   (including commercial ones), subject to the following restrictions:
+
+   1. You must compress your program with a completely unmodified UPX
+      version; either with our precompiled version, or (at your option)
+      with a self compiled version of the unmodified UPX sources as
+      distributed by us.
+   2. This also implies that the UPX stub must be completely unmodfied, i.e.
+      the stub imbedded in your compressed program must be byte-identical
+      to the stub that is produced by the official unmodified UPX version.
+   3. The decompressor and any other code from the stub must exclusively get
+      used by the unmodified UPX stub for decompressing your program at
+      program startup. No portion of the stub may get read, copied,
+      called or otherwise get used or accessed by your program.
+
+
+ANNOTATIONS
+===========
+
+  - You can use a modified UPX version or modified UPX stub only for
+    programs that are compatible with the GNU General Public License.
+
+  - We grant you special permission to freely use and distribute all UPX
+    compressed programs. But any modification of the UPX stub (such as,
+    but not limited to, removing our copyright string or making your
+    program non-decompressible) will immediately revoke your right to
+    use and distribute a UPX compressed program.
+
+  - UPX is not a software protection tool; by requiring that you use
+    the unmodified UPX version for your proprietary programs we
+    make sure that any user can decompress your program. This protects
+    both you and your users as nobody can hide malicious code -
+    any program that cannot be decompressed is highly suspicious
+    by definition.
+
+  - You can integrate all or part of UPX and UCL into projects that
+    are compatible with the GNU GPL, but obviously you cannot grant
+    any special exceptions beyond the GPL for our code in your project.
+
+  - We want to actively support manufacturers of virus scanners and
+    similar security software. Please contact us if you would like to
+    incorporate parts of UPX or UCL into such a product.
+
+
+
+Markus F.X.J. Oberhumer                   Laszlo Molnar
+markus.oberhumer@jk.uni-linz.ac.at        ml1050@cdata.tvnet.hu
+
+Linz, Austria, 25 Feb 2000
+
+Additional License(s)
+
+The UPX license file is at http://upx.sourceforge.net/upx-license.html.
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to Xfree86-VidMode Extension 1.0,
+which is included with JRE 7, JDK 7, and OpenJDK 7 on Linux and Solaris.
+
+--- begin of LICENSE ---
+
+Version 1.1 of XFree86 ProjectLicence.
+
+Copyright (C) 1994-2004 The XFree86 Project, Inc.    All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicence, and/or sell
+copies of the Software, and to permit persons to whom the Software is furnished
+to do so,subject to the following conditions:
+
+   1. Redistributions of source code must retain the above copyright
+   notice,this list of conditions, and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution, and in the same place
+   and form as other copyright, license and disclaimer information.
+
+   3. The end-user documentation included with the redistribution, if any,must
+   include the following acknowledgment: "This product includes
+   software developed by The XFree86 Project, Inc (http://www.xfree86.org/) and
+   its contributors", in the same place and form as other third-party
+   acknowledgments. Alternately, this acknowledgment may appear in the software
+   itself, in the same form and location as other such third-party
+   acknowledgments.
+
+    4. Except as contained in this notice, the name of The XFree86 Project,Inc
+    shall not be used in advertising or otherwise to promote the sale, use
+    or other dealings in this Software without prior written authorization from
+    The XFree86 Project, Inc.
+
+    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+    WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+    MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+    EVENT SHALL THE XFREE86 PROJECT, INC OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+    DIRECT, INDIRECT, INCIDENTAL,SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+    (INCLUDING, BUT NOT LIMITED TO,PROCUREMENT OF SUBSTITUTE GOODS OR
+    SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+    CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+    LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+    OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+    DAMAGE.  
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to X Window System 6.8.2, which is 
+included with JRE 7, JDK 7, and OpenJDK 7 on Linux and Solaris.
+
+--- begin of LICENSE ---
+
+          Licenses
+The X.Org Foundation March 2004
+
+1. Introduction
+
+The X.org Foundation X Window System distribution is a compilation of code and
+documentation from many sources. This document is intended primarily as a
+guide to the licenses used in the distribution: you must check each file
+and/or package for precise redistribution terms. None-the-less, this summary
+may be useful to many users. No software incorporating the XFree86 1.1 license
+has been incorporated.
+
+This document is based on the compilation from XFree86.
+
+2. XFree86 License
+
+XFree86 code without an explicit copyright is covered by the following
+copyright/license:
+
+Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the XFree86 Project shall not
+be used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from the XFree86 Project.
+
+3. Other Licenses
+
+Portions of code are covered by the following licenses/copyrights. See
+individual files for the copyright dates.
+
+3.1. X/MIT Copyrights
+
+3.1.1. X Consortium
+
+Copyright (C) <date> X Consortium
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE X
+CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the X Consortium shall not be
+used in advertising or otherwise to promote the sale, use or other dealings in
+this Software without prior written authorization from the X Consortium.
+
+X Window System is a trademark of X Consortium, Inc.
+
+3.1.2. The Open Group
+
+Copyright <date> The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that the
+above copyright notice appear in all copies and that both that copyright
+notice and this permission notice appear in supporting documentation.
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings in
+this Software without prior written authorization from The Open Group.  3.2.
+Berkeley-based copyrights:
+
+o
+3.2.1. General
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+   1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   3. The name of the author may not be used to endorse or promote products
+   derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.  3.2.2. UCB/LBL
+
+Copyright (c) 1993 The Regents of the University of California. All rights
+reserved.
+
+This software was developed by the Computer Systems Engineering group at
+Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and contributed to
+Berkeley.
+
+All advertising materials mentioning features or use of this software must
+display the following acknowledgement: This product includes software
+developed by the University of California, Lawrence Berkeley Laboratory.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+   1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   3. All advertising materials mentioning features or use of this software
+   must display the following acknowledgement: This product includes software
+   developed by the University of California, Berkeley and its contributors.
+
+   4. Neither the name of the University nor the names of its contributors may
+   be used to endorse or promote products derived from this software without
+   specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  3.2.3. The
+NetBSD Foundation, Inc.
+
+Copyright (c) 2003 The NetBSD Foundation, Inc. All rights reserved.
+
+This code is derived from software contributed to The NetBSD Foundation by Ben
+Collver <collver1@attbi.com>
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+   1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   3. All advertising materials mentioning features or use of this software
+   must display the following acknowledgement: This product includes software
+   developed by the NetBSD Foundation, Inc. and its contributors.
+
+   4. Neither the name of The NetBSD Foundation nor the names of its
+   contributors may be used to endorse or promote products derived from this
+   software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS ``AS
+IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  3.2.4. Theodore
+Ts'o.
+
+Copyright Theodore Ts'o, 1994, 1995, 1996, 1997, 1998, 1999. All rights
+reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+   1. Redistributions of source code must retain the above copyright notice,
+   and the entire permission notice in its entirety, including the disclaimer
+   of warranties.
+
+   2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   3. he name of the author may not be used to endorse or promote products
+   derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS FOR A PARTICULAR PURPOSE, ALL OF WHICH ARE HEREBY DISCLAIMED. IN NO
+EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF NOT ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.  3.2.5. Theo de Raadt and Damien Miller
+
+Copyright (c) 1995,1999 Theo de Raadt. All rights reserved. Copyright (c)
+2001-2002 Damien Miller. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+   1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.  3.2.6. Todd C. Miller
+
+Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
+
+Permission to use, copy, modify, and distribute this software for any purpose
+with or without fee is hereby granted, provided that the above copyright
+notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND TODD C. MILLER DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL TODD C. MILLER BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.  3.2.7. Thomas
+Winischhofer
+
+Copyright (C) 2001-2004 Thomas Winischhofer
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+   1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   3. The name of the author may not be used to endorse or promote products
+   derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.  3.3. NVIDIA Corp
+
+Copyright (c) 1996 NVIDIA, Corp. All rights reserved.
+
+NOTICE TO USER: The source code is copyrighted under U.S. and international
+laws. NVIDIA, Corp. of Sunnyvale, California owns the copyright and as design
+patents pending on the design and interface of the NV chips. Users and
+possessors of this source code are hereby granted a nonexclusive, royalty-free
+copyright and design patent license to use this code in individual and
+commercial software.
+
+Any use of this source code must include, in the user documentation and
+internal comments to the code, notices to the end user as follows:
+
+Copyright (c) 1996 NVIDIA, Corp. NVIDIA design patents pending in the U.S. and
+foreign countries.
+
+NVIDIA, CORP. MAKES NO REPRESENTATION ABOUT THE SUITABILITY OF THIS SOURCE
+CODE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED
+WARRANTY OF ANY KIND. NVIDIA, CORP. DISCLAIMS ALL WARRANTIES WITH REGARD TO
+THIS SOURCE CODE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL NVIDIA, CORP. BE LIABLE
+FOR ANY SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OR ANY
+DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOURCE CODE.  3.4. GLX Public
+License
+
+GLX PUBLIC LICENSE (Version 1.0 (2/11/99)) ("License")
+
+Subject to any third party claims, Silicon Graphics, Inc. ("SGI") hereby
+grants permission to Recipient (defined below), under Recipient's copyrights
+in the Original Software (defined below), to use, copy, modify, merge,
+publish, distribute, sublicense and/or sell copies of Subject Software
+(defined below), and to permit persons to whom the Subject Software is
+furnished in accordance with this License to do the same, subject to all of
+the following terms and conditions, which Recipient accepts by engaging in any
+such use, copying, modifying, merging, publishing, distributing, sublicensing
+or selling:
+
+1. Definitions.
+
+    (a) "Original Software" means source code of computer software code which
+    is described in Exhibit A as Original Software.
+
+    (b) "Modifications" means any addition to or deletion from the substance
+    or structure of either the Original Software or any previous
+    Modifications. When Subject Software is released as a series of files, a
+    Modification means (i) any addition to or deletion from the contents of a
+    file containing Original Software or previous Modifications and (ii) any
+    new file that contains any part of the Original Code or previous
+    Modifications.
+
+    (c) "Subject Software" means the Original Software or Modifications or the
+    combination of the Original Software and Modifications, or portions of any
+    of the foregoing.
+
+    (d) "Recipient" means an individual or a legal entity exercising rights
+    under, and complying with all of the terms of, this License. For legal
+    entities, "Recipient" includes any entity which controls, is controlled
+    by, or is under common control with Recipient. For purposes of this
+    definition, "control" of an entity means (a) the power, direct or
+    indirect, to direct or manage such entity, or (b) ownership of fifty
+    percent (50%) or more of the outstanding shares or beneficial ownership of
+    such entity.
+
+2. Redistribution of Source Code Subject to These Terms. Redistributions of
+Subject Software in source code form must retain the notice set forth in
+Exhibit A, below, in every file. A copy of this License must be included in
+any documentation for such Subject Software where the recipients' rights
+relating to Subject Software are described. Recipient may distribute the
+source code version of Subject Software under a license of Recipient's choice,
+which may contain terms different from this License, provided that (i)
+Recipient is in compliance with the terms of this License, and (ii) the
+license terms include this Section 2 and Sections 3, 4, 7, 8, 10, 12 and 13 of
+this License, which terms may not be modified or superseded by any other terms
+of such license. If Recipient distributes the source code version under a
+different license Recipient must make it absolutely clear that any terms which
+differ from this License are offered by Recipient alone, not by SGI. Recipient
+hereby agrees to indemnify SGI for any liability incurred by SGI as a result
+of any such terms Recipient offers.
+
+3. Redistribution in Executable Form. The notice set forth in Exhibit A must
+be conspicuously included in any notice in an executable version of Subject
+Software, related documentation or collateral in which Recipient describes the
+user's rights relating to the Subject Software. Recipient may distribute the
+executable version of Subject Software under a license of Recipient's choice,
+which may contain terms different from this License, provided that (i)
+Recipient is in compliance with the terms of this License, and (ii) the
+license terms include this Section 3 and Sections 4, 7, 8, 10, 12 and 13 of
+this License, which terms may not be modified or superseded by any other terms
+of such license. If Recipient distributes the executable version under a
+different license Recipient must make it absolutely clear that any terms which
+differ from this License are offered by Recipient alone, not by SGI. Recipient
+hereby agrees to indemnify SGI for any liability incurred by SGI as a result
+of any such terms Recipient offers.
+
+4. Termination. This License and the rights granted hereunder will terminate
+automatically if Recipient fails to comply with terms herein and fails to cure
+such breach within 30 days of the breach. Any sublicense to the Subject
+Software which is properly granted shall survive any termination of this
+License absent termination by the terms of such sublicense. Provisions which,
+by their nature, must remain in effect beyond the termination of this License
+shall survive.
+
+5. No Trademark Rights. This License does not grant any rights to use any
+trade name, trademark or service mark whatsoever. No trade name, trademark or
+service mark of SGI may be used to endorse or promote products derived from
+the Subject Software without prior written permission of SGI.
+
+6. No Other Rights. This License does not grant any rights with respect to the
+OpenGL API or to any software or hardware implementation thereof or to any
+other software whatsoever, nor shall any other rights or licenses not
+expressly granted hereunder arise by implication, estoppel or otherwise with
+respect to the Subject Software. Title to and ownership of the Original
+Software at all times remains with SGI. All rights in the Original Software
+not expressly granted under this License are reserved.
+
+7. Compliance with Laws; Non-Infringement. Recipient shall comply with all
+applicable laws and regulations in connection with use and distribution of the
+Subject Software, including but not limited to, all export and import control
+laws and regulations of the U.S. government and other countries. Recipient may
+not distribute Subject Software that (i) in any way infringes (directly or
+contributorily) the rights (including patent, copyright, trade secret,
+trademark or other intellectual property rights of any kind) of any other
+person or entity or (ii) breaches any representation or warranty, express,
+implied or statutory, which under any applicable law it might be deemed to
+have been distributed.
+
+8. Claims of Infringement. If Recipient at any time has knowledge of any one
+or more third party claims that reproduction, modification, use, distribution,
+import or sale of Subject Software (including particular functionality or code
+incorporated in Subject Software) infringes the third party's intellectual
+property rights, Recipient must place in a well-identified web page bearing
+the title "LEGAL" a description of each such claim and a description of the
+party making each such claim in sufficient detail that a user of the Subject
+Software will know whom to contact regarding the claim. Also, upon gaining
+such knowledge of any such claim, Recipient must conspicuously include the URL
+for such web page in the Exhibit A notice required under Sections 2 and 3,
+above, and in the text of any related documentation, license agreement or
+collateral in which Recipient describes end user's rights relating to the
+Subject Software. If Recipient obtains such knowledge after it makes Subject
+Software available to any other person or entity, Recipient shall take other
+steps (such as notifying appropriate mailing lists or newsgroups) reasonably
+calculated to inform those who received the Subject Software that new
+knowledge has been obtained.
+
+9. DISCLAIMER OF WARRANTY. SUBJECT SOFTWARE IS PROVIDED ON AN "AS IS" BASIS,
+WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
+LIMITATION, WARRANTIES THAT THE SUBJECT SOFTWARE IS FREE OF DEFECTS,
+MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON- INFRINGING. SGI ASSUMES NO
+RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE. SHOULD ANY SOFTWARE
+PROVE DEFECTIVE IN ANY RESPECT, SGI ASSUMES NO COST OR LIABILITY FOR ANY
+SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN
+ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY SUBJECT SOFTWARE IS AUTHORIZED
+HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
+
+10. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY,
+WHETHER TORT (INCLUDING, WITHOUT LIMITATION, NEGLIGENCE OR STRICT LIABILITY),
+CONTRACT, OR OTHERWISE, SHALL SGI OR ANY SGI LICENSOR BE LIABLE FOR ANY
+DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
+CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK
+STOPPAGE, LOSS OF DATA, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
+COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF
+THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY
+TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SGI's NEGLIGENCE TO
+THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT
+ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
+THAT EXCLUSION AND LIMITATION MAY NOT APPLY TO RECIPIENT.
+
+11. Indemnity. Recipient shall be solely responsible for damages arising,
+directly or indirectly, out of its utilization of rights under this License.
+Recipient will defend, indemnify and hold harmless Silicon Graphics, Inc. from
+and against any loss, liability, damages, costs or expenses (including the
+payment of reasonable attorneys fees) arising out of Recipient's use,
+modification, reproduction and distribution of the Subject Software or out of
+any representation or warranty made by Recipient.
+
+12. U.S. Government End Users. The Subject Software is a "commercial item"
+consisting of "commercial computer software" as such terms are defined in
+title 48 of the Code of Federal Regulations and all U.S. Government End Users
+acquire only the rights set forth in this License and are subject to the terms
+of this License.
+
+13. Miscellaneous. This License represents the complete agreement concerning
+subject matter hereof. If any provision of this License is held to be
+unenforceable, such provision shall be reformed so as to achieve as nearly as
+possible the same economic effect as the original provision and the remainder
+of this License will remain in effect. This License shall be governed by and
+construed in accordance with the laws of the United States and the State of
+California as applied to agreements entered into and to be performed entirely
+within California between California residents. Any litigation relating to
+this License shall be subject to the exclusive jurisdiction of the Federal
+Courts of the Northern District of California (or, absent subject matter
+jurisdiction in such courts, the courts of the State of California), with
+venue lying exclusively in Santa Clara County, California, with the losing
+party responsible for costs, including without limitation, court costs and
+reasonable attorneys fees and expenses. The application of the United Nations
+Convention on Contracts for the International Sale of Goods is expressly
+excluded. Any law or regulation which provides that the language of a contract
+shall be construed against the drafter shall not apply to this License.
+
+Exhibit A
+
+The contents of this file are subject to Sections 2, 3, 4, 7, 8, 10, 12 and 13
+of the GLX Public License Version 1.0 (the "License"). You may not use this
+file except in compliance with those sections of the License. You may obtain a
+copy of the License at Silicon Graphics, Inc., attn: Legal Services, 2011 N.
+Shoreline Blvd., Mountain View, CA 94043 or at
+http://www.sgi.com/software/opensource/glx/license.html.
+
+Software distributed under the License is distributed on an "AS IS" basis. ALL
+WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED
+WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE OR OF NON-
+INFRINGEMENT. See the License for the specific language governing rights and
+limitations under the License.
+
+The Original Software is GLX version 1.2 source code, released February, 1999.
+The developer of the Original Software is Silicon Graphics, Inc. Those
+portions of the Subject Software created by Silicon Graphics, Inc. are
+Copyright (c) 1991-9 Silicon Graphics, Inc. All Rights Reserved.  3.5. CID
+Font Code Public License
+
+CID FONT CODE PUBLIC LICENSE (Version 1.0 (3/31/99))("License")
+
+Subject to any applicable third party claims, Silicon Graphics, Inc. ("SGI")
+hereby grants permission to Recipient (defined below), under SGI's copyrights
+in the Original Software (defined below), to use, copy, modify, merge,
+publish, distribute, sublicense and/or sell copies of Subject Software
+(defined below) in both source code and executable form, and to permit persons
+to whom the Subject Software is furnished in accordance with this License to
+do the same, subject to all of the following terms and conditions, which
+Recipient accepts by engaging in any such use, copying, modifying, merging,
+publication, distributing, sublicensing or selling:
+
+1. Definitions.
+
+    a. "Original Software" means source code of computer software code that is
+    described in Exhibit A as Original Software.
+
+    b. "Modifications" means any addition to or deletion from the substance or
+    structure of either the Original Software or any previous Modifications.
+    When Subject Software is released as a series of files, a Modification
+    means (i) any addition to or deletion from the contents of a file
+    containing Original Software or previous Modifications and (ii) any new
+    file that contains any part of the Original Code or previous
+    Modifications.
+
+    c. "Subject Software" means the Original Software or Modifications or the
+    combination of the Original Software and Modifications, or portions of any
+    of the foregoing.
+
+    d. "Recipient" means an individual or a legal entity exercising rights
+    under the terms of this License. For legal entities, "Recipient" includes
+    any entity that controls, is controlled by, or is under common control
+    with Recipient. For purposes of this definition, "control" of an entity
+    means (i) the power, direct or indirect, to direct or manage such entity,
+    or (ii) ownership of fifty percent (50%) or more of the outstanding shares
+    or beneficial ownership of such entity.
+
+    e. "Required Notice" means the notice set forth in Exhibit A to this
+    License.
+
+    f. "Accompanying Technology" means any software or other technology that
+    is not a Modification and that is distributed or made publicly available
+    by Recipient with the Subject Software. Separate software files that do
+    not contain any Original Software or any previous Modification shall not
+    be deemed a Modification, even if such software files are aggregated as
+    part of a product, or in any medium of storage, with any file that does
+    contain Original Software or any previous Modification.
+
+2. License Terms. All distribution of the Subject Software must be made
+subject to the terms of this License. A copy of this License and the Required
+Notice must be included in any documentation for Subject Software where
+Recipient's rights relating to Subject Software and/or any Accompanying
+Technology are described. Distributions of Subject Software in source code
+form must also include the Required Notice in every file distributed. In
+addition, a ReadMe file entitled "Important Legal Notice" must be distributed
+with each distribution of one or more files that incorporate Subject Software.
+That file must be included with distributions made in both source code and
+executable form. A copy of the License and the Required Notice must be
+included in that file. Recipient may distribute Accompanying Technology under
+a license of Recipient's choice, which may contain terms different from this
+License, provided that (i) Recipient is in compliance with the terms of this
+License, (ii) such other license terms do not modify or supersede the terms of
+this License as applicable to the Subject Software, (iii) Recipient hereby
+indemnifies SGI for any liability incurred by SGI as a result of the
+distribution of Accompanying Technology or the use of other license terms.
+
+3. Termination. This License and the rights granted hereunder will terminate
+automatically if Recipient fails to comply with terms herein and fails to cure
+such breach within 30 days of the breach. Any sublicense to the Subject
+Software that is properly granted shall survive any termination of this
+License absent termination by the terms of such sublicense. Provisions which,
+by their nature, must remain in effect beyond the termination of this License
+shall survive.
+
+4. Trademark Rights. This License does not grant any rights to use any trade
+name, trademark or service mark whatsoever. No trade name, trademark or
+service mark of SGI may be used to endorse or promote products derived from or
+incorporating any Subject Software without prior written permission of SGI.
+
+5. No Other Rights. No rights or licenses not expressly granted hereunder
+shall arise by implication, estoppel or otherwise. Title to and ownership of
+the Original Software at all times remains with SGI. All rights in the
+Original Software not expressly granted under this License are reserved.
+
+6. Compliance with Laws; Non-Infringement. Recipient shall comply with all
+applicable laws and regulations in connection with use and distribution of the
+Subject Software, including but not limited to, all export and import control
+laws and regulations of the U.S. government and other countries. Recipient may
+not distribute Subject Software that (i) in any way infringes (directly or
+contributorily) the rights (including patent, copyright, trade secret,
+trademark or other intellectual property rights of any kind) of any other
+person or entity, or (ii) breaches any representation or warranty, express,
+implied or statutory, which under any applicable law it might be deemed to
+have been distributed.
+
+7. Claims of Infringement. If Recipient at any time has knowledge of any one
+or more third party claims that reproduction, modification, use, distribution,
+import or sale of Subject Software (including particular functionality or code
+incorporated in Subject Software) infringes the third party's intellectual
+property rights, Recipient must place in a well-identified web page bearing
+the title "LEGAL" a description of each such claim and a description of the
+party making each such claim in sufficient detail that a user of the Subject
+Software will know whom to contact regarding the claim. Also, upon gaining
+such knowledge of any such claim, Recipient must conspicuously include the URL
+for such web page in the Required Notice, and in the text of any related
+documentation, license agreement or collateral in which Recipient describes
+end user's rights relating to the Subject Software. If Recipient obtains such
+knowledge after it makes Subject Software available to any other person or
+entity, Recipient shall take other steps (such as notifying appropriate
+mailing lists or newsgroups) reasonably calculated to provide such knowledge
+to those who received the Subject Software.
+
+8. DISCLAIMER OF WARRANTY. SUBJECT SOFTWARE IS PROVIDED ON AN "AS IS" BASIS,
+WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
+LIMITATION, WARRANTIES THAT THE SUBJECT SOFTWARE IS FREE OF DEFECTS,
+MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. SGI ASSUMES NO
+RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE. SHOULD ANY SOFTWARE
+PROVE DEFECTIVE IN ANY RESPECT, SGI ASSUMES NO COST OR LIABILITY FOR ANY
+SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN
+ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY SUBJECT SOFTWARE IS AUTHORIZED
+HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
+
+9. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY,
+WHETHER TORT (INCLUDING, WITHOUT LIMITATION, NEGLIGENCE OR STRICT LIABILITY),
+CONTRACT, OR OTHERWISE, SHALL SGI OR ANY SGI LICENSOR BE LIABLE FOR ANY CLAIM,
+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SUBJECT SOFTWARE OR
+THE USE OR OTHER DEALINGS IN THE SUBJECT SOFTWARE. SOME JURISDICTIONS DO NOT
+ALLOW THE EXCLUSION OR LIMITATION OF CERTAIN DAMAGES, SO THIS EXCLUSION AND
+LIMITATION MAY NOT APPLY TO RECIPIENT TO THE EXTENT SO DISALLOWED.
+
+10. Indemnity. Recipient shall be solely responsible for damages arising,
+directly or indirectly, out of its utilization of rights under this License.
+Recipient will defend, indemnify and hold SGI and its successors and assigns
+harmless from and against any loss, liability, damages, costs or expenses
+(including the payment of reasonable attorneys fees) arising out of
+(Recipient's use, modification, reproduction and distribution of the Subject
+Software or out of any representation or warranty made by Recipient.
+
+11. U.S. Government End Users. The Subject Software is a "commercial item"
+consisting of "commercial computer software" as such terms are defined in
+title 48 of the Code of Federal Regulations and all U.S. Government End Users
+acquire only the rights set forth in this License and are subject to the terms
+of this License.
+
+12. Miscellaneous. This License represents the complete agreement concerning
+subject matter hereof. If any provision of this License is held to be
+unenforceable by any judicial or administrative authority having proper
+jurisdiction with respect thereto, such provision shall be reformed so as to
+achieve as nearly as possible the same economic effect as the original
+provision and the remainder of this License will remain in effect. This
+License shall be governed by and construed in accordance with the laws of the
+United States and the State of California as applied to agreements entered
+into and to be performed entirely within California between California
+residents. Any litigation relating to this License shall be subject to the
+exclusive jurisdiction of the Federal Courts of the Northern District of
+California (or, absent subject matter jurisdiction in such courts, the courts
+of the State of California), with venue lying exclusively in Santa Clara
+County, California, with the losing party responsible for costs, including
+without limitation, court costs and reasonable attorneys fees and expenses.
+The application of the United Nations Convention on Contracts for the
+International Sale of Goods is expressly excluded. Any law or regulation that
+provides that the language of a contract shall be construed against the
+drafter shall not apply to this License.
+
+Exhibit A
+
+Copyright (c) 1994-1999 Silicon Graphics, Inc.
+
+The contents of this file are subject to the CID Font Code Public License
+Version 1.0 (the "License"). You may not use this file except in compliance
+with the License. You may obtain a copy of the License at Silicon Graphics,
+Inc., attn: Legal Services, 2011 N. Shoreline Blvd., Mountain View, CA 94043
+or at http://www.sgi.com/software/opensource/cid/license.html
+
+Software distributed under the License is distributed on an "AS IS" basis. ALL
+WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED
+WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE OR OF
+NON-INFRINGEMENT. See the License for the specific language governing rights
+and limitations under the License.
+
+The Original Software (as defined in the License) is CID font code that was
+developed by Silicon Graphics, Inc. Those portions of the Subject Software (as
+defined in the License) that were created by Silicon Graphics, Inc. are
+Copyright (c) 1994-1999 Silicon Graphics, Inc. All Rights Reserved.
+
+[NOTE: When using this text in connection with Subject Software delivered
+solely in object code form, Recipient may replace the words "this file" with
+"this software" in both the first and second sentences.] 3.6. Bitstream Vera
+Fonts Copyright
+
+The fonts have a generous copyright, allowing derivative works (as long as
+"Bitstream" or "Vera" are not in the names), and full redistribution (so long
+as they are not *sold* by themselves). They can be be bundled, redistributed
+and sold with any software.
+
+The fonts are distributed under the following copyright:
+
+Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is a
+trademark of Bitstream, Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of the fonts accompanying this license ("Fonts") and associated documentation
+files (the "Font Software"), to reproduce and distribute the Font Software,
+including without limitation the rights to use, copy, merge, publish,
+distribute, and/or sell copies of the Font Software, and to permit persons to
+whom the Font Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright and trademark notices and this permission notice shall be
+included in all copies of one or more of the Font Software typefaces.
+
+The Font Software may be modified, altered, or added to, and in particular the
+designs of glyphs or characters in the Fonts may be modified and additional
+glyphs or characters may be added to the Fonts, only if the fonts are renamed
+to names not containing either the words "Bitstream" or the word "Vera".
+
+This License becomes null and void to the extent applicable to Fonts or Font
+Software that has been modified and is distributed under the "Bitstream Vera"
+names.
+
+The Font Software may be sold as part of a larger software package but no copy
+of one or more of the Font Software typefaces may be sold by itself.
+
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
+TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME FOUNDATION
+BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL,
+SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO
+USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
+
+Except as contained in this notice, the names of Gnome, the Gnome Foundation,
+and Bitstream Inc., shall not be used in advertising or otherwise to promote
+the sale, use or other dealings in this Font Software without prior written
+authorization from the Gnome Foundation or Bitstream Inc., respectively. For
+further information, contact: fonts at gnome dot org.  3.7. Bigelow & Holmes
+Inc and URW++ GmbH Luxi font license
+
+Luxi fonts copyright (c) 2001 by Bigelow & Holmes Inc. Luxi font instruction
+code copyright (c) 2001 by URW++ GmbH. All Rights Reserved. Luxi is a
+registered trademark of Bigelow & Holmes Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of these Fonts and associated documentation files (the "Font Software"), to
+deal in the Font Software, including without limitation the rights to use,
+copy, merge, publish, distribute, sublicense, and/or sell copies of the Font
+Software, and to permit persons to whom the Font Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright and trademark notices and this permission notice shall be
+included in all copies of one or more of the Font Software.
+
+The Font Software may not be modified, altered, or added to, and in particular
+the designs of glyphs or characters in the Fonts may not be modified nor may
+additional glyphs or characters be added to the Fonts. This License becomes
+null and void when the Fonts or Font Software have been modified.
+
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
+TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BIGELOW & HOLMES INC. OR URW++
+GMBH. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY
+GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR
+INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT
+SOFTWARE.
+
+Except as contained in this notice, the names of Bigelow & Holmes Inc. and
+URW++ GmbH. shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in this Font Software without prior written
+authorization from Bigelow & Holmes Inc. and URW++ GmbH.
+
+For further information, contact:
+
+info@urwpp.de or design@bigelowandholmes.com
+
+
+--- end of LICENSE ---
+
+-------------------------------------------------------------------------------
+
+%% This notice is provided with respect to zlib v1.2.3, which is included 
+with JRE 7, JDK 7, and OpenJDK 7
+
+--- begin of LICENSE ---
+
+  version 1.2.3, July 18th, 2005
+
+  Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler
 
   This software is provided 'as-is', without any express or implied
   warranty.  In no event will the authors be held liable for any damages
@@ -93,686 +3159,23 @@
   Jean-loup Gailly        Mark Adler
   jloup@gzip.org          madler@alumni.caltech.edu
 
-If you use the zlib library in a product, we would appreciate *not*
-receiving lengthy legal documents to sign. The sources are provided
-for free but without warranty of any kind.  The library has been
-entirely written by Jean-loup Gailly and Mark Adler; it does not
-include third-party code.
+--- end of LICENSE ---
 
-If you redistribute modified sources, we would appreciate that you include
-in the file ChangeLog history information documenting your changes.
+-------------------------------------------------------------------------------
 
-%% This notice is provided with respect to W3C (DTD for XML Signatures), which may be included with this software: 
-W3C® SOFTWARE NOTICE AND LICENSE
-Copyright © 1994-2002 World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/
-This W3C work (including software, documents, or other related items) is being provided by the copyright holders under the following license. By obtaining, using and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions:
-Permission to use, copy, modify, and distribute this software and its documentation, with or without modification,  for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the software and documentation or portions thereof, including modifications, that you make:
-1.The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. 
-2.Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, a short notice of the following form (hypertext is preferred, text is permitted) should be used within the body of any redistributed or derivative code: "Copyright © [$date-of-software] World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/" 
-3.Notice of any changes or modifications to the W3C files, including the date changes were made. (We recommend you provide URIs to the location from which the code is derived.) 
-THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
-The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the software without specific, written prior permission. Title to copyright in this software and any associated documentation will at all times remain with copyright holders.
-____________________________________
-This formulation of W3C's notice and license became active on August 14 1998 so as to improve compatibility with GPL. This version ensures that W3C software licensing terms are no more restrictive than GPL and consequently W3C software may be distributed in GPL packages. See the older formulation for the policy prior to this date. Please see our Copyright FAQ for common questions about using materials from our site, including specific terms and conditions for packages like libwww, Amaya, and Jigsaw. Other questions about this notice can be directed to site-policy@w3.org.

-%% This notice is provided with respect to jscheme.jar, which may be included with this software: 
-Software License Agreement
-Copyright © 1998-2002 by Peter Norvig. 
-Permission is granted to anyone to use this software, in source or object code form, on any computer system, and to modify, compile, decompile, run, and redistribute it to anyone else, subject to the following restrictions: 
-1.The author makes no warranty of any kind, either expressed or implied, about the suitability of this software for any purpose.
-2.The author accepts no liability of any kind for damages or other consequences of the use of this software, even if they arise from defects in the software.
-3.The origin of this software must not be misrepresented, either by explicit claim or by omission.
-4.Altered versions must be plainly marked as such, and must not be misrepresented as being the original software. Altered versions may be distributed in packages under other licenses (such as the GNU license). 
-If you find this software useful, it would be nice if you let me (peter@norvig.com) know about it, and nicer still if you send me modifications that you are willing to share. However, you are not required to do so.
+%% This notice is provided with respect to the following which is 
+included with JRE 7, JDK 7, and OpenJDK 7, except where noted:
 
+  Apache Derby 10.8.1.2        [included with JDK 7 only]
+  Apache Jakarta BCEL 5.2 
+  Apache Jakarta Regexp 1.4 
+  Apache Santuario XMLSec-Java 1.4.2
+  Apache Xalan-Java 2.7.1 
+  Apache Xerces2 Java 2.10.0 
+  Apache XML Resolver 1.1 
 
-%% This notice is provided with respect to PC/SC Lite for Suse Linux v. 1.1.1, which may be included with this software: 
 
-Copyright (c) 1999-2004 David Corcoran 
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-3. The name of the author may not be used to endorse or promote products
-   derived from this software without specific prior written permission.
-
-Changes to this license can be made only by the copyright author with 
-explicit written consent.
-
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-%% This notice is provided with respect to IAIK PKCS Wrapper, which may be included with this software: 
-
-Copyright (c) 2002 Graz University of Technology. All rights reserved.
-Redistribution and use in source and binary forms, with or without modification,are permitted provided that the following conditions are met:
-
-
-1. Redistributions of source code must retain the above copyright notice, this   list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright notice,   this list of conditions and the following disclaimer in the documentation   and/or other materials provided with the distribution.
-
-3. The end-user documentation included with the redistribution, if any, must   include the following acknowledgment:
-
-   "This product includes software developed by IAIK of Graz University of    Technology."
-
-   Alternately, this acknowledgment may appear in the software itself, if and   wherever such third-party acknowledgments normally appear.
-
-4. The names "Graz University of Technology" and "IAIK of Graz University of   Technology" must not be used to endorse or promote products derived from this   software without prior written permission.
-
-5. Products derived from this software may not be called "IAIK PKCS Wrapper",   nor may "IAIK" appear in their name, without prior written permission of   Graz University of Technology.
-
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
-WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE LICENSOR BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
-OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGE.
-
-%% This notice is provided with respect to Document Object Model (DOM) v. Level 3, which may be included with this software: 
-
-W3Cýý SOFTWARE NOTICE AND LICENSE
-
-http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-
-This work (and included software, documentation such as READMEs, or other related items) is being
-provided by the copyright holders under the following license. By obtaining, using and/or copying this work, you
-(the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
-
-Permission to copy, modify, and distribute this software and its documentation, with or without modification, for
-any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies
-of the software and documentation or portions thereof, including modifications:
-   1.The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. 
-   2.Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the
-     W3C Software Short Notice should be included (hypertext is preferred, text is permitted) within the body
-     of any redistributed or derivative code. 
-   3.Notice of any changes or modifications to the files, including the date changes were made. (We
-     recommend you provide URIs to the location from which the code is derived.) 
-THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKENO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO,
-WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THEUSE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS,COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
-COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL ORCONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
-The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the
-software without specific, written prior permission. Title to copyright in this software and any associated
-documentation will at all times remain with copyright holders.
-
-____________________________________
-
-This formulation of W3C's notice and license became active on December 31 2002. This version removes the
-copyright ownership notice such that this license can be used with materials other than those owned by the
-W3C, reflects that ERCIM is now a host of the W3C, includes references to this specific dated version of the
-license, and removes the ambiguous grant of "use". Otherwise, this version is the same as the previous
-version and is written so as to preserve the Free Software Foundation's assessment of GPL compatibility and
-OSI's certification under the Open Source Definition. Please see our Copyright FAQ for common questions
-about using materials from our site, including specific terms and conditions for packages like libwww, Amaya,
-and Jigsaw. Other questions about this notice can be directed to 
-site-policy@w3.org.
-
-%% This notice is provided with respect to Xalan, Xerces, which may be included with this software: 
-
-/*
- * The Apache Software License, Version 1.1
- *
- *
- * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights  * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.  *
- * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * 3. The end-user documentation included with the redistribution,
- *    if any, must include the following acknowledgment:  
- *       "This product includes software developed by the
- *        Apache Software Foundation (http://www.apache.org/)."
- *    Alternately, this acknowledgment may appear in the software itself, *    if and wherever such third-party acknowledgments normally appear. *
- * 4. The names "Xerces" and "Apache Software Foundation" must
- *    not be used to endorse or promote products derived from this
- *    software without prior written permission. For written 
- *    permission, please contact apache@apache.org.
- *
- * 5. Products derived from this software may not be called "Apache",
- *    nor may "Apache" appear in their name, without prior written
- *    permission of the Apache Software Foundation.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ==================================================================== *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation and was
- * originally based on software copyright (c) 1999, International
- * Business Machines, Inc., http://www.ibm.com.  For more
- * information on the Apache Software Foundation, please see
- * 
-
-%% This notice is provided with respect to JavaScript, which may be included with this software: 
-
-AMENDMENTS 
-The Netscape Public License Version 1.1 ("NPL") consists of the Mozilla Public License Version 1.1 with the following Amendments, including Exhibit A-Netscape Public License.  Files identified with "Exhibit A-Netscape Public License" are governed by the Netscape Public License Version 1.1. 
-Additional Terms applicable to the Netscape Public License. 
-I. Effect. 
-These additional terms described in this Netscape Public License -- Amendments shall apply to the Mozilla Communicator client code and to all Covered Code under this License. 
-II. ''Netscape's Branded Code'' means Covered Code that Netscape distributes and/or permits others to distribute under one or more trademark(s) which are controlled by Netscape but which are not licensed for use under this License. 
-III. Netscape and logo. 
-This License does not grant any rights to use the trademarks "Netscape'', the "Netscape N and horizon'' logo or the "Netscape lighthouse" logo, "Netcenter", "Gecko", "Java" or "JavaScript", "Smart Browsing" even if such marks are included in the Original Code or Modifications. 
-IV. Inability to Comply Due to Contractual Obligation. 
-Prior to licensing the Original Code under this License, Netscape has licensed third party code for use in Netscape's Branded Code. To the extent that Netscape is limited contractually from making such third party code available under this License, Netscape may choose to reintegrate such code into Covered Code without being required to distribute such code in Source Code form, even if such code would otherwise be considered ''Modifications'' under this License. 
-V. Use of Modifications and Covered Code by Initial Developer. 
-V.1. In General. 
-The obligations of Section 3 apply to Netscape, except to the extent specified in this Amendment, Section V.2 and V.3. 
-V.2. Other Products. 
-Netscape may include Covered Code in products other than the Netscape's Branded Code which are released by Netscape during the two (2) years following the release date of the Original Code, without such additional products becoming subject to the terms of this License, and may license such additional products on different terms from those contained in this License. 
-V.3. Alternative Licensing. 
-Netscape may license the Source Code of Netscape's Branded Code, including Modifications incorporated therein, without such Netscape Branded Code becoming subject to the terms of this License, and may license such Netscape Branded Code on different terms from those contained in this License. 

-VI. Litigation. 
-Notwithstanding the limitations of Section 11 above, the provisions regarding litigation in Section 11(a), (b) and (c) of the License shall apply to all disputes relating to this License.
-
-EXHIBIT A-Netscape Public License. 

-''The contents of this file are subject to the Netscape Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/NPL/ 
-Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. 
-The Original Code is Mozilla Communicator client code, released March 31, 1998. 
-The Initial Developer of the Original Code is Netscape Communications Corporation. Portions created by Netscape are Copyright (C) 1998-1999 Netscape Communications Corporation. All Rights Reserved. 
-Contributor(s): ______________________________________.

-Alternatively, the contents of this file may be used under the terms of the _____ license (the  "[___] License"), in which case the provisions of [______] License are applicable  instead of those above.  If you wish to allow use of your version of this file only under the terms of the [____] License and not to allow others to use your version of this file under the NPL, indicate your decision by deleting  the provisions above and replace  them with the notice and other provisions required by the [___] License.  If you do not delete the provisions above, a recipient may use your version of this file under either the NPL or the [___] License."
-
-MOZILLA PUBLIC LICENSE 
-Version 1.1 
-
-1. Definitions. 
-1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party. 
-1.1. ''Contributor'' means each entity that creates or contributes to the creation of Modifications. 
-1.2. ''Contributor Version'' means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. 
-1.3. ''Covered Code'' means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. 
-1.4. ''Electronic Distribution Mechanism'' means a mechanism generally accepted in the software development community for the electronic transfer of data. 
-1.5. ''Executable'' means Covered Code in any form other than Source Code. 
-1.6. ''Initial Developer'' means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. 
-1.7. ''Larger Work'' means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. 
-1.8. ''License'' means this document. 
-1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. 
-1.9. ''Modifications'' means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: 
-A. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. 
-B. Any new file that contains any part of the Original Code or previous Modifications. 

-1.10. ''Original Code'' means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. 
-1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation,  method, process, and apparatus claims, in any patent Licensable by grantor. 
-1.11. ''Source Code'' means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. 
-1.12. "You'' (or "Your")  means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You'' includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control'' means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.
-2. Source Code License. 
-2.1. The Initial Developer Grant. 
-The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims: 
-(a)  under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and 
-(b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof). 

-(c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License. 
-(d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code;  or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices. 

-2.2. Contributor Grant. 
-Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license 

-(a)  under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and 
-(b) under Patent Claims infringed by the making, using, or selling of  Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of  Modifications made by that Contributor with its Contributor Version (or portions of such combination). 
-(c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code. 
-(d)    Notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2)  separate from the Contributor Version;  3)  for infringements caused by: i) third party modifications of Contributor Version or ii)  the combination of Modifications made by that Contributor with other software  (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor.
-
-3. Distribution Obligations. 
-3.1. Application of License. 
-The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5. 
-3.2. Availability of Source Code. 
-Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party. 
-3.3. Description of Modifications. 
-You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code. 
-3.4. Intellectual Property Matters 
-(a) Third Party Claims. 
-If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained. 
-(b) Contributor APIs. 
-If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file. 

-          (c)    Representations. 
-Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License.
-
-3.5. Required Notices. 
-You must duplicate the notice in Exhibit A in each file of the Source Code.  If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice.  If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A.  You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code.  You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer. 
-3.6. Distribution of Executable Versions. 
-You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer. 
-3.7. Larger Works. 
-You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code.
-4. Inability to Comply Due to Statute or Regulation. 
-If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it.
-5. Application of this License. 
-This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code.
-6. Versions of the License. 
-6.1. New Versions. 
-Netscape Communications Corporation (''Netscape'') may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. 
-6.2. Effect of New Versions. 
-Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Netscape. No one other than Netscape has the right to modify the terms applicable to Covered Code created under this License. 
-6.3. Derivative Works. 
-If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must (a) rename Your license so that the phrases ''Mozilla'', ''MOZILLAPL'', ''MOZPL'', ''Netscape'', "MPL", ''NPL'' or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.)
-7. DISCLAIMER OF WARRANTY. 
-COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
-8. TERMINATION. 
-8.1.  This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive. 
-8.2.  If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant")  alleging that: 
-(a)  such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i)  agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant.  If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above. 
-(b)  any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant. 
-8.3.  If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license. 
-8.4.  In the event of termination under Sections 8.1 or 8.2 above,  all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination.
-9. LIMITATION OF LIABILITY. 
-UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-10. U.S. GOVERNMENT END USERS. 
-The Covered Code is a ''commercial item,'' as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of ''commercial computer software'' and ''commercial computer software documentation,'' as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein.
-11. MISCELLANEOUS. 
-This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License.
-12. RESPONSIBILITY FOR CLAIMS. 
-As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.
-13. MULTIPLE-LICENSED CODE. 
-Initial Developer may designate portions of the Covered Code as "Multiple-Licensed".  "Multiple-Licensed" means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the NPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A.
-
-EXHIBIT A -Mozilla Public License. 
-``The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at 
-http://www.mozilla.org/MPL/ 
-Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 
-ANY KIND, either express or implied. See the License for the specific language governing rights and 
-limitations under the License. 
-The Original Code is ______________________________________. 
-The Initial Developer of the Original Code is ________________________. Portions created by 
- ______________________ are Copyright (C) ______ _______________________. All Rights 
-Reserved. 
-Contributor(s): ______________________________________. 
-Alternatively, the contents of this file may be used under the terms of the _____ license (the  "[___] License"), in which case the provisions of [______] License are applicable  instead of those above.  If you wish to allow use of your version of this file only under the terms of the [____] License and not to allow others to use your version of this file under the MPL, indicate your decision by deleting  the provisions above and replace  them with the notice and other provisions required by the [___] License.  If you do not delete the provisions above, a recipient may use your version of this file under either the MPL or the [___] License." 
-[NOTE: The text of this Exhibit A may differ slightly from the text of the notices in the Source Code files of the Original Code. You should use the text of this Exhibit A rather than the text found in the Original Code Source Code for Your Modifications.] 
-
-%% This notice is provided with respect to Mesa 3-D graphics library v. 5, which may be included with this software: 
-
-Copyright (c) 2007 The Khronos Group Inc. 
-
-Permission is hereby granted, free of charge, to any person obtaining a 
-copy of this software and/or associated documentation files (the 
-"Materials"), to deal in the Materials without restriction, including 
-without limitation the rights to use, copy, modify, merge, publish, 
-distribute, sublicense, and/or sell copies of the Materials, and to 
-permit persons to whom the Materials are furnished to do so, subject to 
-the following conditions: 
-
-The above copyright notice and this permission notice shall be included 
-in all copies or substantial portions of the Materials. 
-
-THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
-MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 
-
-%% This notice is provided with respect to Byte Code Engineering Library (BCEL), which may be included with this software: 
-
-                     Apache Software License 
-
-                     /*
-====================================================================                      * The Apache Software License, Version 1.1
-                      *
-                      * Copyright (c) 2001 The Apache Software Foundation.  Allrights
-                      * reserved.
-                      *
-                      * Redistribution and use in source and binary forms, withor without
-                      * modification, are permitted provided that the followingconditions
-                      * are met:
-                      *
-                      * 1. Redistributions of source code must retain the abovecopyright
-                      *    notice, this list of conditions and the followingdisclaimer.
-                      *
-                      * 2. Redistributions in binary form must reproduce theabove copyright
-                      *    notice, this list of conditions and the followingdisclaimer in
-                      *    the documentation and/or other materials providedwith the
-                      *    distribution.
-                      *
-                      * 3. The end-user documentation included with theredistribution,
-                      *    if any, must include the following acknowledgment:                      *       "This product includes software developed by the                      *        Apache Software Foundation
-(http://www.apache.org/)."
-                      *    Alternately, this acknowledgment may appear in thesoftware itself,
-                      *    if and wherever such third-party acknowledgmentsnormally appear.
-                      *
-                      * 4. The names "Apache" and "Apache Software Foundation"and 
-                      *    "Apache BCEL" must not be used to endorse or promoteproducts 
-                      *    derived from this software without prior writtenpermission. For 
-                      *    written permission, please contact apache@apache.org.                      *
-                      * 5. Products derived from this software may not be called"Apache",
-                      *    "Apache BCEL", nor may "Apache" appear in their name,without 
-                      *    prior written permission of the Apache SoftwareFoundation.
-                      *
-                      * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED ORIMPLIED
-                      * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES
-                      * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSEARE
-                      * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWAREFOUNDATION OR
-                      * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,INCIDENTAL,
-                      * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,BUT NOT
-                      * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF
-                      * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVERCAUSED AND
-                      * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICTLIABILITY,
-                      * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING INANY WAY OUT
-                      * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THEPOSSIBILITY OF
-                      * SUCH DAMAGE.
-                      *
-====================================================================                      *
-                      * This software consists of voluntary contributions madeby many
-                      * individuals on behalf of the Apache Software
-Foundation.  For more
-                      * information on the Apache Software Foundation, pleasesee
-                      * .
-                      */
-
-%% This notice is provided with respect to Regexp, Regular Expression Package, which may be included with this software: 
-
-The Apache Software License, Version 1.1
-Copyright (c) 2001 The Apache Software Foundation.  All rights
-reserved.
-Redistribution and use in source and binary forms, with or without modification,are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
-notice, this list of conditions and the following disclaimer in
-the documentation and/or other materials provided with the
-distribution.
-
-3. The end-user documentation included with the redistribution,
-if any, must include the following acknowledgment:
-"This product includes software developed by the
-Apache Software Foundation (http://www.apache.org/)."
-Alternately, this acknowledgment may appear in the software itself,
-if and wherever such third-party acknowledgments normally appear.
-
-4. The names "Apache" and "Apache Software Foundation" and 
-"Apache Turbine" must not be used to endorse or promote products 
-derived from this software without prior written permission. For 
-written permission, please contact apache@apache.org.
-
-5. Products derived from this software may not be called "Apache",
-"Apache Turbine", nor may "Apache" appear in their name, without 
-prior written permission of the Apache Software Foundation.
-
-THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
-ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGE.
-                                                             
-====================================================================
-This software consists of voluntary contributions made by many
-individuals on behalf of the Apache Software Foundation.  For more
-information on the Apache Software Foundation, please see
-                                                             
-http://www.apache.org.
-
-%% This notice is provided with respect to CUP Parser Generator for Java, which may be included with this software: 
-
-CUP Parser Generator Copyright Notice, License, and Disclaimer
-
-Copyright 1996-1999 by Scott Hudson, Frank Flannery, C. Scott Ananian 
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose and without fee is hereby granted, provided thatthe above copyright notice appear in all copies and that both the copyrightnotice and this permission notice and warranty disclaimer appear in
-supporting documentation, and that the names of the authors or their employersnot be used in advertising or publicity pertaining to distribution of
-the software without specific, written prior permission. 
-
-The authors and their employers disclaim all warranties with regard to thissoftware, including all implied warranties of merchantability and
-fitness. In no event shall the authors or their employers be liable for anyspecial, indirect or consequential damages or any damages whatsoever
-resulting from loss of use, data or profits, whether in an action of contract,negligence or other tortious action, arising out of or in connection withthe use or performance of this software. 
-
-%% This notice is provided with respect to SAX v. 2.0.1, which may be included with this software: 
-
-Copyright Status
-
-                         SAX is free!
-
-                         In fact, it's not possible to own a license to SAX, since it's been placed in the public
-                         domain. 
-
-                         No Warranty
-
-                         Because SAX is released to the public domain, there is no warranty for the design or for
-                         the software implementation, to the extent permitted by applicable law. Except when
-                         otherwise stated in writing the copyright holders and/or other parties provide SAX "as is"
-                         without warranty of any kind, either expressed or implied, including, but not limited to, the
-                         implied warranties of merchantability and fitness for a particular purpose. The entire risk as
-                         to the quality and performance of SAX is with you. Should SAX prove defective, you
-                         assume the cost of all necessary servicing, repair or correction.
-
-                         In no event unless required by applicable law or agreed to in writing will any copyright
-                         holder, or any other party who may modify and/or redistribute SAX, be liable to you for
-                         damages, including any general, special, incidental or consequential damages arising out of
-                         the use or inability to use SAX (including but not limited to loss of data or data being
-                         rendered inaccurate or losses sustained by you or third parties or a failure of the SAX to
-                         operate with any other programs), even if such holder or other party has been advised of
-                         the possibility of such damages.
-
-                         Copyright Disclaimers 
-
-                         This page includes statements to that effect by David Megginson, who would have been
-                         able to claim copyright for the original work. 
-                         SAX 1.0 
-
-                         Version 1.0 of the Simple API for XML (SAX), created collectively by the membership of
-                         the XML-DEV mailing list, is hereby released into the public domain.
-
-                         No one owns SAX: you may use it freely in both commercial and non-commercial
-                         applications, bundle it with your software distribution, include it on a CD-ROM, list the
-                         source code in a book, mirror the documentation at your own web site, or use it in any
-                         other way you see fit.
-
-                         David Megginson, sax@megginson.com
-                         1998-05-11
-
-                         SAX 2.0 
-
-                         I hereby abandon any property rights to SAX 2.0 (the Simple API for XML), and release
-                         all of the SAX 2.0 source code, compiled code, and documentation contained in this
-                         distribution into the Public Domain. SAX comes with NO WARRANTY or guarantee of
-                         fitness for any purpose.
-
-                         David Megginson, david@megginson.com
-                         2000-05-05
-
-%% This notice is provided with respect to Cryptix, which may be included with this software: 
-
-Cryptix General License
-
-Copyright © 1995-2003 The Cryptix Foundation Limited. All rights reserved.
-Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions aremet:
-
-   1.Redistributions of source code must retain the copyright notice, this list of conditions and the following disclaimer.    2.Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the     documentation and/or other materials provided with the distribution. 
-THIS SOFTWARE IS PROVIDED BY THE CRYPTIX FOUNDATION LIMITED AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS ORIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FORA PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE CRYPTIX FOUNDATION LIMITED OR CONTRIBUTORS BELIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOTLIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESSINTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OFTHE POSSIBILITY OF SUCH DAMAGE.
-
-%% This notice is provided with respect to X Window System, which may be included with this software: 
-
-Copyright  The Open Group
-
-Permission to use, copy, modify, distribute, and sell this software and itsdocumentation for any purpose is hereby granted without fee, provided that theabove copyright notice appear in all copies and that both that copyright noticeand this permission notice appear in supporting documentation.
-
-The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESSFOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUPBE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OFCONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THESOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of The Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from The Open Group.
-
-Portions also covered by other licenses as noted in the above URL.
-
-%% This notice is provided with respect to Retroweaver, which may be included with this software: 
-
-Copyright (c) February 2004, Toby Reyelts
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
-Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 
-Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 
-Neither the name of Toby Reyelts nor the names of his contributors may be used to endorse or promote products derived from this software without specific prior written permission. 
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICTLIABILITY, 
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-%% This notice is provided with respect to stripper, which may be included with this software: 
-
-Stripper : debug information stripper
- Copyright (c) 2003 Kohsuke Kawaguchi
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
- 1. Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in the    documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holders nor the names of its
-    contributors may be used to endorse or promote products derived from    this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-%% This notice is provided with respect to libpng official PNG reference library, which may be included with this software: 
-
-This copy of the libpng notices is provided for your convenience.  In case ofany discrepancy between this copy and the notices in the file png.h that isincluded in the libpng distribution, the latter shall prevail.
-
-COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
-
-If you modify libpng you may insert additional notices immediately followingthis sentence.
-
-libpng version 1.2.6, December 3, 2004, is
-Copyright (c) 2004 Glenn Randers-Pehrson, and is
-distributed according to the same disclaimer and license as libpng-1.2.5with the following individual added to the list of Contributing Authors
-   Cosmin Truta
-
-libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, areCopyright (c) 2000-2002 Glenn Randers-Pehrson, and are
-distributed according to the same disclaimer and license as libpng-1.0.6with the following individuals added to the list of Contributing Authors
-   Simon-Pierre Cadieux
-   Eric S. Raymond
-   Gilles Vollant
-
-and with the following additions to the disclaimer:
-
-   There is no warranty against interference with your enjoyment of the   library or against infringement.  There is no warranty that our
-   efforts or the library will fulfill any of your particular purposes   or needs.  This library is provided with all faults, and the entire   risk of satisfactory quality, performance, accuracy, and effort is with   the user.
-
-libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, areCopyright (c) 1998, 1999 Glenn Randers-Pehrson, and are
-distributed according to the same disclaimer and license as libpng-0.96,with the following individuals added to the list of Contributing Authors:
-   Tom Lane
-   Glenn Randers-Pehrson
-   Willem van Schaik
-
-libpng versions 0.89, June 1996, through 0.96, May 1997, are
-Copyright (c) 1996, 1997 Andreas Dilger
-Distributed according to the same disclaimer and license as libpng-0.88,with the following individuals added to the list of Contributing Authors:
-   John Bowler
-   Kevin Bracey
-   Sam Bushell
-   Magnus Holmgren
-   Greg Roelofs
-   Tom Tanner
-
-libpng versions 0.5, May 1995, through 0.88, January 1996, are
-Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
-
-For the purposes of this copyright and license, "Contributing Authors"is defined as the following set of individuals:
-
-   Andreas Dilger
-   Dave Martindale
-   Guy Eric Schalnat
-   Paul Schmidt
-   Tim Wegner
-
-The PNG Reference Library is supplied "AS IS".  The Contributing Authorsand Group 42, Inc. disclaim all warranties, expressed or implied,
-including, without limitation, the warranties of merchantability and offitness for any purpose.  The Contributing Authors and Group 42, Inc.
-assume no liability for direct, indirect, incidental, special, exemplary,or consequential damages, which may result from the use of the PNG
-Reference Library, even if advised of the possibility of such damage.
-
-Permission is hereby granted to use, copy, modify, and distribute thissource code, or portions hereof, for any purpose, without fee, subjectto the following restrictions:
-
-1. The origin of this source code must not be misrepresented.
-
-2. Altered versions must be plainly marked as such and must not
-   be misrepresented as being the original source.
-
-3. This Copyright notice may not be removed or altered from any
-   source or altered source distribution.
-
-The Contributing Authors and Group 42, Inc. specifically permit, withoutfee, and encourage the use of this source code as a component to
-supporting the PNG file format in commercial products.  If you use thissource code in a product, acknowledgment is not required but would be
-appreciated.
-
-
-A "png_get_copyright" function is available, for convenient use in "about"boxes and the like:
-
-   printf("%s",png_get_copyright(NULL));
-
-Also, the PNG logo (in PNG format, of course) is supplied in the
-files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
-
-Libpng is OSI Certified Open Source Software.  OSI Certified Open Source is acertification mark of the Open Source Initiative.
-
-Glenn Randers-Pehrson
-glennrp at users.sourceforge.net
-December 3, 2004
-
-%% This notice is provided with respect to Libungif - An uncompressed GIF library, which may be included with this software: 
-
-The GIFLIB distribution is Copyright (c) 1997  Eric S. Raymond
-
-Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included inall copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS INTHE SOFTWARE.
-
-%% This notice is provided with respect to XML Resolver library, Xalan J2, and StAX API, which may be included with this software: 
+--- begin of LICENSE ---
 
                                  Apache License
                            Version 2.0, January 2004
@@ -782,17 +3185,26 @@
 
    1. Definitions.
 
-      "License" shall mean the terms and conditions for use, reproduction,      and distribution as defined by Sections 1 through 9 of this document.
-      "Licensor" shall mean the copyright owner or entity authorized by      the copyright owner that is granting the License.
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
 
-      "Legal Entity" shall mean the union of the acting entity and all      other entities that control, are controlled by, or are under common      control with that entity. For the purposes of this definition,
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
       "control" means (i) the power, direct or indirect, to cause the
       direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the      outstanding shares, or (iii) beneficial ownership of such entity.
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
       "You" (or "Your") shall mean an individual or Legal Entity
       exercising permissions granted by this License.
 
-      "Source" form shall mean the preferred form for making modifications,      including but not limited to software source code, documentation      source, and configuration files.
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
 
       "Object" form shall mean any form resulting from mechanical
       transformation or translation of a Source form, including but
@@ -800,25 +3212,56 @@
       and conversions to other media types.
 
       "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a      copyright notice that is included in or attached to the work
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
       (an example is provided in the Appendix below).
 
-      "Derivative Works" shall mean any work, whether in Source or Object      form, that is based on (or derived from) the Work and for which the      editorial revisions, annotations, elaborations, or other modifications      represent, as a whole, an original work of authorship. For the purposes      of this License, Derivative Works shall not include works that remain      separable from, or merely link (or bind by name) to the interfaces of,      the Work and Derivative Works thereof.
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
 
       "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner      or by an individual or Legal Entity authorized to submit on behalf of      the copyright owner. For the purposes of this definition, "submitted"      means any form of electronic, verbal, or written communication sent      to the Licensor or its representatives, including but not limited to      communication on electronic mailing lists, source code control systems,      and issue tracking systems that are managed by, or on behalf of, the      Licensor for the purpose of discussing and improving the Work, but      excluding communication that is conspicuously marked or otherwise      designated in writing by the copyright owner as "Not a Contribution."
-      "Contributor" shall mean Licensor and any individual or Legal Entity      on behalf of whom a Contribution has been received by Licensor and      subsequently incorporated within the Work.
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
 
-   2. Grant of Copyright License. Subject to the terms and conditions of      this License, each Contributor hereby grants to You a perpetual,      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
       copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the      Work and such Derivative Works in Source or Object form.
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
 
    3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,      use, offer to sell, sell, import, and otherwise transfer the Work,      where such license applies only to those patent claims licensable      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)      with the Work to which such Contribution(s) was submitted. If You      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work      or a Contribution incorporated within the Work constitutes direct      or contributory patent infringement, then any patent licenses
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
       granted to You under this License for that Work shall terminate
       as of the date such litigation is filed.
 
@@ -830,7 +3273,8 @@
       (a) You must give any other recipients of the Work or
           Derivative Works a copy of this License; and
 
-      (b) You must cause any modified files to carry prominent notices          stating that You changed the files; and
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
 
       (c) You must retain, in the Source form of any Derivative Works
           that You distribute, all copyright, patent, trademark, and
@@ -839,35 +3283,74 @@
           the Derivative Works; and
 
       (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must          include a readable copy of the attribution notices contained          within such NOTICE file, excluding those notices that do not          pertain to any part of the Derivative Works, in at least one          of the following places: within a NOTICE text file distributed          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents          of the NOTICE file are for informational purposes only and
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
           do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside          or as an addendum to the NOTICE text from the Work, provided          that such additional attribution notices cannot be construed          as modifying the License.
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
 
-      You may add Your own copyright statement to Your modifications and      may provide additional or different license terms and conditions      for use, reproduction, or distribution of Your modifications, or      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with      the conditions stated in this License.
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
 
-   5. Submission of Contributions. Unless You explicitly state otherwise,      any Contribution intentionally submitted for inclusion in the Work      by You to the Licensor shall be under the terms and conditions of      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify      the terms of any separate license agreement you may have executed      with Licensor regarding such Contributions.
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
 
-   6. Trademarks. This License does not grant permission to use the trade      names, trademarks, service marks, or product names of the Licensor,      except as required for reasonable and customary use in describing the      origin of the Work and reproducing the content of the NOTICE file.
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
    7. Disclaimer of Warranty. Unless required by applicable law or
       agreed to in writing, Licensor provides the Work (and each
       Contributor provides its Contributions) on an "AS IS" BASIS,
       WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the      appropriateness of using or redistributing the Work and assume any      risks associated with Your exercise of permissions under this License.
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
    8. Limitation of Liability. In no event and under no legal theory,
       whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly      negligent acts) or agreed to in writing, shall any Contributor be      liable to You for damages, including any direct, indirect, special,      incidental, or consequential damages of any character arising as a      result of this License or out of the use or inability to use the      Work (including but not limited to damages for loss of goodwill,      work stoppage, computer failure or malfunction, or any and all
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
       other commercial damages or losses), even if such Contributor
       has been advised of the possibility of such damages.
 
-   9. Accepting Warranty or Additional Liability. While redistributing      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,      or other liability obligations and/or rights consistent with this      License. However, in accepting such obligations, You may act only      on Your own behalf and on Your sole responsibility, not on behalf      of any other Contributor, and only if You agree to indemnify,
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
       defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason      of your accepting any such warranty or additional liability.
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
 
    END OF TERMS AND CONDITIONS
 
@@ -878,7 +3361,8 @@
       replaced with your own identifying information. (Don't include
       the brackets!)  The text should be enclosed in the appropriate
       comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the      same "printed page" as the copyright notice for easier
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
       identification within third-party archives.
 
    Copyright [yyyy] [name of copyright owner]
@@ -889,728 +3373,13 @@
 
        http://www.apache.org/licenses/LICENSE-2.0
 
-   Unless required by applicable law or agreed to in writing, software   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   See the License for the specific language governing permissions and   limitations under the License.
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
 
-%% Some Portions licensed from IBM are available at: 
-http://www.ibm.com/software/globalization/icu/
+--- end of LICENSE ---
 
-%% This notice is provided with respect to ICU4J, ICU 1.8.1 and later, which may be included with this software: 
-
-ICU License - ICU 1.8.1 and later COPYRIGHT AND PERMISSION NOTICE Cop
-yright (c)
-1995-2003 International Business Machines Corporation and others All rightsreserved. Permission is hereby granted, free of charge, to any person obtaininga copy of this software and associated documentation files (the "Software"), todeal in the Software without restriction, including without limitation therights to use, copy, modify, merge, publish, distribute, and/or sell copies ofthe Software, and to permit persons to whom the Software is furnished to do so,provided that the above copyright notice(s) and this permission notice appear inall copies of the Software and that both the above copyright notice(s) and thispermission notice appear in supporting documentation. THE SOFTWARE IS PROVIDED"AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOTLIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSEAND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHTHOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY C
- LAIM, OR ANYSPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTINGFROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCEOR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE ORPERFORMANCE OF THIS SOFTWARE. Except as contained in this notice, the name of acopyright holder shall not be used in advertising or otherwise to promote thesale, use or other dealings in this Software without prior written authorizationof the copyright holder.
-
-%% This notice is provided with respect to Jing, which may be included with this software: 
-
-Jing Copying Conditions
-
-Copyright (c) 2001-2003 Thai Open Source Software Center Ltd
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright notice,this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright notice,this list of conditions and the following disclaimer in the documentation and/orother materials provided with the distribution.
-    * Neither the name of the Thai Open Source Software Center Ltd nor the namesof its contributors may be used to endorse or promote products derived from thissoftware without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" ANDANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AREDISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ONANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THISSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-%% This notice is provided with respect to RELAX NG Object Model/Parser, which may be included with this software: 
-
-
-The MIT License
-
-Copyright (c)  
-
-Permission is hereby granted, free of charge, to any person obtaining a copy ofthis software and associated documentation files (the "Software"), to deal inthe Software without restriction, including without limitation the rights touse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies ofthe Software, and to permit persons to whom the Software is furnished to do so,subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESSFOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS ORCOPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHERIN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR INCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-%% This notice is provided with respect to XFree86-VidMode Extension, which may be included with this software: 
-
-Version 1.1 of XFree86 ProjectLicence.
-
-    Copyright (C) 1994-2004 The XFree86 Project, Inc.    All rights reserved.
-
-    Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to deal inthe Software without restriction, including without limitation the rights touse, copy, modify, merge, publish, distribute, sublicence, and/or sell copies ofthe Software, and to permit persons to whom the Software is furnished to do so,subject to the following conditions:
-
-       1. Redistributions of source code must retain the above copyright notice,this list of conditions, and the following disclaimer.
-       2. Redistributions in binary form must reproduce the above copyrightnotice, this list of conditions and the following disclaimer in the
-documentation and/or other materials provided with the distribution, and in thesame place and form as other copyright, license and disclaimer information.       3. The end-user documentation included with the redistribution, if any,must include the following acknowledgment: "This product includes softwaredeveloped by The XFree86 Project, Inc (http://www.xfree86.org/) and itscontributors", in the same place and form as other third-party acknowledgments.Alternately, this acknowledgment may appear in the software itself, in the sameform and location as other such third-party acknowledgments.
-       4. Except as contained in this notice, the name of The XFree86 Project,Inc shall not be used in advertising or otherwise to promote the sale, use orother dealings in this Software without prior written authorization from TheXFree86 Project, Inc.
-
-    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY ANDFITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE XFREE86PROJECT, INC OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; ORBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER INCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISINGIN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITYOF SUCH DAMAGE.
-
-%% This notice is provided with respect to XML Security, which may be included with this software: 
-
-  The Apache Software License,
-                                       Version 1.1
-
-
-                                                                                 PDF
-
-
-                                       Copyright (C) 2002 The Apache SoftwareFoundation.
-                                       All rights reserved. Redistribution anduse in
-                                       source and binary forms, with or withoutmodifica-
-                                       tion, are permitted provided that thefollowing
-                                       conditions are met: 1. Redistributions ofsource
-                                       code must retain the above copyrightnotice, this
-                                       list of conditions and the followingdisclaimer.
-                                       2. Redistributions in binary form mustreproduce
-                                       the above copyright notice, this list of                                       conditions and the following disclaimerin the
-                                       documentation and/or other materialsprovided with
-                                       the distribution. 3. The end-userdocumentation
-                                       included with the redistribution, if any,must
-                                       include the following acknowledgment:"This
-                                       product includes software developed bythe Apache
-                                       Software Foundation
-(http://www.apache.org/)."
-                                       Alternately, this acknowledgment mayappear in the
-                                       software itself, if and wherever suchthird-party
-                                       acknowledgments normally appear. 4. Thenames
-                                       "Apache Forrest" and "Apache SoftwareFoundation"
-                                       must not be used to endorse or promoteproducts
-                                       derived from this software without priorwritten
-                                       permission. For written permission,please contact
-                                       apache@apache.org. 5. Products derivedfrom this
-                                       software may not be called "Apache", normay
-                                       "Apache" appear in their name, withoutprior
-                                       written permission of the Apache Software                                       Foundation. THIS SOFTWARE IS PROVIDED``AS IS''
-                                       AND ANY EXPRESSED OR IMPLIED WARRANTIES,                                       INCLUDING, BUT NOT LIMITED TO, THEIMPLIED
-                                       WARRANTIES OF MERCHANTABILITY AND FITNESSFOR A
-                                       PARTICULAR PURPOSE ARE DISCLAIMED. IN NOEVENT
-                                       SHALL THE APACHE SOFTWARE FOUNDATION ORITS
-                                       CONTRIBUTORS BE LIABLE FOR ANY DIRECT,INDIRECT,
-                                       INCIDENTAL, SPECIAL, EXEMPLARY, ORCONSEQUENTIAL
-                                       DAMAGES (INCLU- DING, BUT NOT LIMITED TO,                                       PROCUREMENT OF SUBSTITUTE GOODS ORSERVICES; LOSS
-                                       OF USE, DATA, OR PROFITS; OR BUSINESS                                       INTERRUPTION) HOWEVER CAUSED AND ON ANYTHEORY OF
-                                       LIABILITY, WHETHER IN CONTRACT, STRICTLIABILITY,
-                                       OR TORT (INCLUDING NEGLIGENCE OROTHERWISE)
-                                       ARISING IN ANY WAY OUT OF THE USE OF THIS                                       SOFTWARE, EVEN IF ADVISED OF THEPOSSIBILITY OF
-                                       SUCH DAMAGE. This software consists ofvoluntary
-                                       contributions made by many individuals onbehalf
-                                       of the Apache Software Foundation. Formore
-                                       information on the Apache SoftwareFoundation,
-                                       please see .
-
-%% This notice is provided with respect to Independent JPEG Group's software (libjpeg), which may be included with this software: 
-
-In plain English:
-
-1. We don't promise that this software works.  (But if you find any bugs,
-   please let us know!)
-2. You can use this software for whatever you want.  You don't have to pay us.
-3. You may not pretend that you wrote this software.  If you use it in a program, you must acknowledge somewhere in your documentation that you've used the IJG code.
-
-In legalese:
-
-The authors make NO WARRANTY or representation, either express or implied, with respect to this software, its quality, accuracy, merchantability, or fitness for a particular purpose.  This software is provided "AS IS", and you, its user, assume the entire risk as to its quality and accuracy.
-
-This software is copyright (C) 1991-1998, Thomas G. Lane.
-All Rights Reserved except as specified below.
-
-Permission is hereby granted to use, copy, modify, and distribute this software (or portions thereof) for any purpose, without fee, subject to these conditions:
-
-(1) If any part of the source code for this software is distributed, then this
-README file must be included, with this copyright and no-warranty notice unaltered; and any additions, deletions, or changes to the original files must be clearly indicated in accompanying documentation.
-
-(2) If only executable code is distributed, then the accompanying documentation must state that "this software is based in part on the work of the Independent JPEG Group".
-
-(3) Permission for use of this software is granted only if the user accepts full responsibility for any undesirable consequences; the authors accept NO LIABILITY for damages of any kind.
-
-These conditions apply to any software derived from or based on the IJG code, not just to the unmodified library.  If you use our work, you ought to acknowledge us.
-
-Permission is NOT granted for the use of any IJG author's name or company name in advertising or publicity relating to this software or products derived from it.  This software may be referred to only as "the Independent JPEG Group's software".
-
-We specifically permit and encourage the use of this software as the basis of commercial products, provided that all warranty or liability claims are assumed by the product vendor.
-
-ansi2knr.c is included in this distribution by permission of L. Peter Deutsch, sole proprietor of its copyright holder, Aladdin Enterprises of Menlo Park, CA. ansi2knr.c is NOT covered by the above copyright and conditions, but instead by the usual distribution terms of the Free Software Foundation; principally, that you must include source code if you redistribute it.  (See the file ansi2knr.c for full details.)  However, since ansi2knr.c is not needed as part of any program generated from the IJG code, this does not limit you more than the foregoing paragraphs do.
-
-The Unix configuration script "configure" was produced with GNU Autoconf. It is copyright by the Free Software Foundation but is freely distributable. The same holds for its supporting scripts (config.guess, config.sub, ltconfig, ltmain.sh).  Another support script, install-sh, is copyright by M.I.T. but is also freely distributable.
-
-It appears that the arithmetic coding option of the JPEG spec is covered by patents owned by IBM, AT&T, and Mitsubishi.  Hence arithmetic coding cannot legally be used without obtaining one or more licenses.  For this reason, support for arithmetic coding has been removed from the free JPEG software. (Since arithmetic coding provides only a marginal gain over the unpatented Huffman mode, it is unlikely that very many implementations will support it.) So far as we are aware, there are no patent restrictions on the remaining code.
-
-The IJG distribution formerly included code to read and write GIF files. To avoid entanglement with the Unisys LZW patent, GIF reading support has been removed altogether, and the GIF writer has been simplified to produce "uncompressed GIFs".  This technique does not use the LZW algorithm; the resulting GIF files are larger than usual, but are readable by all standard GIF decoders.
-
-We are required to state that
-    "The Graphics Interchange Format(c) is the Copyright property of
-    CompuServe Incorporated.  GIF(sm) is a Service Mark property of
-    CompuServe Incorporated."
-
-%% This notice is provided with respect to X Resize and Rotate (Xrandr) Extension, which may be included with this software: 
-2. XFree86 License
-
-XFree86 code without an explicit copyright is covered by the following
-copyright/license:
-
-Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE XFREE86
-PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of the XFree86 Project shall not be
-used in advertising or otherwise to promote the sale, use or other dealings in
-this Software without prior written authorization from the XFree86 Project.
-
-%% This notice is provided with respect to fontconfig, which may be included with this software: 
-Id: COPYING,v 1.3 2003/04/04 20:17:40 keithp Exp $
-Copyright 2001,2003 Keith Packard
-
-Permission to use, copy, modify, distribute, and sell this software and its
-documentation for any purpose is hereby granted without fee, provided that
-the above copyright notice appear in all copies and that both that
-copyright notice and this permission notice appear in supporting
-documentation, and that the name of Keith Packard not be used in
-advertising or publicity pertaining to distribution of the software without
-specific, written prior permission.  Keith Packard makes no
-representations about the suitability of this software for any purpose.  It
-is provided "as is" without express or implied warranty.
-
-KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-PERFORMANCE OF THIS SOFTWARE.
-%% This notice is provided with respect to XFree86, which may be included with this software: 
-Copyright (C) 1994-2002 The XFree86 Project, Inc. All Rights Reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated
-documentation files (the "Software"), to deal in the Software without
-restriction, including without limitation
-the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to the
-following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the
-Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT
-NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM,
-DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of the XFree86 Project shall not be
-used in advertising or otherwise
-to promote the sale, use or other dealings in this Software without prior
-written authorization from the XFree86
-Project.
-%% This notice is provided with respect to Fast Infoset, which may be included with this software: 
-* Fast Infoset ver. 0.1 software ("Software") 
-* 
-* Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
-* 
-* Software is licensed 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: 
- * 
- * http://www.apache.org/licenses/LICENSE-2.0 
- * 
- * Unless required by applicable law or agreed to in writing, software 
-* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 
-* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 
-* License for the specific language governing permissions and limitations. 
-* 
-* Oracle supports and benefits from the global community of open source 
-* developers, and thanks the community for its important contributions and 
-* open standards-based technology, which Oracle has adopted into many of its 
-* products. 
-* 
-* Please note that portions of Software may be provided with notices and 
-* open source licenses from such communities and third parties that govern the 
-* use of those portions, and any licenses granted hereunder do not alter any 
-* rights and obligations you may have under such open source licenses, 
-* however, the disclaimer of warranty and limitation of liability provisions 
-* in this License will apply to all Software in this distribution. 
-* 
-* You acknowledge that the Software is not designed, licensed or intended 
-* for use in the design, construction, operation or maintenance of any nuclear 
-* facility. 
-* 
-* Apache License 
-* Version 2.0, January 2004 
-* http://www.apache.org/licenses/ 
-* 
-*/ 
-/* 
-* ==================================================================== 
-* 
-* This code is subject to the freebxml License, Version 1.1 
-* 
-* Copyright (c) 2001 - 2005 freebxml.org. All rights reserved. 
-* 
-* $Header: /cvs/fi/FastInfoset/src/com/sun/xml/internal/fastinfoset/AbstractResourceBundle.java,v 1.2 
-*  ==================================================================== 
-*/ 
-%% This notice is provided with respect to Kerberos, which may be included with this software: 
-
-/* 
- * Copyright (C) 1998 by the FundsXpress, INC. 
- * 
- * All rights reserved. 
- * 
- * Export of this software from the United States of America may require 
- * a specific license from the United States Government.  It is the 
- * responsibility of any person or organization contemplating export to 
- * obtain such a license before exporting. 
- * 
- * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and 
- * distribute this software and its documentation for any purpose and 
- * without fee is hereby granted, provided that the above copyright 
- * notice appear in all copies and that both that copyright notice and 
- * this permission notice appear in supporting documentation, and that 
- * the name of FundsXpress. not be used in advertising or publicity pertaining 
- * to distribution of the software without specific, written prior 
- * permission. FundsXpress makes no representations about the suitability of 
- * this software for any purpose. It is provided "as is" without express 
- * or implied warranty. 
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. 
- */ 
-
-%% This notice is provided with respect to Unicode's CLDR data repository, which may be included with this software: 
-
- Unicode Copyright
-
-    For the general privacy policy governing access to this site, see the 
-Unicode Privacy Policy. For trademark usage, see the the Unicode Consortium
-Trademarks and Logo Policy.
-    Notice to End User: Terms of Use
-    Carefully read the following legal agreement ("Agreement"). Use or copying
-of the software and/or codes provided with this agreement (The "Software")
-constitutes your acceptance of these terms
-
-       1. Unicode Copyright.
-             1. Copyright © 1991-2005 Unicode, Inc. All rights reserved.
-             2. Certain documents and files on this website contain a legend
-indicating that "Modification is permitted." Any person is hereby authorized,
-without fee, to modify such documents and files to create derivative works
-conforming to the Unicode® Standard, subject to Terms and Conditions herein.
-             3. Any person is hereby authorized, without fee, to view, use,
-reproduce, and distribute all documents and files solely for informational
-purposes in the creation of products supporting the Unicode Standard, subject to
-the Terms and Conditions herein.
-             4. Further specifications of rights and restrictions pertaining to
-the use of the particular set of data files known as the "Unicode Character
-Database" can be found in Exhibit 1.
-             5. Further specifications of rights and restrictions pertaining to
-the use of the particular set of files that constitute the online edition of The
-Unicode Standard, Version 4.0, may be found in V4.0 online edition.
-             6. No license is granted to "mirror" the Unicode website where a
-fee is charged for access to the "mirror" site.
-             7. Modification is not permitted with respect to this document. All
-copies of this document must be verbatim.
-       2. Restricted Rights Legend. Any technical data or software which is
-licensed to the United States of America, its agencies and/or instrumentalities
-under this Agreement is commercial technical data or commercial computer
-software developed exclusively at private expense as defined in FAR 2.101, or
-DFARS 252.227-7014 (June 1995), as applicable. For technical data, use,
-duplication, or disclosure by the Government is subject to restrictions as set
-forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and
-this Agreement. For Software, in accordance with FAR 12-212 or DFARS 227-7202,
-as applicable, use, duplication or disclosure by the Government is subject to
-the restrictions set forth in this Agreement.
-       3. Warranties and Disclaimers.
-             1. This publication and/or website may include technical or
-typographical errors or other inaccuracies . Changes are periodically added to
-the information herein; these changes will be incorporated in new editions of
-the publication and/or website. Unicode may make improvements and/or changes in
-the product(s) and/or program(s) described in this publication and/or website at
-any time.
-             2. If this file has been purchased on magnetic or optical media
-from Unicode, Inc. the sole and exclusive remedy for any claim will be exchange
-of the defective media within ninety (90) days of original purchase.
-             3. EXCEPT AS PROVIDED IN SECTION C.2, THIS PUBLICATION AND/OR
-SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS,
-IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE
-AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN THIS
-PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE REFERENCED BY OR LINKED
-TO THIS PUBLICATION OR THE UNICODE WEBSITE.
-       4. Waiver of Damages. In no event shall Unicode or its licensors be
-liable for any special, incidental, indirect or consequential damages of any
-kind, or any damages whatsoever, whether or not Unicode was advised of the
-possibility of the damage, including, without limitation, those resulting from
-the following: loss of use, data or profits, in connection with the use,
-modification or distribution of this information or its derivatives.
-       5. Trademarks.
-             1. Unicode and the Unicode logo are registered trademarks of
-Unicode, Inc. 
-             2. This site contains product names and corporate names of other
-companies. All product names and company names and logos mentioned herein are
-the trademarks or registered trademarks of their respective owners. Other
-products and corporate names mentioned herein which are trademarks of a third
-party are used only for explanation and for the owners' benefit and with no
-intent to infringe.
-             3. Use of third party products or information referred to herein is
-at the user's risk.
-       6. Miscellaneous.
-             1. Jurisdiction and Venue. This server is operated from a location
-in the State of California, United States of America. Unicode makes no
-representation that the materials are appropriate for use in other locations. If
-you access this server from other locations, you are responsible for compliance
-with local laws. This Agreement, all use of this site and any claims and damages
-resulting from use of this site are governed solely by the laws of the State of
-California without regard to any principles which would apply the laws of a
-different jurisdiction. The user agrees that any disputes regarding this site
-shall be resolved solely in the courts located in Santa Clara County,
-California. The user agrees said courts have personal jurisdiction and agree to
-waive any right to transfer the dispute to any other forum.
-             2. Modification by Unicode Unicode shall have the right to modify
-this Agreement at any time by posting it to this site. The user may not assign
-any part of this Agreement without Unicode's prior written consent.
-             3. Taxes. The user agrees to pay any taxes arising from access to
-this website or use of the information herein, except for those based on
-Unicode's net income.
-             4. Severability.  If any provision of this Agreement is declared
-invalid or unenforceable, the remaining provisions of this Agreement shall
-remain in effect.
-             5. Entire Agreement. This Agreement constitutes the entire
-agreement between the parties. 
-
-EXHIBIT 1
-UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE
-
-    Unicode Data Files include all data files under the directories
-http://www.unicode.org/Public/ and http://www.unicode.org/reports/. Unicode
-Software includes any source code under the directories
-http://www.unicode.org/Public/ and http://www.unicode.org/reports/.
-
-    NOTICE TO USER: Carefully read the following legal agreement. BY
-DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES
-("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND
-AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU
-DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES
-OR SOFTWARE.
-
-    COPYRIGHT AND PERMISSION NOTICE
-
-    Copyright Ã?Â,Ã,© 1991-2004 Unicode, Inc. All rights reserved. Distributed under
-the Terms of Use in http://www.unicode.org/copyright.html.
-
-    Permission is hereby granted, free of charge, to any person obtaining a copy
-of the Unicode data files and associated documentation (the "Data Files") or
-Unicode software and associated documentation (the "Software") to deal in the
-Data Files or Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, and/or sell copies of
-the Data Files or Software, and to permit persons to whom the Data Files or
-Software are furnished to do so, provided that (a) the above copyright notice(s)
-and this permission notice appear with all copies of the Data Files or Software,
-(b) both the above copyright notice(s) and this permission notice appear in
-associated documentation, and (c) there is clear notice in each modified Data
-File or in the Software as well as in the documentation associated with the Data
-File(s) or Software that the data or software has been modified.
-
-    THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
-KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD
-PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
-NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
-DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
-WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
-OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE.
-
-    Except as contained in this notice, the name of a copyright holder shall not
-be used in advertising or otherwise to promote the sale, use or other dealings
-in these Data Files or Software without prior written authorization of the
-copyright holder.
-
-    Unicode and the Unicode logo are trademarks of Unicode, Inc., and may be
-registered in some jurisdictions. All other trademarks and registered trademarks
-mentioned herein are the property of their respective owners.
-%% This notice is provided with respect to RSA PKCS#11 Header Files & Specification, which may be included with this software: 
-
-/* 
- * Copyright (C) 1998 by the FundsXpress, INC. 
- * 
- * All rights reserved. 
- * 
- * Export of this software from the United States of America may require 
- * a specific license from the United States Government.  It is the 
- * responsibility of any person or organization contemplating export to 
- * obtain such a license before exporting. 
- * 
- * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and 
- * distribute this software and its documentation for any purpose and 
- * without fee is hereby granted, provided that the above copyright 
- * notice appear in all copies and that both that copyright notice and 
- * this permission notice appear in supporting documentation, and that 
- * the name of FundsXpress. not be used in advertising or publicity pertaining 
- * to distribution of the software without specific, written prior 
- * permission.  FundsXpress makes no representations about the suitability of 
- * this software for any purpose.  It is provided "as is" without express 
- * or implied warranty. 
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. 
- */ 
-
-%% This notice is provided with respect to certain files/code which may included in the implementation of AWT within the software: 
-
-****************************************************** 
-BEGIN  src/solaris/native/sun/awt/HPkeysym.h 
-Copyright 1987, 1998  The Open Group 
-
-All Rights Reserved. 
-
-The above copyright notice and this permission notice shall be included 
-in all copies or substantial portions of the Software. 
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
-IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR 
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
-OTHER DEALINGS IN THE SOFTWARE. 
-
-Except as contained in this notice, the name of The Open Group shall 
-not be used in advertising or otherwise to promote the sale, use or 
-other dealings in this Software without prior written authorization 
-from The Open Group. 
-
-Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts, 
-
-All Rights Reserved 
-
-Permission to use, copy, modify, and distribute this software and its 
-documentation for any purpose and without fee is hereby granted, 
-provided that the above copyright notice appear in all copies and that 
-both that copyright notice and this permission notice appear in 
-supporting documentation, and that the names of Hewlett Packard 
-or Digital not be 
-used in advertising or publicity pertaining to distribution of the 
-software without specific, written prior permission. 
-
-DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 
-ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 
-DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR 
-ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 
-WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 
-ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS 
-SOFTWARE. 
-
-HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD 
-TO THIS SOFWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 
-PURPOSE.  Hewlett-Packard shall not be liable for errors 
-contained herein or direct, indirect, special, incidental or 
-consequential damages in connection with the furnishing, 
-performance, or use of this material. 
-
-END  src/solaris/native/sun/awt/HPkeysym.h 
-****************************************************** 
-****************************************************** 
-BEGIN src/solaris/native/sun/awt/Xrandr.h 
-/* 
- * $XFree86: xc/lib/Xrandr/Xrandr.h,v 1.9 2002/09/29 23:39:44 keithp Exp $ 
- * 
- * Copyright © 2000 Compaq Computer Corporation, Inc. 
- * Copyright © 2002 Hewlett-Packard Company, Inc. 
- * 
- * Permission to use, copy, modify, distribute, and sell this software and its 
- * documentation for any purpose is hereby granted without fee, provided that 
- * the above copyright notice appear in all copies and that both that 
- * copyright notice and this permission notice appear in supporting 
- * documentation, and that the name of Compaq not be used in advertising or 
- * publicity pertaining to distribution of the software without specific, 
- * written prior permission.  HP makes no representations about the 
- * suitability of this software for any purpose.  It is provided "as is" 
- * without express or implied warranty. 
- * 
- * HP DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL COMPAQ 
- * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 
- * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 
- * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 
- * 
- * Author:  Jim Gettys, HP Labs, HP. 
- */ 
-
-
-END src/solaris/native/sun/awt/Xrandr.h 
-****************************************************** 
-BEGIN src/solaris/native/sun/awt/extutil.h 
-/* 
- * $Xorg: extutil.h,v 1.3 2000/08/18 04:05:45 coskrey Exp $ 
- * 
-Copyright 1989, 1998  The Open Group 
-
-All Rights Reserved. 
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE 
-OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 
-AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 
-
-Except as contained in this notice, the name of The Open Group shall not be 
-used in advertising or otherwise to promote the sale, use or other dealings 
-in this Software without prior written authorization from The Open Group. 
- * 
- * Author:  Jim Fulton, MIT The Open Group 
- * 
- *                     Xlib Extension-Writing Utilities 
- * 
- * This package contains utilities for writing the client API for various 
- * protocol extensions.  THESE INTERFACES ARE NOT PART OF THE X STANDARD AND 
- * ARE SUBJECT TO CHANGE! 
- */ 
-/* $XFree86: xc/include/extensions/extutil.h,v 1.5 2001/01/17 17:53:20 dawes Exp $ */ 
-
-END src/solaris/native/sun/awt/extutil.h 
-****************************************************** 
-BEGIN   src/solaris/native/sun/awt/fontconfig.h 
-/* 
- * $RCSId: xc/lib/fontconfig/fontconfig/fontconfig.h,v 1.30 2002/09/26 00:17:27 
-keithp Exp $ 
- * 
- * Copyright © 2001 Keith Packard 
- * 
- * Permission to use, copy, modify, distribute, and sell this software and its 
- * documentation for any purpose is hereby granted without fee, provided that 
- * the above copyright notice appear in all copies and that both that 
- * copyright notice and this permission notice appear in supporting 
- * documentation, and that the name of Keith Packard not be used in 
- * advertising or publicity pertaining to distribution of the software without 
- * specific, written prior permission.  Keith Packard makes no 
- * representations about the suitability of this software for any purpose.  It 
- * is provided "as is" without express or implied warranty. 
- * 
- * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 
- * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR 
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 
- * PERFORMANCE OF THIS SOFTWARE. 
-
-END   src/solaris/native/sun/awt/fontconfig.h 
-****************************************************** 
-BEGIN src/solaris/native/sun/awt/list.c 
-AND  src/solaris/native/sun/awt/list.h 
-AND src/solaris/native/sun/awt/multiVis.c 
-AND  src/solaris/native/sun/awt/multiVis.h 
-AND  src/solaris/native/sun/awt/wsutils.h 
-
-Copyright (c) 1994 Hewlett-Packard Co. 
-Copyright (c) 1996  X Consortium 
-
-Permission is hereby granted, free of charge, to any person obtaining 
-a copy of this software and associated documentation files (the 
-"Software"), to deal in the Software without restriction, including 
-without limitation the rights to use, copy, modify, merge, publish, 
-distribute, sublicense, and sell copies of the Software, and to 
-permit persons to whom the Software is furnished to do so, subject to 
-the following conditions: 
-
-The above copyright notice and this permission notice shall be included 
-in all copies or substantial portions of the Software. 
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
-IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR 
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
-OTHER DEALINGS IN THE SOFTWARE. 
-
-Except as contained in this notice, the name of the X Consortium shall 
-not be used in advertising or otherwise to promote the sale, use or 
-other dealings in this Software without prior written authorization 
-from the X Consortium. 
-
-END src/solaris/native/sun/awt/list.c 
-AND  src/solaris/native/sun/awt/list.h 
-AND src/solaris/native/sun/awt/multiVis.c 
-AND  src/solaris/native/sun/awt/multiVis.h 
-AND  src/solaris/native/sun/awt/wsutils.h 
-
-***************************************************************** 
-BEGIN src/solaris/native/sun/awt/randr.h 
-
- * 
- * Copyright © 2000, Compaq Computer Corporation, 
- * Copyright © 2002, Hewlett Packard, Inc. 
- * 
- * Permission to use, copy, modify, distribute, and sell this software and its 
- * documentation for any purpose is hereby granted without fee, provided that 
- * the above copyright notice appear in all copies and that both that 
- * copyright notice and this permission notice appear in supporting 
- * documentation, and that the name of Compaq or HP not be used in advertising 
- * or publicity pertaining to distribution of the software without specific, 
- * written prior permission.  HP makes no representations about the 
- * suitability of this software for any purpose.  It is provided "as is" 
- * without express or implied warranty. 
- * 
- * HP DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL HP 
- * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 
- * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 
- * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 
- * 
- * Author:  Jim Gettys, HP Labs, Hewlett-Packard, Inc. 
-
-END src/solaris/native/sun/awt/randr.h 
-***************************************************** 
-
-BEGIN src/solaris/native/sun/java2d/opengl/J2D_GL/glx.h 
- * Mesa 3-D graphics library 
- * Version:  4.1 
- * 
- * Copyright (C) 1999-2002  Brian Paul   All Rights Reserved. 
- * 
- * Permission is hereby granted, free of charge, to any person obtaining a 
- * copy of this software and associated documentation files (the "Software"), 
- * to deal in the Software without restriction, including without limitation 
- * the rights to use, copy, modify, merge, publish, distribute, sublicense, 
- * and/or sell copies of the Software, and to permit persons to whom the 
- * Software is furnished to do so, subject to the following conditions: 
- * 
- * The above copyright notice and this permission notice shall be included 
- * in all copies or substantial portions of the Software. 
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL 
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 
+-------------------------------------------------------------------------------
 
-END src/solaris/native/sun/java2d/opengl/J2D_GL/glx.h 
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecode.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecode.java
index 87c7a54..57f676a 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecode.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecode.java
@@ -26,6 +26,7 @@
 
 import sun.jvm.hotspot.oops.*;
 import sun.jvm.hotspot.utilities.*;
+import sun.jvm.hotspot.runtime.VM;
 
 public class Bytecode {
   Method method;
@@ -45,6 +46,23 @@
     return Bits.roundTo(bci + offset, jintSize) - bci;
   }
 
+  public int     getIndexU1()               { return method.getBytecodeOrBPAt(bci() + 1) & 0xFF; }
+  public int     getIndexU2(int bc, boolean isWide) {
+    if (can_use_native_byte_order(bc, isWide)) {
+      return method.getNativeShortArg(bci() + (isWide ? 2 : 1)) & 0xFFFF;
+    }
+    return method.getBytecodeShortArg(bci() + (isWide ? 2 : 1)) & 0xFFFF;
+  }
+  public int     getIndexU4()               { return method.getNativeIntArg(bci() + 1); }
+  public boolean hasIndexU4()               { return code() == Bytecodes._invokedynamic; }
+
+  public int     getIndexU1Cpcache()        { return method.getBytecodeOrBPAt(bci() + 1) & 0xFF; }
+  public int     getIndexU2Cpcache()        { return method.getNativeShortArg(bci() + 1) & 0xFFFF; }
+
+  static boolean can_use_native_byte_order(int bc, boolean is_wide) {
+    return (VM.getVM().isBigEndian() || Bytecodes.native_byte_order(bc /*, is_wide*/));
+  }
+
   int javaSignedWordAt(int offset) {
     return method.getBytecodeIntArg(bci + offset);
   }
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeFastAAccess0.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeFastAAccess0.java
deleted file mode 100644
index b68d3b4..0000000
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeFastAAccess0.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
- * 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 sun.jvm.hotspot.interpreter;
-
-import sun.jvm.hotspot.oops.*;
-import sun.jvm.hotspot.utilities.*;
-
-public class BytecodeFastAAccess0 extends BytecodeGetPut {
-  BytecodeFastAAccess0(Method method, int bci) {
-    super(method, bci);
-  }
-
-  public int index() {
-    return (int) (0xFF & javaShortAt(2));
-  }
-
-  public boolean isStatic() {
-    return false;
-  }
-
-  public void verify() {
-    if (Assert.ASSERTS_ENABLED) {
-      Assert.that(isValid(), "check fast_aaccess_0");
-    }
-  }
-
-  public boolean isValid() {
-    return code() == Bytecodes._fast_aaccess_0;
-  }
-
-  public static BytecodeFastAAccess0 at(Method method, int bci) {
-    BytecodeFastAAccess0 b = new BytecodeFastAAccess0(method, bci);
-    if (Assert.ASSERTS_ENABLED) {
-      b.verify();
-    }
-    return b;
-  }
-
-  /** Like at, but returns null if the BCI is not at fast_aaccess_0  */
-  public static BytecodeFastAAccess0 atCheck(Method method, int bci) {
-    BytecodeFastAAccess0 b = new BytecodeFastAAccess0(method, bci);
-    return (b.isValid() ? b : null);
-  }
-
-  public static BytecodeFastAAccess0 at(BytecodeStream bcs) {
-    return new BytecodeFastAAccess0(bcs.method(), bcs.bci());
-  }
-
-  public String toString() {
-    StringBuffer buf = new StringBuffer();
-    buf.append("aload_0");
-    buf.append(spaces);
-    buf.append(super.toString());
-    return buf.toString();
-  }
-}
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeFastIAccess0.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeFastIAccess0.java
deleted file mode 100644
index 7cfa320..0000000
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeFastIAccess0.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved.
- * 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 sun.jvm.hotspot.interpreter;
-
-import sun.jvm.hotspot.oops.*;
-import sun.jvm.hotspot.utilities.*;
-
-public class BytecodeFastIAccess0 extends BytecodeGetPut {
-  BytecodeFastIAccess0(Method method, int bci) {
-    super(method, bci);
-  }
-
-  public int index() {
-    return (int) (0xFF & javaShortAt(2));
-  }
-
-  public boolean isStatic() {
-    return false;
-  }
-
-  public void verify() {
-    if (Assert.ASSERTS_ENABLED) {
-      Assert.that(isValid(), "check fast_iaccess_0");
-    }
-  }
-
-  public boolean isValid() {
-    return code() == Bytecodes._fast_iaccess_0;
-  }
-
-  public static BytecodeFastIAccess0 at(Method method, int bci) {
-    BytecodeFastIAccess0 b = new BytecodeFastIAccess0(method, bci);
-    if (Assert.ASSERTS_ENABLED) {
-      b.verify();
-    }
-    return b;
-  }
-
-  /** Like at, but returns null if the BCI is not at fast_iaccess_0  */
-  public static BytecodeFastIAccess0 atCheck(Method method, int bci) {
-    BytecodeFastIAccess0 b = new BytecodeFastIAccess0(method, bci);
-    return (b.isValid() ? b : null);
-  }
-
-  public static BytecodeFastIAccess0 at(BytecodeStream bcs) {
-    return new BytecodeFastIAccess0(bcs.method(), bcs.bci());
-  }
-
-  public String toString() {
-    StringBuffer buf = new StringBuffer();
-    buf.append("aload_0");
-    buf.append(spaces);
-    buf.append(super.toString());
-    return buf.toString();
-  }
-}
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeLoadConstant.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeLoadConstant.java
index d1f9f70..051f855 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeLoadConstant.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeLoadConstant.java
@@ -28,29 +28,25 @@
 import sun.jvm.hotspot.runtime.*;
 import sun.jvm.hotspot.utilities.*;
 
-public class BytecodeLoadConstant extends BytecodeWithCPIndex {
+public class BytecodeLoadConstant extends Bytecode {
   BytecodeLoadConstant(Method method, int bci) {
     super(method, bci);
   }
 
   public boolean hasCacheIndex() {
     // normal ldc uses CP index, but fast_aldc uses swapped CP cache index
-    return javaCode() != code();
+    return code() >= Bytecodes.number_of_java_codes;
   }
 
-  public int index() {
-    int i = javaCode() == Bytecodes._ldc ?
-                 (int) (0xFF & javaByteAt(1))
-               : (int) (0xFFFF & javaShortAt(1));
-    if (hasCacheIndex()) {
-      return (0xFFFF & VM.getVM().getBytes().swapShort((short) i));
-    } else {
-      return i;
-    }
+  int rawIndex() {
+    if (javaCode() == Bytecodes._ldc)
+      return getIndexU1();
+    else
+      return getIndexU2(code(), false);
   }
 
   public int poolIndex() {
-    int i = index();
+    int i = rawIndex();
     if (hasCacheIndex()) {
       ConstantPoolCache cpCache = method().getConstants().getCache();
       return cpCache.getEntryAt(i).getConstantPoolIndex();
@@ -61,12 +57,18 @@
 
   public int cacheIndex() {
     if (hasCacheIndex()) {
-      return index();
+      return rawIndex();
     } else {
       return -1;  // no cache index
     }
   }
 
+  public BasicType resultType() {
+    int index = poolIndex();
+    ConstantTag tag = method().getConstants().getTagAt(index);
+    return tag.basicType();
+  }
+
   private Oop getCachedConstant() {
     int i = cacheIndex();
     if (i >= 0) {
@@ -88,7 +90,7 @@
            jcode == Bytecodes._ldc2_w;
     if (! codeOk) return false;
 
-    ConstantTag ctag = method().getConstants().getTagAt(index());
+    ConstantTag ctag = method().getConstants().getTagAt(rawIndex());
     if (jcode == Bytecodes._ldc2_w) {
        // has to be double or long
        return (ctag.isDouble() || ctag.isLong()) ? true: false;
@@ -107,7 +109,7 @@
        return false;
     }
 
-    ConstantTag ctag = method().getConstants().getTagAt(index());
+    ConstantTag ctag = method().getConstants().getTagAt(poolIndex());
     return ctag.isKlass() || ctag.isUnresolvedKlass();
   }
 
@@ -120,7 +122,7 @@
     // We just look at the object at the corresponding index and
     // decide based on the oop type.
     ConstantPool cpool = method().getConstants();
-    int cpIndex = index();
+    int cpIndex = poolIndex();
     ConstantPool.CPSlot oop = cpool.getSlotAt(cpIndex);
     if (oop.isOop()) {
       return (Klass) oop.getOop();
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeStream.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeStream.java
index 20e475b..6084b35 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeStream.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeStream.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -130,7 +130,13 @@
   public int     getIndex()           { return (isWide())
                                           ? (_method.getBytecodeShortArg(bci() + 2) & 0xFFFF)
                                           : (_method.getBytecodeOrBPAt(bci() + 1) & 0xFF); }
-  public int     getIndexBig()        { return _method.getBytecodeShortArg(bci() + 1); }
+  public int     getIndexU1()         { return _method.getBytecodeOrBPAt(bci() + 1) & 0xFF; }
+  public int     getIndexU2()         { return _method.getBytecodeShortArg(bci() + 1) & 0xFFFF; }
+  public int     getIndexU4()         { return _method.getNativeIntArg(bci() + 1); }
+  public boolean hasIndexU4()         { return code() == Bytecodes._invokedynamic; }
+
+  public int     getIndexU1Cpcache()         { return _method.getBytecodeOrBPAt(bci() + 1) & 0xFF; }
+  public int     getIndexU2Cpcache()         { return _method.getNativeShortArg(bci() + 1) & 0xFFFF; }
 
   // Fetch at absolute BCI (for manual parsing of certain bytecodes)
   public int     codeAt(int bci) {
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWideable.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWideable.java
index b646873..30df125 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWideable.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWideable.java
@@ -38,7 +38,6 @@
 
   // the local variable index
   public int getLocalVarIndex() {
-    return (isWide()) ? (int) (0xFFFF & javaShortAt(1))
-            : (int) (0xFF & javaByteAt(1));
+    return (isWide()) ? getIndexU2(code(), true) : getIndexU1();
   }
 }
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java
index fc0730f..319558f 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java
@@ -35,7 +35,7 @@
   }
 
   // the constant pool index for this bytecode
-  public int index() { return 0xFFFF & javaShortAt(1); }
+  public int index() { return getIndexU2(code(), false); }
 
   public int getSecondaryIndex() {
      throw new IllegalArgumentException("must be invokedynamic");
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java
index 1306dc4..5e5acc1 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java
@@ -276,6 +276,34 @@
 
   public static final int number_of_codes       = 233;
 
+  // Flag bits derived from format strings, can_trap, can_rewrite, etc.:
+  // semantic flags:
+  static final int  _bc_can_trap      = 1<<0;     // bytecode execution can trap or block
+  static final int  _bc_can_rewrite   = 1<<1;     // bytecode execution has an alternate form
+
+  // format bits (determined only by the format string):
+  static final int  _fmt_has_c        = 1<<2;     // constant, such as sipush "bcc"
+  static final int  _fmt_has_j        = 1<<3;     // constant pool cache index, such as getfield "bjj"
+  static final int  _fmt_has_k        = 1<<4;     // constant pool index, such as ldc "bk"
+  static final int  _fmt_has_i        = 1<<5;     // local index, such as iload
+  static final int  _fmt_has_o        = 1<<6;     // offset, such as ifeq
+  static final int  _fmt_has_nbo      = 1<<7;     // contains native-order field(s)
+  static final int  _fmt_has_u2       = 1<<8;     // contains double-byte field(s)
+  static final int  _fmt_has_u4       = 1<<9;     // contains quad-byte field
+  static final int  _fmt_not_variable = 1<<10;    // not of variable length (simple or wide)
+  static final int  _fmt_not_simple   = 1<<11;    // either wide or variable length
+  static final int  _all_fmt_bits     = (_fmt_not_simple*2 - _fmt_has_c);
+
+  // Example derived format syndromes:
+  static final int  _fmt_b      = _fmt_not_variable;
+  static final int  _fmt_bc     = _fmt_b | _fmt_has_c;
+  static final int  _fmt_bi     = _fmt_b | _fmt_has_i;
+  static final int  _fmt_bkk    = _fmt_b | _fmt_has_k | _fmt_has_u2;
+  static final int  _fmt_bJJ    = _fmt_b | _fmt_has_j | _fmt_has_u2 | _fmt_has_nbo;
+  static final int  _fmt_bo2    = _fmt_b | _fmt_has_o | _fmt_has_u2;
+  static final int  _fmt_bo4    = _fmt_b | _fmt_has_o | _fmt_has_u4;
+
+
   public static int specialLengthAt(Method method, int bci) {
     int code = codeAt(method, bci);
     switch (code) {
@@ -337,18 +365,20 @@
   //   static Code       non_breakpoint_code_at(address bcp, methodOop method = null);
 
   // Bytecode attributes
-  public static boolean   isDefined    (int code) { return 0 <= code && code < number_of_codes && _format[code] != null; }
-  public static boolean   wideIsDefined(int code) { return isDefined(code) && _wide_format[code] != null; }
+  public static boolean   isDefined    (int code) { return 0 <= code && code < number_of_codes && flags(code, false) != 0; }
+  public static boolean   wideIsDefined(int code) { return isDefined(code) && flags(code, true) != 0; }
   public static String    name         (int code) { check(code);      return _name          [code]; }
   public static String    format       (int code) { check(code);      return _format        [code]; }
   public static String    wideFormat   (int code) { wideCheck(code);  return _wide_format   [code]; }
   public static int       resultType   (int code) { check(code);      return _result_type   [code]; }
   public static int       depth        (int code) { check(code);      return _depth         [code]; }
-  public static int       lengthFor    (int code) { check(code);      return _length        [code]; }
-  public static boolean   canTrap      (int code) { check(code);      return _can_trap      [code]; }
+  public static int       lengthFor    (int code) { check(code);      return _lengths       [code] & 0xF; }
+  public static int       wideLengthFor(int code) { check(code);      return _lengths       [code] >> 4; }
+  public static boolean   canTrap      (int code) { check(code);      return has_all_flags(code, _bc_can_trap, false); }
   public static int       javaCode     (int code) { check(code);      return _java_code     [code]; }
-  public static boolean   canRewrite   (int code) { check(code);      return _can_rewrite   [code]; }
-  public static int       wideLengthFor(int code) { wideCheck(code);  return wideFormat(code).length(); }
+  public static boolean   canRewrite   (int code) { check(code);      return has_all_flags(code, _bc_can_rewrite, false); }
+  public static boolean   native_byte_order(int code)  { check(code);      return has_all_flags(code, _fmt_has_nbo, false); }
+  public static boolean   uses_cp_cache  (int code)    { check(code);      return has_all_flags(code, _fmt_has_j, false); }
   public static int       lengthAt     (Method method, int bci) { int l = lengthFor(codeAt(method, bci)); return l > 0 ? l : specialLengthAt(method, bci); }
   public static int       javaLengthAt (Method method, int bci) { int l = lengthFor(javaCode(codeAt(method, bci))); return l > 0 ? l : specialLengthAt(method, bci); }
   public static boolean   isJavaCode   (int code) { return 0 <= code && code < number_of_java_codes; }
@@ -362,6 +392,92 @@
   public static boolean   isZeroConst  (int code) { return (code == _aconst_null || code == _iconst_0
                                                                                  || code == _fconst_0 || code == _dconst_0); }
 
+  static int         flags          (int code, boolean is_wide) {
+    assert code == (code & 0xff) : "must be a byte";
+    return _flags[code + (is_wide ? 256 : 0)];
+  }
+  static int         format_bits    (int code, boolean is_wide) { return flags(code, is_wide) & _all_fmt_bits; }
+  static boolean     has_all_flags  (int code, int test_flags, boolean is_wide) {
+    return (flags(code, is_wide) & test_flags) == test_flags;
+  }
+
+  static char compute_flags(String format) {
+    return compute_flags(format, 0);
+  }
+  static char compute_flags(String format, int more_flags) {
+    if (format == null)  return 0;  // not even more_flags
+    int flags = more_flags;
+    int fp = 0;
+    if (format.length() == 0) {
+      flags |= _fmt_not_simple; // but variable
+    } else {
+      switch (format.charAt(fp)) {
+      case 'b':
+        flags |= _fmt_not_variable;  // but simple
+        ++fp;  // skip 'b'
+        break;
+      case 'w':
+        flags |= _fmt_not_variable | _fmt_not_simple;
+        ++fp;  // skip 'w'
+      assert(format.charAt(fp) == 'b') : "wide format must start with 'wb'";
+        ++fp;  // skip 'b'
+        break;
+      }
+    }
+
+    boolean has_nbo = false, has_jbo = false;
+    int has_size = 0;
+    while (fp < format.length()) {
+      int this_flag = 0;
+      char fc = format.charAt(fp++);
+      switch (fc) {
+      case '_': continue;         // ignore these
+
+      case 'j': this_flag = _fmt_has_j; has_jbo = true; break;
+      case 'k': this_flag = _fmt_has_k; has_jbo = true; break;
+      case 'i': this_flag = _fmt_has_i; has_jbo = true; break;
+      case 'c': this_flag = _fmt_has_c; has_jbo = true; break;
+      case 'o': this_flag = _fmt_has_o; has_jbo = true; break;
+
+        // uppercase versions mark native byte order (from Rewriter)
+        // actually, only the 'J' case happens currently
+      case 'J': this_flag = _fmt_has_j; has_nbo = true; break;
+      case 'K': this_flag = _fmt_has_k; has_nbo = true; break;
+      case 'I': this_flag = _fmt_has_i; has_nbo = true; break;
+      case 'C': this_flag = _fmt_has_c; has_nbo = true; break;
+      case 'O': this_flag = _fmt_has_o; has_nbo = true; break;
+      default:  assert false : "bad char in format";
+      }
+
+      flags |= this_flag;
+
+      assert !(has_jbo && has_nbo) : "mixed byte orders in format";
+      if (has_nbo)
+        flags |= _fmt_has_nbo;
+
+      int this_size = 1;
+      if (fp < format.length() && format.charAt(fp) == fc) {
+        // advance beyond run of the same characters
+        this_size = 2;
+        while (fp  + 1 < format.length() && format.charAt(++fp) == fc)  this_size++;
+        switch (this_size) {
+        case 2: flags |= _fmt_has_u2; break;
+        case 4: flags |= _fmt_has_u4; break;
+        default: assert false : "bad rep count in format";
+        }
+      }
+      assert has_size == 0 ||                     // no field yet
+        this_size == has_size ||             // same size
+        this_size < has_size && fp == format.length() : // last field can be short
+             "mixed field sizes in format";
+      has_size = this_size;
+    }
+
+    assert flags == (char)flags : "change _format_flags";
+    return (char)flags;
+  }
+
+
   //----------------------------------------------------------------------
   // Internals only below this point
   //
@@ -371,10 +487,9 @@
   private static String[]    _wide_format;
   private static int[]       _result_type;
   private static byte[]      _depth;
-  private static byte[]      _length;
-  private static boolean[]   _can_trap;
+  private static byte[]      _lengths;
   private static int[]       _java_code;
-  private static boolean[]   _can_rewrite;
+  private static char[]      _flags;
 
   static {
     _name           = new String [number_of_codes];
@@ -382,10 +497,9 @@
     _wide_format    = new String [number_of_codes];
     _result_type    = new int    [number_of_codes]; // See BasicType.java
     _depth          = new byte   [number_of_codes];
-    _length         = new byte   [number_of_codes];
-    _can_trap       = new boolean[number_of_codes];
+    _lengths        = new byte   [number_of_codes];
     _java_code      = new int    [number_of_codes];
-    _can_rewrite    = new boolean[number_of_codes];
+    _flags          = new char[256 * 2]; // all second page for wide formats
 
     // In case we want to fetch this information from the VM in the
     // future
@@ -712,18 +826,19 @@
     if (Assert.ASSERTS_ENABLED) {
       Assert.that(wide_format == null || format != null, "short form must exist if there's a wide form");
     }
+    int len  = (format      != null ? format.length()      : 0);
+    int wlen = (wide_format != null ? wide_format.length() : 0);
     _name          [code] = name;
-    _format        [code] = format;
-    _wide_format   [code] = wide_format;
     _result_type   [code] = result_type;
     _depth         [code] = (byte) depth;
-    _can_trap      [code] = can_trap;
-    _length        [code] = (byte) (format != null ? format.length() : 0);
+    _lengths       [code] = (byte)((wlen << 4) | (len & 0xF));
     _java_code     [code] = java_code;
-    if (java_code != code) {
-      _can_rewrite[java_code] = true;
-    } else {
-      _can_rewrite[java_code] = false;
-    }
+    _format        [code] = format;
+    _wide_format   [code] = wide_format;
+    int bc_flags = 0;
+    if (can_trap)           bc_flags |= _bc_can_trap;
+    if (java_code != code)  bc_flags |= _bc_can_rewrite;
+    _flags[code+0*256] = compute_flags(format,      bc_flags);
+    _flags[code+1*256] = compute_flags(wide_format, bc_flags);
   }
 }
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstMethod.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstMethod.java
index 51285d3..5346d49 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstMethod.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstMethod.java
@@ -164,6 +164,18 @@
     return (short) ((hi << 8) | lo);
   }
 
+  /** Fetches a 16-bit native ordered value from the
+      bytecode stream */
+  public short getNativeShortArg(int bci) {
+    int hi = getBytecodeOrBPAt(bci);
+    int lo = getBytecodeOrBPAt(bci + 1);
+    if (VM.getVM().isBigEndian()) {
+        return (short) ((hi << 8) | lo);
+    } else {
+        return (short) ((lo << 8) | hi);
+    }
+  }
+
   /** Fetches a 32-bit big-endian ("Java ordered") value from the
       bytecode stream */
   public int getBytecodeIntArg(int bci) {
@@ -175,6 +187,21 @@
     return (b4 << 24) | (b3 << 16) | (b2 << 8) | b1;
   }
 
+  /** Fetches a 32-bit native ordered value from the
+      bytecode stream */
+  public int getNativeIntArg(int bci) {
+    int b4 = getBytecodeOrBPAt(bci);
+    int b3 = getBytecodeOrBPAt(bci + 1);
+    int b2 = getBytecodeOrBPAt(bci + 2);
+    int b1 = getBytecodeOrBPAt(bci + 3);
+
+    if (VM.getVM().isBigEndian()) {
+        return (b4 << 24) | (b3 << 16) | (b2 << 8) | b1;
+    } else {
+        return (b1 << 24) | (b2 << 16) | (b3 << 8) | b4;
+    }
+  }
+
   public byte[] getByteCode() {
      byte[] bc = new byte[ (int) getCodeSize() ];
      for( int i=0; i < bc.length; i++ )
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java
index f297e32..5752eae 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java
@@ -212,13 +212,60 @@
   }
 
   public Symbol getNameRefAt(int which) {
-    int nameIndex = getNameAndTypeAt(getNameAndTypeRefIndexAt(which))[0];
-    return getSymbolAt(nameIndex);
+    return implGetNameRefAt(which, false);
+  }
+
+  private Symbol implGetNameRefAt(int which, boolean uncached) {
+    int signatureIndex = getNameRefIndexAt(implNameAndTypeRefIndexAt(which, uncached));
+    return getSymbolAt(signatureIndex);
   }
 
   public Symbol getSignatureRefAt(int which) {
-    int sigIndex = getNameAndTypeAt(getNameAndTypeRefIndexAt(which))[1];
-    return getSymbolAt(sigIndex);
+    return implGetSignatureRefAt(which, false);
+  }
+
+  private Symbol implGetSignatureRefAt(int which, boolean uncached) {
+    int signatureIndex = getSignatureRefIndexAt(implNameAndTypeRefIndexAt(which, uncached));
+    return getSymbolAt(signatureIndex);
+  }
+
+
+  private int implNameAndTypeRefIndexAt(int which, boolean uncached) {
+    int i = which;
+    if (!uncached && getCache() != null) {
+      if (ConstantPoolCache.isSecondaryIndex(which)) {
+        // Invokedynamic index.
+        int pool_index = getCache().getMainEntryAt(which).getConstantPoolIndex();
+        pool_index = invokeDynamicNameAndTypeRefIndexAt(pool_index);
+        // assert(tagAt(pool_index).isNameAndType(), "");
+        return pool_index;
+      }
+      // change byte-ordering and go via cache
+      i = remapInstructionOperandFromCache(which);
+    } else {
+      if (getTagAt(which).isInvokeDynamic()) {
+        int pool_index = invokeDynamicNameAndTypeRefIndexAt(which);
+        // assert(tag_at(pool_index).is_name_and_type(), "");
+        return pool_index;
+      }
+    }
+    // assert(tag_at(i).is_field_or_method(), "Corrupted constant pool");
+    // assert(!tag_at(i).is_invoke_dynamic(), "Must be handled above");
+    int ref_index = getIntAt(i);
+    return extractHighShortFromInt(ref_index);
+  }
+
+  private int remapInstructionOperandFromCache(int operand) {
+    int cpc_index = operand;
+    // DEBUG_ONLY(cpc_index -= CPCACHE_INDEX_TAG);
+    // assert((int)(u2)cpc_index == cpc_index, "clean u2");
+    int member_index = getCache().getEntryAt(cpc_index).getConstantPoolIndex();
+    return member_index;
+  }
+
+  int invokeDynamicNameAndTypeRefIndexAt(int which) {
+    // assert(tag_at(which).is_invoke_dynamic(), "Corrupted constant pool");
+    return extractHighShortFromInt(getIntAt(which));
   }
 
   // returns null, if not resolved.
@@ -253,15 +300,7 @@
   }
 
   public int getNameAndTypeRefIndexAt(int index) {
-    int refIndex = getFieldOrMethodAt(index);
-    if (DEBUG) {
-      System.err.println("ConstantPool.getNameAndTypeRefIndexAt(" + index + "): refIndex = " + refIndex);
-    }
-    int i = extractHighShortFromInt(refIndex);
-    if (DEBUG) {
-      System.err.println("ConstantPool.getNameAndTypeRefIndexAt(" + index + "): result = " + i);
-    }
-    return i;
+    return implNameAndTypeRefIndexAt(index, false);
   }
 
   /** Lookup for entries consisting of (name_index, signature_index) */
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java
index 47a3fac..df14416 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -72,9 +72,7 @@
   }
 
   public ConstantPoolCacheEntry getEntryAt(int i) {
-    if (Assert.ASSERTS_ENABLED) {
-      Assert.that(0 <= i && i < getLength(), "index out of bounds");
-    }
+    if (i < 0 || i >= getLength()) throw new IndexOutOfBoundsException(i + " " + getLength());
     return new ConstantPoolCacheEntry(this, i);
   }
 
@@ -84,21 +82,27 @@
 
   // secondary entries hold invokedynamic call site bindings
   public ConstantPoolCacheEntry getSecondaryEntryAt(int i) {
-    ConstantPoolCacheEntry e = new ConstantPoolCacheEntry(this, decodeSecondaryIndex(i));
+    int rawIndex = i;
+    if (isSecondaryIndex(i)) {
+      rawIndex = decodeSecondaryIndex(i);
+    }
+    ConstantPoolCacheEntry e = getEntryAt(rawIndex);
     if (Assert.ASSERTS_ENABLED) {
-      Assert.that(e.isSecondaryEntry(), "must be a secondary entry");
+      Assert.that(e.isSecondaryEntry(), "must be a secondary entry:" + rawIndex);
     }
     return e;
   }
 
   public ConstantPoolCacheEntry getMainEntryAt(int i) {
+    int primaryIndex = i;
     if (isSecondaryIndex(i)) {
       // run through an extra level of indirection:
-      i = getSecondaryEntryAt(i).getMainEntryIndex();
+      int rawIndex = decodeSecondaryIndex(i);
+      primaryIndex = getEntryAt(rawIndex).getMainEntryIndex();
     }
-    ConstantPoolCacheEntry e = new ConstantPoolCacheEntry(this, i);
+    ConstantPoolCacheEntry e = getEntryAt(primaryIndex);
     if (Assert.ASSERTS_ENABLED) {
-      Assert.that(!e.isSecondaryEntry(), "must not be a secondary entry");
+      Assert.that(!e.isSecondaryEntry(), "must not be a secondary entry:" + primaryIndex);
     }
     return e;
   }
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java
index 30f3497..f25493d 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java
@@ -569,10 +569,10 @@
       case Bytecodes._invokedynamic:
         // FIXME: print signature of referenced method (need more
         // accessors in ConstantPool and ConstantPoolCache)
-        int idx = currentBC.getIndexBig();
+        int idx = currentBC.hasIndexU4() ? currentBC.getIndexU4() : currentBC.getIndexU2();
         tty.print(" idx " + idx);
         /*
-          int idx = currentBC.getIndexBig();
+          int idx = currentBC.getIndexU2();
           ConstantPool cp       = method().getConstants();
           int nameAndTypeIdx    = cp.name_and_type_ref_index_at(idx);
           int signatureIdx      = cp.signature_ref_index_at(nameAndTypeIdx);
@@ -609,10 +609,10 @@
       case Bytecodes._invokedynamic:
         // FIXME: print signature of referenced method (need more
         // accessors in ConstantPool and ConstantPoolCache)
-        int idx = currentBC.getIndexBig();
+        int idx = currentBC.hasIndexU4() ? currentBC.getIndexU4() : currentBC.getIndexU2();
         tty.print(" idx " + idx);
         /*
-          int idx = currentBC.getIndexBig();
+          int idx = currentBC.getIndexU2();
           constantPoolOop cp    = method().constants();
           int nameAndTypeIdx    = cp.name_and_type_ref_index_at(idx);
           int signatureIdx      = cp.signature_ref_index_at(nameAndTypeIdx);
@@ -1118,7 +1118,8 @@
       current instruction, starting in the current state. */
   void  interp1                             (BytecodeStream itr) {
     if (DEBUG) {
-      System.err.println(" - bci " + itr.bci());
+      System.err.println(" - bci " + itr.bci() + " " + itr.code());
+      printCurrentState(System.err, itr, false);
     }
 
     //    if (TraceNewOopMapGeneration) {
@@ -1179,8 +1180,8 @@
 
     case Bytecodes._ldc2_w:            ppush(vvCTS);               break;
 
-    case Bytecodes._ldc:               doLdc(itr.getIndex(), itr.bci());    break;
-    case Bytecodes._ldc_w:             doLdc(itr.getIndexBig(), itr.bci());break;
+    case Bytecodes._ldc:               doLdc(itr.bci());           break;
+    case Bytecodes._ldc_w:             doLdc(itr.bci());           break;
 
     case Bytecodes._iload:
     case Bytecodes._fload:             ppload(vCTS, itr.getIndex()); break;
@@ -1372,18 +1373,16 @@
     case Bytecodes._jsr:               doJsr(itr.dest());          break;
     case Bytecodes._jsr_w:             doJsr(itr.dest_w());        break;
 
-    case Bytecodes._getstatic:         doField(true,  true,
-                                               itr.getIndexBig(),
-                                               itr.bci()); break;
-    case Bytecodes._putstatic:         doField(false, true,  itr.getIndexBig(), itr.bci()); break;
-    case Bytecodes._getfield:          doField(true,  false, itr.getIndexBig(), itr.bci()); break;
-    case Bytecodes._putfield:          doField(false, false, itr.getIndexBig(), itr.bci()); break;
+    case Bytecodes._getstatic:         doField(true,  true,  itr.getIndexU2Cpcache(), itr.bci()); break;
+    case Bytecodes._putstatic:         doField(false, true,  itr.getIndexU2Cpcache(), itr.bci()); break;
+    case Bytecodes._getfield:          doField(true,  false, itr.getIndexU2Cpcache(), itr.bci()); break;
+    case Bytecodes._putfield:          doField(false, false, itr.getIndexU2Cpcache(), itr.bci()); break;
 
     case Bytecodes._invokevirtual:
-    case Bytecodes._invokespecial:     doMethod(false, false, itr.getIndexBig(), itr.bci()); break;
-    case Bytecodes._invokestatic:      doMethod(true,  false, itr.getIndexBig(), itr.bci()); break;
-    case Bytecodes._invokedynamic:     doMethod(false, true,  itr.getIndexBig(), itr.bci()); break;
-    case Bytecodes._invokeinterface:   doMethod(false, true,  itr.getIndexBig(), itr.bci()); break;
+    case Bytecodes._invokespecial:     doMethod(false, false, itr.getIndexU2Cpcache(), itr.bci()); break;
+    case Bytecodes._invokestatic:      doMethod(true,  false, itr.getIndexU2Cpcache(), itr.bci()); break;
+    case Bytecodes._invokedynamic:     doMethod(true,  false, itr.getIndexU4(),        itr.bci()); break;
+    case Bytecodes._invokeinterface:   doMethod(false,  true, itr.getIndexU2Cpcache(), itr.bci()); break;
     case Bytecodes._newarray:
     case Bytecodes._anewarray:         ppNewRef(vCTS, itr.bci()); break;
     case Bytecodes._checkcast:         doCheckcast(); break;
@@ -1665,13 +1664,11 @@
     }
   }
 
-  void  doLdc                               (int idx, int bci) {
+  void  doLdc                               (int bci) {
+    BytecodeLoadConstant ldc = BytecodeLoadConstant.at(_method, bci);
     ConstantPool  cp  = method().getConstants();
-    ConstantTag   tag = cp.getTagAt(idx);
-    CellTypeState cts = (tag.isString() || tag.isUnresolvedString() ||
-                         tag.isKlass() || tag.isUnresolvedKlass())
-                          ? CellTypeState.makeLineRef(bci)
-                          : valCTS;
+    BasicType     bt = ldc.resultType();
+    CellTypeState cts = (bt == BasicType.T_OBJECT) ? CellTypeState.makeLineRef(bci) : valCTS;
     ppush1(cts);
   }
 
@@ -1729,15 +1726,7 @@
   void  doMethod                            (boolean is_static, boolean is_interface, int idx, int bci) {
     // Dig up signature for field in constant pool
     ConstantPool cp       = _method.getConstants();
-    int nameAndTypeIdx    = cp.getTagAt(idx).isNameAndType() ? idx : cp.getNameAndTypeRefIndexAt(idx);
-    int signatureIdx      = cp.getSignatureRefIndexAt(nameAndTypeIdx);
-    Symbol signature      = cp.getSymbolAt(signatureIdx);
-
-    if (DEBUG) {
-      System.err.println("doMethod: signature = " + signature.asString() + ", idx = " + idx +
-                         ", nameAndTypeIdx = " + nameAndTypeIdx + ", signatureIdx = " + signatureIdx +
-                         ", bci = " + bci);
-    }
+    Symbol signature      = cp.getSignatureRefAt(idx);
 
     // Parse method signature
     CellTypeStateList out = new CellTypeStateList(4);
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Method.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Method.java
index 3a40619..fa4dbfa 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Method.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Method.java
@@ -180,12 +180,24 @@
     return getConstMethod().getBytecodeShortArg(bci);
   }
 
+  /** Fetches a 16-bit native ordered value from the
+      bytecode stream */
+  public short getNativeShortArg(int bci) {
+    return getConstMethod().getNativeShortArg(bci);
+  }
+
   /** Fetches a 32-bit big-endian ("Java ordered") value from the
       bytecode stream */
   public int getBytecodeIntArg(int bci) {
     return getConstMethod().getBytecodeIntArg(bci);
   }
 
+  /** Fetches a 32-bit native ordered value from the
+      bytecode stream */
+  public int getNativeIntArg(int bci) {
+    return getConstMethod().getNativeIntArg(bci);
+  }
+
   public byte[] getByteCode() {
     return getConstMethod().getByteCode();
   }
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/TypeArray.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/TypeArray.java
index f7f5244..900b111 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/TypeArray.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/TypeArray.java
@@ -53,6 +53,9 @@
   public boolean isTypeArray()         { return true; }
 
   public byte getByteAt(long index) {
+    if (index < 0 || index >= getLength()) {
+      throw new ArrayIndexOutOfBoundsException(index + " " + getLength());
+    }
     long offset = baseOffsetInBytes(BasicType.T_BYTE) + index * getHeap().getByteSize();
     return getHandle().getJByteAt(offset);
   }
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ServiceThread.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ServiceThread.java
index ad81488..d4e2840 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ServiceThread.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ServiceThread.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2011 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/ConstantTag.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/ConstantTag.java
index 60a2172..df200bc 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/ConstantTag.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/ConstantTag.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -24,31 +24,33 @@
 
 package sun.jvm.hotspot.utilities;
 
+import sun.jvm.hotspot.runtime.BasicType;
+
 public class ConstantTag {
   // These replicated from the VM to save space
-  private static int JVM_CONSTANT_Utf8                    = 1;
-  private static int JVM_CONSTANT_Unicode                 = 2; // unused
-  private static int JVM_CONSTANT_Integer                 = 3;
-  private static int JVM_CONSTANT_Float                   = 4;
-  private static int JVM_CONSTANT_Long                    = 5;
-  private static int JVM_CONSTANT_Double                  = 6;
-  private static int JVM_CONSTANT_Class                   = 7;
-  private static int JVM_CONSTANT_String                  = 8;
-  private static int JVM_CONSTANT_Fieldref                = 9;
-  private static int JVM_CONSTANT_Methodref               = 10;
-  private static int JVM_CONSTANT_InterfaceMethodref      = 11;
-  private static int JVM_CONSTANT_NameAndType             = 12;
-  private static int JVM_CONSTANT_MethodHandle            = 15;  // JSR 292
-  private static int JVM_CONSTANT_MethodType              = 16;  // JSR 292
-  //      static int JVM_CONSTANT_(unused)                = 17;  // JSR 292 early drafts only
-  private static int JVM_CONSTANT_InvokeDynamic           = 18;  // JSR 292
-  private static int JVM_CONSTANT_Invalid                 = 0;   // For bad value initialization
-  private static int JVM_CONSTANT_UnresolvedClass         = 100; // Temporary tag until actual use
-  private static int JVM_CONSTANT_ClassIndex              = 101; // Temporary tag while constructing constant pool
-  private static int JVM_CONSTANT_UnresolvedString        = 102; // Temporary tag until actual use
-  private static int JVM_CONSTANT_StringIndex             = 103; // Temporary tag while constructing constant pool
-  private static int JVM_CONSTANT_UnresolvedClassInError  = 104; // Resolution failed
-  private static int JVM_CONSTANT_Object                  = 105; // Required for BoundMethodHandle arguments.
+  private static final int JVM_CONSTANT_Utf8                    = 1;
+  private static final int JVM_CONSTANT_Unicode                 = 2; // unused
+  private static final int JVM_CONSTANT_Integer                 = 3;
+  private static final int JVM_CONSTANT_Float                   = 4;
+  private static final int JVM_CONSTANT_Long                    = 5;
+  private static final int JVM_CONSTANT_Double                  = 6;
+  private static final int JVM_CONSTANT_Class                   = 7;
+  private static final int JVM_CONSTANT_String                  = 8;
+  private static final int JVM_CONSTANT_Fieldref                = 9;
+  private static final int JVM_CONSTANT_Methodref               = 10;
+  private static final int JVM_CONSTANT_InterfaceMethodref      = 11;
+  private static final int JVM_CONSTANT_NameAndType             = 12;
+  private static final int JVM_CONSTANT_MethodHandle            = 15;  // JSR 292
+  private static final int JVM_CONSTANT_MethodType              = 16;  // JSR 292
+  //      static final int JVM_CONSTANT_(unused)                = 17;  // JSR 292 early drafts only
+  private static final int JVM_CONSTANT_InvokeDynamic           = 18;  // JSR 292
+  private static final int JVM_CONSTANT_Invalid                 = 0;   // For bad value initialization
+  private static final int JVM_CONSTANT_UnresolvedClass         = 100; // Temporary tag until actual use
+  private static final int JVM_CONSTANT_ClassIndex              = 101; // Temporary tag while constructing constant pool
+  private static final int JVM_CONSTANT_UnresolvedString        = 102; // Temporary tag until actual use
+  private static final int JVM_CONSTANT_StringIndex             = 103; // Temporary tag while constructing constant pool
+  private static final int JVM_CONSTANT_UnresolvedClassInError  = 104; // Resolution failed
+  private static final int JVM_CONSTANT_Object                  = 105; // Required for BoundMethodHandle arguments.
 
   // JVM_CONSTANT_MethodHandle subtypes //FIXME: connect these to data structure
   private static int JVM_REF_getField                = 1;
@@ -99,4 +101,31 @@
   public boolean isKlassReference()   { return isKlassIndex() || isUnresolvedKlass(); }
   public boolean isFieldOrMethod()    { return isField() || isMethod() || isInterfaceMethod(); }
   public boolean isSymbol()           { return isUtf8(); }
+
+  public BasicType basicType() {
+    switch (tag) {
+    case JVM_CONSTANT_Integer :
+      return BasicType.T_INT;
+    case JVM_CONSTANT_Float :
+      return BasicType.T_FLOAT;
+    case JVM_CONSTANT_Long :
+      return BasicType.T_LONG;
+    case JVM_CONSTANT_Double :
+      return BasicType.T_DOUBLE;
+
+    case JVM_CONSTANT_Class :
+    case JVM_CONSTANT_String :
+    case JVM_CONSTANT_UnresolvedClass :
+    case JVM_CONSTANT_UnresolvedClassInError :
+    case JVM_CONSTANT_ClassIndex :
+    case JVM_CONSTANT_UnresolvedString :
+    case JVM_CONSTANT_StringIndex :
+    case JVM_CONSTANT_MethodHandle :
+    case JVM_CONSTANT_MethodType :
+    case JVM_CONSTANT_Object :
+      return BasicType.T_OBJECT;
+    default:
+      throw new InternalError("unexpected tag: " + tag);
+    }
+  }
 }
diff --git a/hotspot/make/hotspot_version b/hotspot/make/hotspot_version
index 2a3983d..55aecb7 100644
--- a/hotspot/make/hotspot_version
+++ b/hotspot/make/hotspot_version
@@ -35,7 +35,7 @@
 
 HS_MAJOR_VER=22
 HS_MINOR_VER=0
-HS_BUILD_NUMBER=01
+HS_BUILD_NUMBER=03
 
 JDK_MAJOR_VER=1
 JDK_MINOR_VER=8
diff --git a/hotspot/make/jprt.gmk b/hotspot/make/jprt.gmk
index 00ee6a2..aded081 100644
--- a/hotspot/make/jprt.gmk
+++ b/hotspot/make/jprt.gmk
@@ -34,13 +34,13 @@
 endif
 
 jprt_build_productEmb:
-	$(MAKE) JAVASE_EMBEDDED=true jprt_build_product
+	$(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_product
 
 jprt_build_debugEmb:
-	$(MAKE) JAVASE_EMBEDDED=true jprt_build_debug
+	$(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_debug
 
 jprt_build_fastdebugEmb:
-	$(MAKE) JAVASE_EMBEDDED=true jprt_build_fastdebug
+	$(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_fastdebug
 
 jprt_build_productOpen:
 	$(MAKE) OPENJDK=true jprt_build_product
diff --git a/hotspot/make/linux/Makefile b/hotspot/make/linux/Makefile
index fa1f56d..d79d4fb 100644
--- a/hotspot/make/linux/Makefile
+++ b/hotspot/make/linux/Makefile
@@ -230,7 +230,7 @@
 # Solaris 2.5.1, 2.6).
 # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
 
-SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 2.7%
+SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3%
 OS_VERSION := $(shell uname -r)
 EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
 
diff --git a/hotspot/make/linux/README b/hotspot/make/linux/README
index 3079cd8..d3efaf8 100644
--- a/hotspot/make/linux/README
+++ b/hotspot/make/linux/README
@@ -1,4 +1,4 @@
-Copyright (c) 2007 Oracle and/or its affiliates. All rights reserved.
+Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   
 This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/make/linux/makefiles/defs.make b/hotspot/make/linux/makefiles/defs.make
index 88329a6..5257dd2 100644
--- a/hotspot/make/linux/makefiles/defs.make
+++ b/hotspot/make/linux/makefiles/defs.make
@@ -124,6 +124,7 @@
 # client and server subdirectories have symbolic links to ../libjsig.so
 EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.so
 EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
 
 ifndef BUILD_CLIENT_ONLY
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
@@ -132,7 +133,6 @@
 
 ifneq ($(ZERO_BUILD), true)
   ifeq ($(ARCH_DATA_MODEL), 32)
-    EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
     EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
     EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so 
   endif
diff --git a/hotspot/make/solaris/makefiles/defs.make b/hotspot/make/solaris/makefiles/defs.make
index 6fc5964..e7cd905 100644
--- a/hotspot/make/solaris/makefiles/defs.make
+++ b/hotspot/make/solaris/makefiles/defs.make
@@ -70,6 +70,8 @@
 EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.so
 
 EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
+
 ifneq ($(BUILD_CLIENT_ONLY),true)
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.so
@@ -77,7 +79,6 @@
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.so
 endif
 ifeq ($(ARCH_DATA_MODEL), 32)
-  EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so 
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_db.so 
diff --git a/hotspot/make/solaris/makefiles/saproc.make b/hotspot/make/solaris/makefiles/saproc.make
index 027faaa..421f556 100644
--- a/hotspot/make/solaris/makefiles/saproc.make
+++ b/hotspot/make/solaris/makefiles/saproc.make
@@ -72,9 +72,9 @@
           -e '/^[0-4]\. /b' \
           -e '/^5\.[0-9] /b' \
           -e '/^5\.10 /b' \
-          -e '/ snv_[0-9][0-9]$/b' \
-          -e '/ snv_[01][0-4][0-9]$/b' \
-          -e '/ snv_15[0-8]$/b' \
+          -e '/ snv_[0-9][0-9]$$/b' \
+          -e '/ snv_[01][0-4][0-9]$$/b' \
+          -e '/ snv_15[0-8]$$/b' \
           -e 's/.*/-DSOLARIS_11_B159_OR_LATER/' \
           -e 'p' \
           )
diff --git a/hotspot/make/windows/makefiles/compile.make b/hotspot/make/windows/makefiles/compile.make
index 75851e2..8cc5677 100644
--- a/hotspot/make/windows/makefiles/compile.make
+++ b/hotspot/make/windows/makefiles/compile.make
@@ -81,7 +81,6 @@
 !endif
 
 CPP_FLAGS=$(CPP_FLAGS) /D "WIN32" /D "_WINDOWS"
-
 # Must specify this for sharedRuntimeTrig.cpp
 CPP_FLAGS=$(CPP_FLAGS) /D "VM_LITTLE_ENDIAN"
 
@@ -232,6 +231,11 @@
  uuid.lib Wsock32.lib winmm.lib /nologo /machine:$(MACHINE) /opt:REF \
  /opt:ICF,8 /map /debug
 
+
+!if $(MSC_VER) >= 1600 
+LINK_FLAGS= $(LINK_FLAGS) psapi.lib
+!endif
+
 # Resource compiler settings
 RC=rc.exe
 RC_FLAGS=/D "HS_VER=$(HS_VER)" \
diff --git a/hotspot/make/windows/makefiles/defs.make b/hotspot/make/windows/makefiles/defs.make
index ded87af..b4b3454 100644
--- a/hotspot/make/windows/makefiles/defs.make
+++ b/hotspot/make/windows/makefiles/defs.make
@@ -171,19 +171,20 @@
 endif
 
 EXPORT_SERVER_DIR = $(EXPORT_JRE_BIN_DIR)/server
+EXPORT_CLIENT_DIR = $(EXPORT_JRE_BIN_DIR)/client
+EXPORT_KERNEL_DIR = $(EXPORT_JRE_BIN_DIR)/kernel
+
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.dll
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.pdb
 EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.map
 EXPORT_LIST += $(EXPORT_LIB_DIR)/jvm.lib
 ifeq ($(ARCH_DATA_MODEL), 32)
-  EXPORT_CLIENT_DIR = $(EXPORT_JRE_BIN_DIR)/client
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.dll
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.pdb
   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.map
   # kernel vm
-  EXPORT_KERNEL_DIR = $(EXPORT_JRE_BIN_DIR)/kernel
   EXPORT_LIST += $(EXPORT_KERNEL_DIR)/Xusage.txt
   EXPORT_LIST += $(EXPORT_KERNEL_DIR)/jvm.dll
   EXPORT_LIST += $(EXPORT_KERNEL_DIR)/jvm.pdb
diff --git a/hotspot/make/windows/makefiles/sa.make b/hotspot/make/windows/makefiles/sa.make
index 85072ec..00d2e9e 100644
--- a/hotspot/make/windows/makefiles/sa.make
+++ b/hotspot/make/windows/makefiles/sa.make
@@ -66,7 +66,7 @@
 	$(QUIETLY) mkdir $(SA_CLASSDIR)\sun\jvm\hotspot\ui\resources
 	$(QUIETLY) cp $(AGENT_SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources
 	$(QUIETLY) cp -r $(AGENT_SRC_DIR)/images/* $(SA_CLASSDIR)
-	$(RUN_JAR) cf $@ -C saclasses .
+	$(RUN_JAR) cf $@ -C $(SA_CLASSDIR) .
 	$(RUN_JAR) uf $@ -C $(AGENT_SRC_DIR:/=\) META-INF\services\com.sun.jdi.connect.Connector
 	$(RUN_JAVAH) -classpath $(SA_CLASSDIR) -jni sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal
 	$(RUN_JAVAH) -classpath $(SA_CLASSDIR) -jni sun.jvm.hotspot.debugger.x86.X86ThreadContext 
diff --git a/hotspot/make/windows/projectfiles/kernel/Makefile b/hotspot/make/windows/projectfiles/kernel/Makefile
index bb231fc..a11b06b 100644
--- a/hotspot/make/windows/projectfiles/kernel/Makefile
+++ b/hotspot/make/windows/projectfiles/kernel/Makefile
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2010 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #   
 # This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/src/cpu/sparc/vm/assembler_sparc.cpp b/hotspot/src/cpu/sparc/vm/assembler_sparc.cpp
index 14f7f6c..4e5d90e 100644
--- a/hotspot/src/cpu/sparc/vm/assembler_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/assembler_sparc.cpp
@@ -100,12 +100,19 @@
   case call_op:    s = "call"; break;
   case branch_op:
     switch (inv_op2(inst)) {
-      case bpr_op2:    s = "bpr";  break;
       case fb_op2:     s = "fb";   break;
       case fbp_op2:    s = "fbp";  break;
       case br_op2:     s = "br";   break;
       case bp_op2:     s = "bp";   break;
       case cb_op2:     s = "cb";   break;
+      case bpr_op2: {
+        if (is_cbcond(inst)) {
+          s = is_cxb(inst) ? "cxb" : "cwb";
+        } else {
+          s = "bpr";
+        }
+        break;
+      }
       default:         s = "????"; break;
     }
   }
@@ -127,12 +134,21 @@
   case call_op:    m = wdisp(word_aligned_ones, 0, 30);  v = wdisp(dest_pos, inst_pos, 30); break;
   case branch_op:
     switch (inv_op2(inst)) {
-      case bpr_op2:    m = wdisp16(word_aligned_ones, 0);      v = wdisp16(dest_pos, inst_pos);     break;
       case fbp_op2:    m = wdisp(  word_aligned_ones, 0, 19);  v = wdisp(  dest_pos, inst_pos, 19); break;
       case bp_op2:     m = wdisp(  word_aligned_ones, 0, 19);  v = wdisp(  dest_pos, inst_pos, 19); break;
       case fb_op2:     m = wdisp(  word_aligned_ones, 0, 22);  v = wdisp(  dest_pos, inst_pos, 22); break;
       case br_op2:     m = wdisp(  word_aligned_ones, 0, 22);  v = wdisp(  dest_pos, inst_pos, 22); break;
       case cb_op2:     m = wdisp(  word_aligned_ones, 0, 22);  v = wdisp(  dest_pos, inst_pos, 22); break;
+      case bpr_op2: {
+        if (is_cbcond(inst)) {
+          m = wdisp10(word_aligned_ones, 0);
+          v = wdisp10(dest_pos, inst_pos);
+        } else {
+          m = wdisp16(word_aligned_ones, 0);
+          v = wdisp16(dest_pos, inst_pos);
+        }
+        break;
+      }
       default: ShouldNotReachHere();
     }
   }
@@ -149,12 +165,19 @@
   case call_op:        r = inv_wdisp(inst, pos, 30);  break;
   case branch_op:
     switch (inv_op2(inst)) {
-      case bpr_op2:    r = inv_wdisp16(inst, pos);    break;
       case fbp_op2:    r = inv_wdisp(  inst, pos, 19);  break;
       case bp_op2:     r = inv_wdisp(  inst, pos, 19);  break;
       case fb_op2:     r = inv_wdisp(  inst, pos, 22);  break;
       case br_op2:     r = inv_wdisp(  inst, pos, 22);  break;
       case cb_op2:     r = inv_wdisp(  inst, pos, 22);  break;
+      case bpr_op2: {
+        if (is_cbcond(inst)) {
+          r = inv_wdisp10(inst, pos);
+        } else {
+          r = inv_wdisp16(inst, pos);
+        }
+        break;
+      }
       default: ShouldNotReachHere();
     }
   }
@@ -968,13 +991,7 @@
   Label PcOk;
   save_frame(0);                // to avoid clobbering O0
   ld_ptr(pc_addr, L0);
-  tst(L0);
-#ifdef _LP64
-  brx(Assembler::zero, false, Assembler::pt, PcOk);
-#else
-  br(Assembler::zero, false, Assembler::pt, PcOk);
-#endif // _LP64
-  delayed() -> nop();
+  br_null_short(L0, Assembler::pt, PcOk);
   stop("last_Java_pc not zeroed before leaving Java");
   bind(PcOk);
 
@@ -1003,7 +1020,7 @@
   Label StackOk;
   andcc(last_java_sp, 0x01, G0);
   br(Assembler::notZero, false, Assembler::pt, StackOk);
-  delayed() -> nop();
+  delayed()->nop();
   stop("Stack Not Biased in set_last_Java_frame");
   bind(StackOk);
 #endif // ASSERT
@@ -1099,8 +1116,7 @@
 
   Address exception_addr(G2_thread, Thread::pending_exception_offset());
   ld_ptr(exception_addr, scratch_reg);
-  br_null(scratch_reg,false,pt,L);
-  delayed()->nop();
+  br_null_short(scratch_reg, pt, L);
   // we use O7 linkage so that forward_exception_entry has the issuing PC
   call(StubRoutines::forward_exception_entry(), relocInfo::runtime_call_type);
   delayed()->nop();
@@ -1874,14 +1890,11 @@
 
   // assert((obj & oop_mask) == oop_bits);
   and3(O0_obj, O2_mask, O4_temp);
-  cmp(O4_temp, O3_bits);
-  brx(notEqual, false, pn, null_or_fail);
-  delayed()->nop();
+  cmp_and_brx_short(O4_temp, O3_bits, notEqual, pn, null_or_fail);
 
   if ((NULL_WORD & Universe::verify_oop_mask()) == Universe::verify_oop_bits()) {
     // the null_or_fail case is useless; must test for null separately
-    br_null(O0_obj, false, pn, succeed);
-    delayed()->nop();
+    br_null_short(O0_obj, pn, succeed);
   }
 
   // Check the klassOop of this object for being in the right area of memory.
@@ -1893,9 +1906,7 @@
   if( Universe::verify_klass_bits() != Universe::verify_oop_bits() )
     set(Universe::verify_klass_bits(), O3_bits);
   and3(O0_obj, O2_mask, O4_temp);
-  cmp(O4_temp, O3_bits);
-  brx(notEqual, false, pn, fail);
-  delayed()->nop();
+  cmp_and_brx_short(O4_temp, O3_bits, notEqual, pn, fail);
   // Check the klass's klass
   load_klass(O0_obj, O0_obj);
   and3(O0_obj, O2_mask, O4_temp);
@@ -2122,13 +2133,12 @@
   return Assembler::rc_z;
 }
 
-// compares register with zero and branches.  NOT FOR USE WITH 64-bit POINTERS
-void MacroAssembler::br_zero( Condition c, bool a, Predict p, Register s1, Label& L) {
+// compares (32 bit) register with zero and branches.  NOT FOR USE WITH 64-bit POINTERS
+void MacroAssembler::cmp_zero_and_br(Condition c, Register s1, Label& L, bool a, Predict p) {
   tst(s1);
   br (c, a, p, L);
 }
 
-
 // Compares a pointer register with zero and branches on null.
 // Does a test & branch on 32-bit systems and a register-branch on 64-bit.
 void MacroAssembler::br_null( Register s1, bool a, Predict p, Label& L ) {
@@ -2154,6 +2164,7 @@
 void MacroAssembler::br_on_reg_cond( RCondition rc, bool a, Predict p,
                                      Register s1, address d,
                                      relocInfo::relocType rt ) {
+  assert_not_delayed();
   if (VM_Version::v9_instructions_work()) {
     bpr(rc, a, p, s1, d, rt);
   } else {
@@ -2164,6 +2175,7 @@
 
 void MacroAssembler::br_on_reg_cond( RCondition rc, bool a, Predict p,
                                      Register s1, Label& L ) {
+  assert_not_delayed();
   if (VM_Version::v9_instructions_work()) {
     bpr(rc, a, p, s1, L);
   } else {
@@ -2172,6 +2184,91 @@
   }
 }
 
+// Compare registers and branch with nop in delay slot or cbcond without delay slot.
+
+// Compare integer (32 bit) values (icc only).
+void MacroAssembler::cmp_and_br_short(Register s1, Register s2, Condition c,
+                                      Predict p, Label& L) {
+  assert_not_delayed();
+  if (use_cbcond(L)) {
+    Assembler::cbcond(c, icc, s1, s2, L);
+  } else {
+    cmp(s1, s2);
+    br(c, false, p, L);
+    delayed()->nop();
+  }
+}
+
+// Compare integer (32 bit) values (icc only).
+void MacroAssembler::cmp_and_br_short(Register s1, int simm13a, Condition c,
+                                      Predict p, Label& L) {
+  assert_not_delayed();
+  if (is_simm(simm13a,5) && use_cbcond(L)) {
+    Assembler::cbcond(c, icc, s1, simm13a, L);
+  } else {
+    cmp(s1, simm13a);
+    br(c, false, p, L);
+    delayed()->nop();
+  }
+}
+
+// Branch that tests xcc in LP64 and icc in !LP64
+void MacroAssembler::cmp_and_brx_short(Register s1, Register s2, Condition c,
+                                       Predict p, Label& L) {
+  assert_not_delayed();
+  if (use_cbcond(L)) {
+    Assembler::cbcond(c, ptr_cc, s1, s2, L);
+  } else {
+    cmp(s1, s2);
+    brx(c, false, p, L);
+    delayed()->nop();
+  }
+}
+
+// Branch that tests xcc in LP64 and icc in !LP64
+void MacroAssembler::cmp_and_brx_short(Register s1, int simm13a, Condition c,
+                                       Predict p, Label& L) {
+  assert_not_delayed();
+  if (is_simm(simm13a,5) && use_cbcond(L)) {
+    Assembler::cbcond(c, ptr_cc, s1, simm13a, L);
+  } else {
+    cmp(s1, simm13a);
+    brx(c, false, p, L);
+    delayed()->nop();
+  }
+}
+
+// Short branch version for compares a pointer with zero.
+
+void MacroAssembler::br_null_short(Register s1, Predict p, Label& L) {
+  assert_not_delayed();
+  if (use_cbcond(L)) {
+    Assembler::cbcond(zero, ptr_cc, s1, 0, L);
+    return;
+  }
+  br_null(s1, false, p, L);
+  delayed()->nop();
+}
+
+void MacroAssembler::br_notnull_short(Register s1, Predict p, Label& L) {
+  assert_not_delayed();
+  if (use_cbcond(L)) {
+    Assembler::cbcond(notZero, ptr_cc, s1, 0, L);
+    return;
+  }
+  br_notnull(s1, false, p, L);
+  delayed()->nop();
+}
+
+// Unconditional short branch
+void MacroAssembler::ba_short(Label& L) {
+  if (use_cbcond(L)) {
+    Assembler::cbcond(equal, icc, G0, G0, L);
+    return;
+  }
+  br(always, false, pt, L);
+  delayed()->nop();
+}
 
 // instruction sequences factored across compiler & interpreter
 
@@ -2197,11 +2294,9 @@
   // since that triplet is reached only after finding the high halves differ.
 
   if (VM_Version::v9_instructions_work()) {
-
-                                    mov  (                     -1, Rresult);
-    ba( false, done );  delayed()-> movcc(greater, false, icc,  1, Rresult);
-  }
-  else {
+    mov(-1, Rresult);
+    ba(done);  delayed()-> movcc(greater, false, icc,  1, Rresult);
+  } else {
     br(less,    true, pt, done); delayed()-> set(-1, Rresult);
     br(greater, true, pt, done); delayed()-> set( 1, Rresult);
   }
@@ -2212,9 +2307,8 @@
     mov(                               -1, Rresult);
     movcc(equal,           false, icc,  0, Rresult);
     movcc(greaterUnsigned, false, icc,  1, Rresult);
-  }
-  else {
-                                                    set(-1, Rresult);
+  } else {
+    set(-1, Rresult);
     br(equal,           true, pt, done); delayed()->set( 0, Rresult);
     br(greaterUnsigned, true, pt, done); delayed()->set( 1, Rresult);
   }
@@ -2250,11 +2344,10 @@
   // This code can be optimized to use the 64 bit shifts in V9.
   // Here we use the 32 bit shifts.
 
-  and3( Rcount,         0x3f,           Rcount);     // take least significant 6 bits
-  subcc(Rcount,         31,             Ralt_count);
+  and3( Rcount, 0x3f, Rcount);     // take least significant 6 bits
+  subcc(Rcount,   31, Ralt_count);
   br(greater, true, pn, big_shift);
-  delayed()->
-  dec(Ralt_count);
+  delayed()->dec(Ralt_count);
 
   // shift < 32 bits, Ralt_count = Rcount-31
 
@@ -2263,28 +2356,27 @@
   // more to take care of the special (rare) case where count is zero
   // (shifting by 32 would not work).
 
-  neg(  Ralt_count                                 );
+  neg(Ralt_count);
 
   // The order of the next two instructions is critical in the case where
   // Rin and Rout are the same and should not be reversed.
 
-  srl(  Rin_low,        Ralt_count,     Rxfer_bits ); // shift right by 31-count
+  srl(Rin_low, Ralt_count, Rxfer_bits); // shift right by 31-count
   if (Rcount != Rout_low) {
-    sll(        Rin_low,        Rcount,         Rout_low   ); // low half
+    sll(Rin_low, Rcount, Rout_low); // low half
   }
-  sll(  Rin_high,       Rcount,         Rout_high  );
+  sll(Rin_high, Rcount, Rout_high);
   if (Rcount == Rout_low) {
-    sll(        Rin_low,        Rcount,         Rout_low   ); // low half
+    sll(Rin_low, Rcount, Rout_low); // low half
   }
-  srl(  Rxfer_bits,     1,              Rxfer_bits ); // shift right by one more
-  ba (false, done);
-  delayed()->
-  or3(  Rout_high,      Rxfer_bits,     Rout_high);   // new hi value: or in shifted old hi part and xfer from low
+  srl(Rxfer_bits, 1, Rxfer_bits ); // shift right by one more
+  ba(done);
+  delayed()->or3(Rout_high, Rxfer_bits, Rout_high);   // new hi value: or in shifted old hi part and xfer from low
 
   // shift >= 32 bits, Ralt_count = Rcount-32
   bind(big_shift);
-  sll(  Rin_low,        Ralt_count,     Rout_high  );
-  clr(  Rout_low                                   );
+  sll(Rin_low, Ralt_count, Rout_high  );
+  clr(Rout_low);
 
   bind(done);
 }
@@ -2313,8 +2405,8 @@
   // This code can be optimized to use the 64 bit shifts in V9.
   // Here we use the 32 bit shifts.
 
-  and3( Rcount,         0x3f,           Rcount);     // take least significant 6 bits
-  subcc(Rcount,         31,             Ralt_count);
+  and3( Rcount, 0x3f, Rcount);     // take least significant 6 bits
+  subcc(Rcount,   31, Ralt_count);
   br(greater, true, pn, big_shift);
   delayed()->dec(Ralt_count);
 
@@ -2325,29 +2417,28 @@
   // more to take care of the special (rare) case where count is zero
   // (shifting by 32 would not work).
 
-  neg(  Ralt_count                                  );
+  neg(Ralt_count);
   if (Rcount != Rout_low) {
-    srl(        Rin_low,        Rcount,         Rout_low    );
+    srl(Rin_low, Rcount, Rout_low);
   }
 
   // The order of the next two instructions is critical in the case where
   // Rin and Rout are the same and should not be reversed.
 
-  sll(  Rin_high,       Ralt_count,     Rxfer_bits  ); // shift left by 31-count
-  sra(  Rin_high,       Rcount,         Rout_high   ); // high half
-  sll(  Rxfer_bits,     1,              Rxfer_bits  ); // shift left by one more
+  sll(Rin_high, Ralt_count, Rxfer_bits); // shift left by 31-count
+  sra(Rin_high,     Rcount, Rout_high ); // high half
+  sll(Rxfer_bits,        1, Rxfer_bits); // shift left by one more
   if (Rcount == Rout_low) {
-    srl(        Rin_low,        Rcount,         Rout_low    );
+    srl(Rin_low, Rcount, Rout_low);
   }
-  ba (false, done);
-  delayed()->
-  or3(  Rout_low,       Rxfer_bits,     Rout_low    ); // new low value: or shifted old low part and xfer from high
+  ba(done);
+  delayed()->or3(Rout_low, Rxfer_bits, Rout_low); // new low value: or shifted old low part and xfer from high
 
   // shift >= 32 bits, Ralt_count = Rcount-32
   bind(big_shift);
 
-  sra(  Rin_high,       Ralt_count,     Rout_low    );
-  sra(  Rin_high,       31,             Rout_high   ); // sign into hi
+  sra(Rin_high, Ralt_count, Rout_low);
+  sra(Rin_high,         31, Rout_high); // sign into hi
 
   bind( done );
 }
@@ -2377,8 +2468,8 @@
   // This code can be optimized to use the 64 bit shifts in V9.
   // Here we use the 32 bit shifts.
 
-  and3( Rcount,         0x3f,           Rcount);     // take least significant 6 bits
-  subcc(Rcount,         31,             Ralt_count);
+  and3( Rcount, 0x3f, Rcount);     // take least significant 6 bits
+  subcc(Rcount,   31, Ralt_count);
   br(greater, true, pn, big_shift);
   delayed()->dec(Ralt_count);
 
@@ -2389,29 +2480,28 @@
   // more to take care of the special (rare) case where count is zero
   // (shifting by 32 would not work).
 
-  neg(  Ralt_count                                  );
+  neg(Ralt_count);
   if (Rcount != Rout_low) {
-    srl(        Rin_low,        Rcount,         Rout_low    );
+    srl(Rin_low, Rcount, Rout_low);
   }
 
   // The order of the next two instructions is critical in the case where
   // Rin and Rout are the same and should not be reversed.
 
-  sll(  Rin_high,       Ralt_count,     Rxfer_bits  ); // shift left by 31-count
-  srl(  Rin_high,       Rcount,         Rout_high   ); // high half
-  sll(  Rxfer_bits,     1,              Rxfer_bits  ); // shift left by one more
+  sll(Rin_high, Ralt_count, Rxfer_bits); // shift left by 31-count
+  srl(Rin_high,     Rcount, Rout_high ); // high half
+  sll(Rxfer_bits,        1, Rxfer_bits); // shift left by one more
   if (Rcount == Rout_low) {
-    srl(        Rin_low,        Rcount,         Rout_low    );
+    srl(Rin_low, Rcount, Rout_low);
   }
-  ba (false, done);
-  delayed()->
-  or3(  Rout_low,       Rxfer_bits,     Rout_low    ); // new low value: or shifted old low part and xfer from high
+  ba(done);
+  delayed()->or3(Rout_low, Rxfer_bits, Rout_low); // new low value: or shifted old low part and xfer from high
 
   // shift >= 32 bits, Ralt_count = Rcount-32
   bind(big_shift);
 
-  srl(  Rin_high,       Ralt_count,     Rout_low    );
-  clr(  Rout_high                                   );
+  srl(Rin_high, Ralt_count, Rout_low);
+  clr(Rout_high);
 
   bind( done );
 }
@@ -2419,7 +2509,7 @@
 #ifdef _LP64
 void MacroAssembler::lcmp( Register Ra, Register Rb, Register Rresult) {
   cmp(Ra, Rb);
-  mov(                       -1, Rresult);
+  mov(-1, Rresult);
   movcc(equal,   false, xcc,  0, Rresult);
   movcc(greater, false, xcc,  1, Rresult);
 }
@@ -2459,14 +2549,14 @@
 
   if (VM_Version::v9_instructions_work()) {
 
-    mov(                   -1, Rresult );
-    movcc( eq, true, fcc0,  0, Rresult );
-    movcc( gt, true, fcc0,  1, Rresult );
+    mov(-1, Rresult);
+    movcc(eq, true, fcc0, 0, Rresult);
+    movcc(gt, true, fcc0, 1, Rresult);
 
   } else {
     Label done;
 
-                                         set( -1, Rresult );
+    set( -1, Rresult );
     //fb(lt, true, pn, done); delayed()->set( -1, Rresult );
     fb( eq, true, pn, done);  delayed()->set(  0, Rresult );
     fb( gt, true, pn, done);  delayed()->set(  1, Rresult );
@@ -2668,9 +2758,7 @@
     set(StubRoutines::Sparc::locked, lock_reg);
 
     bind(retry_get_lock);
-    cmp(yield_reg, V8AtomicOperationUnderLockSpinCount);
-    br(Assembler::less, false, Assembler::pt, dont_yield);
-    delayed()->nop();
+    cmp_and_br_short(yield_reg, V8AtomicOperationUnderLockSpinCount, Assembler::less, Assembler::pt, dont_yield);
 
     if(use_call_vm) {
       Untested("Need to verify global reg consistancy");
@@ -2700,9 +2788,7 @@
 
     // yes, got lock.  do we have the same top?
     ld(top_ptr_reg_after_save, 0, value_reg);
-    cmp(value_reg, top_reg_after_save);
-    br(Assembler::notEqual, false, Assembler::pn, not_same);
-    delayed()->nop();
+    cmp_and_br_short(value_reg, top_reg_after_save, Assembler::notEqual, Assembler::pn, not_same);
 
     // yes, same top.
     st(ptr_reg_after_save, top_ptr_reg_after_save, 0);
@@ -2952,8 +3038,7 @@
 
   // on success:
   restore();
-  ba(false, L_success);
-  delayed()->nop();
+  ba_short(L_success);
 
   // on failure:
   bind(L_pop_to_failure);
@@ -2969,8 +3054,7 @@
                                                    Label* L_success,
                                                    Label* L_failure,
                                                    Label* L_slow_path,
-                                        RegisterOrConstant super_check_offset,
-                                        Register instanceof_hack) {
+                                        RegisterOrConstant super_check_offset) {
   int sc_offset = (klassOopDesc::header_size() * HeapWordSize +
                    Klass::secondary_super_cache_offset_in_bytes());
   int sco_offset = (klassOopDesc::header_size() * HeapWordSize +
@@ -2993,29 +3077,10 @@
   if (L_success == NULL)   { L_success   = &L_fallthrough; label_nulls++; }
   if (L_failure == NULL)   { L_failure   = &L_fallthrough; label_nulls++; }
   if (L_slow_path == NULL) { L_slow_path = &L_fallthrough; label_nulls++; }
-  assert(label_nulls <= 1 || instanceof_hack != noreg ||
+  assert(label_nulls <= 1 ||
          (L_slow_path == &L_fallthrough && label_nulls <= 2 && !need_slow_path),
          "at most one NULL in the batch, usually");
 
-  // Support for the instanceof hack, which uses delay slots to
-  // set a destination register to zero or one.
-  bool do_bool_sets = (instanceof_hack != noreg);
-#define BOOL_SET(bool_value)                            \
-  if (do_bool_sets && bool_value >= 0)                  \
-    set(bool_value, instanceof_hack)
-#define DELAYED_BOOL_SET(bool_value)                    \
-  if (do_bool_sets && bool_value >= 0)                  \
-    delayed()->set(bool_value, instanceof_hack);        \
-  else delayed()->nop()
-  // Hacked ba(), which may only be used just before L_fallthrough.
-#define FINAL_JUMP(label, bool_value)                   \
-  if (&(label) == &L_fallthrough) {                     \
-    BOOL_SET(bool_value);                               \
-  } else {                                              \
-    ba((do_bool_sets && bool_value >= 0), label);       \
-    DELAYED_BOOL_SET(bool_value);                       \
-  }
-
   // If the pointers are equal, we are done (e.g., String[] elements).
   // This self-check enables sharing of secondary supertype arrays among
   // non-primary types such as array-of-interface.  Otherwise, each such
@@ -3024,8 +3089,8 @@
   // type checks are in fact trivially successful in this manner,
   // so we get a nicely predicted branch right at the start of the check.
   cmp(super_klass, sub_klass);
-  brx(Assembler::equal, do_bool_sets, Assembler::pn, *L_success);
-  DELAYED_BOOL_SET(1);
+  brx(Assembler::equal, false, Assembler::pn, *L_success);
+  delayed()->nop();
 
   // Check the supertype display:
   if (must_load_sco) {
@@ -3049,50 +3114,49 @@
   // So if it was a primary super, we can just fail immediately.
   // Otherwise, it's the slow path for us (no success at this point).
 
+  // Hacked ba(), which may only be used just before L_fallthrough.
+#define FINAL_JUMP(label)            \
+  if (&(label) != &L_fallthrough) {  \
+    ba(label);  delayed()->nop();    \
+  }
+
   if (super_check_offset.is_register()) {
-    brx(Assembler::equal, do_bool_sets, Assembler::pn, *L_success);
-    delayed(); if (do_bool_sets)  BOOL_SET(1);
-    // if !do_bool_sets, sneak the next cmp into the delay slot:
-    cmp(super_check_offset.as_register(), sc_offset);
+    brx(Assembler::equal, false, Assembler::pn, *L_success);
+    delayed()->cmp(super_check_offset.as_register(), sc_offset);
 
     if (L_failure == &L_fallthrough) {
-      brx(Assembler::equal, do_bool_sets, Assembler::pt, *L_slow_path);
+      brx(Assembler::equal, false, Assembler::pt, *L_slow_path);
       delayed()->nop();
-      BOOL_SET(0);  // fallthrough on failure
     } else {
-      brx(Assembler::notEqual, do_bool_sets, Assembler::pn, *L_failure);
-      DELAYED_BOOL_SET(0);
-      FINAL_JUMP(*L_slow_path, -1);  // -1 => vanilla delay slot
+      brx(Assembler::notEqual, false, Assembler::pn, *L_failure);
+      delayed()->nop();
+      FINAL_JUMP(*L_slow_path);
     }
   } else if (super_check_offset.as_constant() == sc_offset) {
     // Need a slow path; fast failure is impossible.
     if (L_slow_path == &L_fallthrough) {
-      brx(Assembler::equal, do_bool_sets, Assembler::pt, *L_success);
-      DELAYED_BOOL_SET(1);
+      brx(Assembler::equal, false, Assembler::pt, *L_success);
+      delayed()->nop();
     } else {
       brx(Assembler::notEqual, false, Assembler::pn, *L_slow_path);
       delayed()->nop();
-      FINAL_JUMP(*L_success, 1);
+      FINAL_JUMP(*L_success);
     }
   } else {
     // No slow path; it's a fast decision.
     if (L_failure == &L_fallthrough) {
-      brx(Assembler::equal, do_bool_sets, Assembler::pt, *L_success);
-      DELAYED_BOOL_SET(1);
-      BOOL_SET(0);
+      brx(Assembler::equal, false, Assembler::pt, *L_success);
+      delayed()->nop();
     } else {
-      brx(Assembler::notEqual, do_bool_sets, Assembler::pn, *L_failure);
-      DELAYED_BOOL_SET(0);
-      FINAL_JUMP(*L_success, 1);
+      brx(Assembler::notEqual, false, Assembler::pn, *L_failure);
+      delayed()->nop();
+      FINAL_JUMP(*L_success);
     }
   }
 
   bind(L_fallthrough);
 
-#undef final_jump
-#undef bool_set
-#undef DELAYED_BOOL_SET
-#undef final_jump
+#undef FINAL_JUMP
 }
 
 
@@ -3185,7 +3249,7 @@
   st_ptr(super_klass, sub_klass, sc_offset);
 
   if (L_success != &L_fallthrough) {
-    ba(false, *L_success);
+    ba(*L_success);
     delayed()->nop();
   }
 
@@ -3200,9 +3264,7 @@
   // compare method type against that of the receiver
   RegisterOrConstant mhtype_offset = delayed_value(java_lang_invoke_MethodHandle::type_offset_in_bytes, temp_reg);
   load_heap_oop(mh_reg, mhtype_offset, temp_reg);
-  cmp(temp_reg, mtype_reg);
-  br(Assembler::notEqual, false, Assembler::pn, wrong_method_type);
-  delayed()->nop();
+  cmp_and_brx_short(temp_reg, mtype_reg, Assembler::notEqual, Assembler::pn, wrong_method_type);
 }
 
 
@@ -3295,9 +3357,7 @@
   // pointers to allow age to be placed into low bits
   assert(markOopDesc::age_shift == markOopDesc::lock_bits + markOopDesc::biased_lock_bits, "biased locking makes assumptions about bit layout");
   and3(mark_reg, markOopDesc::biased_lock_mask_in_place, temp_reg);
-  cmp(temp_reg, markOopDesc::biased_lock_pattern);
-  brx(Assembler::notEqual, false, Assembler::pn, cas_label);
-  delayed()->nop();
+  cmp_and_brx_short(temp_reg, markOopDesc::biased_lock_pattern, Assembler::notEqual, Assembler::pn, cas_label);
 
   load_klass(obj_reg, temp_reg);
   ld_ptr(Address(temp_reg, Klass::prototype_header_offset_in_bytes() + klassOopDesc::klass_part_offset_in_bytes()), temp_reg);
@@ -3364,8 +3424,7 @@
     brx(Assembler::notEqual, true, Assembler::pn, *slow_case);
     delayed()->nop();
   }
-  br(Assembler::always, false, Assembler::pt, done);
-  delayed()->nop();
+  ba_short(done);
 
   bind(try_rebias);
   // At this point we know the epoch has expired, meaning that the
@@ -3393,8 +3452,7 @@
     brx(Assembler::notEqual, true, Assembler::pn, *slow_case);
     delayed()->nop();
   }
-  br(Assembler::always, false, Assembler::pt, done);
-  delayed()->nop();
+  ba_short(done);
 
   bind(try_revoke_bias);
   // The prototype mark in the klass doesn't have the bias bit set any
@@ -3445,7 +3503,7 @@
 // Solaris/SPARC's "as".  Another apt name would be cas_ptr()
 
 void MacroAssembler::casn (Register addr_reg, Register cmp_reg, Register set_reg ) {
-  casx_under_lock (addr_reg, cmp_reg, set_reg, (address)StubRoutines::Sparc::atomic_memory_operation_lock_addr()) ;
+  casx_under_lock (addr_reg, cmp_reg, set_reg, (address)StubRoutines::Sparc::atomic_memory_operation_lock_addr());
 }
 
 
@@ -3486,9 +3544,9 @@
    }
 
    if (EmitSync & 1) {
-     mov    (3, Rscratch) ;
-     st_ptr (Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
-     cmp    (SP, G0) ;
+     mov(3, Rscratch);
+     st_ptr(Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
+     cmp(SP, G0);
      return ;
    }
 
@@ -3529,7 +3587,7 @@
      assert(os::vm_page_size() > 0xfff, "page size too small - change the constant");
      andcc(Rscratch, 0xfffff003, Rscratch);
      st_ptr(Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
-     bind (done) ;
+     bind (done);
      return ;
    }
 
@@ -3538,7 +3596,7 @@
    if (EmitSync & 256) {
       Label IsInflated ;
 
-      ld_ptr (mark_addr, Rmark);           // fetch obj->mark
+      ld_ptr(mark_addr, Rmark);           // fetch obj->mark
       // Triage: biased, stack-locked, neutral, inflated
       if (try_bias) {
         biased_locking_enter(Roop, Rmark, Rscratch, done, NULL, counters);
@@ -3549,49 +3607,49 @@
       // Store mark into displaced mark field in the on-stack basic-lock "box"
       // Critically, this must happen before the CAS
       // Maximize the ST-CAS distance to minimize the ST-before-CAS penalty.
-      st_ptr (Rmark, Rbox, BasicLock::displaced_header_offset_in_bytes());
-      andcc  (Rmark, 2, G0) ;
-      brx    (Assembler::notZero, false, Assembler::pn, IsInflated) ;
-      delayed() ->
+      st_ptr(Rmark, Rbox, BasicLock::displaced_header_offset_in_bytes());
+      andcc(Rmark, 2, G0);
+      brx(Assembler::notZero, false, Assembler::pn, IsInflated);
+      delayed()->
 
       // Try stack-lock acquisition.
       // Beware: the 1st instruction is in a delay slot
-      mov    (Rbox,  Rscratch);
-      or3    (Rmark, markOopDesc::unlocked_value, Rmark);
-      assert (mark_addr.disp() == 0, "cas must take a zero displacement");
-      casn   (mark_addr.base(), Rmark, Rscratch) ;
-      cmp    (Rmark, Rscratch);
-      brx    (Assembler::equal, false, Assembler::pt, done);
+      mov(Rbox,  Rscratch);
+      or3(Rmark, markOopDesc::unlocked_value, Rmark);
+      assert(mark_addr.disp() == 0, "cas must take a zero displacement");
+      casn(mark_addr.base(), Rmark, Rscratch);
+      cmp(Rmark, Rscratch);
+      brx(Assembler::equal, false, Assembler::pt, done);
       delayed()->sub(Rscratch, SP, Rscratch);
 
       // Stack-lock attempt failed - check for recursive stack-lock.
       // See the comments below about how we might remove this case.
 #ifdef _LP64
-      sub    (Rscratch, STACK_BIAS, Rscratch);
+      sub(Rscratch, STACK_BIAS, Rscratch);
 #endif
       assert(os::vm_page_size() > 0xfff, "page size too small - change the constant");
-      andcc  (Rscratch, 0xfffff003, Rscratch);
-      br     (Assembler::always, false, Assembler::pt, done) ;
-      delayed()-> st_ptr (Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
+      andcc(Rscratch, 0xfffff003, Rscratch);
+      br(Assembler::always, false, Assembler::pt, done);
+      delayed()-> st_ptr(Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
 
-      bind   (IsInflated) ;
+      bind(IsInflated);
       if (EmitSync & 64) {
          // If m->owner != null goto IsLocked
          // Pessimistic form: Test-and-CAS vs CAS
          // The optimistic form avoids RTS->RTO cache line upgrades.
-         ld_ptr (Rmark, ObjectMonitor::owner_offset_in_bytes() - 2, Rscratch);
-         andcc  (Rscratch, Rscratch, G0) ;
-         brx    (Assembler::notZero, false, Assembler::pn, done) ;
-         delayed()->nop() ;
+         ld_ptr(Rmark, ObjectMonitor::owner_offset_in_bytes() - 2, Rscratch);
+         andcc(Rscratch, Rscratch, G0);
+         brx(Assembler::notZero, false, Assembler::pn, done);
+         delayed()->nop();
          // m->owner == null : it's unlocked.
       }
 
       // Try to CAS m->owner from null to Self
       // Invariant: if we acquire the lock then _recursions should be 0.
-      add    (Rmark, ObjectMonitor::owner_offset_in_bytes()-2, Rmark) ;
-      mov    (G2_thread, Rscratch) ;
-      casn   (Rmark, G0, Rscratch) ;
-      cmp    (Rscratch, G0) ;
+      add(Rmark, ObjectMonitor::owner_offset_in_bytes()-2, Rmark);
+      mov(G2_thread, Rscratch);
+      casn(Rmark, G0, Rscratch);
+      cmp(Rscratch, G0);
       // Intentional fall-through into done
    } else {
       // Aggressively avoid the Store-before-CAS penalty
@@ -3599,9 +3657,9 @@
       Label IsInflated, Recursive ;
 
 // Anticipate CAS -- Avoid RTS->RTO upgrade
-// prefetch (mark_addr, Assembler::severalWritesAndPossiblyReads) ;
+// prefetch (mark_addr, Assembler::severalWritesAndPossiblyReads);
 
-      ld_ptr (mark_addr, Rmark);           // fetch obj->mark
+      ld_ptr(mark_addr, Rmark);           // fetch obj->mark
       // Triage: biased, stack-locked, neutral, inflated
 
       if (try_bias) {
@@ -3609,8 +3667,8 @@
         // Invariant: if control reaches this point in the emitted stream
         // then Rmark has not been modified.
       }
-      andcc  (Rmark, 2, G0) ;
-      brx    (Assembler::notZero, false, Assembler::pn, IsInflated) ;
+      andcc(Rmark, 2, G0);
+      brx(Assembler::notZero, false, Assembler::pn, IsInflated);
       delayed()->                         // Beware - dangling delay-slot
 
       // Try stack-lock acquisition.
@@ -3620,23 +3678,21 @@
       //   ST obj->mark = box    -- overwrite transient 0 value
       // This presumes TSO, of course.
 
-      mov    (0, Rscratch) ;
-      or3    (Rmark, markOopDesc::unlocked_value, Rmark);
-      assert (mark_addr.disp() == 0, "cas must take a zero displacement");
-      casn   (mark_addr.base(), Rmark, Rscratch) ;
-// prefetch (mark_addr, Assembler::severalWritesAndPossiblyReads) ;
-      cmp    (Rscratch, Rmark) ;
-      brx    (Assembler::notZero, false, Assembler::pn, Recursive) ;
-      delayed() ->
-        st_ptr (Rmark, Rbox, BasicLock::displaced_header_offset_in_bytes());
+      mov(0, Rscratch);
+      or3(Rmark, markOopDesc::unlocked_value, Rmark);
+      assert(mark_addr.disp() == 0, "cas must take a zero displacement");
+      casn(mark_addr.base(), Rmark, Rscratch);
+// prefetch (mark_addr, Assembler::severalWritesAndPossiblyReads);
+      cmp(Rscratch, Rmark);
+      brx(Assembler::notZero, false, Assembler::pn, Recursive);
+      delayed()->st_ptr(Rmark, Rbox, BasicLock::displaced_header_offset_in_bytes());
       if (counters != NULL) {
         cond_inc(Assembler::equal, (address) counters->fast_path_entry_count_addr(), Rmark, Rscratch);
       }
-      br     (Assembler::always, false, Assembler::pt, done);
-      delayed() ->
-        st_ptr (Rbox, mark_addr) ;
+      ba(done);
+      delayed()->st_ptr(Rbox, mark_addr);
 
-      bind   (Recursive) ;
+      bind(Recursive);
       // Stack-lock attempt failed - check for recursive stack-lock.
       // Tests show that we can remove the recursive case with no impact
       // on refworkload 0.83.  If we need to reduce the size of the code
@@ -3653,49 +3709,48 @@
 
       // RScratch contains the fetched obj->mark value from the failed CASN.
 #ifdef _LP64
-      sub    (Rscratch, STACK_BIAS, Rscratch);
+      sub(Rscratch, STACK_BIAS, Rscratch);
 #endif
       sub(Rscratch, SP, Rscratch);
       assert(os::vm_page_size() > 0xfff, "page size too small - change the constant");
-      andcc  (Rscratch, 0xfffff003, Rscratch);
+      andcc(Rscratch, 0xfffff003, Rscratch);
       if (counters != NULL) {
         // Accounting needs the Rscratch register
-        st_ptr (Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
+        st_ptr(Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
         cond_inc(Assembler::equal, (address) counters->fast_path_entry_count_addr(), Rmark, Rscratch);
-        br     (Assembler::always, false, Assembler::pt, done) ;
-        delayed()->nop() ;
+        ba_short(done);
       } else {
-        br     (Assembler::always, false, Assembler::pt, done) ;
-        delayed()-> st_ptr (Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
+        ba(done);
+        delayed()->st_ptr(Rscratch, Rbox, BasicLock::displaced_header_offset_in_bytes());
       }
 
-      bind   (IsInflated) ;
+      bind   (IsInflated);
       if (EmitSync & 64) {
          // If m->owner != null goto IsLocked
          // Test-and-CAS vs CAS
          // Pessimistic form avoids futile (doomed) CAS attempts
          // The optimistic form avoids RTS->RTO cache line upgrades.
-         ld_ptr (Rmark, ObjectMonitor::owner_offset_in_bytes() - 2, Rscratch);
-         andcc  (Rscratch, Rscratch, G0) ;
-         brx    (Assembler::notZero, false, Assembler::pn, done) ;
-         delayed()->nop() ;
+         ld_ptr(Rmark, ObjectMonitor::owner_offset_in_bytes() - 2, Rscratch);
+         andcc(Rscratch, Rscratch, G0);
+         brx(Assembler::notZero, false, Assembler::pn, done);
+         delayed()->nop();
          // m->owner == null : it's unlocked.
       }
 
       // Try to CAS m->owner from null to Self
       // Invariant: if we acquire the lock then _recursions should be 0.
-      add    (Rmark, ObjectMonitor::owner_offset_in_bytes()-2, Rmark) ;
-      mov    (G2_thread, Rscratch) ;
-      casn   (Rmark, G0, Rscratch) ;
-      cmp    (Rscratch, G0) ;
+      add(Rmark, ObjectMonitor::owner_offset_in_bytes()-2, Rmark);
+      mov(G2_thread, Rscratch);
+      casn(Rmark, G0, Rscratch);
+      cmp(Rscratch, G0);
       // ST box->displaced_header = NonZero.
       // Any non-zero value suffices:
       //    unused_mark(), G2_thread, RBox, RScratch, rsp, etc.
-      st_ptr (Rbox, Rbox, BasicLock::displaced_header_offset_in_bytes());
+      st_ptr(Rbox, Rbox, BasicLock::displaced_header_offset_in_bytes());
       // Intentional fall-through into done
    }
 
-   bind   (done) ;
+   bind   (done);
 }
 
 void MacroAssembler::compiler_unlock_object(Register Roop, Register Rmark,
@@ -3706,7 +3761,7 @@
    Label done ;
 
    if (EmitSync & 4) {
-     cmp  (SP, G0) ;
+     cmp(SP, G0);
      return ;
    }
 
@@ -3717,18 +3772,16 @@
 
      // Test first if it is a fast recursive unlock
      ld_ptr(Rbox, BasicLock::displaced_header_offset_in_bytes(), Rmark);
-     cmp(Rmark, G0);
-     brx(Assembler::equal, false, Assembler::pt, done);
-     delayed()->nop();
+     br_null_short(Rmark, Assembler::pt, done);
 
      // Check if it is still a light weight lock, this is is true if we see
      // the stack address of the basicLock in the markOop of the object
      assert(mark_addr.disp() == 0, "cas must take a zero displacement");
      casx_under_lock(mark_addr.base(), Rbox, Rmark,
        (address)StubRoutines::Sparc::atomic_memory_operation_lock_addr());
-     br (Assembler::always, false, Assembler::pt, done);
+     ba(done);
      delayed()->cmp(Rbox, Rmark);
-     bind (done) ;
+     bind(done);
      return ;
    }
 
@@ -3743,14 +3796,14 @@
       biased_locking_exit(mark_addr, Rscratch, done);
    }
 
-   ld_ptr (Roop, oopDesc::mark_offset_in_bytes(), Rmark) ;
-   ld_ptr (Rbox, BasicLock::displaced_header_offset_in_bytes(), Rscratch);
-   andcc  (Rscratch, Rscratch, G0);
-   brx    (Assembler::zero, false, Assembler::pn, done);
-   delayed()-> nop() ;      // consider: relocate fetch of mark, above, into this DS
-   andcc  (Rmark, 2, G0) ;
-   brx    (Assembler::zero, false, Assembler::pt, LStacked) ;
-   delayed()-> nop() ;
+   ld_ptr(Roop, oopDesc::mark_offset_in_bytes(), Rmark);
+   ld_ptr(Rbox, BasicLock::displaced_header_offset_in_bytes(), Rscratch);
+   andcc(Rscratch, Rscratch, G0);
+   brx(Assembler::zero, false, Assembler::pn, done);
+   delayed()->nop();      // consider: relocate fetch of mark, above, into this DS
+   andcc(Rmark, 2, G0);
+   brx(Assembler::zero, false, Assembler::pt, LStacked);
+   delayed()->nop();
 
    // It's inflated
    // Conceptually we need a #loadstore|#storestore "release" MEMBAR before
@@ -3761,48 +3814,45 @@
    // Note that we use 1-0 locking by default for the inflated case.  We
    // close the resultant (and rare) race by having contented threads in
    // monitorenter periodically poll _owner.
-   ld_ptr (Rmark, ObjectMonitor::owner_offset_in_bytes() - 2, Rscratch);
-   ld_ptr (Rmark, ObjectMonitor::recursions_offset_in_bytes() - 2, Rbox);
-   xor3   (Rscratch, G2_thread, Rscratch) ;
-   orcc   (Rbox, Rscratch, Rbox) ;
-   brx    (Assembler::notZero, false, Assembler::pn, done) ;
+   ld_ptr(Rmark, ObjectMonitor::owner_offset_in_bytes() - 2, Rscratch);
+   ld_ptr(Rmark, ObjectMonitor::recursions_offset_in_bytes() - 2, Rbox);
+   xor3(Rscratch, G2_thread, Rscratch);
+   orcc(Rbox, Rscratch, Rbox);
+   brx(Assembler::notZero, false, Assembler::pn, done);
    delayed()->
-   ld_ptr (Rmark, ObjectMonitor::EntryList_offset_in_bytes() - 2, Rscratch);
-   ld_ptr (Rmark, ObjectMonitor::cxq_offset_in_bytes() - 2, Rbox);
-   orcc   (Rbox, Rscratch, G0) ;
+   ld_ptr(Rmark, ObjectMonitor::EntryList_offset_in_bytes() - 2, Rscratch);
+   ld_ptr(Rmark, ObjectMonitor::cxq_offset_in_bytes() - 2, Rbox);
+   orcc(Rbox, Rscratch, G0);
    if (EmitSync & 65536) {
       Label LSucc ;
-      brx    (Assembler::notZero, false, Assembler::pn, LSucc) ;
-      delayed()->nop() ;
-      br     (Assembler::always, false, Assembler::pt, done) ;
-      delayed()->
-      st_ptr (G0, Rmark, ObjectMonitor::owner_offset_in_bytes() - 2);
+      brx(Assembler::notZero, false, Assembler::pn, LSucc);
+      delayed()->nop();
+      ba(done);
+      delayed()->st_ptr(G0, Rmark, ObjectMonitor::owner_offset_in_bytes() - 2);
 
-      bind   (LSucc) ;
-      st_ptr (G0, Rmark, ObjectMonitor::owner_offset_in_bytes() - 2);
-      if (os::is_MP()) { membar (StoreLoad) ; }
-      ld_ptr (Rmark, ObjectMonitor::succ_offset_in_bytes() - 2, Rscratch);
-      andcc  (Rscratch, Rscratch, G0) ;
-      brx    (Assembler::notZero, false, Assembler::pt, done) ;
-      delayed()-> andcc (G0, G0, G0) ;
-      add    (Rmark, ObjectMonitor::owner_offset_in_bytes()-2, Rmark) ;
-      mov    (G2_thread, Rscratch) ;
-      casn   (Rmark, G0, Rscratch) ;
-      cmp    (Rscratch, G0) ;
+      bind(LSucc);
+      st_ptr(G0, Rmark, ObjectMonitor::owner_offset_in_bytes() - 2);
+      if (os::is_MP()) { membar (StoreLoad); }
+      ld_ptr(Rmark, ObjectMonitor::succ_offset_in_bytes() - 2, Rscratch);
+      andcc(Rscratch, Rscratch, G0);
+      brx(Assembler::notZero, false, Assembler::pt, done);
+      delayed()->andcc(G0, G0, G0);
+      add(Rmark, ObjectMonitor::owner_offset_in_bytes()-2, Rmark);
+      mov(G2_thread, Rscratch);
+      casn(Rmark, G0, Rscratch);
       // invert icc.zf and goto done
-      brx    (Assembler::notZero, false, Assembler::pt, done) ;
-      delayed() -> cmp (G0, G0) ;
-      br     (Assembler::always, false, Assembler::pt, done);
-      delayed() -> cmp (G0, 1) ;
+      br_notnull(Rscratch, false, Assembler::pt, done);
+      delayed()->cmp(G0, G0);
+      ba(done);
+      delayed()->cmp(G0, 1);
    } else {
-      brx    (Assembler::notZero, false, Assembler::pn, done) ;
-      delayed()->nop() ;
-      br     (Assembler::always, false, Assembler::pt, done) ;
-      delayed()->
-      st_ptr (G0, Rmark, ObjectMonitor::owner_offset_in_bytes() - 2);
+      brx(Assembler::notZero, false, Assembler::pn, done);
+      delayed()->nop();
+      ba(done);
+      delayed()->st_ptr(G0, Rmark, ObjectMonitor::owner_offset_in_bytes() - 2);
    }
 
-   bind   (LStacked) ;
+   bind   (LStacked);
    // Consider: we could replace the expensive CAS in the exit
    // path with a simple ST of the displaced mark value fetched from
    // the on-stack basiclock box.  That admits a race where a thread T2
@@ -3831,11 +3881,11 @@
    // A prototype implementation showed excellent results, although
    // the scavenger and timeout code was rather involved.
 
-   casn   (mark_addr.base(), Rbox, Rscratch) ;
-   cmp    (Rbox, Rscratch);
+   casn(mark_addr.base(), Rbox, Rscratch);
+   cmp(Rbox, Rscratch);
    // Intentional fall through into done ...
 
-   bind   (done) ;
+   bind(done);
 }
 
 
@@ -3891,9 +3941,7 @@
     ld_ptr(G2_thread, in_bytes(JavaThread::tlab_top_offset()), t1);
     ld_ptr(G2_thread, in_bytes(JavaThread::tlab_start_offset()), t2);
     or3(t1, t2, t3);
-    cmp(t1, t2);
-    br(Assembler::greaterEqual, false, Assembler::pn, next);
-    delayed()->nop();
+    cmp_and_br_short(t1, t2, Assembler::greaterEqual, Assembler::pn, next);
     stop("assert(top >= start)");
     should_not_reach_here();
 
@@ -3901,17 +3949,13 @@
     ld_ptr(G2_thread, in_bytes(JavaThread::tlab_top_offset()), t1);
     ld_ptr(G2_thread, in_bytes(JavaThread::tlab_end_offset()), t2);
     or3(t3, t2, t3);
-    cmp(t1, t2);
-    br(Assembler::lessEqual, false, Assembler::pn, next2);
-    delayed()->nop();
+    cmp_and_br_short(t1, t2, Assembler::lessEqual, Assembler::pn, next2);
     stop("assert(top <= end)");
     should_not_reach_here();
 
     bind(next2);
     and3(t3, MinObjAlignmentInBytesMask, t3);
-    cmp(t3, 0);
-    br(Assembler::lessEqual, false, Assembler::pn, ok);
-    delayed()->nop();
+    cmp_and_br_short(t3, 0, Assembler::lessEqual, Assembler::pn, ok);
     stop("assert(aligned)");
     should_not_reach_here();
 
@@ -3937,8 +3981,7 @@
 
   if (CMSIncrementalMode || !Universe::heap()->supports_inline_contig_alloc()) {
     // No allocation in the shared eden.
-    br(Assembler::always, false, Assembler::pt, slow_case);
-    delayed()->nop();
+    ba_short(slow_case);
   } else {
     // get eden boundaries
     // note: we need both top & top_addr!
@@ -4072,8 +4115,7 @@
 
   if (CMSIncrementalMode || !Universe::heap()->supports_inline_contig_alloc()) {
     // No allocation in the shared eden.
-    br(Assembler::always, false, Assembler::pt, slow_case);
-    delayed()->nop();
+    ba_short(slow_case);
   }
 
   ld_ptr(G2_thread, in_bytes(JavaThread::tlab_top_offset()), top);
@@ -4098,8 +4140,7 @@
     add(t2, 1, t2);
     stw(t2, G2_thread, in_bytes(JavaThread::tlab_slow_allocations_offset()));
   }
-  br(Assembler::always, false, Assembler::pt, try_eden);
-  delayed()->nop();
+  ba_short(try_eden);
 
   bind(discard_tlab);
   if (TLABStats) {
@@ -4115,8 +4156,7 @@
 
   // if tlab is currently allocated (top or end != null) then
   // fill [top, end + alignment_reserve) with array object
-  br_null(top, false, Assembler::pn, do_refill);
-  delayed()->nop();
+  br_null_short(top, Assembler::pn, do_refill);
 
   set((intptr_t)markOopDesc::prototype()->copy_set_hash(0x2), t2);
   st_ptr(t2, top, oopDesc::mark_offset_in_bytes()); // set up the mark word
@@ -4151,9 +4191,7 @@
     Label ok;
     ld_ptr(G2_thread, in_bytes(JavaThread::tlab_size_offset()), t2);
     sll_ptr(t2, LogHeapWordSize, t2);
-    cmp(t1, t2);
-    br(Assembler::equal, false, Assembler::pt, ok);
-    delayed()->nop();
+    cmp_and_br_short(t1, t2, Assembler::equal, Assembler::pt, ok);
     stop("assert(t1 == tlab_size)");
     should_not_reach_here();
 
@@ -4164,8 +4202,7 @@
   sub(top, ThreadLocalAllocBuffer::alignment_reserve_in_bytes(), top);
   st_ptr(top, G2_thread, in_bytes(JavaThread::tlab_end_offset()));
   verify_tlab();
-  br(Assembler::always, false, Assembler::pt, retry);
-  delayed()->nop();
+  ba_short(retry);
 }
 
 void MacroAssembler::incr_allocated_bytes(RegisterOrConstant size_in_bytes,
@@ -4290,12 +4327,15 @@
   BufferBlob* bb = BufferBlob::create("enqueue_with_frame", EnqueueCodeSize);
   CodeBuffer buf(bb);
   MacroAssembler masm(&buf);
-  address start = masm.pc();
+
+#define __ masm.
+
+  address start = __ pc();
   Register pre_val;
 
   Label refill, restart;
   if (with_frame) {
-    masm.save_frame(0);
+    __ save_frame(0);
     pre_val = I0;  // Was O0 before the save.
   } else {
     pre_val = O0;
@@ -4310,57 +4350,59 @@
          in_bytes(PtrQueue::byte_width_of_buf()) == sizeof(intptr_t),
          "check sizes in assembly below");
 
-  masm.bind(restart);
-  masm.ld_ptr(G2_thread, satb_q_index_byte_offset, L0);
+  __ bind(restart);
+  __ ld_ptr(G2_thread, satb_q_index_byte_offset, L0);
 
-  masm.br_on_reg_cond(Assembler::rc_z, /*annul*/false, Assembler::pn, L0, refill);
+  __ br_on_reg_cond(Assembler::rc_z, /*annul*/false, Assembler::pn, L0, refill);
   // If the branch is taken, no harm in executing this in the delay slot.
-  masm.delayed()->ld_ptr(G2_thread, satb_q_buf_byte_offset, L1);
-  masm.sub(L0, oopSize, L0);
+  __ delayed()->ld_ptr(G2_thread, satb_q_buf_byte_offset, L1);
+  __ sub(L0, oopSize, L0);
 
-  masm.st_ptr(pre_val, L1, L0);  // [_buf + index] := I0
+  __ st_ptr(pre_val, L1, L0);  // [_buf + index] := I0
   if (!with_frame) {
     // Use return-from-leaf
-    masm.retl();
-    masm.delayed()->st_ptr(L0, G2_thread, satb_q_index_byte_offset);
+    __ retl();
+    __ delayed()->st_ptr(L0, G2_thread, satb_q_index_byte_offset);
   } else {
     // Not delayed.
-    masm.st_ptr(L0, G2_thread, satb_q_index_byte_offset);
+    __ st_ptr(L0, G2_thread, satb_q_index_byte_offset);
   }
   if (with_frame) {
-    masm.ret();
-    masm.delayed()->restore();
+    __ ret();
+    __ delayed()->restore();
   }
-  masm.bind(refill);
+  __ bind(refill);
 
   address handle_zero =
     CAST_FROM_FN_PTR(address,
                      &SATBMarkQueueSet::handle_zero_index_for_thread);
   // This should be rare enough that we can afford to save all the
   // scratch registers that the calling context might be using.
-  masm.mov(G1_scratch, L0);
-  masm.mov(G3_scratch, L1);
-  masm.mov(G4, L2);
+  __ mov(G1_scratch, L0);
+  __ mov(G3_scratch, L1);
+  __ mov(G4, L2);
   // We need the value of O0 above (for the write into the buffer), so we
   // save and restore it.
-  masm.mov(O0, L3);
+  __ mov(O0, L3);
   // Since the call will overwrite O7, we save and restore that, as well.
-  masm.mov(O7, L4);
-  masm.call_VM_leaf(L5, handle_zero, G2_thread);
-  masm.mov(L0, G1_scratch);
-  masm.mov(L1, G3_scratch);
-  masm.mov(L2, G4);
-  masm.mov(L3, O0);
-  masm.br(Assembler::always, /*annul*/false, Assembler::pt, restart);
-  masm.delayed()->mov(L4, O7);
+  __ mov(O7, L4);
+  __ call_VM_leaf(L5, handle_zero, G2_thread);
+  __ mov(L0, G1_scratch);
+  __ mov(L1, G3_scratch);
+  __ mov(L2, G4);
+  __ mov(L3, O0);
+  __ br(Assembler::always, /*annul*/false, Assembler::pt, restart);
+  __ delayed()->mov(L4, O7);
 
   if (with_frame) {
     satb_log_enqueue_with_frame = start;
-    satb_log_enqueue_with_frame_end = masm.pc();
+    satb_log_enqueue_with_frame_end = __ pc();
   } else {
     satb_log_enqueue_frameless = start;
-    satb_log_enqueue_frameless_end = masm.pc();
+    satb_log_enqueue_frameless_end = __ pc();
   }
+
+#undef __
 }
 
 static inline void generate_satb_log_enqueue_if_necessary(bool with_frame) {
@@ -4426,7 +4468,7 @@
 
   // Check on whether to annul.
   br_on_reg_cond(rc_z, /*annul*/false, Assembler::pt, tmp, filtered);
-  delayed() -> nop();
+  delayed()->nop();
 
   // Do we need to load the previous value?
   if (obj != noreg) {
@@ -4450,7 +4492,7 @@
   // Is the previous value null?
   // Check on whether to annul.
   br_on_reg_cond(rc_z, /*annul*/false, Assembler::pt, pre_val, filtered);
-  delayed() -> nop();
+  delayed()->nop();
 
   // OK, it's not filtered, so we'll need to call enqueue.  In the normal
   // case, pre_val will be a scratch G-reg, but there are some cases in
@@ -4518,79 +4560,83 @@
   BufferBlob* bb = BufferBlob::create("dirty_card_enqueue", EnqueueCodeSize*2);
   CodeBuffer buf(bb);
   MacroAssembler masm(&buf);
-  address start = masm.pc();
+#define __ masm.
+  address start = __ pc();
 
   Label not_already_dirty, restart, refill;
 
 #ifdef _LP64
-  masm.srlx(O0, CardTableModRefBS::card_shift, O0);
+  __ srlx(O0, CardTableModRefBS::card_shift, O0);
 #else
-  masm.srl(O0, CardTableModRefBS::card_shift, O0);
+  __ srl(O0, CardTableModRefBS::card_shift, O0);
 #endif
   AddressLiteral addrlit(byte_map_base);
-  masm.set(addrlit, O1); // O1 := <card table base>
-  masm.ldub(O0, O1, O2); // O2 := [O0 + O1]
+  __ set(addrlit, O1); // O1 := <card table base>
+  __ ldub(O0, O1, O2); // O2 := [O0 + O1]
 
-  masm.br_on_reg_cond(Assembler::rc_nz, /*annul*/false, Assembler::pt,
+  __ br_on_reg_cond(Assembler::rc_nz, /*annul*/false, Assembler::pt,
                       O2, not_already_dirty);
   // Get O1 + O2 into a reg by itself -- useful in the take-the-branch
   // case, harmless if not.
-  masm.delayed()->add(O0, O1, O3);
+  __ delayed()->add(O0, O1, O3);
 
   // We didn't take the branch, so we're already dirty: return.
   // Use return-from-leaf
-  masm.retl();
-  masm.delayed()->nop();
+  __ retl();
+  __ delayed()->nop();
 
   // Not dirty.
-  masm.bind(not_already_dirty);
+  __ bind(not_already_dirty);
   // First, dirty it.
-  masm.stb(G0, O3, G0);  // [cardPtr] := 0  (i.e., dirty).
+  __ stb(G0, O3, G0);  // [cardPtr] := 0  (i.e., dirty).
   int dirty_card_q_index_byte_offset =
     in_bytes(JavaThread::dirty_card_queue_offset() +
              PtrQueue::byte_offset_of_index());
   int dirty_card_q_buf_byte_offset =
     in_bytes(JavaThread::dirty_card_queue_offset() +
              PtrQueue::byte_offset_of_buf());
-  masm.bind(restart);
-  masm.ld_ptr(G2_thread, dirty_card_q_index_byte_offset, L0);
+  __ bind(restart);
+  __ ld_ptr(G2_thread, dirty_card_q_index_byte_offset, L0);
 
-  masm.br_on_reg_cond(Assembler::rc_z, /*annul*/false, Assembler::pn,
+  __ br_on_reg_cond(Assembler::rc_z, /*annul*/false, Assembler::pn,
                       L0, refill);
   // If the branch is taken, no harm in executing this in the delay slot.
-  masm.delayed()->ld_ptr(G2_thread, dirty_card_q_buf_byte_offset, L1);
-  masm.sub(L0, oopSize, L0);
+  __ delayed()->ld_ptr(G2_thread, dirty_card_q_buf_byte_offset, L1);
+  __ sub(L0, oopSize, L0);
 
-  masm.st_ptr(O3, L1, L0);  // [_buf + index] := I0
+  __ st_ptr(O3, L1, L0);  // [_buf + index] := I0
   // Use return-from-leaf
-  masm.retl();
-  masm.delayed()->st_ptr(L0, G2_thread, dirty_card_q_index_byte_offset);
+  __ retl();
+  __ delayed()->st_ptr(L0, G2_thread, dirty_card_q_index_byte_offset);
 
-  masm.bind(refill);
+  __ bind(refill);
   address handle_zero =
     CAST_FROM_FN_PTR(address,
                      &DirtyCardQueueSet::handle_zero_index_for_thread);
   // This should be rare enough that we can afford to save all the
   // scratch registers that the calling context might be using.
-  masm.mov(G1_scratch, L3);
-  masm.mov(G3_scratch, L5);
+  __ mov(G1_scratch, L3);
+  __ mov(G3_scratch, L5);
   // We need the value of O3 above (for the write into the buffer), so we
   // save and restore it.
-  masm.mov(O3, L6);
+  __ mov(O3, L6);
   // Since the call will overwrite O7, we save and restore that, as well.
-  masm.mov(O7, L4);
+  __ mov(O7, L4);
 
-  masm.call_VM_leaf(L7_thread_cache, handle_zero, G2_thread);
-  masm.mov(L3, G1_scratch);
-  masm.mov(L5, G3_scratch);
-  masm.mov(L6, O3);
-  masm.br(Assembler::always, /*annul*/false, Assembler::pt, restart);
-  masm.delayed()->mov(L4, O7);
+  __ call_VM_leaf(L7_thread_cache, handle_zero, G2_thread);
+  __ mov(L3, G1_scratch);
+  __ mov(L5, G3_scratch);
+  __ mov(L6, O3);
+  __ br(Assembler::always, /*annul*/false, Assembler::pt, restart);
+  __ delayed()->mov(L4, O7);
 
   dirty_card_log_enqueue = start;
-  dirty_card_log_enqueue_end = masm.pc();
+  dirty_card_log_enqueue_end = __ pc();
   // XXX Should have a guarantee here about not going off the end!
   // Does it already do so?  Do an experiment...
+
+#undef __
+
 }
 
 static inline void
@@ -4903,7 +4949,7 @@
   delayed()->mov(G0, result);     // not equal
 
   // only one char ?
-  br_on_reg_cond(rc_z, true, Assembler::pn, limit, Ldone);
+  cmp_zero_and_br(zero, limit, Ldone, true, Assembler::pn);
   delayed()->add(G0, 1, result); // zero-length arrays are equal
 
   // word by word compare, dont't need alignment check
diff --git a/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp b/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp
index 30cff57..4462ee5 100644
--- a/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp
+++ b/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp
@@ -761,7 +761,7 @@
     mwtos_opf   = 0x119
   };
 
-  enum RCondition {  rc_z = 1,  rc_lez = 2,  rc_lz = 3, rc_nz = 5, rc_gz = 6, rc_gez = 7  };
+  enum RCondition {  rc_z = 1,  rc_lez = 2,  rc_lz = 3, rc_nz = 5, rc_gz = 6, rc_gez = 7, rc_last = rc_gez  };
 
   enum Condition {
      // for FBfcc & FBPfcc instruction
@@ -866,9 +866,18 @@
     return is_simm(d, nbits + 2);
   }
 
+  address target_distance(Label& L) {
+    // Assembler::target(L) should be called only when
+    // a branch instruction is emitted since non-bound
+    // labels record current pc() as a branch address.
+    if (L.is_bound()) return target(L);
+    // Return current address for non-bound labels.
+    return pc();
+  }
+
   // test if label is in simm16 range in words (wdisp16).
   bool is_in_wdisp16_range(Label& L) {
-    return is_in_wdisp_range(target(L), pc(), 16);
+    return is_in_wdisp_range(target_distance(L), pc(), 16);
   }
   // test if the distance between two addresses fits in simm30 range in words
   static bool is_in_wdisp30_range(address a, address b) {
@@ -877,7 +886,11 @@
 
   enum ASIs { // page 72, v9
     ASI_PRIMARY        = 0x80,
-    ASI_PRIMARY_LITTLE = 0x88
+    ASI_PRIMARY_LITTLE = 0x88,
+    // Block initializing store
+    ASI_ST_BLKINIT_PRIMARY = 0xE2,
+    // Most-Recently-Used (MRU) BIS variant
+    ASI_ST_BLKINIT_MRU_PRIMARY = 0xF2
     // add more from book as needed
   };
 
@@ -975,6 +988,20 @@
   static int sx(       int         i)  { return  u_field(i,             12, 12); } // shift x=1 means 64-bit
   static int opf(      int         x)  { return  u_field(x,             13,  5); }
 
+  static bool is_cbcond( int x ) {
+    return (VM_Version::has_cbcond() && (inv_cond(x) > rc_last) &&
+            inv_op(x) == branch_op && inv_op2(x) == bpr_op2);
+  }
+  static bool is_cxb( int x ) {
+    assert(is_cbcond(x), "wrong instruction");
+    return (x & (1<<21)) != 0;
+  }
+  static int cond_cbcond( int         x)  { return  u_field((((x & 8)<<1) + 8 + (x & 7)), 29, 25); }
+  static int inv_cond_cbcond(int      x)  {
+    assert(is_cbcond(x), "wrong instruction");
+    return inv_u_field(x, 27, 25) | (inv_u_field(x, 29, 29)<<3);
+  }
+
   static int opf_cc(   CC          c, bool useFloat ) { return u_field((useFloat ? 0 : 4) + c, 13, 11); }
   static int mov_cc(   CC          c, bool useFloat ) { return u_field(useFloat ? 0 : 1,  18, 18) | u_field(c, 12, 11); }
 
@@ -1026,6 +1053,26 @@
     return r;
   }
 
+  // compute inverse of wdisp10
+  static intptr_t inv_wdisp10(int x, intptr_t pos) {
+    assert(is_cbcond(x), "wrong instruction");
+    int lo = inv_u_field(x, 12, 5);
+    int hi = (x >> 19) & 3;
+    if (hi >= 2) hi |= ~1;
+    return (((hi << 8) | lo) << 2) + pos;
+  }
+
+  // word offset for cbcond, 8 bits at [B12,B5], 2 bits at [B20,B19]
+  static int wdisp10(intptr_t x, intptr_t off) {
+    assert(VM_Version::has_cbcond(), "This CPU does not have CBCOND instruction");
+    intptr_t xx = x - off;
+    assert_signed_word_disp_range(xx, 10);
+    int r =  ( ( (xx >>  2   ) & ((1 << 8) - 1) ) <<  5 )
+           | ( ( (xx >> (2+8)) & 3              ) << 19 );
+    // Have to fake cbcond instruction to pass assert in inv_wdisp10()
+    assert(inv_wdisp10((r | op(branch_op) | cond_cbcond(rc_last+1) | op2(bpr_op2)), off) == x,  "inverse is not inverse");
+    return r;
+  }
 
   // word displacement in low-order nbits bits
 
@@ -1138,7 +1185,26 @@
 #endif
   }
 
+  // cbcond instruction should not be generated one after an other
+  bool cbcond_before() {
+    if (offset() == 0) return false; // it is first instruction
+    int x = *(int*)(intptr_t(pc()) - 4); // previous instruction
+    return is_cbcond(x);
+  }
+
+  void no_cbcond_before() {
+    assert(offset() == 0 || !cbcond_before(), "cbcond should not follow an other cbcond");
+  }
+
 public:
+
+  bool use_cbcond(Label& L) {
+    if (!UseCBCond || cbcond_before()) return false;
+    intptr_t x = intptr_t(target_distance(L)) - intptr_t(pc());
+    assert( (x & 3) == 0, "not word aligned");
+    return is_simm(x, 12);
+  }
+
   // Tells assembler you know that next instruction is delayed
   Assembler* delayed() {
 #ifdef CHECK_DELAY
@@ -1181,10 +1247,15 @@
   void addccc( Register s1, Register s2, Register d ) { emit_long( op(arith_op) | rd(d) | op3(addc_op3 | cc_bit_op3) | rs1(s1) | rs2(s2) ); }
   void addccc( Register s1, int simm13a, Register d ) { emit_long( op(arith_op) | rd(d) | op3(addc_op3 | cc_bit_op3) | rs1(s1) | immed(true) | simm(simm13a, 13) ); }
 
+
   // pp 136
 
-  inline void bpr( RCondition c, bool a, Predict p, Register s1, address d, relocInfo::relocType rt = relocInfo::none );
-  inline void bpr( RCondition c, bool a, Predict p, Register s1, Label& L);
+  inline void bpr(RCondition c, bool a, Predict p, Register s1, address d, relocInfo::relocType rt = relocInfo::none);
+  inline void bpr(RCondition c, bool a, Predict p, Register s1, Label& L);
+
+  // compare and branch
+  inline void cbcond(Condition c, CC cc, Register s1, Register s2, Label& L);
+  inline void cbcond(Condition c, CC cc, Register s1, int simm5, Label& L);
 
  protected: // use MacroAssembler::br instead
 
@@ -1198,8 +1269,6 @@
   inline void fbp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt = relocInfo::none );
   inline void fbp( Condition c, bool a, CC cc, Predict p, Label& L );
 
- public:
-
   // pp 144
 
   inline void br( Condition c, bool a, address d, relocInfo::relocType rt = relocInfo::none );
@@ -1220,6 +1289,8 @@
   inline void call( address d,  relocInfo::relocType rt = relocInfo::runtime_call_type );
   inline void call( Label& L,   relocInfo::relocType rt = relocInfo::runtime_call_type );
 
+ public:
+
   // pp 150
 
   // These instructions compare the contents of s2 with the contents of
@@ -1862,8 +1933,8 @@
   inline void fb( Condition c, bool a, Predict p, address d, relocInfo::relocType rt = relocInfo::none );
   inline void fb( Condition c, bool a, Predict p, Label& L );
 
-  // compares register with zero and branches (V9 and V8 instructions)
-  void br_zero( Condition c, bool a, Predict p, Register s1, Label& L);
+  // compares register with zero (32 bit) and branches (V9 and V8 instructions)
+  void cmp_zero_and_br( Condition c, Register s1, Label& L, bool a = false, Predict p = pn );
   // Compares a pointer register with zero and branches on (not)null.
   // Does a test & branch on 32-bit systems and a register-branch on 64-bit.
   void br_null   ( Register s1, bool a, Predict p, Label& L );
@@ -1875,6 +1946,26 @@
   void br_on_reg_cond( RCondition c, bool a, Predict p, Register s1, address d, relocInfo::relocType rt = relocInfo::none );
   void br_on_reg_cond( RCondition c, bool a, Predict p, Register s1, Label& L);
 
+  //
+  // Compare registers and branch with nop in delay slot or cbcond without delay slot.
+  //
+  // ATTENTION: use these instructions with caution because cbcond instruction
+  //            has very short distance: 512 instructions (2Kbyte).
+
+  // Compare integer (32 bit) values (icc only).
+  void cmp_and_br_short(Register s1, Register s2, Condition c, Predict p, Label& L);
+  void cmp_and_br_short(Register s1, int simm13a, Condition c, Predict p, Label& L);
+  // Platform depending version for pointer compare (icc on !LP64 and xcc on LP64).
+  void cmp_and_brx_short(Register s1, Register s2, Condition c, Predict p, Label& L);
+  void cmp_and_brx_short(Register s1, int simm13a, Condition c, Predict p, Label& L);
+
+  // Short branch version for compares a pointer pwith zero.
+  void br_null_short   ( Register s1, Predict p, Label& L );
+  void br_notnull_short( Register s1, Predict p, Label& L );
+
+  // unconditional short branch
+  void ba_short(Label& L);
+
   inline void bp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt = relocInfo::none );
   inline void bp( Condition c, bool a, CC cc, Predict p, Label& L );
 
@@ -1882,8 +1973,8 @@
   inline void brx( Condition c, bool a, Predict p, address d, relocInfo::relocType rt = relocInfo::none );
   inline void brx( Condition c, bool a, Predict p, Label& L );
 
-  // unconditional short branch
-  inline void ba( bool a, Label& L );
+  // unconditional branch
+  inline void ba( Label& L );
 
   // Branch that tests fp condition codes
   inline void fbp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt = relocInfo::none );
@@ -2167,7 +2258,6 @@
 
   inline void stbool(Register d, const Address& a) { stb(d, a); }
   inline void ldbool(const Address& a, Register d) { ldsb(a, d); }
-  inline void tstbool( Register s ) { tst(s); }
   inline void movbool( bool boolconst, Register d) { mov( (int) boolconst, d); }
 
   // klass oop manipulations if compressed
@@ -2469,8 +2559,7 @@
                                      Label* L_success,
                                      Label* L_failure,
                                      Label* L_slow_path,
-                RegisterOrConstant super_check_offset = RegisterOrConstant(-1),
-                Register instanceof_hack = noreg);
+                RegisterOrConstant super_check_offset = RegisterOrConstant(-1));
 
   // The rest of the type check; must be wired to a corresponding fast path.
   // It does not repeat the fast path logic, so don't use it standalone.
diff --git a/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp b/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp
index 164152a..bbacbe9 100644
--- a/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp
+++ b/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp
@@ -80,32 +80,36 @@
 inline void Assembler::add(Register s1, int simm13a, Register d, relocInfo::relocType rtype ) { emit_data( op(arith_op) | rd(d) | op3(add_op3) | rs1(s1) | immed(true) | simm(simm13a, 13), rtype ); }
 inline void Assembler::add(Register s1, int simm13a, Register d, RelocationHolder const& rspec ) { emit_data( op(arith_op) | rd(d) | op3(add_op3) | rs1(s1) | immed(true) | simm(simm13a, 13), rspec ); }
 
-inline void Assembler::bpr( RCondition c, bool a, Predict p, Register s1, address d, relocInfo::relocType rt ) { v9_only();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(bpr_op2) | wdisp16(intptr_t(d), intptr_t(pc())) | predict(p) | rs1(s1), rt);  has_delay_slot(); }
+inline void Assembler::bpr( RCondition c, bool a, Predict p, Register s1, address d, relocInfo::relocType rt ) { v9_only();  cti();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(bpr_op2) | wdisp16(intptr_t(d), intptr_t(pc())) | predict(p) | rs1(s1), rt);  has_delay_slot(); }
 inline void Assembler::bpr( RCondition c, bool a, Predict p, Register s1, Label& L) { bpr( c, a, p, s1, target(L)); }
 
-inline void Assembler::fb( Condition c, bool a, address d, relocInfo::relocType rt ) { v9_dep();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(fb_op2) | wdisp(intptr_t(d), intptr_t(pc()), 22), rt);  has_delay_slot(); }
+inline void Assembler::fb( Condition c, bool a, address d, relocInfo::relocType rt ) { v9_dep();  cti();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(fb_op2) | wdisp(intptr_t(d), intptr_t(pc()), 22), rt);  has_delay_slot(); }
 inline void Assembler::fb( Condition c, bool a, Label& L ) { fb(c, a, target(L)); }
 
-inline void Assembler::fbp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt ) { v9_only();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(fbp_op2) | branchcc(cc) | predict(p) | wdisp(intptr_t(d), intptr_t(pc()), 19), rt);  has_delay_slot(); }
+inline void Assembler::fbp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt ) { v9_only();  cti();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(fbp_op2) | branchcc(cc) | predict(p) | wdisp(intptr_t(d), intptr_t(pc()), 19), rt);  has_delay_slot(); }
 inline void Assembler::fbp( Condition c, bool a, CC cc, Predict p, Label& L ) { fbp(c, a, cc, p, target(L)); }
 
-inline void Assembler::cb( Condition c, bool a, address d, relocInfo::relocType rt ) { v8_only();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(cb_op2) | wdisp(intptr_t(d), intptr_t(pc()), 22), rt);  has_delay_slot(); }
+inline void Assembler::cb( Condition c, bool a, address d, relocInfo::relocType rt ) { v8_only();  cti();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(cb_op2) | wdisp(intptr_t(d), intptr_t(pc()), 22), rt);  has_delay_slot(); }
 inline void Assembler::cb( Condition c, bool a, Label& L ) { cb(c, a, target(L)); }
 
-inline void Assembler::br( Condition c, bool a, address d, relocInfo::relocType rt ) { v9_dep();   emit_data( op(branch_op) | annul(a) | cond(c) | op2(br_op2) | wdisp(intptr_t(d), intptr_t(pc()), 22), rt);  has_delay_slot(); }
+inline void Assembler::br( Condition c, bool a, address d, relocInfo::relocType rt ) { v9_dep();  cti();   emit_data( op(branch_op) | annul(a) | cond(c) | op2(br_op2) | wdisp(intptr_t(d), intptr_t(pc()), 22), rt);  has_delay_slot(); }
 inline void Assembler::br( Condition c, bool a, Label& L ) { br(c, a, target(L)); }
 
-inline void Assembler::bp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt ) { v9_only();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(bp_op2) | branchcc(cc) | predict(p) | wdisp(intptr_t(d), intptr_t(pc()), 19), rt);  has_delay_slot(); }
+inline void Assembler::bp( Condition c, bool a, CC cc, Predict p, address d, relocInfo::relocType rt ) { v9_only();  cti();  emit_data( op(branch_op) | annul(a) | cond(c) | op2(bp_op2) | branchcc(cc) | predict(p) | wdisp(intptr_t(d), intptr_t(pc()), 19), rt);  has_delay_slot(); }
 inline void Assembler::bp( Condition c, bool a, CC cc, Predict p, Label& L ) { bp(c, a, cc, p, target(L)); }
 
-inline void Assembler::call( address d,  relocInfo::relocType rt ) { emit_data( op(call_op) | wdisp(intptr_t(d), intptr_t(pc()), 30), rt);  has_delay_slot(); assert(rt != relocInfo::virtual_call_type, "must use virtual_call_Relocation::spec"); }
+// compare and branch
+inline void Assembler::cbcond(Condition c, CC cc, Register s1, Register s2, Label& L) { cti();  no_cbcond_before();  emit_data(op(branch_op) | cond_cbcond(c) | op2(bpr_op2) | branchcc(cc) | wdisp10(intptr_t(target(L)), intptr_t(pc())) | rs1(s1) | rs2(s2)); }
+inline void Assembler::cbcond(Condition c, CC cc, Register s1, int simm5, Label& L)   { cti();  no_cbcond_before();  emit_data(op(branch_op) | cond_cbcond(c) | op2(bpr_op2) | branchcc(cc) | wdisp10(intptr_t(target(L)), intptr_t(pc())) | rs1(s1) | immed(true) | simm(simm5, 5)); }
+
+inline void Assembler::call( address d,  relocInfo::relocType rt ) { cti();  emit_data( op(call_op) | wdisp(intptr_t(d), intptr_t(pc()), 30), rt);  has_delay_slot(); assert(rt != relocInfo::virtual_call_type, "must use virtual_call_Relocation::spec"); }
 inline void Assembler::call( Label& L,   relocInfo::relocType rt ) { call( target(L), rt); }
 
 inline void Assembler::flush( Register s1, Register s2) { emit_long( op(arith_op) | op3(flush_op3) | rs1(s1) | rs2(s2)); }
 inline void Assembler::flush( Register s1, int simm13a) { emit_data( op(arith_op) | op3(flush_op3) | rs1(s1) | immed(true) | simm(simm13a, 13)); }
 
-inline void Assembler::jmpl( Register s1, Register s2, Register d                          ) { emit_long( op(arith_op) | rd(d) | op3(jmpl_op3) | rs1(s1) | rs2(s2));  has_delay_slot(); }
-inline void Assembler::jmpl( Register s1, int simm13a, Register d, RelocationHolder const& rspec ) { emit_data( op(arith_op) | rd(d) | op3(jmpl_op3) | rs1(s1) | immed(true) | simm(simm13a, 13), rspec);  has_delay_slot(); }
+inline void Assembler::jmpl( Register s1, Register s2, Register d ) { cti();  emit_long( op(arith_op) | rd(d) | op3(jmpl_op3) | rs1(s1) | rs2(s2));  has_delay_slot(); }
+inline void Assembler::jmpl( Register s1, int simm13a, Register d, RelocationHolder const& rspec ) { cti();  emit_data( op(arith_op) | rd(d) | op3(jmpl_op3) | rs1(s1) | immed(true) | simm(simm13a, 13), rspec);  has_delay_slot(); }
 
 inline void Assembler::ldf(FloatRegisterImpl::Width w, Register s1, RegisterOrConstant s2, FloatRegister d) {
   if (s2.is_register()) ldf(w, s1, s2.as_register(), d);
@@ -240,8 +244,8 @@
 inline void Assembler::prefetch(const Address& a, PrefetchFcn f, int offset) { v9_only(); relocate(a.rspec(offset)); prefetch(a.base(), a.disp() + offset, f); }
 
 
-inline void Assembler::rett( Register s1, Register s2                         ) { emit_long( op(arith_op) | op3(rett_op3) | rs1(s1) | rs2(s2));  has_delay_slot(); }
-inline void Assembler::rett( Register s1, int simm13a, relocInfo::relocType rt) { emit_data( op(arith_op) | op3(rett_op3) | rs1(s1) | immed(true) | simm(simm13a, 13), rt);  has_delay_slot(); }
+inline void Assembler::rett( Register s1, Register s2                         ) { cti();  emit_long( op(arith_op) | op3(rett_op3) | rs1(s1) | rs2(s2));  has_delay_slot(); }
+inline void Assembler::rett( Register s1, int simm13a, relocInfo::relocType rt) { cti();  emit_data( op(arith_op) | op3(rett_op3) | rs1(s1) | immed(true) | simm(simm13a, 13), rt);  has_delay_slot(); }
 
 inline void Assembler::sethi( int imm22a, Register d, RelocationHolder const& rspec ) { emit_data( op(branch_op) | rd(d) | op2(sethi_op2) | hi22(imm22a), rspec); }
 
@@ -557,8 +561,8 @@
   brx(c, a, p, target(L));
 }
 
-inline void MacroAssembler::ba( bool a, Label& L ) {
-  br(always, a, pt, L);
+inline void MacroAssembler::ba( Label& L ) {
+  br(always, false, pt, L);
 }
 
 // Warning: V9 only functions
diff --git a/hotspot/src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp b/hotspot/src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp
index 73d808a..9124e8e 100644
--- a/hotspot/src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp
@@ -303,9 +303,7 @@
     assert(_oop_index >= 0, "must have oop index");
     __ load_heap_oop(_obj, java_lang_Class::klass_offset_in_bytes(), G3);
     __ ld_ptr(G3, instanceKlass::init_thread_offset_in_bytes() + sizeof(klassOopDesc), G3);
-    __ cmp(G2_thread, G3);
-    __ br(Assembler::notEqual, false, Assembler::pn, call_patch);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(G2_thread, G3, Assembler::notEqual, Assembler::pn, call_patch);
 
     // load_klass patches may execute the patched code before it's
     // copied back into place so we need to jump back into the main
diff --git a/hotspot/src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp b/hotspot/src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp
index b450437..25c1be7 100644
--- a/hotspot/src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp
@@ -217,9 +217,7 @@
       {
         Label L;
         __ ld_ptr(OSR_buf, slot_offset + 1*BytesPerWord, O7);
-        __ cmp(G0, O7);
-        __ br(Assembler::notEqual, false, Assembler::pt, L);
-        __ delayed()->nop();
+        __ cmp_and_br_short(O7, G0, Assembler::notEqual, Assembler::pt, L);
         __ stop("locked object is NULL");
         __ bind(L);
       }
@@ -2096,10 +2094,10 @@
       __ xor3(O0, -1, tmp);
       __ sub(length, tmp, length);
       __ add(src_pos, tmp, src_pos);
-      __ br_zero(Assembler::less, false, Assembler::pn, O0, *stub->entry());
+      __ cmp_zero_and_br(Assembler::less, O0, *stub->entry());
       __ delayed()->add(dst_pos, tmp, dst_pos);
     } else {
-      __ br_zero(Assembler::less, false, Assembler::pn, O0, *stub->entry());
+      __ cmp_zero_and_br(Assembler::less, O0, *stub->entry());
       __ delayed()->nop();
     }
     __ bind(*stub->continuation());
@@ -2123,22 +2121,19 @@
 
   if (flags & LIR_OpArrayCopy::src_pos_positive_check) {
     // test src_pos register
-    __ tst(src_pos);
-    __ br(Assembler::less, false, Assembler::pn, *stub->entry());
+    __ cmp_zero_and_br(Assembler::less, src_pos, *stub->entry());
     __ delayed()->nop();
   }
 
   if (flags & LIR_OpArrayCopy::dst_pos_positive_check) {
     // test dst_pos register
-    __ tst(dst_pos);
-    __ br(Assembler::less, false, Assembler::pn, *stub->entry());
+    __ cmp_zero_and_br(Assembler::less, dst_pos, *stub->entry());
     __ delayed()->nop();
   }
 
   if (flags & LIR_OpArrayCopy::length_positive_check) {
     // make sure length isn't negative
-    __ tst(length);
-    __ br(Assembler::less, false, Assembler::pn, *stub->entry());
+    __ cmp_zero_and_br(Assembler::less, length, *stub->entry());
     __ delayed()->nop();
   }
 
@@ -2261,8 +2256,7 @@
 #ifndef PRODUCT
         if (PrintC1Statistics) {
           Label failed;
-          __ br_notnull(O0, false, Assembler::pn,  failed);
-          __ delayed()->nop();
+          __ br_notnull_short(O0, Assembler::pn, failed);
           __ inc_counter((address)&Runtime1::_arraycopy_checkcast_cnt, G1, G3);
           __ bind(failed);
         }
@@ -2314,9 +2308,7 @@
         __ br(Assembler::notEqual, false, Assembler::pn, halt);
         // load the raw value of the src klass.
         __ delayed()->lduw(src, oopDesc::klass_offset_in_bytes(), tmp2);
-        __ cmp(tmp, tmp2);
-        __ br(Assembler::equal, false, Assembler::pn, known_ok);
-        __ delayed()->nop();
+        __ cmp_and_br_short(tmp, tmp2, Assembler::equal, Assembler::pn, known_ok);
       } else {
         __ cmp(tmp, tmp2);
         __ br(Assembler::equal, false, Assembler::pn, known_ok);
@@ -2330,9 +2322,7 @@
         __ cmp(tmp, tmp2);
         __ brx(Assembler::notEqual, false, Assembler::pn, halt);
         __ delayed()->ld_ptr(src, oopDesc::klass_offset_in_bytes(), tmp2);
-        __ cmp(tmp, tmp2);
-        __ brx(Assembler::equal, false, Assembler::pn, known_ok);
-        __ delayed()->nop();
+        __ cmp_and_brx_short(tmp, tmp2, Assembler::equal, Assembler::pn, known_ok);
       } else {
         __ cmp(tmp, tmp2);
         __ brx(Assembler::equal, false, Assembler::pn, known_ok);
@@ -2530,15 +2520,13 @@
                           mdo_offset_bias);
     __ ld_ptr(receiver_addr, tmp1);
     __ verify_oop(tmp1);
-    __ cmp(recv, tmp1);
-    __ brx(Assembler::notEqual, false, Assembler::pt, next_test);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(recv, tmp1, Assembler::notEqual, Assembler::pt, next_test);
     Address data_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_count_offset(i)) -
                       mdo_offset_bias);
     __ ld_ptr(data_addr, tmp1);
     __ add(tmp1, DataLayout::counter_increment, tmp1);
     __ st_ptr(tmp1, data_addr);
-    __ ba(false, *update_done);
+    __ ba(*update_done);
     __ delayed()->nop();
     __ bind(next_test);
   }
@@ -2549,13 +2537,12 @@
     Address recv_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i)) -
                       mdo_offset_bias);
     __ ld_ptr(recv_addr, tmp1);
-    __ br_notnull(tmp1, false, Assembler::pt, next_test);
-    __ delayed()->nop();
+    __ br_notnull_short(tmp1, Assembler::pt, next_test);
     __ st_ptr(recv, recv_addr);
     __ set(DataLayout::counter_increment, tmp1);
     __ st_ptr(tmp1, mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_count_offset(i)) -
               mdo_offset_bias);
-    __ ba(false, *update_done);
+    __ ba(*update_done);
     __ delayed()->nop();
     __ bind(next_test);
   }
@@ -2601,8 +2588,7 @@
     setup_md_access(method, op->profiled_bci(), md, data, mdo_offset_bias);
 
     Label not_null;
-    __ br_notnull(obj, false, Assembler::pn, not_null);
-    __ delayed()->nop();
+    __ br_notnull_short(obj, Assembler::pn, not_null);
     Register mdo      = k_RInfo;
     Register data_val = Rtmp1;
     jobject2reg(md->constant_encoding(), mdo);
@@ -2614,7 +2600,7 @@
     __ ldub(flags_addr, data_val);
     __ or3(data_val, BitData::null_seen_byte_constant(), data_val);
     __ stb(data_val, flags_addr);
-    __ ba(false, *obj_is_null);
+    __ ba(*obj_is_null);
     __ delayed()->nop();
     __ bind(not_null);
   } else {
@@ -2682,7 +2668,7 @@
     __ load_klass(obj, recv);
     type_profile_helper(mdo, mdo_offset_bias, md, data, recv, tmp1, success);
     // Jump over the failure case
-    __ ba(false, *success);
+    __ ba(*success);
     __ delayed()->nop();
     // Cast failure case
     __ bind(profile_cast_failure);
@@ -2695,10 +2681,10 @@
     __ ld_ptr(data_addr, tmp1);
     __ sub(tmp1, DataLayout::counter_increment, tmp1);
     __ st_ptr(tmp1, data_addr);
-    __ ba(false, *failure);
+    __ ba(*failure);
     __ delayed()->nop();
   }
-  __ ba(false, *success);
+  __ ba(*success);
   __ delayed()->nop();
 }
 
@@ -2728,8 +2714,7 @@
 
     if (op->should_profile()) {
       Label not_null;
-      __ br_notnull(value, false, Assembler::pn, not_null);
-      __ delayed()->nop();
+      __ br_notnull_short(value, Assembler::pn, not_null);
       Register mdo      = k_RInfo;
       Register data_val = Rtmp1;
       jobject2reg(md->constant_encoding(), mdo);
@@ -2741,12 +2726,10 @@
       __ ldub(flags_addr, data_val);
       __ or3(data_val, BitData::null_seen_byte_constant(), data_val);
       __ stb(data_val, flags_addr);
-      __ ba(false, done);
-      __ delayed()->nop();
+      __ ba_short(done);
       __ bind(not_null);
     } else {
-      __ br_null(value, false, Assembler::pn, done);
-      __ delayed()->nop();
+      __ br_null_short(value, Assembler::pn, done);
     }
     add_debug_info_for_null_check_here(op->info_for_exception());
     __ load_klass(array, k_RInfo);
@@ -2777,8 +2760,7 @@
       }
       __ load_klass(value, recv);
       type_profile_helper(mdo, mdo_offset_bias, md, data, recv, tmp1, &done);
-      __ ba(false, done);
-      __ delayed()->nop();
+      __ ba_short(done);
       // Cast failure case
       __ bind(profile_cast_failure);
       jobject2reg(md->constant_encoding(), mdo);
@@ -2790,7 +2772,7 @@
       __ ld_ptr(data_addr, tmp1);
       __ sub(tmp1, DataLayout::counter_increment, tmp1);
       __ st_ptr(tmp1, data_addr);
-      __ ba(false, *stub->entry());
+      __ ba(*stub->entry());
       __ delayed()->nop();
     }
     __ bind(done);
@@ -2808,8 +2790,7 @@
     emit_typecheck_helper(op, &success, &failure, &failure);
     __ bind(failure);
     __ set(0, dst);
-    __ ba(false, done);
-    __ delayed()->nop();
+    __ ba_short(done);
     __ bind(success);
     __ set(1, dst);
     __ bind(done);
diff --git a/hotspot/src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp b/hotspot/src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp
index 35e70e9..4372225 100644
--- a/hotspot/src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp
@@ -41,9 +41,7 @@
   // Note: needs more testing of out-of-line vs. inline slow case
   verify_oop(receiver);
   load_klass(receiver, temp_reg);
-  cmp(temp_reg, iCache);
-  brx(Assembler::equal, true, Assembler::pt, L);
-  delayed()->nop();
+  cmp_and_brx_short(temp_reg, iCache, Assembler::equal, Assembler::pt, L);
   AddressLiteral ic_miss(SharedRuntime::get_ic_miss_stub());
   jump_to(ic_miss, temp_reg);
   delayed()->nop();
@@ -142,8 +140,7 @@
   }
   // Test first it it is a fast recursive unlock
   ld_ptr(Rbox, BasicLock::displaced_header_offset_in_bytes(), Rmark);
-  br_null(Rmark, false, Assembler::pt, done);
-  delayed()->nop();
+  br_null_short(Rmark, Assembler::pt, done);
   if (!UseBiasedLocking) {
     // load object
     ld_ptr(Rbox, BasicObjectLock::obj_offset_in_bytes(), Roop);
@@ -231,7 +228,7 @@
   if (!is_simm13(obj_size * wordSize)) {
     // would need to use extra register to load
     // object size => go the slow case for now
-    br(Assembler::always, false, Assembler::pt, slow_case);
+    ba(slow_case);
     delayed()->nop();
     return;
   }
@@ -257,12 +254,10 @@
     Label ok;
     ld(klass, klassOopDesc::header_size() * HeapWordSize + Klass::layout_helper_offset_in_bytes(), t1);
     if (var_size_in_bytes != noreg) {
-      cmp(t1, var_size_in_bytes);
+      cmp_and_brx_short(t1, var_size_in_bytes, Assembler::equal, Assembler::pt, ok);
     } else {
-      cmp(t1, con_size_in_bytes);
+      cmp_and_brx_short(t1, con_size_in_bytes, Assembler::equal, Assembler::pt, ok);
     }
-    brx(Assembler::equal, false, Assembler::pt, ok);
-    delayed()->nop();
     stop("bad size in initialize_object");
     should_not_reach_here();
 
@@ -387,8 +382,7 @@
 
 void C1_MacroAssembler::verify_not_null_oop(Register r) {
   Label not_null;
-  br_notnull(r, false, Assembler::pt, not_null);
-  delayed()->nop();
+  br_notnull_short(r, Assembler::pt, not_null);
   stop("non-null oop required");
   bind(not_null);
   if (!VerifyOops) return;
diff --git a/hotspot/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp b/hotspot/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
index 6256ae1..f95756b 100644
--- a/hotspot/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
@@ -71,8 +71,7 @@
   { Label L;
     Address exception_addr(G2_thread, Thread::pending_exception_offset());
     ld_ptr(exception_addr, Gtemp);
-    br_null(Gtemp, false, pt, L);
-    delayed()->nop();
+    br_null_short(Gtemp, pt, L);
     Address vm_result_addr(G2_thread, JavaThread::vm_result_offset());
     st_ptr(G0, vm_result_addr);
     Address vm_result_addr_2(G2_thread, JavaThread::vm_result_2_offset());
@@ -333,9 +332,7 @@
   assert(deopt_blob != NULL, "deoptimization blob must have been created");
 
   Label no_deopt;
-  __ tst(O0);
-  __ brx(Assembler::equal, false, Assembler::pt, no_deopt);
-  __ delayed()->nop();
+  __ br_null_short(O0, Assembler::pt, no_deopt);
 
   // return to the deoptimization handler entry for unpacking and rexecute
   // if we simply returned the we'd deopt as if any call we patched had just
@@ -402,18 +399,15 @@
           if (id == fast_new_instance_init_check_id) {
             // make sure the klass is initialized
             __ ld(G5_klass, instanceKlass::init_state_offset_in_bytes() + sizeof(oopDesc), G3_t1);
-            __ cmp(G3_t1, instanceKlass::fully_initialized);
-            __ br(Assembler::notEqual, false, Assembler::pn, slow_path);
-            __ delayed()->nop();
+            __ cmp_and_br_short(G3_t1, instanceKlass::fully_initialized, Assembler::notEqual, Assembler::pn, slow_path);
           }
 #ifdef ASSERT
           // assert object can be fast path allocated
           {
             Label ok, not_ok;
           __ ld(G5_klass, Klass::layout_helper_offset_in_bytes() + sizeof(oopDesc), G1_obj_size);
-          __ cmp(G1_obj_size, 0);  // make sure it's an instance (LH > 0)
-          __ br(Assembler::lessEqual, false, Assembler::pn, not_ok);
-          __ delayed()->nop();
+          // make sure it's an instance (LH > 0)
+          __ cmp_and_br_short(G1_obj_size, 0, Assembler::lessEqual, Assembler::pn, not_ok);
           __ btst(Klass::_lh_instance_slow_path_bit, G1_obj_size);
           __ br(Assembler::zero, false, Assembler::pn, ok);
           __ delayed()->nop();
@@ -501,9 +495,7 @@
           int tag = ((id == new_type_array_id)
                      ? Klass::_lh_array_tag_type_value
                      : Klass::_lh_array_tag_obj_value);
-          __ cmp(G3_t1, tag);
-          __ brx(Assembler::equal, false, Assembler::pt, ok);
-          __ delayed()->nop();
+          __ cmp_and_brx_short(G3_t1, tag, Assembler::equal, Assembler::pt, ok);
           __ stop("assert(is an array klass)");
           __ should_not_reach_here();
           __ bind(ok);
@@ -519,9 +511,7 @@
 
           // check that array length is small enough for fast path
           __ set(C1_MacroAssembler::max_array_allocation_length, G3_t1);
-          __ cmp(G4_length, G3_t1);
-          __ br(Assembler::greaterUnsigned, false, Assembler::pn, slow_path);
-          __ delayed()->nop();
+          __ cmp_and_br_short(G4_length, G3_t1, Assembler::greaterUnsigned, Assembler::pn, slow_path);
 
           // if we got here then the TLAB allocation failed, so try
           // refilling the TLAB or allocating directly from eden.
diff --git a/hotspot/src/cpu/sparc/vm/cppInterpreter_sparc.cpp b/hotspot/src/cpu/sparc/vm/cppInterpreter_sparc.cpp
index 46d7d27..2c2a93f 100644
--- a/hotspot/src/cpu/sparc/vm/cppInterpreter_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/cppInterpreter_sparc.cpp
@@ -544,7 +544,7 @@
 
     // Generate regular method entry
     __ bind(slow_path);
-    __ ba(false, fast_accessor_slow_entry_path);
+    __ ba(fast_accessor_slow_entry_path);
     __ delayed()->nop();
     return entry;
   }
@@ -719,8 +719,7 @@
 
     Address exception_addr(G2_thread, 0, in_bytes(Thread::pending_exception_offset()));
     __ ld_ptr(exception_addr, G3_scratch);
-    __ br_notnull(G3_scratch, false, Assembler::pn, pending_exception_present);
-    __ delayed()->nop();
+    __ br_notnull_short(G3_scratch, Assembler::pn, pending_exception_present);
     __ ld_ptr(Address(G5_method, 0, in_bytes(methodOopDesc::signature_handler_offset())), G3_scratch);
     __ bind(L);
   }
@@ -1292,7 +1291,7 @@
   deopt_frame_manager_return_atos  = __ pc();
 
   // O0/O1 live
-  __ ba(false, return_from_deopt_common);
+  __ ba(return_from_deopt_common);
   __ delayed()->set(AbstractInterpreter::BasicType_as_index(T_OBJECT), L3_scratch);    // Result stub address array index
 
 
@@ -1300,14 +1299,14 @@
   deopt_frame_manager_return_btos  = __ pc();
 
   // O0/O1 live
-  __ ba(false, return_from_deopt_common);
+  __ ba(return_from_deopt_common);
   __ delayed()->set(AbstractInterpreter::BasicType_as_index(T_BOOLEAN), L3_scratch);    // Result stub address array index
 
   // deopt needs to jump to here to enter the interpreter (return a result)
   deopt_frame_manager_return_itos  = __ pc();
 
   // O0/O1 live
-  __ ba(false, return_from_deopt_common);
+  __ ba(return_from_deopt_common);
   __ delayed()->set(AbstractInterpreter::BasicType_as_index(T_INT), L3_scratch);    // Result stub address array index
 
   // deopt needs to jump to here to enter the interpreter (return a result)
@@ -1327,21 +1326,21 @@
   __ srlx(G1,32,O0);
 #endif /* !_LP64 && COMPILER2 */
   // O0/O1 live
-  __ ba(false, return_from_deopt_common);
+  __ ba(return_from_deopt_common);
   __ delayed()->set(AbstractInterpreter::BasicType_as_index(T_LONG), L3_scratch);    // Result stub address array index
 
   // deopt needs to jump to here to enter the interpreter (return a result)
 
   deopt_frame_manager_return_ftos  = __ pc();
   // O0/O1 live
-  __ ba(false, return_from_deopt_common);
+  __ ba(return_from_deopt_common);
   __ delayed()->set(AbstractInterpreter::BasicType_as_index(T_FLOAT), L3_scratch);    // Result stub address array index
 
   // deopt needs to jump to here to enter the interpreter (return a result)
   deopt_frame_manager_return_dtos  = __ pc();
 
   // O0/O1 live
-  __ ba(false, return_from_deopt_common);
+  __ ba(return_from_deopt_common);
   __ delayed()->set(AbstractInterpreter::BasicType_as_index(T_DOUBLE), L3_scratch);    // Result stub address array index
 
   // deopt needs to jump to here to enter the interpreter (return a result)
@@ -1398,7 +1397,7 @@
   __ ld_ptr(STATE(_stack), L1_scratch);                // Get current stack top
   __ sub(L1_scratch, entry_size, L1_scratch);
   __ st_ptr(L1_scratch, STATE(_stack));
-  __ ba(false, entry);
+  __ ba(entry);
   __ delayed()->add(L1_scratch, wordSize, L1_scratch);        // first real entry (undo prepush)
 
   // 2. move expression stack
@@ -1651,7 +1650,7 @@
 
   __ set((int)BytecodeInterpreter::got_monitors, L1_scratch);
   VALIDATE_STATE(G3_scratch, 5);
-  __ ba(false, call_interpreter);
+  __ ba(call_interpreter);
   __ delayed()->st(L1_scratch, STATE(_msg));
 
   // uncommon trap needs to jump to here to enter the interpreter (re-execute current bytecode)
@@ -1659,7 +1658,7 @@
 
   // QQQ what message do we send
 
-  __ ba(false, call_interpreter);
+  __ ba(call_interpreter);
   __ delayed()->ld_ptr(STATE(_frame_bottom), SP);                  // restore to full stack frame
 
   //=============================================================================
@@ -1675,7 +1674,7 @@
   // ready to resume the interpreter
 
   __ set((int)BytecodeInterpreter::deopt_resume, L1_scratch);
-  __ ba(false, call_interpreter);
+  __ ba(call_interpreter);
   __ delayed()->st(L1_scratch, STATE(_msg));
 
   // Current frame has caught an exception we need to dispatch to the
@@ -1763,7 +1762,7 @@
 
   // L1_scratch points to top of stack (prepushed)
 
-  __ ba(false, resume_interpreter);
+  __ ba(resume_interpreter);
   __ delayed()->mov(L1_scratch, O1);
 
   // An exception is being caught on return to a vanilla interpreter frame.
@@ -1773,7 +1772,7 @@
 
   __ ld_ptr(STATE(_frame_bottom), SP);                             // restore to full stack frame
   __ ld_ptr(STATE(_stack_base), O1);                               // empty java expression stack
-  __ ba(false, resume_interpreter);
+  __ ba(resume_interpreter);
   __ delayed()->sub(O1, wordSize, O1);                             // account for prepush
 
   // Return from interpreted method we return result appropriate to the caller (i.e. "recursive"
@@ -1852,7 +1851,7 @@
 
   __ set((int)BytecodeInterpreter::method_resume, L1_scratch);
   __ st(L1_scratch, STATE(_msg));
-  __ ba(false, call_interpreter_2);
+  __ ba(call_interpreter_2);
   __ delayed()->st_ptr(O1, STATE(_stack));
 
 
@@ -1867,8 +1866,8 @@
     __ cmp(Gtmp1, O7);                                                // returning to interpreter?
     __ brx(Assembler::equal, true, Assembler::pt, re_dispatch);       // yep
     __ delayed()->nop();
-    __ ba(false, re_dispatch);
-    __ delayed()->mov(G0, prevState);                                   // initial entry
+    __ ba(re_dispatch);
+    __ delayed()->mov(G0, prevState);                                 // initial entry
 
   }
 
@@ -2031,8 +2030,8 @@
   __ brx(Assembler::zero, false, Assembler::pt, unwind_and_forward);
   __ delayed()->nop();
 
-  __ ld_ptr(STATE(_locals), O1);                                   // get result of popping callee's args
-  __ ba(false, unwind_recursive_activation);
+  __ ld_ptr(STATE(_locals), O1); // get result of popping callee's args
+  __ ba(unwind_recursive_activation);
   __ delayed()->nop();
 
   interpreter_frame_manager = entry_point;
diff --git a/hotspot/src/cpu/sparc/vm/interp_masm_sparc.cpp b/hotspot/src/cpu/sparc/vm/interp_masm_sparc.cpp
index 58c4c94..8e3b919 100644
--- a/hotspot/src/cpu/sparc/vm/interp_masm_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/interp_masm_sparc.cpp
@@ -236,17 +236,13 @@
     Label L;
     Register thr_state = G3_scratch;
     ld_ptr(G2_thread, JavaThread::jvmti_thread_state_offset(), thr_state);
-    tst(thr_state);
-    br(zero, false, pt, L); // if (thread->jvmti_thread_state() == NULL) exit;
-    delayed()->nop();
+    br_null_short(thr_state, pt, L); // if (thread->jvmti_thread_state() == NULL) exit;
 
     // Initiate earlyret handling only if it is not already being processed.
     // If the flag has the earlyret_processing bit set, it means that this code
     // is called *during* earlyret handling - we don't want to reenter.
     ld(thr_state, JvmtiThreadState::earlyret_state_offset(), G4_scratch);
-    cmp(G4_scratch, JvmtiThreadState::earlyret_pending);
-    br(Assembler::notEqual, false, pt, L);
-    delayed()->nop();
+    cmp_and_br_short(G4_scratch, JvmtiThreadState::earlyret_pending, Assembler::notEqual, pt, L);
 
     // Call Interpreter::remove_activation_early_entry() to get the address of the
     // same-named entrypoint in the generated interpreter code
@@ -566,9 +562,7 @@
 #ifdef _LP64
   sub(Rtemp, STACK_BIAS, Rtemp);  // Bias Rtemp before cmp to FP
 #endif
-  cmp(Rtemp, FP);
-  brx(Assembler::greaterUnsigned, false, Assembler::pn, Bad);
-  delayed()->nop();
+  cmp_and_brx_short(Rtemp, FP, Assembler::greaterUnsigned, Assembler::pn, Bad);
 
   // Saved SP must not be ridiculously below current SP.
   size_t maxstack = MAX2(JavaThread::stack_size_at_create(), (size_t) 4*K*K);
@@ -577,12 +571,9 @@
 #ifdef _LP64
   add(Rtemp, STACK_BIAS, Rtemp);  // Unbias Rtemp before cmp to Rsp
 #endif
-  cmp(Rsp, Rtemp);
-  brx(Assembler::lessUnsigned, false, Assembler::pn, Bad);
-  delayed()->nop();
+  cmp_and_brx_short(Rsp, Rtemp, Assembler::lessUnsigned, Assembler::pn, Bad);
 
-  br(Assembler::always, false, Assembler::pn, OK);
-  delayed()->nop();
+  ba_short(OK);
 
   bind(Bad);
   stop("on return to interpreted call, restored SP is corrupted");
@@ -630,8 +621,7 @@
 
     const Address interp_only(G2_thread, JavaThread::interp_only_mode_offset());
     ld(interp_only, scratch);
-    tst(scratch);
-    br(Assembler::notZero, true, Assembler::pn, skip_compiled_code);
+    cmp_zero_and_br(Assembler::notZero, scratch, skip_compiled_code, true, Assembler::pn);
     delayed()->ld_ptr(G5_method, in_bytes(methodOopDesc::interpreter_entry_offset()), target);
     bind(skip_compiled_code);
   }
@@ -641,8 +631,7 @@
 #ifdef ASSERT
   {
     Label ok;
-    br_notnull(target, false, Assembler::pt, ok);
-    delayed()->nop();
+    br_notnull_short(target, Assembler::pt, ok);
     stop("null entry point");
     bind(ok);
   }
@@ -769,6 +758,20 @@
 }
 
 
+void InterpreterMacroAssembler::get_cache_and_index_and_bytecode_at_bcp(Register cache,
+                                                                        Register temp,
+                                                                        Register bytecode,
+                                                                        int byte_no,
+                                                                        int bcp_offset,
+                                                                        size_t index_size) {
+  get_cache_and_index_at_bcp(cache, temp, bcp_offset, index_size);
+  ld_ptr(cache, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::indices_offset(), bytecode);
+  const int shift_count = (1 + byte_no) * BitsPerByte;
+  srl( bytecode, shift_count, bytecode);
+  and3(bytecode,        0xFF, bytecode);
+}
+
+
 void InterpreterMacroAssembler::get_cache_entry_pointer_at_bcp(Register cache, Register tmp,
                                                                int bcp_offset, size_t index_size) {
   assert(bcp_offset > 0, "bcp is still pointing to start of bytecode");
@@ -982,8 +985,7 @@
 
   // Don't unlock anything if the _do_not_unlock_if_synchronized flag
   // is set.
-  tstbool(G1_scratch);
-  br(Assembler::notZero, false, pn, no_unlock);
+  cmp_zero_and_br(Assembler::notZero, G1_scratch, no_unlock);
   delayed()->nop();
 
   // BasicObjectLock will be first in list, since this is a synchronized method. However, need
@@ -997,8 +999,7 @@
   add( top_most_monitor(), O1 );
 
   ld_ptr(O1, BasicObjectLock::obj_offset_in_bytes(), G3_scratch);
-  br_notnull(G3_scratch, false, pt, unlock);
-  delayed()->nop();
+  br_notnull_short(G3_scratch, pt, unlock);
 
   if (throw_monitor_exception) {
     // Entry already unlocked need to throw an exception
@@ -1011,8 +1012,7 @@
     if (install_monitor_exception) {
       MacroAssembler::call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::new_illegal_monitor_state_exception));
     }
-    ba(false, unlocked);
-    delayed()->nop();
+    ba_short(unlocked);
   }
 
   bind(unlock);
@@ -1037,15 +1037,13 @@
     add(top_most_monitor(), Rmptr, delta);
     { Label L;
       // ensure that Rmptr starts out above (or at) Rlimit
-      cmp(Rmptr, Rlimit);
-      brx(Assembler::greaterEqualUnsigned, false, pn, L);
-      delayed()->nop();
+      cmp_and_brx_short(Rmptr, Rlimit, Assembler::greaterEqualUnsigned, pn, L);
       stop("monitor stack has negative size");
       bind(L);
     }
     #endif
     bind(restart);
-    ba(false, entry);
+    ba(entry);
     delayed()->
     add(top_most_monitor(), Rmptr, delta);      // points to current entry, starting with bottom-most entry
 
@@ -1061,8 +1059,7 @@
       if (install_monitor_exception) {
         MacroAssembler::call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::new_illegal_monitor_state_exception));
       }
-      ba(false, restart);
-      delayed()->nop();
+      ba_short(restart);
     }
 
     bind(loop);
@@ -1073,9 +1070,7 @@
     #ifdef ASSERT
     { Label L;
       // ensure that Rmptr has not somehow stepped below Rlimit
-      cmp(Rmptr, Rlimit);
-      brx(Assembler::greaterEqualUnsigned, false, pn, L);
-      delayed()->nop();
+      cmp_and_brx_short(Rmptr, Rlimit, Assembler::greaterEqualUnsigned, pn, L);
       stop("ran off the end of the monitor stack");
       bind(L);
     }
@@ -1196,9 +1191,7 @@
       (address)StubRoutines::Sparc::atomic_memory_operation_lock_addr());
 
     // if the compare and exchange succeeded we are done (we saw an unlocked object)
-    cmp(mark_reg, temp_reg);
-    brx(Assembler::equal, true, Assembler::pt, done);
-    delayed()->nop();
+    cmp_and_brx_short(mark_reg, temp_reg, Assembler::equal, Assembler::pt, done);
 
     // We did not see an unlocked object so try the fast recursive case
 
@@ -1324,13 +1317,7 @@
 
 void InterpreterMacroAssembler::test_method_data_pointer(Label& zero_continue) {
   assert(ProfileInterpreter, "must be profiling interpreter");
-#ifdef _LP64
-  bpr(Assembler::rc_z, false, Assembler::pn, ImethodDataPtr, zero_continue);
-#else
-  tst(ImethodDataPtr);
-  br(Assembler::zero, false, Assembler::pn, zero_continue);
-#endif
-  delayed()->nop();
+  br_null_short(ImethodDataPtr, Assembler::pn, zero_continue);
 }
 
 void InterpreterMacroAssembler::verify_method_data_pointer() {
@@ -1376,31 +1363,18 @@
   Label done;
 
   // if no method data exists, and the counter is high enough, make one
-#ifdef _LP64
-  bpr(Assembler::rc_nz, false, Assembler::pn, ImethodDataPtr, done);
-#else
-  tst(ImethodDataPtr);
-  br(Assembler::notZero, false, Assembler::pn, done);
-#endif
+  br_notnull_short(ImethodDataPtr, Assembler::pn, done);
 
   // Test to see if we should create a method data oop
   AddressLiteral profile_limit((address) &InvocationCounter::InterpreterProfileLimit);
-#ifdef _LP64
-  delayed()->nop();
   sethi(profile_limit, Rtmp);
-#else
-  delayed()->sethi(profile_limit, Rtmp);
-#endif
   ld(Rtmp, profile_limit.low10(), Rtmp);
-  cmp(invocation_count, Rtmp);
-  br(Assembler::lessUnsigned, false, Assembler::pn, profile_continue);
-  delayed()->nop();
+  cmp_and_br_short(invocation_count, Rtmp, Assembler::lessUnsigned, Assembler::pn, profile_continue);
 
   // Build it now.
   call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::profile_method));
   set_method_data_pointer_for_bcp();
-  ba(false, profile_continue);
-  delayed()->nop();
+  ba_short(profile_continue);
   bind(done);
 }
 
@@ -1632,13 +1606,10 @@
     Label skip_receiver_profile;
     if (receiver_can_be_null) {
       Label not_null;
-      tst(receiver);
-      brx(Assembler::notZero, false, Assembler::pt, not_null);
-      delayed()->nop();
+      br_notnull_short(receiver, Assembler::pt, not_null);
       // We are making a call.  Increment the count for null receiver.
       increment_mdp_data_at(in_bytes(CounterData::count_offset()), scratch);
-      ba(false, skip_receiver_profile);
-      delayed()->nop();
+      ba_short(skip_receiver_profile);
       bind(not_null);
     }
 
@@ -1682,8 +1653,7 @@
     // The receiver is receiver[n].  Increment count[n].
     int count_offset = in_bytes(VirtualCallData::receiver_count_offset(row));
     increment_mdp_data_at(count_offset, scratch);
-    ba(false, done);
-    delayed()->nop();
+    ba_short(done);
     bind(next_test);
 
     if (test_for_null_also) {
@@ -1697,8 +1667,7 @@
           // Receiver did not match any saved receiver and there is no empty row for it.
           // Increment total counter to indicate polymorphic case.
           increment_mdp_data_at(in_bytes(CounterData::count_offset()), scratch);
-          ba(false, done);
-          delayed()->nop();
+          ba_short(done);
           bind(found_null);
         } else {
           brx(Assembler::notZero, false, Assembler::pt, done);
@@ -1729,8 +1698,7 @@
   mov(DataLayout::counter_increment, scratch);
   set_mdp_data_at(count_offset, scratch);
   if (start_row > 0) {
-    ba(false, done);
-    delayed()->nop();
+    ba_short(done);
   }
 }
 
@@ -1772,8 +1740,7 @@
 
       // The method data pointer needs to be updated to reflect the new target.
       update_mdp_by_offset(in_bytes(RetData::bci_displacement_offset(row)), scratch);
-      ba(false, profile_continue);
-      delayed()->nop();
+      ba_short(profile_continue);
       bind(next_test);
     }
 
@@ -1922,8 +1889,8 @@
 
     // untested("monitor stack expansion");
     compute_stack_base(Rtemp);
-    ba( false, start_copying );
-    delayed()->cmp( Rtemp, Rlimit); // done? duplicated below
+    ba(start_copying);
+    delayed()->cmp(Rtemp, Rlimit); // done? duplicated below
 
     // note: must copy from low memory upwards
     // On entry to loop,
@@ -2010,9 +1977,7 @@
   // untested("reg area corruption");
   add(Rindex, offset, Rscratch);
   add(Rlimit, 64 + STACK_BIAS, Rscratch1);
-  cmp(Rscratch, Rscratch1);
-  brx(Assembler::greaterEqualUnsigned, false, pn, L);
-  delayed()->nop();
+  cmp_and_brx_short(Rscratch, Rscratch1, Assembler::greaterEqualUnsigned, pn, L);
   stop("regsave area is being clobbered");
   bind(L);
 }
@@ -2174,9 +2139,7 @@
 
   AddressLiteral limit(&InvocationCounter::InterpreterBackwardBranchLimit);
   load_contents(limit, Rtmp);
-  cmp(backedge_count, Rtmp);
-  br(Assembler::lessUnsigned, false, Assembler::pt, did_not_overflow);
-  delayed()->nop();
+  cmp_and_br_short(backedge_count, Rtmp, Assembler::lessUnsigned, Assembler::pt, did_not_overflow);
 
   // When ProfileInterpreter is on, the backedge_count comes from the
   // methodDataOop, which value does not get reset on the call to
@@ -2196,15 +2159,11 @@
 
   // Was an OSR adapter generated?
   // O0 = osr nmethod
-  tst(O0);
-  brx(Assembler::zero, false, Assembler::pn, overflow_with_error);
-  delayed()->nop();
+  br_null_short(O0, Assembler::pn, overflow_with_error);
 
   // Has the nmethod been invalidated already?
   ld(O0, nmethod::entry_bci_offset(), O2);
-  cmp(O2, InvalidOSREntryBci);
-  br(Assembler::equal, false, Assembler::pn, overflow_with_error);
-  delayed()->nop();
+  cmp_and_br_short(O2, InvalidOSREntryBci, Assembler::equal, Assembler::pn, overflow_with_error);
 
   // migrate the interpreter frame off of the stack
 
@@ -2270,8 +2229,7 @@
   mov(reg, Rtmp);
   const int log2_bytecode_size_limit = 16;
   srl(Rtmp, log2_bytecode_size_limit, Rtmp);
-  br_notnull( Rtmp, false, pt, test );
-  delayed()->nop();
+  br_notnull_short( Rtmp, pt, test );
 
   // %%% should use call_VM_leaf here?
   save_frame_and_mov(0, Lmethod, O0, reg, O1);
@@ -2320,9 +2278,7 @@
     Register temp_reg = O5;
     const Address interp_only(G2_thread, JavaThread::interp_only_mode_offset());
     ld(interp_only, temp_reg);
-    tst(temp_reg);
-    br(zero, false, pt, L);
-    delayed()->nop();
+    cmp_and_br_short(temp_reg, 0, equal, pt, L);
     call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::post_method_entry));
     bind(L);
   }
@@ -2372,9 +2328,7 @@
     Register temp_reg = O5;
     const Address interp_only(G2_thread, JavaThread::interp_only_mode_offset());
     ld(interp_only, temp_reg);
-    tst(temp_reg);
-    br(zero, false, pt, L);
-    delayed()->nop();
+    cmp_and_br_short(temp_reg, 0, equal, pt, L);
 
     // Note: frame::interpreter_frame_result has a dependency on how the
     // method result is saved across the call to post_method_exit. For
diff --git a/hotspot/src/cpu/sparc/vm/interp_masm_sparc.hpp b/hotspot/src/cpu/sparc/vm/interp_masm_sparc.hpp
index be3840c..8e05e9a 100644
--- a/hotspot/src/cpu/sparc/vm/interp_masm_sparc.hpp
+++ b/hotspot/src/cpu/sparc/vm/interp_masm_sparc.hpp
@@ -189,6 +189,7 @@
                                   setCCOrNot should_set_CC = dont_set_CC );
 
   void get_cache_and_index_at_bcp(Register cache, Register tmp, int bcp_offset, size_t index_size = sizeof(u2));
+  void get_cache_and_index_and_bytecode_at_bcp(Register cache, Register temp, Register bytecode, int byte_no, int bcp_offset, size_t index_size = sizeof(u2));
   void get_cache_entry_pointer_at_bcp(Register cache, Register tmp, int bcp_offset, size_t index_size = sizeof(u2));
   void get_cache_index_at_bcp(Register cache, Register tmp, int bcp_offset, size_t index_size = sizeof(u2));
 
diff --git a/hotspot/src/cpu/sparc/vm/interpreter_sparc.cpp b/hotspot/src/cpu/sparc/vm/interpreter_sparc.cpp
index 774c3b6..5471ebc 100644
--- a/hotspot/src/cpu/sparc/vm/interpreter_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/interpreter_sparc.cpp
@@ -191,22 +191,19 @@
     // Optimization, see if there are any more args and get out prior to checking
     // all 16 float registers.  My guess is that this is rare.
     // If is_register is false, then we are done the first six integer args.
-      __ tst(G4_scratch);
-      __ brx(Assembler::zero, false, Assembler::pt, done);
-      __ delayed()->nop();
-
+      __ br_null_short(G4_scratch, Assembler::pt, done);
     }
-    __ ba(false, NextArg);
+    __ ba(NextArg);
     __ delayed()->srl( G4_scratch, 2, G4_scratch );
 
     __ bind(LoadFloatArg);
     __ ldf( FloatRegisterImpl::S, a, ldarg.as_float_register(), 4);
-    __ ba(false, NextArg);
+    __ ba(NextArg);
     __ delayed()->srl( G4_scratch, 2, G4_scratch );
 
     __ bind(LoadDoubleArg);
     __ ldf( FloatRegisterImpl::D, a, ldarg.as_double_register() );
-    __ ba(false, NextArg);
+    __ ba(NextArg);
     __ delayed()->srl( G4_scratch, 2, G4_scratch );
 
     __ bind(NextArg);
@@ -234,8 +231,7 @@
   __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::frequency_counter_overflow), O2, O2, true);
   // returns verified_entry_point or NULL
   // we ignore it in any case
-  __ ba(false, Lcontinue);
-  __ delayed()->nop();
+  __ ba_short(Lcontinue);
 
 }
 
diff --git a/hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp b/hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp
index 3df5a8e..400ec0f 100644
--- a/hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/methodHandles_sparc.cpp
@@ -287,9 +287,7 @@
   BLOCK_COMMENT("verify_clean {");
   // Magic numbers must check out:
   __ set((int32_t) MAGIC_NUMBER_1, O7_temp);
-  __ cmp(O7_temp, L0_magic_number_1);
-  __ br(Assembler::equal, false, Assembler::pt, L_ok_1);
-  __ delayed()->nop();
+  __ cmp_and_br_short(O7_temp, L0_magic_number_1, Assembler::equal, Assembler::pt, L_ok_1);
   __ stop("damaged ricochet frame: MAGIC_NUMBER_1 not found");
 
   __ BIND(L_ok_1);
@@ -301,9 +299,7 @@
 #else
   Register FP_temp = FP;
 #endif
-  __ cmp(L4_saved_args_base, FP_temp);
-  __ br(Assembler::greaterEqualUnsigned, false, Assembler::pt, L_ok_2);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(L4_saved_args_base, FP_temp, Assembler::greaterEqualUnsigned, Assembler::pt, L_ok_2);
   __ stop("damaged ricochet frame: L4 < FP");
 
   __ BIND(L_ok_2);
@@ -316,15 +312,11 @@
 
   __ BIND(L_ok_3);
   extract_conversion_dest_type(_masm, L5_conversion, O7_temp);
-  __ cmp(O7_temp, T_VOID);
-  __ br(Assembler::equal, false, Assembler::pt, L_ok_4);
-  __ delayed()->nop();
+  __ cmp_and_br_short(O7_temp, T_VOID, Assembler::equal, Assembler::pt, L_ok_4);
   extract_conversion_vminfo(_masm, L5_conversion, O5_temp);
   __ ld_ptr(L4_saved_args_base, __ argument_offset(O5_temp, O5_temp), O7_temp);
   assert(__ is_simm13(RETURN_VALUE_PLACEHOLDER), "must be simm13");
-  __ cmp(O7_temp, (int32_t) RETURN_VALUE_PLACEHOLDER);
-  __ brx(Assembler::equal, false, Assembler::pt, L_ok_4);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(O7_temp, (int32_t) RETURN_VALUE_PLACEHOLDER, Assembler::equal, Assembler::pt, L_ok_4);
   __ stop("damaged ricochet frame: RETURN_VALUE_PLACEHOLDER not found");
   __ BIND(L_ok_4);
   BLOCK_COMMENT("} verify_clean");
@@ -363,9 +355,7 @@
   if (VerifyMethodHandles) {
     Label L_ok, L_bad;
     int32_t stack_move_limit = 0x0800;  // extra-large
-    __ cmp(stack_move_reg, stack_move_limit);
-    __ br(Assembler::greaterEqual, false, Assembler::pn, L_bad);
-    __ delayed()->nop();
+    __ cmp_and_br_short(stack_move_reg, stack_move_limit, Assembler::greaterEqual, Assembler::pn, L_bad);
     __ cmp(stack_move_reg, -stack_move_limit);
     __ br(Assembler::greater, false, Assembler::pt, L_ok);
     __ delayed()->nop();
@@ -401,13 +391,9 @@
   // Verify that argslot lies within (Gargs, FP].
   Label L_ok, L_bad;
   BLOCK_COMMENT("verify_argslot {");
+  __ cmp_and_brx_short(Gargs, argslot_reg, Assembler::greaterUnsigned, Assembler::pn, L_bad);
   __ add(FP, STACK_BIAS, temp_reg);  // STACK_BIAS is zero on !_LP64
-  __ cmp(argslot_reg, temp_reg);
-  __ brx(Assembler::greaterUnsigned, false, Assembler::pn, L_bad);
-  __ delayed()->nop();
-  __ cmp(Gargs, argslot_reg);
-  __ brx(Assembler::lessEqualUnsigned, false, Assembler::pt, L_ok);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(argslot_reg, temp_reg, Assembler::lessEqualUnsigned, Assembler::pt, L_ok);
   __ BIND(L_bad);
   __ stop(error_message);
   __ BIND(L_ok);
@@ -434,14 +420,10 @@
   }
   __ add(arg_slot_base_reg, __ argument_offset(arg_slots, temp_reg), temp_reg);
   __ add(FP, STACK_BIAS, temp2_reg);  // STACK_BIAS is zero on !_LP64
-  __ cmp(temp_reg, temp2_reg);
-  __ brx(Assembler::greaterUnsigned, false, Assembler::pn, L_bad);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(temp_reg, temp2_reg, Assembler::greaterUnsigned, Assembler::pn, L_bad);
   // Gargs points to the first word so adjust by BytesPerWord
   __ add(arg_slot_base_reg, BytesPerWord, temp_reg);
-  __ cmp(Gargs, temp_reg);
-  __ brx(Assembler::lessEqualUnsigned, false, Assembler::pt, L_ok);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(Gargs, temp_reg, Assembler::lessEqualUnsigned, Assembler::pt, L_ok);
   __ BIND(L_bad);
   __ stop(error_message);
   __ BIND(L_ok);
@@ -502,21 +484,16 @@
   Label L_ok, L_bad;
   BLOCK_COMMENT("verify_klass {");
   __ verify_oop(obj_reg);
-  __ br_null(obj_reg, false, Assembler::pn, L_bad);
-  __ delayed()->nop();
+  __ br_null_short(obj_reg, Assembler::pn, L_bad);
   __ load_klass(obj_reg, temp_reg);
   __ set(ExternalAddress(klass_addr), temp2_reg);
   __ ld_ptr(Address(temp2_reg, 0), temp2_reg);
-  __ cmp(temp_reg, temp2_reg);
-  __ brx(Assembler::equal, false, Assembler::pt, L_ok);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(temp_reg, temp2_reg, Assembler::equal, Assembler::pt, L_ok);
   intptr_t super_check_offset = klass->super_check_offset();
   __ ld_ptr(Address(temp_reg, super_check_offset), temp_reg);
   __ set(ExternalAddress(klass_addr), temp2_reg);
   __ ld_ptr(Address(temp2_reg, 0), temp2_reg);
-  __ cmp(temp_reg, temp2_reg);
-  __ brx(Assembler::equal, false, Assembler::pt, L_ok);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(temp_reg, temp2_reg, Assembler::equal, Assembler::pt, L_ok);
   __ BIND(L_bad);
   __ stop(error_message);
   __ BIND(L_ok);
@@ -671,9 +648,7 @@
 #ifdef ASSERT
     {
       Label L_ok;
-      __ cmp(arg_slots.as_register(), 0);
-      __ br(Assembler::greaterEqual, false, Assembler::pt, L_ok);
-      __ delayed()->nop();
+      __ cmp_and_br_short(arg_slots.as_register(), 0, Assembler::greaterEqual, Assembler::pt, L_ok);
       __ stop("negative arg_slots");
       __ bind(L_ok);
     }
@@ -748,9 +723,7 @@
     __ ld_ptr(           Address(temp_reg, 0     ), temp2_reg);
     __ st_ptr(temp2_reg, Address(temp_reg, offset)           );
     __ add(temp_reg, wordSize, temp_reg);
-    __ cmp(temp_reg, argslot_reg);
-    __ brx(Assembler::lessUnsigned, false, Assembler::pt, loop);
-    __ delayed()->nop();  // FILLME
+    __ cmp_and_brx_short(temp_reg, argslot_reg, Assembler::lessUnsigned, Assembler::pt, loop);
   }
 
   // Now move the argslot down, to point to the opened-up space.
@@ -797,9 +770,7 @@
     __ ld_ptr(           Address(temp_reg, 0     ), temp2_reg);
     __ st_ptr(temp2_reg, Address(temp_reg, offset)           );
     __ sub(temp_reg, wordSize, temp_reg);
-    __ cmp(temp_reg, Gargs);
-    __ brx(Assembler::greaterEqualUnsigned, false, Assembler::pt, L_loop);
-    __ delayed()->nop();  // FILLME
+    __ cmp_and_brx_short(temp_reg, Gargs, Assembler::greaterEqualUnsigned, Assembler::pt, L_loop);
   }
 
   // And adjust the argslot address to point at the deletion point.
@@ -848,8 +819,7 @@
     __ delayed()->nop();
     __ ld_ptr(          Address(argslot_reg, 0), temp_reg);
     __ st_ptr(temp_reg, Address(Gargs,       0));
-    __ ba(false, L_break);
-    __ delayed()->nop();  // FILLME
+    __ ba_short(L_break);
     __ BIND(L_plural);
 
     // Loop for 2 or more:
@@ -863,9 +833,7 @@
     __ sub(Gargs,   wordSize, Gargs  );
     __ ld_ptr(           Address(top_reg, 0), temp2_reg);
     __ st_ptr(temp2_reg, Address(Gargs,   0));
-    __ cmp(top_reg, argslot_reg);
-    __ brx(Assembler::greaterUnsigned, false, Assembler::pt, L_loop);
-    __ delayed()->nop();  // FILLME
+    __ cmp_and_brx_short(top_reg, argslot_reg, Assembler::greaterUnsigned, Assembler::pt, L_loop);
     __ BIND(L_break);
   }
   BLOCK_COMMENT("} push_arg_slots");
@@ -897,17 +865,13 @@
       __ br(Assembler::lessEqual, false, Assembler::pn, L_bad);
       __ delayed()->nop();
     }
-    __ cmp(bottom_reg, top_reg);
-    __ brx(Assembler::lessUnsigned, false, Assembler::pt, L_ok);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(bottom_reg, top_reg, Assembler::lessUnsigned, Assembler::pt, L_ok);
     __ BIND(L_bad);
     __ stop("valid bounds (copy up)");
     __ BIND(L_ok);
   }
 #endif
-  __ cmp(bottom_reg, top_reg);
-  __ brx(Assembler::greaterEqualUnsigned, false, Assembler::pn, L_break);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(bottom_reg, top_reg, Assembler::greaterEqualUnsigned, Assembler::pn, L_break);
   // work top down to bottom, copying contiguous data upwards
   // In pseudo-code:
   //   while (--top >= bottom) *(top + distance) = *(top + 0);
@@ -916,9 +880,7 @@
   __ sub(top_reg, wordSize, top_reg);
   __ ld_ptr(           Address(top_reg, 0     ), temp2_reg);
   __ st_ptr(temp2_reg, Address(top_reg, offset)           );
-  __ cmp(top_reg, bottom_reg);
-  __ brx(Assembler::greaterUnsigned, false, Assembler::pt, L_loop);
-  __ delayed()->nop();  // FILLME
+  __ cmp_and_brx_short(top_reg, bottom_reg, Assembler::greaterUnsigned, Assembler::pt, L_loop);
   assert(Interpreter::stackElementSize == wordSize, "else change loop");
   __ BIND(L_break);
   BLOCK_COMMENT("} move_arg_slots_up");
@@ -951,17 +913,13 @@
       __ br(Assembler::greaterEqual, false, Assembler::pn, L_bad);
       __ delayed()->nop();
     }
-    __ cmp(bottom_reg, top_reg);
-    __ brx(Assembler::lessUnsigned, false, Assembler::pt, L_ok);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(bottom_reg, top_reg, Assembler::lessUnsigned, Assembler::pt, L_ok);
     __ BIND(L_bad);
     __ stop("valid bounds (copy down)");
     __ BIND(L_ok);
   }
 #endif
-  __ cmp(bottom_reg, top_reg);
-  __ brx(Assembler::greaterEqualUnsigned, false, Assembler::pn, L_break);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(bottom_reg, top_reg, Assembler::greaterEqualUnsigned, Assembler::pn, L_break);
   // work bottom up to top, copying contiguous data downwards
   // In pseudo-code:
   //   while (bottom < top) *(bottom - distance) = *(bottom + 0), bottom++;
@@ -970,9 +928,7 @@
   __ ld_ptr(           Address(bottom_reg, 0     ), temp2_reg);
   __ st_ptr(temp2_reg, Address(bottom_reg, offset)           );
   __ add(bottom_reg, wordSize, bottom_reg);
-  __ cmp(bottom_reg, top_reg);
-  __ brx(Assembler::lessUnsigned, false, Assembler::pt, L_loop);
-  __ delayed()->nop();  // FILLME
+  __ cmp_and_brx_short(bottom_reg, top_reg, Assembler::lessUnsigned, Assembler::pt, L_loop);
   assert(Interpreter::stackElementSize == wordSize, "else change loop");
   __ BIND(L_break);
   BLOCK_COMMENT("} move_arg_slots_down");
@@ -1170,7 +1126,7 @@
 
       adjust_SP_and_Gargs_down_by_slots(_masm, 3, noreg, noreg);
 
-      __ st_ptr(O0_code,     __ argument_address(constant(2), noreg, 0));
+      __ st    (O0_code,     __ argument_address(constant(2), noreg, 0));
       __ st_ptr(O1_actual,   __ argument_address(constant(1), noreg, 0));
       __ st_ptr(O2_required, __ argument_address(constant(0), noreg, 0));
       jump_from_method_handle(_masm, G5_method, O1_scratch, O2_scratch);
@@ -1329,9 +1285,7 @@
 
       Label L_done;
       __ ld_ptr(vmarg, O2_scratch);
-      __ tst(O2_scratch);
-      __ brx(Assembler::zero, false, Assembler::pn, L_done);  // No cast if null.
-      __ delayed()->nop();
+      __ br_null_short(O2_scratch, Assembler::pn, L_done);  // No cast if null.
       __ load_klass(O2_scratch, O2_scratch);
 
       // Live at this point:
@@ -1436,8 +1390,7 @@
 
       // this path is taken for int->byte, int->short
       __ sra(O1_scratch, G5_vminfo, O1_scratch);
-      __ ba(false, done);
-      __ delayed()->nop();
+      __ ba_short(done);
 
       __ bind(zero_extend);
       // this is taken for int->char
@@ -1860,9 +1813,7 @@
           BLOCK_COMMENT("verify collect_count_constant {");
           __ load_method_handle_vmslots(O3_scratch, G3_method_handle, O2_scratch);
           Label L_count_ok;
-          __ cmp(O3_scratch, collect_count_constant);
-          __ br(Assembler::equal, false, Assembler::pt, L_count_ok);
-          __ delayed()->nop();
+          __ cmp_and_br_short(O3_scratch, collect_count_constant, Assembler::equal, Assembler::pt, L_count_ok);
           __ stop("bad vminfo in AMH.conv");
           __ BIND(L_count_ok);
           BLOCK_COMMENT("} verify collect_count_constant");
@@ -1909,9 +1860,7 @@
           BLOCK_COMMENT("verify dest_slot_constant {");
           extract_conversion_vminfo(_masm, RicochetFrame::L5_conversion, O3_scratch);
           Label L_vminfo_ok;
-          __ cmp(O3_scratch, dest_slot_constant);
-          __ br(Assembler::equal, false, Assembler::pt, L_vminfo_ok);
-          __ delayed()->nop();
+          __ cmp_and_br_short(O3_scratch, dest_slot_constant, Assembler::equal, Assembler::pt, L_vminfo_ok);
           __ stop("bad vminfo in AMH.conv");
           __ BIND(L_vminfo_ok);
           BLOCK_COMMENT("} verify dest_slot_constant");
@@ -1951,14 +1900,10 @@
       // If there are variable parameters, use dynamic checks to skip around the whole mess.
       Label L_done;
       if (keep3_count.is_register()) {
-        __ tst(keep3_count.as_register());
-        __ br(Assembler::zero, false, Assembler::pn, L_done);
-        __ delayed()->nop();
+        __ cmp_and_br_short(keep3_count.as_register(), 0, Assembler::equal, Assembler::pn, L_done);
       }
       if (close_count.is_register()) {
-        __ cmp(close_count.as_register(), open_count);
-        __ br(Assembler::equal, false, Assembler::pn, L_done);
-        __ delayed()->nop();
+        __ cmp_and_br_short(close_count.as_register(), open_count, Assembler::equal, Assembler::pn, L_done);
       }
 
       if (move_keep3 && fix_arg_base) {
@@ -1999,8 +1944,7 @@
         }
 
         if (emit_guard) {
-          __ ba(false, L_done);  // assumes emit_move_up is true also
-          __ delayed()->nop();
+          __ ba_short(L_done);  // assumes emit_move_up is true also
           __ BIND(L_move_up);
         }
 
@@ -2133,8 +2077,7 @@
 
 #ifdef ASSERT
       { Label L_ok;
-        __ br_notnull(O7_temp, false, Assembler::pt, L_ok);
-        __ delayed()->nop();
+        __ br_notnull_short(O7_temp, Assembler::pt, L_ok);
         __ stop("bad method handle return");
         __ BIND(L_ok);
       }
@@ -2192,11 +2135,10 @@
         Label L_skip;
         if (length_constant < 0) {
           load_conversion_vminfo(_masm, G3_amh_conversion, O3_scratch);
-          __ br_zero(Assembler::notZero, false, Assembler::pn, O3_scratch, L_skip);
-          __ delayed()->nop();
+          __ cmp_zero_and_br(Assembler::notZero, O3_scratch, L_skip);
+          __ delayed()->nop(); // to avoid back-to-back cbcond instructions
         }
-        __ br_null(O1_array, false, Assembler::pn, L_array_is_empty);
-        __ delayed()->nop();
+        __ br_null_short(O1_array, Assembler::pn, L_array_is_empty);
         __ BIND(L_skip);
       }
       __ null_check(O1_array, oopDesc::klass_offset_in_bytes());
@@ -2210,8 +2152,7 @@
       Label L_ok_array_klass, L_bad_array_klass, L_bad_array_length;
       __ check_klass_subtype(O2_array_klass, O3_klass, O4_scratch, G5_scratch, L_ok_array_klass);
       // If we get here, the type check failed!
-      __ ba(false, L_bad_array_klass);
-      __ delayed()->nop();
+      __ ba_short(L_bad_array_klass);
       __ BIND(L_ok_array_klass);
 
       // Check length.
@@ -2247,8 +2188,7 @@
         __ BIND(L_array_is_empty);
         remove_arg_slots(_masm, -stack_move_unit() * array_slots,
                          O0_argslot, O1_scratch, O2_scratch, O3_scratch);
-        __ ba(false, L_args_done);  // no spreading to do
-        __ delayed()->nop();
+        __ ba_short(L_args_done);  // no spreading to do
         __ BIND(L_insert_arg_space);
         // come here in the usual case, stack_move < 0 (2 or more spread arguments)
         // Live: O1_array, O2_argslot_limit, O3_stack_move
@@ -2289,9 +2229,7 @@
                        Address(O1_source, 0), Address(O4_fill_ptr, 0),
                        O2_scratch);  // must be an even register for !_LP64 long moves (uses O2/O3)
         __ add(O1_source, type2aelembytes(elem_type), O1_source);
-        __ cmp(O4_fill_ptr, O0_argslot);
-        __ brx(Assembler::greaterUnsigned, false, Assembler::pt, L_loop);
-        __ delayed()->nop();  // FILLME
+        __ cmp_and_brx_short(O4_fill_ptr, O0_argslot, Assembler::greaterUnsigned, Assembler::pt, L_loop);
       } else if (length_constant == 0) {
         // nothing to copy
       } else {
diff --git a/hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp b/hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp
index 277ff70..cb9e429 100644
--- a/hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/sharedRuntime_sparc.cpp
@@ -600,7 +600,7 @@
 void AdapterGenerator::patch_callers_callsite() {
   Label L;
   __ ld_ptr(G5_method, in_bytes(methodOopDesc::code_offset()), G3_scratch);
-  __ br_null(G3_scratch, false, __ pt, L);
+  __ br_null(G3_scratch, false, Assembler::pt, L);
   // Schedule the branch target address early.
   __ delayed()->ld_ptr(G5_method, in_bytes(methodOopDesc::interpreter_entry_offset()), G3_scratch);
   // Call into the VM to patch the caller, then jump to compiled callee
@@ -1127,8 +1127,7 @@
       Label loop;
       __ bind(loop);
       __ sub(L0, 1, L0);
-      __ br_null(L0, false, Assembler::pt, loop);
-      __ delayed()->nop();
+      __ br_null_short(L0, Assembler::pt, loop);
 
       __ restore();
     }
@@ -1202,7 +1201,7 @@
     // the call site corrected.
     __ ld_ptr(G5_method, in_bytes(methodOopDesc::code_offset()), G3_scratch);
     __ bind(ok2);
-    __ br_null(G3_scratch, false, __ pt, skip_fixup);
+    __ br_null(G3_scratch, false, Assembler::pt, skip_fixup);
     __ delayed()->ld_ptr(G5_method, in_bytes(methodOopDesc::interpreter_entry_offset()), G3_scratch);
     __ jump_to(ic_miss, G3_scratch);
     __ delayed()->nop();
@@ -1779,9 +1778,7 @@
     AddressLiteral ic_miss(SharedRuntime::get_ic_miss_stub());
     __ verify_oop(O0);
     __ load_klass(O0, temp_reg);
-    __ cmp(temp_reg, G5_inline_cache_reg);
-    __ brx(Assembler::equal, true, Assembler::pt, L);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(temp_reg, G5_inline_cache_reg, Assembler::equal, Assembler::pt, L);
 
     __ jump_to(ic_miss, temp_reg);
     __ delayed()->nop();
@@ -2182,8 +2179,7 @@
 #ifdef ASSERT
     { Label L;
     __ ld_ptr(G2_thread, in_bytes(Thread::pending_exception_offset()), O0);
-    __ br_null(O0, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_null_short(O0, Assembler::pt, L);
     __ stop("no pending exception allowed on exit from IR::monitorenter");
     __ bind(L);
     }
@@ -2298,9 +2294,7 @@
     Address suspend_state(G2_thread, JavaThread::suspend_flags_offset());
     __ br(Assembler::notEqual, false, Assembler::pn, L);
     __ delayed()->ld(suspend_state, G3_scratch);
-    __ cmp(G3_scratch, 0);
-    __ br(Assembler::equal, false, Assembler::pt, no_block);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, 0, Assembler::equal, Assembler::pt, no_block);
     __ bind(L);
 
     // Block.  Save any potential method result value before the operation and
@@ -2328,9 +2322,7 @@
 
   Label no_reguard;
   __ ld(G2_thread, JavaThread::stack_guard_state_offset(), G3_scratch);
-  __ cmp(G3_scratch, JavaThread::stack_guard_yellow_disabled);
-  __ br(Assembler::notEqual, false, Assembler::pt, no_reguard);
-  __ delayed()->nop();
+  __ cmp_and_br_short(G3_scratch, JavaThread::stack_guard_yellow_disabled, Assembler::notEqual, Assembler::pt, no_reguard);
 
     save_native_result(masm, ret_type, stack_slots);
   __ call(CAST_FROM_FN_PTR(address, SharedRuntime::reguard_yellow_pages));
@@ -2382,8 +2374,7 @@
 #ifdef ASSERT
     { Label L;
     __ ld_ptr(G2_thread, in_bytes(Thread::pending_exception_offset()), O0);
-    __ br_null(O0, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_null_short(O0, Assembler::pt, L);
     __ stop("no pending exception allowed on exit from IR::monitorexit");
     __ bind(L);
     }
@@ -2639,9 +2630,7 @@
     AddressLiteral ic_miss(SharedRuntime::get_ic_miss_stub());
     __ verify_oop(O0);
     __ ld_ptr(O0, oopDesc::klass_offset_in_bytes(), temp_reg);
-    __ cmp(temp_reg, G5_inline_cache_reg);
-    __ brx(Assembler::equal, true, Assembler::pt, L);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(temp_reg, G5_inline_cache_reg, Assembler::equal, Assembler::pt, L);
 
     __ jump_to(ic_miss, temp_reg);
     __ delayed()->nop();
@@ -3143,8 +3132,7 @@
 
   gen_new_frame(masm, deopt);        // allocate an interpreter frame
 
-  __ tst(O4array_size);
-  __ br(Assembler::notZero, false, Assembler::pn, loop);
+  __ cmp_zero_and_br(Assembler::notZero, O4array_size, loop);
   __ delayed()->add(O3array, wordSize, O3array);
   __ ld_ptr(G3pcs, 0, O7);                      // load final frame new pc
 
@@ -3221,7 +3209,7 @@
   // pc is now in O7. Return values are still in the expected places
 
   map = RegisterSaver::save_live_registers(masm, 0, &frame_size_words);
-  __ ba(false, cont);
+  __ ba(cont);
   __ delayed()->mov(Deoptimization::Unpack_deopt, L0deopt_mode);
 
   int exception_offset = __ offset() - start;
@@ -3256,8 +3244,7 @@
     // verify that there is really an exception oop in exception_oop
     Label has_exception;
     __ ld_ptr(G2_thread, JavaThread::exception_oop_offset(), Oexception);
-    __ br_notnull(Oexception, false, Assembler::pt, has_exception);
-    __ delayed()-> nop();
+    __ br_notnull_short(Oexception, Assembler::pt, has_exception);
     __ stop("no exception in thread");
     __ bind(has_exception);
 
@@ -3265,14 +3252,13 @@
     Label no_pending_exception;
     Address exception_addr(G2_thread, Thread::pending_exception_offset());
     __ ld_ptr(exception_addr, Oexception);
-    __ br_null(Oexception, false, Assembler::pt, no_pending_exception);
-    __ delayed()->nop();
+    __ br_null_short(Oexception, Assembler::pt, no_pending_exception);
     __ stop("must not have pending exception here");
     __ bind(no_pending_exception);
   }
 #endif
 
-  __ ba(false, cont);
+  __ ba(cont);
   __ delayed()->mov(Deoptimization::Unpack_exception, L0deopt_mode);;
 
   //
@@ -3313,9 +3299,7 @@
   RegisterSaver::restore_result_registers(masm);
 
   Label noException;
-  __ cmp(G4deopt_mode, Deoptimization::Unpack_exception);   // Was exception pending?
-  __ br(Assembler::notEqual, false, Assembler::pt, noException);
-  __ delayed()->nop();
+  __ cmp_and_br_short(G4deopt_mode, Deoptimization::Unpack_exception, Assembler::notEqual, Assembler::pt, noException);
 
   // Move the pending exception from exception_oop to Oexception so
   // the pending exception will be picked up the interpreter.
@@ -3359,9 +3343,7 @@
   // In 32 bit, C2 returns longs in G1 so restore the saved G1 into
   // I0/I1 if the return value is long.
   Label not_long;
-  __ cmp(O0,T_LONG);
-  __ br(Assembler::notEqual, false, Assembler::pt, not_long);
-  __ delayed()->nop();
+  __ cmp_and_br_short(O0,T_LONG, Assembler::notEqual, Assembler::pt, not_long);
   __ ldd(saved_Greturn1_addr,I0);
   __ bind(not_long);
 #endif
@@ -3534,9 +3516,7 @@
   Label pending;
 
   __ ld_ptr(G2_thread, in_bytes(Thread::pending_exception_offset()), O1);
-  __ tst(O1);
-  __ brx(Assembler::notEqual, true, Assembler::pn, pending);
-  __ delayed()->nop();
+  __ br_notnull_short(O1, Assembler::pn, pending);
 
   RegisterSaver::restore_live_registers(masm);
 
@@ -3623,9 +3603,7 @@
   Label pending;
 
   __ ld_ptr(G2_thread, in_bytes(Thread::pending_exception_offset()), O1);
-  __ tst(O1);
-  __ brx(Assembler::notEqual, true, Assembler::pn, pending);
-  __ delayed()->nop();
+  __ br_notnull_short(O1, Assembler::pn, pending);
 
   // get the returned methodOop
 
diff --git a/hotspot/src/cpu/sparc/vm/sparc.ad b/hotspot/src/cpu/sparc/vm/sparc.ad
index ff28539..cd57f2c 100644
--- a/hotspot/src/cpu/sparc/vm/sparc.ad
+++ b/hotspot/src/cpu/sparc/vm/sparc.ad
@@ -471,9 +471,6 @@
 source %{
 #define __ _masm.
 
-// Block initializing store
-#define ASI_BLK_INIT_QUAD_LDD_P    0xE2
-
 // tertiary op of a LoadP or StoreP encoding
 #define REGP_OP true
 
@@ -1693,7 +1690,6 @@
 
 void MachUEPNode::emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const {
   MacroAssembler _masm(&cbuf);
-  Label L;
   Register G5_ic_reg  = reg_to_register_object(Matcher::inline_cache_reg_encode());
   Register temp_reg   = G3;
   assert( G5_ic_reg != temp_reg, "conflicting registers" );
@@ -1835,8 +1831,10 @@
 //
 // NOTE: If the platform does not provide any short branch variants, then
 //       this method should return false for offset 0.
-bool Matcher::is_short_branch_offset(int rule, int offset) {
-  return false;
+bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) {
+  // The passed offset is relative to address of the branch.
+  // Don't need to adjust the offset.
+  return UseCBCond && Assembler::is_simm(offset, 12);
 }
 
 const bool Matcher::isSimpleConstant64(jlong value) {
@@ -2315,60 +2313,23 @@
     __ delayed()->nop();
   %}
 
-  enc_class enc_bp( Label labl, cmpOp cmp, flagsReg cc ) %{
+  enc_class enc_bp( label labl, cmpOp cmp, flagsReg cc ) %{
     MacroAssembler _masm(&cbuf);
-    Label &L = *($labl$$label);
+    Label* L = $labl$$label;
     Assembler::Predict predict_taken =
-      cbuf.is_backward_branch(L) ? Assembler::pt : Assembler::pn;
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
 
-    __ bp( (Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, L);
+    __ bp( (Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
     __ delayed()->nop();
   %}
 
-  enc_class enc_bpl( Label labl, cmpOp cmp, flagsRegL cc ) %{
+  enc_class enc_bpr( label labl, cmpOp_reg cmp, iRegI op1 ) %{
     MacroAssembler _masm(&cbuf);
-    Label &L = *($labl$$label);
+    Label* L = $labl$$label;
     Assembler::Predict predict_taken =
-      cbuf.is_backward_branch(L) ? Assembler::pt : Assembler::pn;
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
 
-    __ bp( (Assembler::Condition)($cmp$$cmpcode), false, Assembler::xcc, predict_taken, L);
-    __ delayed()->nop();
-  %}
-
-  enc_class enc_bpx( Label labl, cmpOp cmp, flagsRegP cc ) %{
-    MacroAssembler _masm(&cbuf);
-    Label &L = *($labl$$label);
-    Assembler::Predict predict_taken =
-      cbuf.is_backward_branch(L) ? Assembler::pt : Assembler::pn;
-
-    __ bp( (Assembler::Condition)($cmp$$cmpcode), false, Assembler::ptr_cc, predict_taken, L);
-    __ delayed()->nop();
-  %}
-
-  enc_class enc_fbp( Label labl, cmpOpF cmp, flagsRegF cc ) %{
-    MacroAssembler _masm(&cbuf);
-    Label &L = *($labl$$label);
-    Assembler::Predict predict_taken =
-      cbuf.is_backward_branch(L) ? Assembler::pt : Assembler::pn;
-
-    __ fbp( (Assembler::Condition)($cmp$$cmpcode), false, (Assembler::CC)($cc$$reg), predict_taken, L);
-    __ delayed()->nop();
-  %}
-
-  enc_class enc_ba( Label labl ) %{
-    MacroAssembler _masm(&cbuf);
-    Label &L = *($labl$$label);
-    __ ba(false, L);
-    __ delayed()->nop();
-  %}
-
-  enc_class enc_bpr( Label labl, cmpOp_reg cmp, iRegI op1 ) %{
-    MacroAssembler _masm(&cbuf);
-    Label &L = *$labl$$label;
-    Assembler::Predict predict_taken =
-      cbuf.is_backward_branch(L) ? Assembler::pt : Assembler::pn;
-
-    __ bpr( (Assembler::RCondition)($cmp$$cmpcode), false, predict_taken, as_Register($op1$$reg), L);
+    __ bpr( (Assembler::RCondition)($cmp$$cmpcode), false, predict_taken, as_Register($op1$$reg), *L);
     __ delayed()->nop();
   %}
 
@@ -2855,10 +2816,10 @@
     Register    nof_bytes_arg   = reg_to_register_object($cnt$$reg);
     Register    nof_bytes_tmp    = reg_to_register_object($temp$$reg);
     Register    base_pointer_arg = reg_to_register_object($base$$reg);
-
+  
     Label loop;
     __ mov(nof_bytes_arg, nof_bytes_tmp);
-
+  
     // Loop and clear, walking backwards through the array.
     // nof_bytes_tmp (if >0) is always the number of bytes to zero
     __ bind(loop);
@@ -2986,7 +2947,7 @@
     __ brx(Assembler::equal, true, Assembler::pn, Ldone);
     __ delayed()->add(G0, 1, result_reg);
 
-    __ br_on_reg_cond(Assembler::rc_z, true, Assembler::pn, cnt_reg, Ldone);
+    __ cmp_zero_and_br(Assembler::zero, cnt_reg, Ldone, true, Assembler::pn);
     __ delayed()->add(G0, 1, result_reg); // count == 0
 
     //rename registers
@@ -3006,7 +2967,7 @@
     // Compare char[] arrays aligned to 4 bytes.
     __ char_arrays_equals(str1_reg, str2_reg, limit_reg, result_reg,
                           chr1_reg, chr2_reg, Ldone);
-    __ ba(false,Ldone);
+    __ ba(Ldone);
     __ delayed()->add(G0, 1, result_reg);
 
     // char by char compare
@@ -3065,7 +3026,7 @@
     __ br(Assembler::notEqual, true, Assembler::pn, Ldone);
     __ delayed()->mov(G0, result_reg);     // not equal
 
-    __ br_on_reg_cond(Assembler::rc_z, true, Assembler::pn, tmp1_reg, Ldone);
+    __ cmp_zero_and_br(Assembler::zero, tmp1_reg, Ldone, true, Assembler::pn);
     __ delayed()->add(G0, 1, result_reg); // zero-length arrays are equal
 
     // load array addresses
@@ -3352,10 +3313,10 @@
 
 //----------Instruction Attributes---------------------------------------------
 ins_attrib ins_cost(DEFAULT_COST); // Required cost attribute
-ins_attrib ins_size(32);       // Required size attribute (in bits)
-ins_attrib ins_pc_relative(0); // Required PC Relative flag
-ins_attrib ins_short_branch(0); // Required flag: is this instruction a
-                                // non-matching short branch variant of some
+ins_attrib ins_size(32);           // Required size attribute (in bits)
+ins_attrib ins_avoid_back_to_back(0); // instruction should not be generated back to back
+ins_attrib ins_short_branch(0);    // Required flag: is this instruction a
+                                   // non-matching short branch variant of some
                                                             // long branch?
 
 //----------OPERANDS-----------------------------------------------------------
@@ -3441,6 +3402,15 @@
   interface(CONST_INTER);
 %}
 
+// Integer Immediate: 5-bit
+operand immI5() %{
+  predicate(Assembler::is_simm(n->get_int(), 5));
+  match(ConI);
+  op_cost(0);
+  format %{ %}
+  interface(CONST_INTER);
+%}
+
 // Integer Immediate: 0-bit
 operand immI0() %{
   predicate(n->get_int() == 0);
@@ -3664,6 +3634,15 @@
   interface(CONST_INTER);
 %}
 
+// Integer Immediate: 5-bit
+operand immL5() %{
+  predicate(n->get_long() == (int)n->get_long() && Assembler::is_simm((int)n->get_long(), 5));
+  match(ConL);
+  op_cost(0);
+  format %{ %}
+  interface(CONST_INTER);
+%}
+
 // Long Immediate: 13-bit
 operand immL13() %{
   predicate((-4096L < n->get_long()) && (n->get_long() <= 4095L));
@@ -5196,6 +5175,42 @@
     MS  : R;
 %}
 
+// Compare and branch
+pipe_class cmp_br_reg_reg(Universe br, cmpOp cmp, iRegI src1, iRegI src2, label labl, flagsReg cr) %{
+    instruction_count(2); has_delay_slot;
+    cr    : E(write);
+    src1  : R(read);
+    src2  : R(read);
+    IALU  : R;
+    BR    : R;
+%}
+
+// Compare and branch
+pipe_class cmp_br_reg_imm(Universe br, cmpOp cmp, iRegI src1, immI13 src2, label labl, flagsReg cr) %{
+    instruction_count(2); has_delay_slot;
+    cr    : E(write);
+    src1  : R(read);
+    IALU  : R;
+    BR    : R;
+%}
+
+// Compare and branch using cbcond
+pipe_class cbcond_reg_reg(Universe br, cmpOp cmp, iRegI src1, iRegI src2, label labl) %{
+    single_instruction;
+    src1  : E(read);
+    src2  : E(read);
+    IALU  : R;
+    BR    : R;
+%}
+
+// Compare and branch using cbcond
+pipe_class cbcond_reg_imm(Universe br, cmpOp cmp, iRegI src1, immI5 src2, label labl) %{
+    single_instruction;
+    src1  : E(read);
+    IALU  : R;
+    BR    : R;
+%}
+
 pipe_class br_fcc(Universe br, cmpOpF cc, flagsReg cr, label labl) %{
     single_instruction_with_delay_slot;
     cr    : E(read);
@@ -6251,6 +6266,7 @@
 instruct prefetchr( memory mem ) %{
   match( PrefetchRead mem );
   ins_cost(MEMORY_REF_COST);
+  size(4);
 
   format %{ "PREFETCH $mem,0\t! Prefetch read-many" %}
   opcode(Assembler::prefetch_op3);
@@ -6259,9 +6275,9 @@
 %}
 
 instruct prefetchw( memory mem ) %{
-  predicate(AllocatePrefetchStyle != 3 );
   match( PrefetchWrite mem );
   ins_cost(MEMORY_REF_COST);
+  size(4);
 
   format %{ "PREFETCH $mem,2\t! Prefetch write-many (and read)" %}
   opcode(Assembler::prefetch_op3);
@@ -6269,24 +6285,62 @@
   ins_pipe(iload_mem);
 %}
 
-// Use BIS instruction to prefetch.
-instruct prefetchw_bis( memory mem ) %{
-  predicate(AllocatePrefetchStyle == 3);
-  match( PrefetchWrite mem );
-  ins_cost(MEMORY_REF_COST);
+// Prefetch instructions for allocation.
 
-  format %{ "STXA   G0,$mem\t! // Block initializing store" %}
+instruct prefetchAlloc( memory mem ) %{
+  predicate(AllocatePrefetchInstr == 0);
+  match( PrefetchAllocation mem );
+  ins_cost(MEMORY_REF_COST);
+  size(4);
+
+  format %{ "PREFETCH $mem,2\t! Prefetch allocation" %}
+  opcode(Assembler::prefetch_op3);
+  ins_encode( form3_mem_prefetch_write( mem ) );
+  ins_pipe(iload_mem);
+%}
+
+// Use BIS instruction to prefetch for allocation.
+// Could fault, need space at the end of TLAB.
+instruct prefetchAlloc_bis( iRegP dst ) %{
+  predicate(AllocatePrefetchInstr == 1);
+  match( PrefetchAllocation dst );
+  ins_cost(MEMORY_REF_COST);
+  size(4);
+
+  format %{ "STXA   [$dst]\t! // Prefetch allocation using BIS" %}
   ins_encode %{
-     Register base = as_Register($mem$$base);
-     int disp = $mem$$disp;
-     if (disp != 0) {
-       __ add(base, AllocatePrefetchStepSize, base);
-     }
-     __ stxa(G0, base, G0, ASI_BLK_INIT_QUAD_LDD_P);
+    __ stxa(G0, $dst$$Register, G0, Assembler::ASI_ST_BLKINIT_PRIMARY);
   %}
   ins_pipe(istore_mem_reg);
 %}
 
+// Next code is used for finding next cache line address to prefetch.
+#ifndef _LP64
+instruct cacheLineAdr( iRegP dst, iRegP src, immI13 mask ) %{
+  match(Set dst (CastX2P (AndI (CastP2X src) mask)));
+  ins_cost(DEFAULT_COST);
+  size(4);
+
+  format %{ "AND    $src,$mask,$dst\t! next cache line address" %}
+  ins_encode %{
+    __ and3($src$$Register, $mask$$constant, $dst$$Register);
+  %}
+  ins_pipe(ialu_reg_imm);
+%}
+#else
+instruct cacheLineAdr( iRegP dst, iRegP src, immL13 mask ) %{
+  match(Set dst (CastX2P (AndL (CastP2X src) mask)));
+  ins_cost(DEFAULT_COST);
+  size(4);
+
+  format %{ "AND    $src,$mask,$dst\t! next cache line address" %}
+  ins_encode %{
+    __ and3($src$$Register, $mask$$constant, $dst$$Register);
+  %}
+  ins_pipe(ialu_reg_imm);
+%}
+#endif
+
 //----------Store Instructions-------------------------------------------------
 // Store Byte
 instruct storeB(memory mem, iRegI src) %{
@@ -6644,8 +6698,7 @@
 %}
 
 instruct membar_acquire_lock() %{
-  match(MemBarAcquire);
-  predicate(Matcher::prior_fast_lock(n));
+  match(MemBarAcquireLock);
   ins_cost(0);
 
   size(0);
@@ -6665,8 +6718,7 @@
 %}
 
 instruct membar_release_lock() %{
-  match(MemBarRelease);
-  predicate(Matcher::post_fast_unlock(n));
+  match(MemBarReleaseLock);
   ins_cost(0);
 
   size(0);
@@ -9220,7 +9272,6 @@
     __ jmp(label_reg, G0);
     __ delayed()->nop();
   %}
-  ins_pc_relative(1);
   ins_pipe(ialu_reg_reg);
 %}
 
@@ -9232,13 +9283,33 @@
   size(8);
   ins_cost(BRANCH_COST);
   format %{ "BA     $labl" %}
-  // Prim = bits 24-22, Secnd = bits 31-30, Tert = cond
-  opcode(Assembler::br_op2, Assembler::branch_op, Assembler::always);
-  ins_encode( enc_ba( labl ) );
-  ins_pc_relative(1);
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ ba(*L);
+    __ delayed()->nop();
+  %}
   ins_pipe(br);
 %}
 
+// Direct Branch, short with no delay slot
+instruct branch_short(label labl) %{
+  match(Goto);
+  predicate(UseCBCond);
+  effect(USE labl);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "BA     $labl\t! short branch" %}
+  ins_encode %{ 
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ ba_short(*L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_imm);
+%}
+
 // Conditional Direct Branch
 instruct branchCon(cmpOp cmp, flagsReg icc, label labl) %{
   match(If cmp icc);
@@ -9249,10 +9320,539 @@
   format %{ "BP$cmp   $icc,$labl" %}
   // Prim = bits 24-22, Secnd = bits 31-30
   ins_encode( enc_bp( labl, cmp, icc ) );
-  ins_pc_relative(1);
   ins_pipe(br_cc);
 %}
 
+instruct branchConU(cmpOpU cmp, flagsRegU icc, label labl) %{
+  match(If cmp icc);
+  effect(USE labl);
+
+  ins_cost(BRANCH_COST);
+  format %{ "BP$cmp  $icc,$labl" %}
+  // Prim = bits 24-22, Secnd = bits 31-30
+  ins_encode( enc_bp( labl, cmp, icc ) );
+  ins_pipe(br_cc);
+%}
+
+instruct branchConP(cmpOpP cmp, flagsRegP pcc, label labl) %{
+  match(If cmp pcc);
+  effect(USE labl);
+
+  size(8);
+  ins_cost(BRANCH_COST);
+  format %{ "BP$cmp  $pcc,$labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+
+    __ bp( (Assembler::Condition)($cmp$$cmpcode), false, Assembler::ptr_cc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(br_cc);
+%}
+
+instruct branchConF(cmpOpF cmp, flagsRegF fcc, label labl) %{
+  match(If cmp fcc);
+  effect(USE labl);
+
+  size(8);
+  ins_cost(BRANCH_COST);
+  format %{ "FBP$cmp $fcc,$labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+
+    __ fbp( (Assembler::Condition)($cmp$$cmpcode), false, (Assembler::CC)($fcc$$reg), predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(br_fcc);
+%}
+
+instruct branchLoopEnd(cmpOp cmp, flagsReg icc, label labl) %{
+  match(CountedLoopEnd cmp icc);
+  effect(USE labl);
+
+  size(8);
+  ins_cost(BRANCH_COST);
+  format %{ "BP$cmp   $icc,$labl\t! Loop end" %}
+  // Prim = bits 24-22, Secnd = bits 31-30
+  ins_encode( enc_bp( labl, cmp, icc ) );
+  ins_pipe(br_cc);
+%}
+
+instruct branchLoopEndU(cmpOpU cmp, flagsRegU icc, label labl) %{
+  match(CountedLoopEnd cmp icc);
+  effect(USE labl);
+
+  size(8);
+  ins_cost(BRANCH_COST);
+  format %{ "BP$cmp  $icc,$labl\t! Loop end" %}
+  // Prim = bits 24-22, Secnd = bits 31-30
+  ins_encode( enc_bp( labl, cmp, icc ) );
+  ins_pipe(br_cc);
+%}
+
+// Compare and branch instructions
+instruct cmpI_reg_branch(cmpOp cmp, iRegI op1, iRegI op2, label labl, flagsReg icc) %{
+  match(If cmp (CmpI op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! int\n\t"
+            "BP$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$Register);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpI_imm_branch(cmpOp cmp, iRegI op1, immI5 op2, label labl, flagsReg icc) %{
+  match(If cmp (CmpI op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! int\n\t"
+            "BP$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$constant);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_imm);
+%}
+
+instruct cmpU_reg_branch(cmpOpU cmp, iRegI op1, iRegI op2, label labl, flagsRegU icc) %{
+  match(If cmp (CmpU op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! unsigned\n\t"
+            "BP$cmp  $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$Register);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpU_imm_branch(cmpOpU cmp, iRegI op1, immI5 op2, label labl, flagsRegU icc) %{
+  match(If cmp (CmpU op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! unsigned\n\t"
+            "BP$cmp  $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$constant);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_imm);
+%}
+
+instruct cmpL_reg_branch(cmpOp cmp, iRegL op1, iRegL op2, label labl, flagsRegL xcc) %{
+  match(If cmp (CmpL op1 op2));
+  effect(USE labl, KILL xcc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! long\n\t"
+            "BP$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$Register);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::xcc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpL_imm_branch(cmpOp cmp, iRegL op1, immL5 op2, label labl, flagsRegL xcc) %{
+  match(If cmp (CmpL op1 op2));
+  effect(USE labl, KILL xcc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! long\n\t"
+            "BP$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$constant);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::xcc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_imm);
+%}
+
+// Compare Pointers and branch
+instruct cmpP_reg_branch(cmpOpP cmp, iRegP op1, iRegP op2, label labl, flagsRegP pcc) %{
+  match(If cmp (CmpP op1 op2));
+  effect(USE labl, KILL pcc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! ptr\n\t"
+            "B$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$Register);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::ptr_cc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpP_null_branch(cmpOpP cmp, iRegP op1, immP0 null, label labl, flagsRegP pcc) %{
+  match(If cmp (CmpP op1 null));
+  effect(USE labl, KILL pcc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,0\t! ptr\n\t"
+            "B$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, G0);
+    // bpr() is not used here since it has shorter distance.
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::ptr_cc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpN_reg_branch(cmpOp cmp, iRegN op1, iRegN op2, label labl, flagsReg icc) %{
+  match(If cmp (CmpN op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! compressed ptr\n\t"
+            "BP$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$Register);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpN_null_branch(cmpOp cmp, iRegN op1, immN0 null, label labl, flagsReg icc) %{
+  match(If cmp (CmpN op1 null));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,0\t! compressed ptr\n\t"
+            "BP$cmp   $labl" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, G0);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+// Loop back branch
+instruct cmpI_reg_branchLoopEnd(cmpOp cmp, iRegI op1, iRegI op2, label labl, flagsReg icc) %{
+  match(CountedLoopEnd cmp (CmpI op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! int\n\t"
+            "BP$cmp   $labl\t! Loop end" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$Register);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_reg);
+%}
+
+instruct cmpI_imm_branchLoopEnd(cmpOp cmp, iRegI op1, immI5 op2, label labl, flagsReg icc) %{
+  match(CountedLoopEnd cmp (CmpI op1 op2));
+  effect(USE labl, KILL icc);
+
+  size(12);
+  ins_cost(BRANCH_COST);
+  format %{ "CMP    $op1,$op2\t! int\n\t"
+            "BP$cmp   $labl\t! Loop end" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+    __ cmp($op1$$Register, $op2$$constant);
+    __ bp((Assembler::Condition)($cmp$$cmpcode), false, Assembler::icc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
+  ins_pipe(cmp_br_reg_imm);
+%}
+
+// Short compare and branch instructions
+instruct cmpI_reg_branch_short(cmpOp cmp, iRegI op1, iRegI op2, label labl, flagsReg icc) %{
+  match(If cmp (CmpI op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp  $op1,$op2,$labl\t! int" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$Register, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpI_imm_branch_short(cmpOp cmp, iRegI op1, immI5 op2, label labl, flagsReg icc) %{
+  match(If cmp (CmpI op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp  $op1,$op2,$labl\t! int" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$constant, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_imm);
+%}
+
+instruct cmpU_reg_branch_short(cmpOpU cmp, iRegI op1, iRegI op2, label labl, flagsRegU icc) %{
+  match(If cmp (CmpU op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp $op1,$op2,$labl\t! unsigned" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$Register, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpU_imm_branch_short(cmpOpU cmp, iRegI op1, immI5 op2, label labl, flagsRegU icc) %{
+  match(If cmp (CmpU op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp $op1,$op2,$labl\t! unsigned" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$constant, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_imm);
+%}
+
+instruct cmpL_reg_branch_short(cmpOp cmp, iRegL op1, iRegL op2, label labl, flagsRegL xcc) %{
+  match(If cmp (CmpL op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL xcc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CXB$cmp  $op1,$op2,$labl\t! long" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::xcc, $op1$$Register, $op2$$Register, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpL_imm_branch_short(cmpOp cmp, iRegL op1, immL5 op2, label labl, flagsRegL xcc) %{
+  match(If cmp (CmpL op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL xcc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CXB$cmp  $op1,$op2,$labl\t! long" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::xcc, $op1$$Register, $op2$$constant, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_imm);
+%}
+
+// Compare Pointers and branch
+instruct cmpP_reg_branch_short(cmpOpP cmp, iRegP op1, iRegP op2, label labl, flagsRegP pcc) %{
+  match(If cmp (CmpP op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL pcc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+#ifdef _LP64
+  format %{ "CXB$cmp $op1,$op2,$labl\t! ptr" %}
+#else
+  format %{ "CWB$cmp $op1,$op2,$labl\t! ptr" %}
+#endif
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::ptr_cc, $op1$$Register, $op2$$Register, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpP_null_branch_short(cmpOpP cmp, iRegP op1, immP0 null, label labl, flagsRegP pcc) %{
+  match(If cmp (CmpP op1 null));
+  predicate(UseCBCond);
+  effect(USE labl, KILL pcc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+#ifdef _LP64
+  format %{ "CXB$cmp $op1,0,$labl\t! ptr" %}
+#else
+  format %{ "CWB$cmp $op1,0,$labl\t! ptr" %}
+#endif
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::ptr_cc, $op1$$Register, G0, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpN_reg_branch_short(cmpOp cmp, iRegN op1, iRegN op2, label labl, flagsReg icc) %{
+  match(If cmp (CmpN op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp  $op1,op2,$labl\t! compressed ptr" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$Register, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpN_null_branch_short(cmpOp cmp, iRegN op1, immN0 null, label labl, flagsReg icc) %{
+  match(If cmp (CmpN op1 null));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp  $op1,0,$labl\t! compressed ptr" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, G0, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+// Loop back branch
+instruct cmpI_reg_branchLoopEnd_short(cmpOp cmp, iRegI op1, iRegI op2, label labl, flagsReg icc) %{
+  match(CountedLoopEnd cmp (CmpI op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp  $op1,$op2,$labl\t! Loop end" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$Register, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_reg);
+%}
+
+instruct cmpI_imm_branchLoopEnd_short(cmpOp cmp, iRegI op1, immI5 op2, label labl, flagsReg icc) %{
+  match(CountedLoopEnd cmp (CmpI op1 op2));
+  predicate(UseCBCond);
+  effect(USE labl, KILL icc);
+
+  size(4);
+  ins_cost(BRANCH_COST);
+  format %{ "CWB$cmp  $op1,$op2,$labl\t! Loop end" %}
+  ins_encode %{
+    Label* L = $labl$$label;
+    assert(__ use_cbcond(*L), "back to back cbcond");
+    __ cbcond((Assembler::Condition)($cmp$$cmpcode), Assembler::icc, $op1$$Register, $op2$$constant, *L);
+  %}
+  ins_short_branch(1);
+  ins_avoid_back_to_back(1);
+  ins_pipe(cbcond_reg_imm);
+%}
+
 // Branch-on-register tests all 64 bits.  We assume that values
 // in 64-bit registers always remains zero or sign extended
 // unless our code munges the high bits.  Interrupts can chop
@@ -9266,7 +9866,6 @@
   ins_cost(BRANCH_COST);
   format %{ "BR$cmp   $op1,$labl" %}
   ins_encode( enc_bpr( labl, cmp, op1 ) );
-  ins_pc_relative(1);
   ins_pipe(br_reg);
 %}
 
@@ -9279,7 +9878,6 @@
   ins_cost(BRANCH_COST);
   format %{ "BR$cmp   $op1,$labl" %}
   ins_encode( enc_bpr( labl, cmp, op1 ) );
-  ins_pc_relative(1);
   ins_pipe(br_reg);
 %}
 
@@ -9292,72 +9890,9 @@
   ins_cost(BRANCH_COST);
   format %{ "BR$cmp   $op1,$labl" %}
   ins_encode( enc_bpr( labl, cmp, op1 ) );
-  ins_pc_relative(1);
   ins_pipe(br_reg);
 %}
 
-instruct branchConU(cmpOpU cmp, flagsRegU icc, label labl) %{
-  match(If cmp icc);
-  effect(USE labl);
-
-  format %{ "BP$cmp  $icc,$labl" %}
-  // Prim = bits 24-22, Secnd = bits 31-30
-  ins_encode( enc_bp( labl, cmp, icc ) );
-  ins_pc_relative(1);
-  ins_pipe(br_cc);
-%}
-
-instruct branchConP(cmpOpP cmp, flagsRegP pcc, label labl) %{
-  match(If cmp pcc);
-  effect(USE labl);
-
-  size(8);
-  ins_cost(BRANCH_COST);
-  format %{ "BP$cmp  $pcc,$labl" %}
-  // Prim = bits 24-22, Secnd = bits 31-30
-  ins_encode( enc_bpx( labl, cmp, pcc ) );
-  ins_pc_relative(1);
-  ins_pipe(br_cc);
-%}
-
-instruct branchConF(cmpOpF cmp, flagsRegF fcc, label labl) %{
-  match(If cmp fcc);
-  effect(USE labl);
-
-  size(8);
-  ins_cost(BRANCH_COST);
-  format %{ "FBP$cmp $fcc,$labl" %}
-  // Prim = bits 24-22, Secnd = bits 31-30
-  ins_encode( enc_fbp( labl, cmp, fcc ) );
-  ins_pc_relative(1);
-  ins_pipe(br_fcc);
-%}
-
-instruct branchLoopEnd(cmpOp cmp, flagsReg icc, label labl) %{
-  match(CountedLoopEnd cmp icc);
-  effect(USE labl);
-
-  size(8);
-  ins_cost(BRANCH_COST);
-  format %{ "BP$cmp   $icc,$labl\t! Loop end" %}
-  // Prim = bits 24-22, Secnd = bits 31-30
-  ins_encode( enc_bp( labl, cmp, icc ) );
-  ins_pc_relative(1);
-  ins_pipe(br_cc);
-%}
-
-instruct branchLoopEndU(cmpOpU cmp, flagsRegU icc, label labl) %{
-  match(CountedLoopEnd cmp icc);
-  effect(USE labl);
-
-  size(8);
-  ins_cost(BRANCH_COST);
-  format %{ "BP$cmp  $icc,$labl\t! Loop end" %}
-  // Prim = bits 24-22, Secnd = bits 31-30
-  ins_encode( enc_bp( labl, cmp, icc ) );
-  ins_pc_relative(1);
-  ins_pipe(br_cc);
-%}
 
 // ============================================================================
 // Long Compare
@@ -9387,9 +9922,14 @@
   size(8);
   ins_cost(BRANCH_COST);
   format %{ "BP$cmp   $xcc,$labl" %}
-  // Prim = bits 24-22, Secnd = bits 31-30
-  ins_encode( enc_bpl( labl, cmp, xcc ) );
-  ins_pc_relative(1);
+  ins_encode %{
+    Label* L = $labl$$label;
+    Assembler::Predict predict_taken =
+      cbuf.is_backward_branch(*L) ? Assembler::pt : Assembler::pn;
+
+    __ bp( (Assembler::Condition)($cmp$$cmpcode), false, Assembler::xcc, predict_taken, *L);
+    __ delayed()->nop();
+  %}
   ins_pipe(br_cc);
 %}
 
@@ -9517,7 +10057,6 @@
   ins_cost(CALL_COST);
   format %{ "CALL,static  ; NOP ==> " %}
   ins_encode( Java_Static_Call( meth ), call_epilog );
-  ins_pc_relative(1);
   ins_pipe(simple_call);
 %}
 
@@ -9527,11 +10066,10 @@
   predicate(((CallStaticJavaNode*)n)->is_method_handle_invoke());
   effect(USE meth, KILL l7_mh_SP_save);
 
-  size(8);
+  size(16);
   ins_cost(CALL_COST);
   format %{ "CALL,static/MethodHandle" %}
   ins_encode(preserve_SP, Java_Static_Call(meth), restore_SP, call_epilog);
-  ins_pc_relative(1);
   ins_pipe(simple_call);
 %}
 
@@ -9544,7 +10082,6 @@
   format %{ "SET    (empty),R_G5\n\t"
             "CALL,dynamic  ; NOP ==> " %}
   ins_encode( Java_Dynamic_Call( meth ), call_epilog );
-  ins_pc_relative(1);
   ins_pipe(call);
 %}
 
@@ -9556,7 +10093,6 @@
   format %{ "CALL,runtime" %}
   ins_encode( Java_To_Runtime( meth ),
               call_epilog, adjust_long_from_native_call );
-  ins_pc_relative(1);
   ins_pipe(simple_call);
 %}
 
@@ -9569,7 +10105,6 @@
   ins_encode( Java_To_Runtime( meth ),
               call_epilog,
               adjust_long_from_native_call );
-  ins_pc_relative(1);
   ins_pipe(simple_call);
 %}
 
@@ -9582,7 +10117,6 @@
   ins_encode( Java_To_Runtime( meth ),
               call_epilog,
               adjust_long_from_native_call );
-  ins_pc_relative(1);
   ins_pipe(simple_call);
 %}
 
@@ -9707,7 +10241,6 @@
   effect(KILL scratch, TEMP scratch2);
   ins_cost(100);
 
-  size(4*112);       // conservative overestimation ...
   format %{ "FASTLOCK  $object, $box; KILL $scratch, $scratch2, $box" %}
   ins_encode( Fast_Lock(object, box, scratch, scratch2) );
   ins_pipe(long_memory_op);
@@ -9719,7 +10252,6 @@
   effect(KILL scratch, TEMP scratch2);
   ins_cost(100);
 
-  size(4*120);       // conservative overestimation ...
   format %{ "FASTUNLOCK  $object, $box; KILL $scratch, $scratch2, $box" %}
   ins_encode( Fast_Unlock(object, box, scratch, scratch2) );
   ins_pipe(long_memory_op);
diff --git a/hotspot/src/cpu/sparc/vm/stubGenerator_sparc.cpp b/hotspot/src/cpu/sparc/vm/stubGenerator_sparc.cpp
index 69ed909..3c149bf 100644
--- a/hotspot/src/cpu/sparc/vm/stubGenerator_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/stubGenerator_sparc.cpp
@@ -150,8 +150,7 @@
     { const Register t = G3_scratch;
       Label L;
       __ ld_ptr(G2_thread, in_bytes(Thread::pending_exception_offset()), t);
-      __ br_null(t, false, Assembler::pt, L);
-      __ delayed()->nop();
+      __ br_null_short(t, Assembler::pt, L);
       __ stop("StubRoutines::call_stub: entered with pending exception");
       __ bind(L);
     }
@@ -207,8 +206,7 @@
       Label exit;
       __ ld_ptr(parameter_size.as_in().as_address(), cnt);      // parameter counter
       __ add( FP, STACK_BIAS, dst );
-      __ tst(cnt);
-      __ br(Assembler::zero, false, Assembler::pn, exit);
+      __ cmp_zero_and_br(Assembler::zero, cnt, exit);
       __ delayed()->sub(dst, BytesPerWord, dst);                 // setup Lentry_args
 
       // copy parameters if any
@@ -282,20 +280,20 @@
       __ delayed()->restore();
 
       __ BIND(is_object);
-      __ ba(false, exit);
+      __ ba(exit);
       __ delayed()->st_ptr(O0, addr, G0);
 
       __ BIND(is_float);
-      __ ba(false, exit);
+      __ ba(exit);
       __ delayed()->stf(FloatRegisterImpl::S, F0, addr, G0);
 
       __ BIND(is_double);
-      __ ba(false, exit);
+      __ ba(exit);
       __ delayed()->stf(FloatRegisterImpl::D, F0, addr, G0);
 
       __ BIND(is_long);
 #ifdef _LP64
-      __ ba(false, exit);
+      __ ba(exit);
       __ delayed()->st_long(O0, addr, G0);      // store entire long
 #else
 #if defined(COMPILER2)
@@ -307,11 +305,11 @@
   // do this here. Unfortunately if we did a rethrow we'd see an machepilog node
   // first which would move g1 -> O0/O1 and destroy the exception we were throwing.
 
-      __ ba(false, exit);
+      __ ba(exit);
       __ delayed()->stx(G1, addr, G0);  // store entire long
 #else
       __ st(O1, addr, BytesPerInt);
-      __ ba(false, exit);
+      __ ba(exit);
       __ delayed()->st(O0, addr, G0);
 #endif /* COMPILER2 */
 #endif /* _LP64 */
@@ -382,8 +380,7 @@
     // make sure that this code is only executed if there is a pending exception
     { Label L;
       __ ld_ptr(exception_addr, Gtemp);
-      __ br_notnull(Gtemp, false, Assembler::pt, L);
-      __ delayed()->nop();
+      __ br_notnull_short(Gtemp, Assembler::pt, L);
       __ stop("StubRoutines::forward exception: no pending exception (1)");
       __ bind(L);
     }
@@ -406,8 +403,7 @@
 #ifdef ASSERT
     // make sure exception is set
     { Label L;
-      __ br_notnull(Oexception, false, Assembler::pt, L);
-      __ delayed()->nop();
+      __ br_notnull_short(Oexception, Assembler::pt, L);
       __ stop("StubRoutines::forward exception: no pending exception (2)");
       __ bind(L);
     }
@@ -501,8 +497,7 @@
     Address exception_addr(G2_thread, Thread::pending_exception_offset());
     Register scratch_reg = Gtemp;
     __ ld_ptr(exception_addr, scratch_reg);
-    __ br_notnull(scratch_reg, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_notnull_short(scratch_reg, Assembler::pt, L);
     __ should_not_reach_here();
     __ bind(L);
 #endif // ASSERT
@@ -614,9 +609,7 @@
     __ mov(G0,yield_reg);
 
     __ BIND(retry);
-    __ cmp(yield_reg, V8AtomicOperationUnderLockSpinCount);
-    __ br(Assembler::less, false, Assembler::pt, dontyield);
-    __ delayed()->nop();
+    __ cmp_and_br_short(yield_reg, V8AtomicOperationUnderLockSpinCount, Assembler::less, Assembler::pt, dontyield);
 
     // This code can only be called from inside the VM, this
     // stub is only invoked from Atomic::add().  We do not
@@ -676,9 +669,7 @@
       // try to replace O2 with O3
       __ cas_under_lock(O1, O2, O3,
       (address)StubRoutines::Sparc::atomic_memory_operation_lock_addr(),false);
-      __ cmp(O2, O3);
-      __ br(Assembler::notEqual, false, Assembler::pn, retry);
-      __ delayed()->nop();
+      __ cmp_and_br_short(O2, O3, Assembler::notEqual, Assembler::pn, retry);
 
       __ retl(false);
       __ delayed()->mov(O2, O0);  // report previous value to caller
@@ -798,11 +789,9 @@
       __ BIND(retry);
 
       __ lduw(O1, 0, O2);
-      __ add(O0,   O2, O3);
-      __ cas(O1,   O2, O3);
-      __ cmp(      O2, O3);
-      __ br(Assembler::notEqual, false, Assembler::pn, retry);
-      __ delayed()->nop();
+      __ add(O0, O2, O3);
+      __ cas(O1, O2, O3);
+      __ cmp_and_br_short(O2, O3, Assembler::notEqual, Assembler::pn, retry);
       __ retl(false);
       __ delayed()->add(O0, O2, O0); // note that cas made O2==O3
     } else {
@@ -1370,8 +1359,7 @@
 
     // copy tailing bytes
     __ BIND(L_copy_byte);
-      __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit);
-      __ delayed()->nop();
+      __ cmp_and_br_short(count, 0, Assembler::equal, Assembler::pt, L_exit);
       __ align(OptoLoopAlignment);
     __ BIND(L_copy_byte_loop);
       __ ldub(from, offset, O3);
@@ -1482,8 +1470,7 @@
 
     // copy 1 element (2 bytes) at a time
     __ BIND(L_copy_byte);
-      __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit);
-      __ delayed()->nop();
+      __ cmp_and_br_short(count, 0, Assembler::equal, Assembler::pt, L_exit);
       __ align(OptoLoopAlignment);
     __ BIND(L_copy_byte_loop);
       __ dec(end_from);
@@ -1600,8 +1587,7 @@
 
     // copy 1 element at a time
     __ BIND(L_copy_2_bytes);
-      __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit);
-      __ delayed()->nop();
+      __ cmp_and_br_short(count, 0, Assembler::equal, Assembler::pt, L_exit);
       __ align(OptoLoopAlignment);
     __ BIND(L_copy_2_bytes_loop);
       __ lduh(from, offset, O3);
@@ -1946,8 +1932,7 @@
 
     // copy 1 element (2 bytes) at a time
     __ BIND(L_copy_2_bytes);
-      __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit);
-      __ delayed()->nop();
+      __ cmp_and_br_short(count, 0, Assembler::equal, Assembler::pt, L_exit);
     __ BIND(L_copy_2_bytes_loop);
       __ dec(end_from, 2);
       __ dec(end_to, 2);
@@ -2060,8 +2045,7 @@
 
     // copy 1 element at a time
     __ BIND(L_copy_4_bytes);
-      __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit);
-      __ delayed()->nop();
+      __ cmp_and_br_short(count, 0, Assembler::equal, Assembler::pt, L_exit);
     __ BIND(L_copy_4_bytes_loop);
       __ ld(from, offset, O3);
       __ deccc(count);
@@ -2193,8 +2177,7 @@
 
     // copy 1 element (4 bytes) at a time
     __ BIND(L_copy_4_bytes);
-      __ br_zero(Assembler::zero, false, Assembler::pt, count, L_exit);
-      __ delayed()->nop();
+      __ cmp_and_br_short(count, 0, Assembler::equal, Assembler::pt, L_exit);
     __ BIND(L_copy_4_bytes_loop);
       __ dec(end_from, 4);
       __ dec(end_to, 4);
@@ -2576,7 +2559,7 @@
                                      super_klass->after_save(),
                                      L0, L1, L2, L4,
                                      NULL, &L_pop_to_miss);
-    __ ba(false, L_success);
+    __ ba(L_success);
     __ delayed()->restore();
 
     __ bind(L_pop_to_miss);
@@ -2673,8 +2656,7 @@
     // ======== loop entry is here ========
     __ BIND(load_element);
     __ load_heap_oop(O0_from, O5_offset, G3_oop);  // load the oop
-    __ br_null(G3_oop, true, Assembler::pt, store_element);
-    __ delayed()->nop();
+    __ br_null_short(G3_oop, Assembler::pt, store_element);
 
     __ load_klass(G3_oop, G4_klass); // query the object klass
 
@@ -2896,8 +2878,7 @@
     //  assert(src->klass() != NULL);
     BLOCK_COMMENT("assert klasses not null");
     { Label L_a, L_b;
-      __ br_notnull(G3_src_klass, false, Assembler::pt, L_b); // it is broken if klass is NULL
-      __ delayed()->nop();
+      __ br_notnull_short(G3_src_klass, Assembler::pt, L_b); // it is broken if klass is NULL
       __ bind(L_a);
       __ stop("broken null klass");
       __ bind(L_b);
@@ -2937,9 +2918,7 @@
     }
 
     //  if (src->klass() != dst->klass()) return -1;
-    __ cmp(G3_src_klass, G4_dst_klass);
-    __ brx(Assembler::notEqual, false, Assembler::pn, L_failed);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(G3_src_klass, G4_dst_klass, Assembler::notEqual, Assembler::pn, L_failed);
 
     //  if (!src->is_Array()) return -1;
     __ cmp(G5_lh, Klass::_lh_neutral_value); // < 0
@@ -3007,9 +2986,7 @@
     __ delayed()->signx(length, count); // length
 #ifdef ASSERT
     { Label L;
-      __ cmp(G3_elsize, LogBytesPerLong);
-      __ br(Assembler::equal, false, Assembler::pt, L);
-      __ delayed()->nop();
+      __ cmp_and_br_short(G3_elsize, LogBytesPerLong, Assembler::equal, Assembler::pt, L);
       __ stop("must be long copy, but elsize is wrong");
       __ bind(L);
     }
diff --git a/hotspot/src/cpu/sparc/vm/templateInterpreter_sparc.cpp b/hotspot/src/cpu/sparc/vm/templateInterpreter_sparc.cpp
index 99b980c..8ec7d06 100644
--- a/hotspot/src/cpu/sparc/vm/templateInterpreter_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/templateInterpreter_sparc.cpp
@@ -190,9 +190,7 @@
   const Register size  = G1_scratch;
   if (EnableInvokeDynamic) {
     __ ldub(Address(Lbcp, 0), G1_scratch);  // Load current bytecode.
-    __ cmp(G1_scratch, Bytecodes::_invokedynamic);
-    __ br(Assembler::equal, false, Assembler::pn, L_giant_index);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G1_scratch, Bytecodes::_invokedynamic, Assembler::equal, Assembler::pn, L_giant_index);
   }
   __ get_cache_and_index_at_bcp(cache, G1_scratch, 1);
   __ bind(L_got_cache);
@@ -207,8 +205,7 @@
   if (EnableInvokeDynamic) {
     __ bind(L_giant_index);
     __ get_cache_and_index_at_bcp(cache, G1_scratch, 1, sizeof(u4));
-    __ ba(false, L_got_cache);
-    __ delayed()->nop();
+    __ ba_short(L_got_cache);
   }
 
   return entry;
@@ -221,9 +218,7 @@
   { Label L;
     Address exception_addr(G2_thread, Thread::pending_exception_offset());
     __ ld_ptr(exception_addr, Gtemp);  // Load pending exception.
-    __ tst(Gtemp);
-    __ brx(Assembler::equal, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_null_short(Gtemp, Assembler::pt, L);
     __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_pending_exception));
     __ should_not_reach_here();
     __ bind(L);
@@ -304,8 +299,7 @@
     if (ProfileInterpreter) {
       // If no method data exists, go to profile_continue.
       __ ld_ptr(Lmethod, methodOopDesc::method_data_offset(), G4_scratch);
-      __ br_null(G4_scratch, false, Assembler::pn, no_mdo);
-      __ delayed()->nop();
+      __ br_null_short(G4_scratch, Assembler::pn, no_mdo);
       // Increment counter
       Address mdo_invocation_counter(G4_scratch,
                                      in_bytes(methodDataOopDesc::invocation_counter_offset()) +
@@ -313,8 +307,7 @@
       __ increment_mask_and_jump(mdo_invocation_counter, increment, mask,
                                  G3_scratch, Lscratch,
                                  Assembler::zero, overflow);
-      __ ba(false, done);
-      __ delayed()->nop();
+      __ ba_short(done);
     }
 
     // Increment counter in methodOop
@@ -340,9 +333,7 @@
       // Test to see if we should create a method data oop
       AddressLiteral profile_limit((address)&InvocationCounter::InterpreterProfileLimit);
       __ load_contents(profile_limit, G3_scratch);
-      __ cmp(O0, G3_scratch);
-      __ br(Assembler::lessUnsigned, false, Assembler::pn, *profile_method_continue);
-      __ delayed()->nop();
+      __ cmp_and_br_short(O0, G3_scratch, Assembler::lessUnsigned, Assembler::pn, *profile_method_continue);
 
       // if no method data exists, go to profile_method
       __ test_method_data_pointer(*profile_method);
@@ -351,7 +342,7 @@
     AddressLiteral invocation_limit((address)&InvocationCounter::InterpreterInvocationLimit);
     __ load_contents(invocation_limit, G3_scratch);
     __ cmp(O0, G3_scratch);
-    __ br(Assembler::greaterEqualUnsigned, false, Assembler::pn, *overflow);
+    __ br(Assembler::greaterEqualUnsigned, false, Assembler::pn, *overflow); // Far distance
     __ delayed()->nop();
   }
 
@@ -410,19 +401,14 @@
 
   assert_different_registers(Rframe_size, Rscratch, Rscratch2);
 
-  __ set( page_size,   Rscratch );
-  __ cmp( Rframe_size, Rscratch );
-
-  __ br( Assembler::lessEqual, false, Assembler::pt, after_frame_check );
-  __ delayed()->nop();
+  __ set(page_size, Rscratch);
+  __ cmp_and_br_short(Rframe_size, Rscratch, Assembler::lessEqual, Assembler::pt, after_frame_check);
 
   // get the stack base, and in debug, verify it is non-zero
   __ ld_ptr( G2_thread, Thread::stack_base_offset(), Rscratch );
 #ifdef ASSERT
   Label base_not_zero;
-  __ cmp( Rscratch, G0 );
-  __ brx( Assembler::notEqual, false, Assembler::pn, base_not_zero );
-  __ delayed()->nop();
+  __ br_notnull_short(Rscratch, Assembler::pn, base_not_zero);
   __ stop("stack base is zero in generate_stack_overflow_check");
   __ bind(base_not_zero);
 #endif
@@ -432,9 +418,7 @@
   __ ld_ptr( G2_thread, Thread::stack_size_offset(), Rscratch2 );
 #ifdef ASSERT
   Label size_not_zero;
-  __ cmp( Rscratch2, G0 );
-  __ brx( Assembler::notEqual, false, Assembler::pn, size_not_zero );
-  __ delayed()->nop();
+  __ br_notnull_short(Rscratch2, Assembler::pn, size_not_zero);
   __ stop("stack size is zero in generate_stack_overflow_check");
   __ bind(size_not_zero);
 #endif
@@ -450,9 +434,7 @@
 
   // the frame is greater than one page in size, so check against
   // the bottom of the stack
-  __ cmp( SP, Rscratch );
-  __ brx( Assembler::greater, false, Assembler::pt, after_frame_check );
-  __ delayed()->nop();
+  __ cmp_and_brx_short(SP, Rscratch, Assembler::greater, Assembler::pt, after_frame_check);
 
   // Save the return address as the exception pc
   __ st_ptr(O7, saved_exception_pc);
@@ -624,9 +606,7 @@
     // If we need a safepoint check, generate full interpreter entry.
     AddressLiteral sync_state(SafepointSynchronize::address_of_state());
     __ set(sync_state, G3_scratch);
-    __ cmp(G3_scratch, SafepointSynchronize::_not_synchronized);
-    __ br(Assembler::notEqual, false, Assembler::pn, slow_path);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, SafepointSynchronize::_not_synchronized, Assembler::notEqual, Assembler::pn, slow_path);
 
     // Code: _return
     __ retl();
@@ -664,14 +644,12 @@
     AddressLiteral sync_state(SafepointSynchronize::address_of_state());
     __ load_contents(sync_state, G3_scratch);
     __ cmp(G3_scratch, SafepointSynchronize::_not_synchronized);
-    __ br(Assembler::notEqual, false, Assembler::pn, slow_path);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, SafepointSynchronize::_not_synchronized, Assembler::notEqual, Assembler::pn, slow_path);
 
     // Check if local 0 != NULL
     __ ld_ptr(Gargs, G0, Otos_i ); // get local 0
-    __ tst(Otos_i);  // check if local 0 == NULL and go the slow path
-    __ brx(Assembler::zero, false, Assembler::pn, slow_path);
-    __ delayed()->nop();
+    // check if local 0 == NULL and go the slow path
+    __ br_null_short(Otos_i, Assembler::pn, slow_path);
 
 
     // read first instruction word and extract bytecode @ 1 and index @ 2
@@ -697,9 +675,7 @@
     __ ld_ptr(G3_scratch, cp_base_offset + ConstantPoolCacheEntry::indices_offset(), G1_scratch);
     __ srl(G1_scratch, 2*BitsPerByte, G1_scratch);
     __ and3(G1_scratch, 0xFF, G1_scratch);
-    __ cmp(G1_scratch, Bytecodes::_getfield);
-    __ br(Assembler::notEqual, false, Assembler::pn, slow_path);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G1_scratch, Bytecodes::_getfield, Assembler::notEqual, Assembler::pn, slow_path);
 
     // Get the type and return field offset from the constant pool cache
     __ ld_ptr(G3_scratch, cp_base_offset + ConstantPoolCacheEntry::flags_offset(), G1_scratch);
@@ -787,9 +763,8 @@
     // Check if local 0 != NULL
     // If the receiver is null then it is OK to jump to the slow path.
     __ ld_ptr(Gargs, G0, Otos_i ); // get local 0
-    __ tst(Otos_i);  // check if local 0 == NULL and go the slow path
-    __ brx(Assembler::zero, false, Assembler::pn, slow_path);
-    __ delayed()->nop();
+    // check if local 0 == NULL and go the slow path
+    __ cmp_and_brx_short(Otos_i, 0, Assembler::equal, Assembler::pn, slow_path);
 
 
     // Load the value of the referent field.
@@ -952,9 +927,7 @@
   { Label L;
     Address signature_handler(Lmethod, methodOopDesc::signature_handler_offset());
     __ ld_ptr(signature_handler, G3_scratch);
-    __ tst(G3_scratch);
-    __ brx(Assembler::notZero, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_notnull_short(G3_scratch, Assembler::pt, L);
     __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::prepare_native_call), Lmethod);
     __ ld_ptr(signature_handler, G3_scratch);
     __ bind(L);
@@ -1019,9 +992,7 @@
 #ifdef ASSERT
     if (!PrintSignatureHandlers)  // do not dirty the output with this
     { Label L;
-      __ tst(O1);
-      __ brx(Assembler::notZero, false, Assembler::pt, L);
-      __ delayed()->nop();
+      __ br_notnull_short(O1, Assembler::pt, L);
       __ stop("mirror is missing");
       __ bind(L);
     }
@@ -1038,9 +1009,7 @@
 
 #ifdef ASSERT
   { Label L;
-    __ tst(O0);
-    __ brx(Assembler::notZero, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_notnull_short(O0, Assembler::pt, L);
     __ stop("native entry point is missing");
     __ bind(L);
   }
@@ -1079,9 +1048,7 @@
 #ifdef ASSERT
   { Label L;
     __ ld(thread_state, G3_scratch);
-    __ cmp(G3_scratch, _thread_in_Java);
-    __ br(Assembler::equal, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, _thread_in_Java, Assembler::equal, Assembler::pt, L);
     __ stop("Wrong thread state in native stub");
     __ bind(L);
   }
@@ -1134,9 +1101,7 @@
     Label L;
     __ br(Assembler::notEqual, false, Assembler::pn, L);
     __ delayed()->ld(G2_thread, JavaThread::suspend_flags_offset(), G3_scratch);
-    __ cmp(G3_scratch, 0);
-    __ br(Assembler::equal, false, Assembler::pt, no_block);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, 0, Assembler::equal, Assembler::pt, no_block);
     __ bind(L);
 
     // Block.  Save any potential method result value before the operation and
@@ -1185,9 +1150,7 @@
     Label no_oop, store_result;
 
     __ set((intptr_t)AbstractInterpreter::result_handler(T_OBJECT), G3_scratch);
-    __ cmp(G3_scratch, Lscratch);
-    __ brx(Assembler::notEqual, false, Assembler::pt, no_oop);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(G3_scratch, Lscratch, Assembler::notEqual, Assembler::pt, no_oop);
     __ addcc(G0, O0, O0);
     __ brx(Assembler::notZero, true, Assembler::pt, store_result);     // if result is not NULL:
     __ delayed()->ld_ptr(O0, 0, O0);                                   // unbox it
@@ -1206,9 +1169,7 @@
   { Label L;
     Address exception_addr(G2_thread, Thread::pending_exception_offset());
     __ ld_ptr(exception_addr, Gtemp);
-    __ tst(Gtemp);
-    __ brx(Assembler::equal, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_null_short(Gtemp, Assembler::pt, L);
     // Note: This could be handled more efficiently since we know that the native
     //       method doesn't have an exception handler. We could directly return
     //       to the exception handler for the caller.
@@ -1245,9 +1206,7 @@
 #ifdef ASSERT
   {
     Label ok;
-    __ cmp(I5_savedSP, FP);
-    __ brx(Assembler::greaterEqualUnsigned, false, Assembler::pt, ok);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(I5_savedSP, FP, Assembler::greaterEqualUnsigned, Assembler::pt, ok);
     __ stop("bad I5_savedSP value");
     __ should_not_reach_here();
     __ bind(ok);
@@ -1429,8 +1388,7 @@
 
       __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::profile_method));
       __ set_method_data_pointer_for_bcp();
-      __ ba(false, profile_method_continue);
-      __ delayed()->nop();
+      __ ba_short(profile_method_continue);
     }
 
     // handle invocation counter overflow
@@ -1856,9 +1814,7 @@
     // adapter frames in C2.
     Label caller_not_deoptimized;
     __ call_VM_leaf(L7_thread_cache, CAST_FROM_FN_PTR(address, InterpreterRuntime::interpreter_contains), I7);
-    __ tst(O0);
-    __ brx(Assembler::notEqual, false, Assembler::pt, caller_not_deoptimized);
-    __ delayed()->nop();
+    __ br_notnull_short(O0, Assembler::pt, caller_not_deoptimized);
 
     const Register Gtmp1 = G3_scratch;
     const Register Gtmp2 = G1_scratch;
@@ -1992,10 +1948,10 @@
 void TemplateInterpreterGenerator::set_vtos_entry_points(Template* t, address& bep, address& cep, address& sep, address& aep, address& iep, address& lep, address& fep, address& dep, address& vep) {
   assert(t->is_valid() && t->tos_in() == vtos, "illegal template");
   Label L;
-  aep = __ pc(); __ push_ptr(); __ ba(false, L); __ delayed()->nop();
-  fep = __ pc(); __ push_f();   __ ba(false, L); __ delayed()->nop();
-  dep = __ pc(); __ push_d();   __ ba(false, L); __ delayed()->nop();
-  lep = __ pc(); __ push_l();   __ ba(false, L); __ delayed()->nop();
+  aep = __ pc(); __ push_ptr(); __ ba_short(L);
+  fep = __ pc(); __ push_f();   __ ba_short(L);
+  dep = __ pc(); __ push_d();   __ ba_short(L);
+  lep = __ pc(); __ push_l();   __ ba_short(L);
   iep = __ pc(); __ push_i();
   bep = cep = sep = iep;                        // there aren't any
   vep = __ pc(); __ bind(L);                    // fall through
diff --git a/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp b/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp
index 82acec5..25b2256 100644
--- a/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/templateTable_sparc.cpp
@@ -149,39 +149,68 @@
 }
 
 
-void TemplateTable::patch_bytecode(Bytecodes::Code bc, Register Rbyte_code,
-                                   Register Rscratch,
-                                   bool load_bc_into_scratch /*=true*/) {
+void TemplateTable::patch_bytecode(Bytecodes::Code bc, Register bc_reg,
+                                   Register temp_reg, bool load_bc_into_bc_reg/*=true*/,
+                                   int byte_no) {
   // With sharing on, may need to test methodOop flag.
-  if (!RewriteBytecodes) return;
-  if (load_bc_into_scratch) __ set(bc, Rbyte_code);
-  Label patch_done;
-  if (JvmtiExport::can_post_breakpoint()) {
-    Label fast_patch;
-    __ ldub(at_bcp(0), Rscratch);
-    __ cmp(Rscratch, Bytecodes::_breakpoint);
-    __ br(Assembler::notEqual, false, Assembler::pt, fast_patch);
-    __ delayed()->nop();  // don't bother to hoist the stb here
-    // perform the quickening, slowly, in the bowels of the breakpoint table
-    __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::set_original_bytecode_at), Lmethod, Lbcp, Rbyte_code);
-    __ ba(false, patch_done);
-    __ delayed()->nop();
-    __ bind(fast_patch);
+  if (!RewriteBytecodes)  return;
+  Label L_patch_done;
+
+  switch (bc) {
+  case Bytecodes::_fast_aputfield:
+  case Bytecodes::_fast_bputfield:
+  case Bytecodes::_fast_cputfield:
+  case Bytecodes::_fast_dputfield:
+  case Bytecodes::_fast_fputfield:
+  case Bytecodes::_fast_iputfield:
+  case Bytecodes::_fast_lputfield:
+  case Bytecodes::_fast_sputfield:
+    {
+      // We skip bytecode quickening for putfield instructions when
+      // the put_code written to the constant pool cache is zero.
+      // This is required so that every execution of this instruction
+      // calls out to InterpreterRuntime::resolve_get_put to do
+      // additional, required work.
+      assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
+      assert(load_bc_into_bc_reg, "we use bc_reg as temp");
+      __ get_cache_and_index_and_bytecode_at_bcp(bc_reg, temp_reg, temp_reg, byte_no, 1);
+      __ set(bc, bc_reg);
+      __ cmp_and_br_short(temp_reg, 0, Assembler::equal, Assembler::pn, L_patch_done);  // don't patch
+    }
+    break;
+  default:
+    assert(byte_no == -1, "sanity");
+    if (load_bc_into_bc_reg) {
+      __ set(bc, bc_reg);
+    }
   }
+
+  if (JvmtiExport::can_post_breakpoint()) {
+    Label L_fast_patch;
+    __ ldub(at_bcp(0), temp_reg);
+    __ cmp_and_br_short(temp_reg, Bytecodes::_breakpoint, Assembler::notEqual, Assembler::pt, L_fast_patch);
+    // perform the quickening, slowly, in the bowels of the breakpoint table
+    __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::set_original_bytecode_at), Lmethod, Lbcp, bc_reg);
+    __ ba_short(L_patch_done);
+    __ bind(L_fast_patch);
+  }
+
 #ifdef ASSERT
   Bytecodes::Code orig_bytecode =  Bytecodes::java_code(bc);
-  Label okay;
-  __ ldub(at_bcp(0), Rscratch);
-  __ cmp(Rscratch, orig_bytecode);
-  __ br(Assembler::equal, false, Assembler::pt, okay);
-  __ delayed() ->cmp(Rscratch, Rbyte_code);
-  __ br(Assembler::equal, false, Assembler::pt, okay);
+  Label L_okay;
+  __ ldub(at_bcp(0), temp_reg);
+  __ cmp(temp_reg, orig_bytecode);
+  __ br(Assembler::equal, false, Assembler::pt, L_okay);
+  __ delayed()->cmp(temp_reg, bc_reg);
+  __ br(Assembler::equal, false, Assembler::pt, L_okay);
   __ delayed()->nop();
-  __ stop("Rewriting wrong bytecode location");
-  __ bind(okay);
+  __ stop("patching the wrong bytecode");
+  __ bind(L_okay);
 #endif
-  __ stb(Rbyte_code, at_bcp(0));
-  __ bind(patch_done);
+
+  // patch bytecode
+  __ stb(bc_reg, at_bcp(0));
+  __ bind(L_patch_done);
 }
 
 //----------------------------------------------------------------------------------------------------
@@ -281,17 +310,14 @@
   // get type from tags
   __ add(O2, tags_offset, O2);
   __ ldub(O2, O1, O2);
-  __ cmp(O2, JVM_CONSTANT_UnresolvedString);    // unresolved string? If so, must resolve
-  __ brx(Assembler::equal, true, Assembler::pt, call_ldc);
-  __ delayed()->nop();
+  // unresolved string? If so, must resolve
+  __ cmp_and_brx_short(O2, JVM_CONSTANT_UnresolvedString, Assembler::equal, Assembler::pt, call_ldc);
 
-  __ cmp(O2, JVM_CONSTANT_UnresolvedClass);     // unresolved class? If so, must resolve
-  __ brx(Assembler::equal, true, Assembler::pt, call_ldc);
-  __ delayed()->nop();
+  // unresolved class? If so, must resolve
+  __ cmp_and_brx_short(O2, JVM_CONSTANT_UnresolvedClass, Assembler::equal, Assembler::pt, call_ldc);
 
-  __ cmp(O2, JVM_CONSTANT_UnresolvedClassInError);     // unresolved class in error state
-  __ brx(Assembler::equal, true, Assembler::pn, call_ldc);
-  __ delayed()->nop();
+  // unresolved class in error state
+  __ cmp_and_brx_short(O2, JVM_CONSTANT_UnresolvedClassInError, Assembler::equal, Assembler::pn, call_ldc);
 
   __ cmp(O2, JVM_CONSTANT_Class);      // need to call vm to get java mirror of the class
   __ brx(Assembler::notEqual, true, Assembler::pt, notClass);
@@ -301,8 +327,7 @@
   __ set(wide, O1);
   call_VM(Otos_i, CAST_FROM_FN_PTR(address, InterpreterRuntime::ldc), O1);
   __ push(atos);
-  __ ba(false, exit);
-  __ delayed()->nop();
+  __ ba_short(exit);
 
   __ bind(notClass);
  // __ add(O0, base_offset, O0);
@@ -312,8 +337,7 @@
   __ delayed()->cmp(O2, JVM_CONSTANT_String);
   __ ld(O0, O1, Otos_i);
   __ push(itos);
-  __ ba(false, exit);
-  __ delayed()->nop();
+  __ ba_short(exit);
 
   __ bind(notInt);
  // __ cmp(O2, JVM_CONSTANT_String);
@@ -325,8 +349,7 @@
   __ ld_ptr(O0, O1, Otos_i);
   __ verify_oop(Otos_i);
   __ push(atos);
-  __ ba(false, exit);
-  __ delayed()->nop();
+  __ ba_short(exit);
 
   __ bind(notString);
  // __ ldf(FloatRegisterImpl::S, O0, O1, Ftos_f);
@@ -365,9 +388,7 @@
   __ load_klass(Otos_i, Rcon_klass);
   AddressLiteral array_klass_addr((address)Universe::systemObjArrayKlassObj_addr());
   __ load_contents(array_klass_addr, Rarray_klass);
-  __ cmp(Rarray_klass, Rcon_klass);
-  __ brx(Assembler::notEqual, false, Assembler::pt, L_done);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(Rarray_klass, Rcon_klass, Assembler::notEqual, Assembler::pt, L_done);
   __ ld(Address(Otos_i, arrayOopDesc::length_offset_in_bytes()), Rcon_klass);
   __ tst(Rcon_klass);
   __ brx(Assembler::zero, true, Assembler::pt, L_done);
@@ -397,9 +418,7 @@
   __ sll(O1, LogBytesPerWord, O1);
   __ add(O0, O1, G3_scratch);
 
-  __ cmp(O2, JVM_CONSTANT_Double);
-  __ brx(Assembler::notEqual, false, Assembler::pt, Long);
-  __ delayed()->nop();
+  __ cmp_and_brx_short(O2, JVM_CONSTANT_Double, Assembler::notEqual, Assembler::pt, Long);
   // A double can be placed at word-aligned locations in the constant pool.
   // Check out Conversions.java for an example.
   // Also constantPoolOopDesc::header_size() is 20, which makes it very difficult
@@ -413,8 +432,7 @@
          f->successor());
 #endif
   __ push(dtos);
-  __ ba(false, exit);
-  __ delayed()->nop();
+  __ ba_short(exit);
 
   __ bind(Long);
 #ifdef _LP64
@@ -453,9 +471,7 @@
     // last two iloads in a pair.  Comparing against fast_iload means that
     // the next bytecode is neither an iload or a caload, and therefore
     // an iload pair.
-    __ cmp(G3_scratch, (int)Bytecodes::_iload);
-    __ br(Assembler::equal, false, Assembler::pn, done);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, (int)Bytecodes::_iload, Assembler::equal, Assembler::pn, done);
 
     __ cmp(G3_scratch, (int)Bytecodes::_fast_iload);
     __ br(Assembler::equal, false, Assembler::pn, rewrite);
@@ -697,9 +713,7 @@
     aload(0);
 
     // if _getfield then wait with rewrite
-    __ cmp(G3_scratch, (int)Bytecodes::_getfield);
-    __ br(Assembler::equal, false, Assembler::pn, done);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G3_scratch, (int)Bytecodes::_getfield, Assembler::equal, Assembler::pn, done);
 
     // if _igetfield then rewrite to _fast_iaccess_0
     assert(Bytecodes::java_code(Bytecodes::_fast_iaccess_0) == Bytecodes::_aload_0, "adjust fast bytecode def");
@@ -867,8 +881,7 @@
   __ index_check_without_pop(O3, O2, UseCompressedOops ? 2 : LogBytesPerWord, G3_scratch, O1);
 
   // do array store check - check for NULL value first
-  __ br_null( Otos_i, false, Assembler::pn, is_null );
-  __ delayed()->nop();
+  __ br_null_short( Otos_i, Assembler::pn, is_null );
 
   __ load_klass(O3, O4); // get array klass
   __ load_klass(Otos_i, O5); // get value klass
@@ -899,7 +912,7 @@
   __ bind(store_ok);
   do_oop_store(_masm, O1, noreg, arrayOopDesc::base_offset_in_bytes(T_OBJECT), Otos_i, G3_scratch, _bs->kind(), true);
 
-  __ ba(false,done);
+  __ ba(done);
   __ delayed()->inc(Lesp, 3* Interpreter::stackElementSize); // adj sp (pops array, index and value)
 
   __ bind(is_null);
@@ -1633,16 +1646,14 @@
       if (ProfileInterpreter) {
         // If no method data exists, go to profile_continue.
         __ ld_ptr(Lmethod, methodOopDesc::method_data_offset(), G4_scratch);
-        __ br_null(G4_scratch, false, Assembler::pn, Lno_mdo);
-        __ delayed()->nop();
+        __ br_null_short(G4_scratch, Assembler::pn, Lno_mdo);
 
         // Increment backedge counter in the MDO
         Address mdo_backedge_counter(G4_scratch, in_bytes(methodDataOopDesc::backedge_counter_offset()) +
                                                  in_bytes(InvocationCounter::counter_offset()));
         __ increment_mask_and_jump(mdo_backedge_counter, increment, mask, G3_scratch, Lscratch,
                                    Assembler::notZero, &Lforward);
-        __ ba(false, Loverflow);
-        __ delayed()->nop();
+        __ ba_short(Loverflow);
       }
 
       // If there's no MDO, increment counter in methodOop
@@ -1658,14 +1669,11 @@
 
       // Was an OSR adapter generated?
       // O0 = osr nmethod
-      __ br_null(O0, false, Assembler::pn, Lforward);
-      __ delayed()->nop();
+      __ br_null_short(O0, Assembler::pn, Lforward);
 
       // Has the nmethod been invalidated already?
       __ ld(O0, nmethod::entry_bci_offset(), O2);
-      __ cmp(O2, InvalidOSREntryBci);
-      __ br(Assembler::equal, false, Assembler::pn, Lforward);
-      __ delayed()->nop();
+      __ cmp_and_br_short(O2, InvalidOSREntryBci, Assembler::equal, Assembler::pn, Lforward);
 
       // migrate the interpreter frame off of the stack
 
@@ -1830,7 +1838,7 @@
   __ profile_switch_case(O2, O3, G3_scratch, G4_scratch);
   __ sll(O2, LogBytesPerInt, O2);
   __ add(O2, 3 * BytesPerInt, O2);
-  __ ba(false, continue_execution);
+  __ ba(continue_execution);
   __ delayed()->ld(O1, O2, O2);
   // handle default
   __ bind(default_case);
@@ -1858,7 +1866,7 @@
   __ ld(O1, BytesPerInt, O2);
   __ sll(O2, LogBytesPerInt + 1, O2); // in word-pairs
   __ add(O1, 2 * BytesPerInt, O3); // set first pair addr
-  __ ba(false, loop_entry);
+  __ ba(loop_entry);
   __ delayed()->add(O3, O2, O2); // counter now points past last pair
 
   // table search
@@ -1877,8 +1885,7 @@
   __ ld(O1, 0, O4); // get default offset
   if (ProfileInterpreter) {
     __ profile_switch_default(O3);
-    __ ba(false, continue_execution);
-    __ delayed()->nop();
+    __ ba_short(continue_execution);
   }
 
   // entry found -> get offset
@@ -1944,7 +1951,7 @@
 
   // and start
   Label entry;
-  __ ba(false, entry);
+  __ ba(entry);
   __ delayed()->ld( Rarray, -BytesPerInt, Rj);
   // (Rj is already in the native byte-ordering.)
 
@@ -2002,8 +2009,7 @@
   // (Rj is already in the native byte-ordering.)
 
   if (ProfileInterpreter) {
-    __ ba(false, continue_execution);
-    __ delayed()->nop();
+    __ ba_short(continue_execution);
   }
 
   __ bind(default_case); // fall through (if not profiling)
@@ -2087,12 +2093,12 @@
   // Depends on cpCacheOop layout!
   Label resolved;
 
-  __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
   if (byte_no == f1_oop) {
     // We are resolved if the f1 field contains a non-null object (CallSite, etc.)
     // This kind of CP cache entry does not need to match the flags byte, because
     // there is a 1-1 relation between bytecode type and CP entry type.
     assert_different_registers(result, Rcache);
+    __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
     __ ld_ptr(Rcache, constantPoolCacheOopDesc::base_offset() +
               ConstantPoolCacheEntry::f1_offset(), result);
     __ tst(result);
@@ -2101,15 +2107,9 @@
   } else {
     assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
     assert(result == noreg, "");  //else change code for setting result
-    const int shift_count = (1 + byte_no)*BitsPerByte;
-
-    __ ld_ptr(Rcache, constantPoolCacheOopDesc::base_offset() +
-              ConstantPoolCacheEntry::indices_offset(), Lbyte_code);
-
-    __ srl(  Lbyte_code, shift_count, Lbyte_code );
-    __ and3( Lbyte_code,        0xFF, Lbyte_code );
-    __ cmp(  Lbyte_code, (int)bytecode());
-    __ br(   Assembler::equal, false, Assembler::pt, resolved);
+    __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, Lbyte_code, byte_no, 1, index_size);
+    __ cmp(Lbyte_code, (int) bytecode());  // have we resolved this bytecode?
+    __ br(Assembler::equal, false, Assembler::pt, resolved);
     __ delayed()->set((int)bytecode(), O1);
   }
 
@@ -2216,9 +2216,7 @@
     assert_different_registers(Rcache, index, G1_scratch);
     AddressLiteral get_field_access_count_addr(JvmtiExport::get_field_access_count_addr());
     __ load_contents(get_field_access_count_addr, G1_scratch);
-    __ tst(G1_scratch);
-    __ br(Assembler::zero, false, Assembler::pt, Label1);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G1_scratch, 0, Assembler::equal, Assembler::pt, Label1);
 
     __ add(Rcache, in_bytes(cp_base_offset), Rcache);
 
@@ -2298,7 +2296,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_agetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notObj);
@@ -2313,7 +2311,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_igetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notInt);
@@ -2329,7 +2327,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_lgetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notLong);
@@ -2344,7 +2342,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_bgetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notByte);
@@ -2359,7 +2357,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_cgetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notChar);
@@ -2374,7 +2372,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_sgetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notShort);
@@ -2390,7 +2388,7 @@
   if (!is_static) {
     patch_bytecode(Bytecodes::_fast_fgetfield, G3_scratch, G4_scratch);
   }
-  __ ba(false, checkVolatile);
+  __ ba(checkVolatile);
   __ delayed()->tst(Lscratch);
 
   __ bind(notFloat);
@@ -2499,9 +2497,7 @@
     Label done;
     AddressLiteral get_field_modification_count_addr(JvmtiExport::get_field_modification_count_addr());
     __ load_contents(get_field_modification_count_addr, G4_scratch);
-    __ tst(G4_scratch);
-    __ br(Assembler::zero, false, Assembler::pt, done);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G4_scratch, 0, Assembler::equal, Assembler::pt, done);
     __ pop_ptr(G4_scratch);     // copy the object pointer from tos
     __ verify_oop(G4_scratch);
     __ push_ptr(G4_scratch);    // put the object pointer back on tos
@@ -2552,9 +2548,7 @@
     assert_different_registers(Rcache, index, G1_scratch);
     AddressLiteral get_field_modification_count_addr(JvmtiExport::get_field_modification_count_addr());
     __ load_contents(get_field_modification_count_addr, G1_scratch);
-    __ tst(G1_scratch);
-    __ br(Assembler::zero, false, Assembler::pt, Label1);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G1_scratch, 0, Assembler::zero, Assembler::pt, Label1);
 
     // The Rcache and index registers have been already set.
     // This allows to eliminate this call but the Rcache and index
@@ -2584,8 +2578,7 @@
       __ br(Assembler::equal, false, Assembler::pt, two_word);
       __ delayed()->nop();
       __ inc(G4_scratch, Interpreter::expr_offset_in_bytes(1));
-      __ br(Assembler::always, false, Assembler::pt, valsizeknown);
-      __ delayed()->nop();
+      __ ba_short(valsizeknown);
       __ bind(two_word);
 
       __ inc(G4_scratch, Interpreter::expr_offset_in_bytes(2));
@@ -2636,9 +2629,7 @@
     __ and3(Rflags, Lscratch, Lscratch);
 
     if (__ membar_has_effect(read_bits)) {
-      __ tst(Lscratch);
-      __ br(Assembler::zero, false, Assembler::pt, notVolatile);
-      __ delayed()->nop();
+      __ cmp_and_br_short(Lscratch, 0, Assembler::equal, Assembler::pt, notVolatile);
       volatile_barrier(read_bits);
       __ bind(notVolatile);
     }
@@ -2653,150 +2644,162 @@
 
   if (is_static) {
     // putstatic with object type most likely, check that first
-    __ cmp(Rflags, atos );
+    __ cmp(Rflags, atos);
     __ br(Assembler::notEqual, false, Assembler::pt, notObj);
-    __ delayed() ->cmp(Rflags, itos );
+    __ delayed()->cmp(Rflags, itos);
 
     // atos
-    __ pop_ptr();
-    __ verify_oop(Otos_i);
-
-    do_oop_store(_masm, Rclass, Roffset, 0, Otos_i, G1_scratch, _bs->kind(), false);
-
-    __ ba(false, checkVolatile);
-    __ delayed()->tst(Lscratch);
+    {
+      __ pop_ptr();
+      __ verify_oop(Otos_i);
+      do_oop_store(_masm, Rclass, Roffset, 0, Otos_i, G1_scratch, _bs->kind(), false);
+      __ ba(checkVolatile);
+      __ delayed()->tst(Lscratch);
+    }
 
     __ bind(notObj);
-
-    // cmp(Rflags, itos );
+    // cmp(Rflags, itos);
     __ br(Assembler::notEqual, false, Assembler::pt, notInt);
-    __ delayed() ->cmp(Rflags, btos );
+    __ delayed()->cmp(Rflags, btos);
 
     // itos
-    __ pop_i();
-    __ st(Otos_i, Rclass, Roffset);
-    __ ba(false, checkVolatile);
-    __ delayed()->tst(Lscratch);
+    {
+      __ pop_i();
+      __ st(Otos_i, Rclass, Roffset);
+      __ ba(checkVolatile);
+      __ delayed()->tst(Lscratch);
+    }
 
     __ bind(notInt);
-
   } else {
     // putfield with int type most likely, check that first
-    __ cmp(Rflags, itos );
+    __ cmp(Rflags, itos);
     __ br(Assembler::notEqual, false, Assembler::pt, notInt);
-    __ delayed() ->cmp(Rflags, atos );
+    __ delayed()->cmp(Rflags, atos);
 
     // itos
-    __ pop_i();
-    pop_and_check_object(Rclass);
-    __ st(Otos_i, Rclass, Roffset);
-    patch_bytecode(Bytecodes::_fast_iputfield, G3_scratch, G4_scratch);
-    __ ba(false, checkVolatile);
-    __ delayed()->tst(Lscratch);
+    {
+      __ pop_i();
+      pop_and_check_object(Rclass);
+      __ st(Otos_i, Rclass, Roffset);
+      patch_bytecode(Bytecodes::_fast_iputfield, G3_scratch, G4_scratch, true, byte_no);
+      __ ba(checkVolatile);
+      __ delayed()->tst(Lscratch);
+    }
 
     __ bind(notInt);
-    // cmp(Rflags, atos );
+    // cmp(Rflags, atos);
     __ br(Assembler::notEqual, false, Assembler::pt, notObj);
-    __ delayed() ->cmp(Rflags, btos );
+    __ delayed()->cmp(Rflags, btos);
 
     // atos
-    __ pop_ptr();
-    pop_and_check_object(Rclass);
-    __ verify_oop(Otos_i);
-
-    do_oop_store(_masm, Rclass, Roffset, 0, Otos_i, G1_scratch, _bs->kind(), false);
-
-    patch_bytecode(Bytecodes::_fast_aputfield, G3_scratch, G4_scratch);
-    __ ba(false, checkVolatile);
-    __ delayed()->tst(Lscratch);
+    {
+      __ pop_ptr();
+      pop_and_check_object(Rclass);
+      __ verify_oop(Otos_i);
+      do_oop_store(_masm, Rclass, Roffset, 0, Otos_i, G1_scratch, _bs->kind(), false);
+      patch_bytecode(Bytecodes::_fast_aputfield, G3_scratch, G4_scratch, true, byte_no);
+      __ ba(checkVolatile);
+      __ delayed()->tst(Lscratch);
+    }
 
     __ bind(notObj);
   }
 
-  // cmp(Rflags, btos );
+  // cmp(Rflags, btos);
   __ br(Assembler::notEqual, false, Assembler::pt, notByte);
-  __ delayed() ->cmp(Rflags, ltos );
+  __ delayed()->cmp(Rflags, ltos);
 
   // btos
-  __ pop_i();
-  if (!is_static) pop_and_check_object(Rclass);
-  __ stb(Otos_i, Rclass, Roffset);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_bputfield, G3_scratch, G4_scratch);
+  {
+    __ pop_i();
+    if (!is_static) pop_and_check_object(Rclass);
+    __ stb(Otos_i, Rclass, Roffset);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_bputfield, G3_scratch, G4_scratch, true, byte_no);
+    }
+    __ ba(checkVolatile);
+    __ delayed()->tst(Lscratch);
   }
-  __ ba(false, checkVolatile);
-  __ delayed()->tst(Lscratch);
 
   __ bind(notByte);
-
-  // cmp(Rflags, ltos );
+  // cmp(Rflags, ltos);
   __ br(Assembler::notEqual, false, Assembler::pt, notLong);
-  __ delayed() ->cmp(Rflags, ctos );
+  __ delayed()->cmp(Rflags, ctos);
 
   // ltos
-  __ pop_l();
-  if (!is_static) pop_and_check_object(Rclass);
-  __ st_long(Otos_l, Rclass, Roffset);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_lputfield, G3_scratch, G4_scratch);
+  {
+    __ pop_l();
+    if (!is_static) pop_and_check_object(Rclass);
+    __ st_long(Otos_l, Rclass, Roffset);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_lputfield, G3_scratch, G4_scratch, true, byte_no);
+    }
+    __ ba(checkVolatile);
+    __ delayed()->tst(Lscratch);
   }
-  __ ba(false, checkVolatile);
-  __ delayed()->tst(Lscratch);
 
   __ bind(notLong);
-
-  // cmp(Rflags, ctos );
+  // cmp(Rflags, ctos);
   __ br(Assembler::notEqual, false, Assembler::pt, notChar);
-  __ delayed() ->cmp(Rflags, stos );
+  __ delayed()->cmp(Rflags, stos);
 
   // ctos (char)
-  __ pop_i();
-  if (!is_static) pop_and_check_object(Rclass);
-  __ sth(Otos_i, Rclass, Roffset);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_cputfield, G3_scratch, G4_scratch);
+  {
+    __ pop_i();
+    if (!is_static) pop_and_check_object(Rclass);
+    __ sth(Otos_i, Rclass, Roffset);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_cputfield, G3_scratch, G4_scratch, true, byte_no);
+    }
+    __ ba(checkVolatile);
+    __ delayed()->tst(Lscratch);
   }
-  __ ba(false, checkVolatile);
-  __ delayed()->tst(Lscratch);
 
   __ bind(notChar);
-  // cmp(Rflags, stos );
+  // cmp(Rflags, stos);
   __ br(Assembler::notEqual, false, Assembler::pt, notShort);
-  __ delayed() ->cmp(Rflags, ftos );
+  __ delayed()->cmp(Rflags, ftos);
 
-  // stos (char)
-  __ pop_i();
-  if (!is_static) pop_and_check_object(Rclass);
-  __ sth(Otos_i, Rclass, Roffset);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_sputfield, G3_scratch, G4_scratch);
+  // stos (short)
+  {
+    __ pop_i();
+    if (!is_static) pop_and_check_object(Rclass);
+    __ sth(Otos_i, Rclass, Roffset);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_sputfield, G3_scratch, G4_scratch, true, byte_no);
+    }
+    __ ba(checkVolatile);
+    __ delayed()->tst(Lscratch);
   }
-  __ ba(false, checkVolatile);
-  __ delayed()->tst(Lscratch);
 
   __ bind(notShort);
-  // cmp(Rflags, ftos );
+  // cmp(Rflags, ftos);
   __ br(Assembler::notZero, false, Assembler::pt, notFloat);
   __ delayed()->nop();
 
   // ftos
-  __ pop_f();
-  if (!is_static) pop_and_check_object(Rclass);
-  __ stf(FloatRegisterImpl::S, Ftos_f, Rclass, Roffset);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_fputfield, G3_scratch, G4_scratch);
+  {
+    __ pop_f();
+    if (!is_static) pop_and_check_object(Rclass);
+    __ stf(FloatRegisterImpl::S, Ftos_f, Rclass, Roffset);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_fputfield, G3_scratch, G4_scratch, true, byte_no);
+    }
+    __ ba(checkVolatile);
+    __ delayed()->tst(Lscratch);
   }
-  __ ba(false, checkVolatile);
-  __ delayed()->tst(Lscratch);
 
   __ bind(notFloat);
 
   // dtos
-  __ pop_d();
-  if (!is_static) pop_and_check_object(Rclass);
-  __ stf(FloatRegisterImpl::D, Ftos_d, Rclass, Roffset);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_dputfield, G3_scratch, G4_scratch);
+  {
+    __ pop_d();
+    if (!is_static) pop_and_check_object(Rclass);
+    __ stf(FloatRegisterImpl::D, Ftos_d, Rclass, Roffset);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_dputfield, G3_scratch, G4_scratch, true, byte_no);
+    }
   }
 
   __ bind(checkVolatile);
@@ -2833,9 +2836,7 @@
     __ set((1 << ConstantPoolCacheEntry::volatileField), Lscratch);
     __ and3(Rflags, Lscratch, Lscratch);
     if (__ membar_has_effect(read_bits)) {
-      __ tst(Lscratch);
-      __ br(Assembler::zero, false, Assembler::pt, notVolatile);
-      __ delayed()->nop();
+      __ cmp_and_br_short(Lscratch, 0, Assembler::equal, Assembler::pt, notVolatile);
       volatile_barrier(read_bits);
       __ bind(notVolatile);
     }
@@ -2864,9 +2865,7 @@
   }
 
   if (__ membar_has_effect(write_bits)) {
-    __ tst(Lscratch);
-    __ br(Assembler::zero, false, Assembler::pt, exit);
-    __ delayed()->nop();
+    __ cmp_and_br_short(Lscratch, 0, Assembler::equal, Assembler::pt, exit);
     volatile_barrier(Assembler::StoreLoad);
     __ bind(exit);
   }
@@ -3226,8 +3225,7 @@
     // the VM should throw IncompatibleClassChangeError.  linkResolver checks
     // this too but that's only if the entry isn't already resolved, so we
     // need to check again.
-    __ br_notnull( Rtemp, false, Assembler::pt, ok);
-    __ delayed()->nop();
+    __ br_notnull_short( Rtemp, Assembler::pt, ok);
     call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_IncompatibleClassChangeError));
     __ should_not_reach_here();
     __ bind(ok);
@@ -3251,9 +3249,7 @@
   // Check for abstract method error.
   {
     Label ok;
-    __ tst(G5_method);
-    __ brx(Assembler::notZero, false, Assembler::pt, ok);
-    __ delayed()->nop();
+    __ br_notnull_short(G5_method, Assembler::pt, ok);
     call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_AbstractMethodError));
     __ should_not_reach_here();
     __ bind(ok);
@@ -3408,17 +3404,14 @@
 #else
       __ srl(RfreeValue, LogHeapWordSize, RfreeValue);
 #endif
-      __ cmp(RtlabWasteLimitValue, RfreeValue);
-      __ brx(Assembler::greaterEqualUnsigned, false, Assembler::pt, slow_case); // tlab waste is small
-      __ delayed()->nop();
+      __ cmp_and_brx_short(RtlabWasteLimitValue, RfreeValue, Assembler::greaterEqualUnsigned, Assembler::pt, slow_case); // tlab waste is small
 
       // increment waste limit to prevent getting stuck on this slow path
       __ add(RtlabWasteLimitValue, ThreadLocalAllocBuffer::refill_waste_limit_increment(), RtlabWasteLimitValue);
       __ st_ptr(RtlabWasteLimitValue, G2_thread, in_bytes(JavaThread::tlab_refill_waste_limit_offset()));
     } else {
       // No allocation in the shared eden.
-      __ br(Assembler::always, false, Assembler::pt, slow_case);
-      __ delayed()->nop();
+      __ ba_short(slow_case);
     }
   }
 
@@ -3440,18 +3433,14 @@
 
     // RnewTopValue contains the top address after the new object
     // has been allocated.
-    __ cmp(RnewTopValue, RendValue);
-    __ brx(Assembler::greaterUnsigned, false, Assembler::pn, slow_case);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(RnewTopValue, RendValue, Assembler::greaterUnsigned, Assembler::pn, slow_case);
 
     __ casx_under_lock(RtopAddr, RoldTopValue, RnewTopValue,
       VM_Version::v9_instructions_work() ? NULL :
       (address)StubRoutines::Sparc::atomic_memory_operation_lock_addr());
 
     // if someone beat us on the allocation, try again, otherwise continue
-    __ cmp(RoldTopValue, RnewTopValue);
-    __ brx(Assembler::notEqual, false, Assembler::pn, retry);
-    __ delayed()->nop();
+    __ cmp_and_brx_short(RoldTopValue, RnewTopValue, Assembler::notEqual, Assembler::pn, retry);
 
     // bump total bytes allocated by this thread
     // RoldTopValue and RtopAddr are dead, so can use G1 and G3
@@ -3474,8 +3463,7 @@
       __ br(Assembler::notEqual, false, Assembler::pt, loop);
       __ delayed()->subcc(Roffset, wordSize, Roffset);
     }
-    __ br(Assembler::always, false, Assembler::pt, initialize_header);
-    __ delayed()->nop();
+    __ ba_short(initialize_header);
   }
 
   // slow case
@@ -3485,8 +3473,7 @@
 
   call_VM(Otos_i, CAST_FROM_FN_PTR(address, InterpreterRuntime::_new), O1, O2);
 
-  __ ba(false, done);
-  __ delayed()->nop();
+  __ ba_short(done);
 
   // Initialize the header: mark, klass
   __ bind(initialize_header);
@@ -3550,8 +3537,7 @@
   Register RspecifiedKlass = O4;
 
   // Check for casting a NULL
-  __ br_null(Otos_i, false, Assembler::pn, is_null);
-  __ delayed()->nop();
+  __ br_null_short(Otos_i, Assembler::pn, is_null);
 
   // Get value klass in RobjKlass
   __ load_klass(Otos_i, RobjKlass); // get value klass
@@ -3571,8 +3557,7 @@
   call_VM(RspecifiedKlass, CAST_FROM_FN_PTR(address, InterpreterRuntime::quicken_io_cc) );
   __ pop_ptr(Otos_i, G3_scratch); // restore receiver
 
-  __ br(Assembler::always, false, Assembler::pt, resolved);
-  __ delayed()->nop();
+  __ ba_short(resolved);
 
   // Extract target class from constant pool
   __ bind(quicked);
@@ -3591,8 +3576,7 @@
   __ bind(cast_ok);
 
   if (ProfileInterpreter) {
-    __ ba(false, done);
-    __ delayed()->nop();
+    __ ba_short(done);
   }
   __ bind(is_null);
   __ profile_null_seen(G3_scratch);
@@ -3608,8 +3592,7 @@
   Register RspecifiedKlass = O4;
 
   // Check for casting a NULL
-  __ br_null(Otos_i, false, Assembler::pt, is_null);
-  __ delayed()->nop();
+  __ br_null_short(Otos_i, Assembler::pt, is_null);
 
   // Get value klass in RobjKlass
   __ load_klass(Otos_i, RobjKlass); // get value klass
@@ -3629,9 +3612,7 @@
   call_VM(RspecifiedKlass, CAST_FROM_FN_PTR(address, InterpreterRuntime::quicken_io_cc) );
   __ pop_ptr(Otos_i, G3_scratch); // restore receiver
 
-  __ br(Assembler::always, false, Assembler::pt, resolved);
-  __ delayed()->nop();
-
+  __ ba_short(resolved);
 
   // Extract target class from constant pool
   __ bind(quicked);
@@ -3649,8 +3630,7 @@
   __ clr( Otos_i );
 
   if (ProfileInterpreter) {
-    __ ba(false, done);
-    __ delayed()->nop();
+    __ ba_short(done);
   }
   __ bind(is_null);
   __ profile_null_seen(G3_scratch);
@@ -3724,7 +3704,7 @@
   {
     Label entry, loop, exit;
     __ add( __ top_most_monitor(), O2 ); // last one to check
-    __ ba( false, entry );
+    __ ba( entry );
     __ delayed()->mov( Lmonitors, O3 ); // first one to check
 
 
@@ -3757,8 +3737,7 @@
   { Label allocated;
 
     // found free slot?
-    __ br_notnull(O1, false, Assembler::pn, allocated);
-    __ delayed()->nop();
+    __ br_notnull_short(O1, Assembler::pn, allocated);
 
     __ add_monitor_to_stack( false, O2, O3 );
     __ mov(Lmonitors, O1);
@@ -3791,7 +3770,7 @@
 
   { Label entry, loop, found;
     __ add( __ top_most_monitor(), O2 ); // last one to check
-    __ ba(false, entry );
+    __ ba(entry);
     // use Lscratch to hold monitor elem to check, start with most recent monitor,
     // By using a local it survives the call to the C routine.
     __ delayed()->mov( Lmonitors, Lscratch );
diff --git a/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp b/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp
index c45ccaa..6f9ca4e 100644
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp
@@ -44,24 +44,40 @@
   PrefetchScanIntervalInBytes = prefetch_scan_interval_in_bytes();
   PrefetchFieldsAhead         = prefetch_fields_ahead();
 
+  assert(0 <= AllocatePrefetchInstr && AllocatePrefetchInstr <= 1, "invalid value");
+  if( AllocatePrefetchInstr < 0 ) AllocatePrefetchInstr = 0;
+  if( AllocatePrefetchInstr > 1 ) AllocatePrefetchInstr = 0;
+
   // Allocation prefetch settings
-  intx cache_line_size = L1_data_cache_line_size();
+  intx cache_line_size = prefetch_data_size();
   if( cache_line_size > AllocatePrefetchStepSize )
     AllocatePrefetchStepSize = cache_line_size;
-  if( FLAG_IS_DEFAULT(AllocatePrefetchLines) )
-    AllocatePrefetchLines = 3; // Optimistic value
-  assert( AllocatePrefetchLines > 0, "invalid value");
-  if( AllocatePrefetchLines < 1 ) // set valid value in product VM
-    AllocatePrefetchLines = 1; // Conservative value
+
+  assert(AllocatePrefetchLines > 0, "invalid value");
+  if( AllocatePrefetchLines < 1 )     // set valid value in product VM
+    AllocatePrefetchLines = 3;
+  assert(AllocateInstancePrefetchLines > 0, "invalid value");
+  if( AllocateInstancePrefetchLines < 1 ) // set valid value in product VM
+    AllocateInstancePrefetchLines = 1;
 
   AllocatePrefetchDistance = allocate_prefetch_distance();
   AllocatePrefetchStyle    = allocate_prefetch_style();
 
-  assert(AllocatePrefetchDistance % AllocatePrefetchStepSize == 0, "invalid value");
+  assert((AllocatePrefetchDistance % AllocatePrefetchStepSize) == 0 &&
+         (AllocatePrefetchDistance > 0), "invalid value");
+  if ((AllocatePrefetchDistance % AllocatePrefetchStepSize) != 0 ||
+      (AllocatePrefetchDistance <= 0)) {
+    AllocatePrefetchDistance = AllocatePrefetchStepSize;
+  }
+
+  if (AllocatePrefetchStyle == 3 && !has_blk_init()) {
+    warning("BIS instructions are not available on this CPU");
+    FLAG_SET_DEFAULT(AllocatePrefetchStyle, 1);
+  }
 
   UseSSE = 0; // Only on x86 and x64
 
-  _supports_cx8               = has_v9();
+  _supports_cx8 = has_v9();
 
   if (is_niagara()) {
     // Indirect branch is the same cost as direct
@@ -94,19 +110,42 @@
       FLAG_SET_DEFAULT(InteriorEntryAlignment, 4);
     }
     if (is_niagara_plus()) {
-      if (has_blk_init() && AllocatePrefetchStyle > 0 &&
-          FLAG_IS_DEFAULT(AllocatePrefetchStyle)) {
-        // Use BIS instruction for allocation prefetch.
-        FLAG_SET_DEFAULT(AllocatePrefetchStyle, 3);
+      if (has_blk_init() && UseTLAB &&
+          FLAG_IS_DEFAULT(AllocatePrefetchInstr)) {
+        // Use BIS instruction for TLAB allocation prefetch.
+        FLAG_SET_ERGO(intx, AllocatePrefetchInstr, 1);
+        if (FLAG_IS_DEFAULT(AllocatePrefetchStyle)) {
+          FLAG_SET_ERGO(intx, AllocatePrefetchStyle, 3);
+        }
         if (FLAG_IS_DEFAULT(AllocatePrefetchDistance)) {
-          // Use smaller prefetch distance on N2 with BIS
+          // Use smaller prefetch distance with BIS
           FLAG_SET_DEFAULT(AllocatePrefetchDistance, 64);
         }
       }
+      if (is_T4()) {
+        // Double number of prefetched cache lines on T4
+        // since L2 cache line size is smaller (32 bytes).
+        if (FLAG_IS_DEFAULT(AllocatePrefetchLines)) {
+          FLAG_SET_ERGO(intx, AllocatePrefetchLines, AllocatePrefetchLines*2);
+        }
+        if (FLAG_IS_DEFAULT(AllocateInstancePrefetchLines)) {
+          FLAG_SET_ERGO(intx, AllocateInstancePrefetchLines, AllocateInstancePrefetchLines*2);
+        }
+      }
       if (AllocatePrefetchStyle != 3 && FLAG_IS_DEFAULT(AllocatePrefetchDistance)) {
         // Use different prefetch distance without BIS
         FLAG_SET_DEFAULT(AllocatePrefetchDistance, 256);
       }
+      if (AllocatePrefetchInstr == 1) {
+        // Need a space at the end of TLAB for BIS since it
+        // will fault when accessing memory outside of heap.
+
+        // +1 for rounding up to next cache line, +1 to be safe
+        int lines = AllocatePrefetchLines + 2;
+        int step_size = AllocatePrefetchStepSize;
+        int distance = AllocatePrefetchDistance;
+        _reserve_for_allocation_prefetch = (distance + step_size*lines)/(int)HeapWordSize;
+      }
     }
 #endif
   }
@@ -116,27 +155,49 @@
     if (FLAG_IS_DEFAULT(UsePopCountInstruction)) {
       FLAG_SET_DEFAULT(UsePopCountInstruction, true);
     }
+  } else if (UsePopCountInstruction) {
+    warning("POPC instruction is not available on this CPU");
+    FLAG_SET_DEFAULT(UsePopCountInstruction, false);
+  }
+
+  // T4 and newer Sparc cpus have new compare and branch instruction.
+  if (has_cbcond()) {
+    if (FLAG_IS_DEFAULT(UseCBCond)) {
+      FLAG_SET_DEFAULT(UseCBCond, true);
+    }
+  } else if (UseCBCond) {
+    warning("CBCOND instruction is not available on this CPU");
+    FLAG_SET_DEFAULT(UseCBCond, false);
   }
 
 #ifdef COMPILER2
+  // T4 and newer Sparc cpus have fast RDPC.
+  if (has_fast_rdpc() && FLAG_IS_DEFAULT(UseRDPCForConstantTableBase)) {
+//    FLAG_SET_DEFAULT(UseRDPCForConstantTableBase, true);
+  }
+
   // Currently not supported anywhere.
   FLAG_SET_DEFAULT(UseFPUForSpilling, false);
+
+  assert((InteriorEntryAlignment % relocInfo::addr_unit()) == 0, "alignment is not a multiple of NOP size");
 #endif
 
+  assert((CodeEntryAlignment % relocInfo::addr_unit()) == 0, "alignment is not a multiple of NOP size");
+  assert((OptoLoopAlignment % relocInfo::addr_unit()) == 0, "alignment is not a multiple of NOP size");
+
   char buf[512];
-  jio_snprintf(buf, sizeof(buf), "%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
-               (has_v8() ? ", has_v8" : ""),
-               (has_v9() ? ", has_v9" : ""),
+  jio_snprintf(buf, sizeof(buf), "%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
+               (has_v9() ? ", v9" : (has_v8() ? ", v8" : "")),
                (has_hardware_popc() ? ", popc" : ""),
-               (has_vis1() ? ", has_vis1" : ""),
-               (has_vis2() ? ", has_vis2" : ""),
-               (has_vis3() ? ", has_vis3" : ""),
-               (has_blk_init() ? ", has_blk_init" : ""),
-               (is_ultra3() ? ", is_ultra3" : ""),
-               (is_sun4v() ? ", is_sun4v" : ""),
-               (is_niagara() ? ", is_niagara" : ""),
-               (is_niagara_plus() ? ", is_niagara_plus" : ""),
-               (is_sparc64() ? ", is_sparc64" : ""),
+               (has_vis1() ? ", vis1" : ""),
+               (has_vis2() ? ", vis2" : ""),
+               (has_vis3() ? ", vis3" : ""),
+               (has_blk_init() ? ", blk_init" : ""),
+               (has_cbcond() ? ", cbcond" : ""),
+               (is_ultra3() ? ", ultra3" : ""),
+               (is_sun4v() ? ", sun4v" : ""),
+               (is_niagara_plus() ? ", niagara_plus" : (is_niagara() ? ", niagara" : "")),
+               (is_sparc64() ? ", sparc64" : ""),
                (!has_hardware_mul32() ? ", no-mul32" : ""),
                (!has_hardware_div32() ? ", no-div32" : ""),
                (!has_hardware_fsmuld() ? ", no-fsmuld" : ""));
@@ -158,14 +219,20 @@
 
 #ifndef PRODUCT
   if (PrintMiscellaneous && Verbose) {
-    tty->print("Allocation: ");
+    tty->print("Allocation");
     if (AllocatePrefetchStyle <= 0) {
-      tty->print_cr("no prefetching");
+      tty->print_cr(": no prefetching");
     } else {
+      tty->print(" prefetching: ");
+      if (AllocatePrefetchInstr == 0) {
+          tty->print("PREFETCH");
+      } else if (AllocatePrefetchInstr == 1) {
+          tty->print("BIS");
+      }
       if (AllocatePrefetchLines > 1) {
-        tty->print_cr("PREFETCH %d, %d lines of size %d bytes", AllocatePrefetchDistance, AllocatePrefetchLines, AllocatePrefetchStepSize);
+        tty->print_cr(" at distance %d, %d lines of %d bytes", AllocatePrefetchDistance, AllocatePrefetchLines, AllocatePrefetchStepSize);
       } else {
-        tty->print_cr("PREFETCH %d, one line", AllocatePrefetchDistance);
+        tty->print_cr(" at distance %d, one line of %d bytes", AllocatePrefetchDistance, AllocatePrefetchStepSize);
       }
     }
     if (PrefetchCopyIntervalInBytes > 0) {
diff --git a/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp b/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp
index c83d2de..9c9b8fc 100644
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp
@@ -31,44 +31,46 @@
 class VM_Version: public Abstract_VM_Version {
 protected:
   enum Feature_Flag {
-    v8_instructions    = 0,
-    hardware_mul32     = 1,
-    hardware_div32     = 2,
-    hardware_fsmuld    = 3,
-    hardware_popc      = 4,
-    v9_instructions    = 5,
-    vis1_instructions  = 6,
-    vis2_instructions  = 7,
-    sun4v_instructions = 8,
+    v8_instructions      = 0,
+    hardware_mul32       = 1,
+    hardware_div32       = 2,
+    hardware_fsmuld      = 3,
+    hardware_popc        = 4,
+    v9_instructions      = 5,
+    vis1_instructions    = 6,
+    vis2_instructions    = 7,
+    sun4v_instructions   = 8,
     blk_init_instructions = 9,
-    fmaf_instructions  = 10,
-    fmau_instructions  = 11,
-    vis3_instructions  = 12,
-    sparc64_family     = 13,
-    T_family           = 14,
-    T1_model           = 15
+    fmaf_instructions    = 10,
+    fmau_instructions    = 11,
+    vis3_instructions    = 12,
+    sparc64_family       = 13,
+    T_family             = 14,
+    T1_model             = 15,
+    cbcond_instructions  = 16
   };
 
   enum Feature_Flag_Set {
     unknown_m           = 0,
     all_features_m      = -1,
 
-    v8_instructions_m   = 1 << v8_instructions,
-    hardware_mul32_m    = 1 << hardware_mul32,
-    hardware_div32_m    = 1 << hardware_div32,
-    hardware_fsmuld_m   = 1 << hardware_fsmuld,
-    hardware_popc_m     = 1 << hardware_popc,
-    v9_instructions_m   = 1 << v9_instructions,
-    vis1_instructions_m = 1 << vis1_instructions,
-    vis2_instructions_m = 1 << vis2_instructions,
-    sun4v_m             = 1 << sun4v_instructions,
+    v8_instructions_m       = 1 << v8_instructions,
+    hardware_mul32_m        = 1 << hardware_mul32,
+    hardware_div32_m        = 1 << hardware_div32,
+    hardware_fsmuld_m       = 1 << hardware_fsmuld,
+    hardware_popc_m         = 1 << hardware_popc,
+    v9_instructions_m       = 1 << v9_instructions,
+    vis1_instructions_m     = 1 << vis1_instructions,
+    vis2_instructions_m     = 1 << vis2_instructions,
+    sun4v_m                 = 1 << sun4v_instructions,
     blk_init_instructions_m = 1 << blk_init_instructions,
-    fmaf_instructions_m = 1 << fmaf_instructions,
-    fmau_instructions_m = 1 << fmau_instructions,
-    vis3_instructions_m = 1 << vis3_instructions,
-    sparc64_family_m    = 1 << sparc64_family,
-    T_family_m          = 1 << T_family,
-    T1_model_m          = 1 << T1_model,
+    fmaf_instructions_m     = 1 << fmaf_instructions,
+    fmau_instructions_m     = 1 << fmau_instructions,
+    vis3_instructions_m     = 1 << vis3_instructions,
+    sparc64_family_m        = 1 << sparc64_family,
+    T_family_m              = 1 << T_family,
+    T1_model_m              = 1 << T1_model,
+    cbcond_instructions_m   = 1 << cbcond_instructions,
 
     generic_v8_m        = v8_instructions_m | hardware_mul32_m | hardware_div32_m | hardware_fsmuld_m,
     generic_v9_m        = generic_v8_m | v9_instructions_m,
@@ -111,25 +113,35 @@
   static bool has_vis2()                { return (_features & vis2_instructions_m) != 0; }
   static bool has_vis3()                { return (_features & vis3_instructions_m) != 0; }
   static bool has_blk_init()            { return (_features & blk_init_instructions_m) != 0; }
+  static bool has_cbcond()              { return (_features & cbcond_instructions_m) != 0; }
 
   static bool supports_compare_and_exchange()
                                         { return has_v9(); }
 
-  static bool is_ultra3()               { return (_features & ultra3_m) == ultra3_m; }
-  static bool is_sun4v()                { return (_features & sun4v_m) != 0; }
   // Returns true if the platform is in the niagara line (T series)
   // and newer than the niagara1.
   static bool is_niagara_plus()         { return is_T_family(_features) && !is_T1_model(_features); }
+  static bool is_T4()                   { return is_T_family(_features) && has_cbcond(); }
+
   // Fujitsu SPARC64
   static bool is_sparc64()              { return (_features & sparc64_family_m) != 0; }
 
+  static bool is_sun4v()                { return (_features & sun4v_m) != 0; }
+  static bool is_ultra3()               { return (_features & ultra3_m) == ultra3_m && !is_sun4v() && !is_sparc64(); }
+
   static bool has_fast_fxtof()          { return is_niagara() || is_sparc64() || has_v9() && !is_ultra3(); }
   static bool has_fast_idiv()           { return is_niagara_plus() || is_sparc64(); }
 
+  // T4 and newer Sparc have fast RDPC instruction.
+  static bool has_fast_rdpc()           { return is_T4(); }
+
+  // T4 and newer Sparc have Most-Recently-Used (MRU) BIS.
+  static bool has_mru_blk_init()        { return has_blk_init() && is_T4(); }
+
   static const char* cpu_features()     { return _features_str; }
 
-  static intx L1_data_cache_line_size()  {
-    return 64;  // default prefetch block size on sparc
+  static intx prefetch_data_size()  {
+    return is_T4() ? 32 : 64;  // default prefetch block size on sparc
   }
 
   // Prefetch
diff --git a/hotspot/src/cpu/sparc/vm/vtableStubs_sparc.cpp b/hotspot/src/cpu/sparc/vm/vtableStubs_sparc.cpp
index 9c04021..4e71250 100644
--- a/hotspot/src/cpu/sparc/vm/vtableStubs_sparc.cpp
+++ b/hotspot/src/cpu/sparc/vm/vtableStubs_sparc.cpp
@@ -76,9 +76,7 @@
     Label L;
     // check offset vs vtable length
     __ ld(G3_scratch, instanceKlass::vtable_length_offset()*wordSize, G5);
-    __ cmp(G5, vtable_index*vtableEntry::size());
-    __ br(Assembler::greaterUnsigned, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ cmp_and_br_short(G5, vtable_index*vtableEntry::size(), Assembler::greaterUnsigned, Assembler::pt, L);
     __ set(vtable_index, O2);
     __ call_VM(noreg, CAST_FROM_FN_PTR(address, bad_compiled_vtable_index), O0, O2);
     __ bind(L);
@@ -95,8 +93,7 @@
 #ifndef PRODUCT
   if (DebugVtables) {
     Label L;
-    __ br_notnull(G5_method, false, Assembler::pt, L);
-    __ delayed()->nop();
+    __ br_notnull_short(G5_method, Assembler::pt, L);
     __ stop("Vtable entry is ZERO");
     __ bind(L);
   }
@@ -177,8 +174,7 @@
 #ifndef PRODUCT
   if (DebugVtables) {
     Label L01;
-    __ bpr(Assembler::rc_nz, false, Assembler::pt, L5_method, L01);
-    __ delayed()->nop();
+    __ br_notnull_short(L5_method, Assembler::pt, L01);
     __ stop("methodOop is null");
     __ bind(L01);
     __ verify_oop(L5_method);
diff --git a/hotspot/src/cpu/x86/vm/assembler_x86.cpp b/hotspot/src/cpu/x86/vm/assembler_x86.cpp
index 0e21a52..a16bacf 100644
--- a/hotspot/src/cpu/x86/vm/assembler_x86.cpp
+++ b/hotspot/src/cpu/x86/vm/assembler_x86.cpp
@@ -1339,9 +1339,8 @@
   emit_operand(rax, dst);
 }
 
-void Assembler::jcc(Condition cc, Label& L, relocInfo::relocType rtype) {
+void Assembler::jcc(Condition cc, Label& L, bool maybe_short) {
   InstructionMark im(this);
-  relocate(rtype);
   assert((0 <= cc) && (cc < 16), "illegal cc");
   if (L.is_bound()) {
     address dst = target(L);
@@ -1350,7 +1349,7 @@
     const int short_size = 2;
     const int long_size = 6;
     intptr_t offs = (intptr_t)dst - (intptr_t)_code_pos;
-    if (rtype == relocInfo::none && is8bit(offs - short_size)) {
+    if (maybe_short && is8bit(offs - short_size)) {
       // 0111 tttn #8-bit disp
       emit_byte(0x70 | cc);
       emit_byte((offs - short_size) & 0xFF);
@@ -1399,7 +1398,7 @@
   emit_operand(rsp, adr);
 }
 
-void Assembler::jmp(Label& L, relocInfo::relocType rtype) {
+void Assembler::jmp(Label& L, bool maybe_short) {
   if (L.is_bound()) {
     address entry = target(L);
     assert(entry != NULL, "jmp most probably wrong");
@@ -1407,7 +1406,7 @@
     const int short_size = 2;
     const int long_size = 5;
     intptr_t offs = entry - _code_pos;
-    if (rtype == relocInfo::none && is8bit(offs - short_size)) {
+    if (maybe_short && is8bit(offs - short_size)) {
       emit_byte(0xEB);
       emit_byte((offs - short_size) & 0xFF);
     } else {
@@ -1420,7 +1419,6 @@
     // the forward jump will not run beyond 256 bytes, use jmpb to
     // force an 8-bit displacement.
     InstructionMark im(this);
-    relocate(rtype);
     L.add_patch_at(code(), locator());
     emit_byte(0xE9);
     emit_long(0);
@@ -2309,7 +2307,7 @@
 }
 
 void Assembler::prefetchnta(Address src) {
-  NOT_LP64(assert(VM_Version::supports_sse2(), "must support"));
+  NOT_LP64(assert(VM_Version::supports_sse(), "must support"));
   InstructionMark im(this);
   prefetch_prefix(src);
   emit_byte(0x18);
@@ -2317,7 +2315,7 @@
 }
 
 void Assembler::prefetchr(Address src) {
-  NOT_LP64(assert(VM_Version::supports_3dnow_prefetch(), "must support"));
+  assert(VM_Version::supports_3dnow_prefetch(), "must support");
   InstructionMark im(this);
   prefetch_prefix(src);
   emit_byte(0x0D);
@@ -2349,7 +2347,7 @@
 }
 
 void Assembler::prefetchw(Address src) {
-  NOT_LP64(assert(VM_Version::supports_3dnow_prefetch(), "must support"));
+  assert(VM_Version::supports_3dnow_prefetch(), "must support");
   InstructionMark im(this);
   prefetch_prefix(src);
   emit_byte(0x0D);
@@ -3674,7 +3672,7 @@
     } else {
       if (adr.index_needs_rex()) {
         prefix(REX_X);
-      } else if (reg->encoding() >= 4 ) {
+      } else if (byteinst && reg->encoding() >= 4 ) {
         prefix(REX);
       }
     }
diff --git a/hotspot/src/cpu/x86/vm/assembler_x86.hpp b/hotspot/src/cpu/x86/vm/assembler_x86.hpp
index f07291c..d3553e7 100644
--- a/hotspot/src/cpu/x86/vm/assembler_x86.hpp
+++ b/hotspot/src/cpu/x86/vm/assembler_x86.hpp
@@ -1065,8 +1065,7 @@
   // Note: The same Label can be used for forward and backward branches
   // but it may be bound only once.
 
-  void jcc(Condition cc, Label& L,
-           relocInfo::relocType rtype = relocInfo::none);
+  void jcc(Condition cc, Label& L, bool maybe_short = true);
 
   // Conditional jump to a 8-bit offset to L.
   // WARNING: be very careful using this for forward jumps.  If the label is
@@ -1077,7 +1076,7 @@
   void jmp(Address entry);    // pc <- entry
 
   // Label operations & relative jumps (PPUM Appendix D)
-  void jmp(Label& L, relocInfo::relocType rtype = relocInfo::none);   // unconditional jump to L
+  void jmp(Label& L, bool maybe_short = true);   // unconditional jump to L
 
   void jmp(Register entry); // pc <- entry
 
diff --git a/hotspot/src/cpu/x86/vm/interp_masm_x86_32.cpp b/hotspot/src/cpu/x86/vm/interp_masm_x86_32.cpp
index a97d913..9651470 100644
--- a/hotspot/src/cpu/x86/vm/interp_masm_x86_32.cpp
+++ b/hotspot/src/cpu/x86/vm/interp_masm_x86_32.cpp
@@ -233,7 +233,7 @@
 
 void InterpreterMacroAssembler::get_cache_and_index_at_bcp(Register cache, Register index,
                                                            int bcp_offset, size_t index_size) {
-  assert(cache != index, "must use different registers");
+  assert_different_registers(cache, index);
   get_cache_index_at_bcp(index, bcp_offset, index_size);
   movptr(cache, Address(rbp, frame::interpreter_frame_cache_offset * wordSize));
   assert(sizeof(ConstantPoolCacheEntry) == 4*wordSize, "adjust code below");
@@ -241,6 +241,20 @@
 }
 
 
+void InterpreterMacroAssembler::get_cache_and_index_and_bytecode_at_bcp(Register cache,
+                                                                        Register index,
+                                                                        Register bytecode,
+                                                                        int byte_no,
+                                                                        int bcp_offset,
+                                                                        size_t index_size) {
+  get_cache_and_index_at_bcp(cache, index, bcp_offset, index_size);
+  movptr(bytecode, Address(cache, index, Address::times_ptr, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::indices_offset()));
+  const int shift_count = (1 + byte_no) * BitsPerByte;
+  shrptr(bytecode, shift_count);
+  andptr(bytecode, 0xFF);
+}
+
+
 void InterpreterMacroAssembler::get_cache_entry_pointer_at_bcp(Register cache, Register tmp,
                                                                int bcp_offset, size_t index_size) {
   assert(cache != tmp, "must use different register");
diff --git a/hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp b/hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp
index d08f0fd..97f1da4 100644
--- a/hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp
+++ b/hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp
@@ -83,6 +83,7 @@
   }
   void get_unsigned_2_byte_index_at_bcp(Register reg, int bcp_offset);
   void get_cache_and_index_at_bcp(Register cache, Register index, int bcp_offset, size_t index_size = sizeof(u2));
+  void get_cache_and_index_and_bytecode_at_bcp(Register cache, Register index, Register bytecode, int byte_no, int bcp_offset, size_t index_size = sizeof(u2));
   void get_cache_entry_pointer_at_bcp(Register cache, Register tmp, int bcp_offset, size_t index_size = sizeof(u2));
   void get_cache_index_at_bcp(Register index, int bcp_offset, size_t index_size = sizeof(u2));
 
diff --git a/hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp b/hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp
index cee2705..3cd4355 100644
--- a/hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp
+++ b/hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp
@@ -233,7 +233,7 @@
                                                            Register index,
                                                            int bcp_offset,
                                                            size_t index_size) {
-  assert(cache != index, "must use different registers");
+  assert_different_registers(cache, index);
   get_cache_index_at_bcp(index, bcp_offset, index_size);
   movptr(cache, Address(rbp, frame::interpreter_frame_cache_offset * wordSize));
   assert(sizeof(ConstantPoolCacheEntry) == 4 * wordSize, "adjust code below");
@@ -242,6 +242,22 @@
 }
 
 
+void InterpreterMacroAssembler::get_cache_and_index_and_bytecode_at_bcp(Register cache,
+                                                                        Register index,
+                                                                        Register bytecode,
+                                                                        int byte_no,
+                                                                        int bcp_offset,
+                                                                        size_t index_size) {
+  get_cache_and_index_at_bcp(cache, index, bcp_offset, index_size);
+  // We use a 32-bit load here since the layout of 64-bit words on
+  // little-endian machines allow us that.
+  movl(bytecode, Address(cache, index, Address::times_ptr, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::indices_offset()));
+  const int shift_count = (1 + byte_no) * BitsPerByte;
+  shrl(bytecode, shift_count);
+  andl(bytecode, 0xFF);
+}
+
+
 void InterpreterMacroAssembler::get_cache_entry_pointer_at_bcp(Register cache,
                                                                Register tmp,
                                                                int bcp_offset,
diff --git a/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp b/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp
index b203abc..cb17e01 100644
--- a/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp
+++ b/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp
@@ -100,13 +100,11 @@
   }
 
   void get_unsigned_2_byte_index_at_bcp(Register reg, int bcp_offset);
-  void get_cache_and_index_at_bcp(Register cache, Register index,
-                                  int bcp_offset, size_t index_size = sizeof(u2));
-  void get_cache_entry_pointer_at_bcp(Register cache, Register tmp,
-                                      int bcp_offset, size_t index_size = sizeof(u2));
+  void get_cache_and_index_at_bcp(Register cache, Register index, int bcp_offset, size_t index_size = sizeof(u2));
+  void get_cache_and_index_and_bytecode_at_bcp(Register cache, Register index, Register bytecode, int byte_no, int bcp_offset, size_t index_size = sizeof(u2));
+  void get_cache_entry_pointer_at_bcp(Register cache, Register tmp, int bcp_offset, size_t index_size = sizeof(u2));
   void get_cache_index_at_bcp(Register index, int bcp_offset, size_t index_size = sizeof(u2));
 
-
   void pop_ptr(Register r = rax);
   void pop_i(Register r = rax);
   void pop_l(Register r = rax);
diff --git a/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp b/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp
index 30b62c9..7febe3a 100644
--- a/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp
+++ b/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp
@@ -1192,11 +1192,11 @@
       const int jobject_oop_offset = 0;
       __ movptr(rbx_method, Address(rbx_method, jobject_oop_offset));  // dereference the jobject
 
-      __ movptr(rsi, rsp);
+      __ movptr(saved_last_sp, rsp);
       __ subptr(rsp, 3 * wordSize);
       __ push(rax_pc);         // restore caller PC
 
-      __ movptr(__ argument_address(constant(2)), rarg0_code);
+      __ movl  (__ argument_address(constant(2)), rarg0_code);
       __ movptr(__ argument_address(constant(1)), rarg1_actual);
       __ movptr(__ argument_address(constant(0)), rarg2_required);
       jump_from_method_handle(_masm, rbx_method, rax);
diff --git a/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp b/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp
index 01bd472..65e65ef 100644
--- a/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp
+++ b/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp
@@ -202,45 +202,74 @@
 }
 
 
-void TemplateTable::patch_bytecode(Bytecodes::Code bytecode, Register bc,
-                                   Register scratch,
-                                   bool load_bc_into_scratch/*=true*/) {
+void TemplateTable::patch_bytecode(Bytecodes::Code bc, Register bc_reg,
+                                   Register temp_reg, bool load_bc_into_bc_reg/*=true*/,
+                                   int byte_no) {
+  if (!RewriteBytecodes)  return;
+  Label L_patch_done;
 
-  if (!RewriteBytecodes) return;
-  // the pair bytecodes have already done the load.
-  if (load_bc_into_scratch) {
-    __ movl(bc, bytecode);
+  switch (bc) {
+  case Bytecodes::_fast_aputfield:
+  case Bytecodes::_fast_bputfield:
+  case Bytecodes::_fast_cputfield:
+  case Bytecodes::_fast_dputfield:
+  case Bytecodes::_fast_fputfield:
+  case Bytecodes::_fast_iputfield:
+  case Bytecodes::_fast_lputfield:
+  case Bytecodes::_fast_sputfield:
+    {
+      // We skip bytecode quickening for putfield instructions when
+      // the put_code written to the constant pool cache is zero.
+      // This is required so that every execution of this instruction
+      // calls out to InterpreterRuntime::resolve_get_put to do
+      // additional, required work.
+      assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
+      assert(load_bc_into_bc_reg, "we use bc_reg as temp");
+      __ get_cache_and_index_and_bytecode_at_bcp(bc_reg, temp_reg, temp_reg, byte_no, 1);
+      __ movl(bc_reg, bc);
+      __ cmpl(temp_reg, (int) 0);
+      __ jcc(Assembler::zero, L_patch_done);  // don't patch
+    }
+    break;
+  default:
+    assert(byte_no == -1, "sanity");
+    // the pair bytecodes have already done the load.
+    if (load_bc_into_bc_reg) {
+      __ movl(bc_reg, bc);
+    }
   }
-  Label patch_done;
+
   if (JvmtiExport::can_post_breakpoint()) {
-    Label fast_patch;
+    Label L_fast_patch;
     // if a breakpoint is present we can't rewrite the stream directly
-    __ movzbl(scratch, at_bcp(0));
-    __ cmpl(scratch, Bytecodes::_breakpoint);
-    __ jcc(Assembler::notEqual, fast_patch);
-    __ get_method(scratch);
+    __ movzbl(temp_reg, at_bcp(0));
+    __ cmpl(temp_reg, Bytecodes::_breakpoint);
+    __ jcc(Assembler::notEqual, L_fast_patch);
+    __ get_method(temp_reg);
     // Let breakpoint table handling rewrite to quicker bytecode
-    __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::set_original_bytecode_at), scratch, rsi, bc);
+    __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::set_original_bytecode_at), temp_reg, rsi, bc_reg);
 #ifndef ASSERT
-    __ jmpb(patch_done);
+    __ jmpb(L_patch_done);
 #else
-    __ jmp(patch_done);
+    __ jmp(L_patch_done);
 #endif
-    __ bind(fast_patch);
+    __ bind(L_fast_patch);
   }
+
 #ifdef ASSERT
-  Label okay;
-  __ load_unsigned_byte(scratch, at_bcp(0));
-  __ cmpl(scratch, (int)Bytecodes::java_code(bytecode));
-  __ jccb(Assembler::equal, okay);
-  __ cmpl(scratch, bc);
-  __ jcc(Assembler::equal, okay);
+  Label L_okay;
+  __ load_unsigned_byte(temp_reg, at_bcp(0));
+  __ cmpl(temp_reg, (int)Bytecodes::java_code(bc));
+  __ jccb(Assembler::equal, L_okay);
+  __ cmpl(temp_reg, bc_reg);
+  __ jcc(Assembler::equal, L_okay);
   __ stop("patching the wrong bytecode");
-  __ bind(okay);
+  __ bind(L_okay);
 #endif
+
   // patch bytecode
-  __ movb(at_bcp(0), bc);
-  __ bind(patch_done);
+  __ movb(at_bcp(0), bc_reg);
+  __ bind(L_patch_done);
 }
 
 //----------------------------------------------------------------------------------------------------
@@ -2060,24 +2089,20 @@
   assert_different_registers(result, Rcache, index, temp);
 
   Label resolved;
-  __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
   if (byte_no == f1_oop) {
     // We are resolved if the f1 field contains a non-null object (CallSite, etc.)
     // This kind of CP cache entry does not need to match the flags byte, because
     // there is a 1-1 relation between bytecode type and CP entry type.
     assert(result != noreg, ""); //else do cmpptr(Address(...), (int32_t) NULL_WORD)
+    __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
     __ movptr(result, Address(Rcache, index, Address::times_ptr, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::f1_offset()));
     __ testptr(result, result);
     __ jcc(Assembler::notEqual, resolved);
   } else {
     assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
     assert(result == noreg, "");  //else change code for setting result
-    const int shift_count = (1 + byte_no)*BitsPerByte;
-    __ movl(temp, Address(Rcache, index, Address::times_4, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::indices_offset()));
-    __ shrl(temp, shift_count);
-    // have we resolved this bytecode?
-    __ andl(temp, 0xFF);
-    __ cmpl(temp, (int)bytecode());
+    __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, temp, byte_no, 1, index_size);
+    __ cmpl(temp, (int) bytecode());  // have we resolved this bytecode?
     __ jcc(Assembler::equal, resolved);
   }
 
@@ -2453,138 +2478,153 @@
 
   __ shrl(flags, ConstantPoolCacheEntry::tosBits);
   assert(btos == 0, "change code, btos != 0");
-  // btos
   __ andl(flags, 0x0f);
   __ jcc(Assembler::notZero, notByte);
 
-  __ pop(btos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movb(lo, rax );
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_bputfield, rcx, rbx);
+  // btos
+  {
+    __ pop(btos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movb(lo, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_bputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notByte);
-  // itos
-  __ cmpl(flags, itos );
+  __ cmpl(flags, itos);
   __ jcc(Assembler::notEqual, notInt);
 
-  __ pop(itos);
-  if (!is_static) pop_and_check_object(obj);
-
-  __ movl(lo, rax );
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_iputfield, rcx, rbx);
+  // itos
+  {
+    __ pop(itos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movl(lo, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_iputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notInt);
-  // atos
-  __ cmpl(flags, atos );
+  __ cmpl(flags, atos);
   __ jcc(Assembler::notEqual, notObj);
 
-  __ pop(atos);
-  if (!is_static) pop_and_check_object(obj);
-
-  do_oop_store(_masm, lo, rax, _bs->kind(), false);
-
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_aputfield, rcx, rbx);
+  // atos
+  {
+    __ pop(atos);
+    if (!is_static) pop_and_check_object(obj);
+    do_oop_store(_masm, lo, rax, _bs->kind(), false);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_aputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
 
-  __ jmp(Done);
-
   __ bind(notObj);
-  // ctos
-  __ cmpl(flags, ctos );
+  __ cmpl(flags, ctos);
   __ jcc(Assembler::notEqual, notChar);
 
-  __ pop(ctos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movw(lo, rax );
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_cputfield, rcx, rbx);
+  // ctos
+  {
+    __ pop(ctos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movw(lo, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_cputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notChar);
-  // stos
-  __ cmpl(flags, stos );
+  __ cmpl(flags, stos);
   __ jcc(Assembler::notEqual, notShort);
 
-  __ pop(stos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movw(lo, rax );
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_sputfield, rcx, rbx);
+  // stos
+  {
+    __ pop(stos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movw(lo, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_sputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notShort);
-  // ltos
-  __ cmpl(flags, ltos );
+  __ cmpl(flags, ltos);
   __ jcc(Assembler::notEqual, notLong);
 
-  Label notVolatileLong;
-  __ testl(rdx, rdx);
-  __ jcc(Assembler::zero, notVolatileLong);
+  // ltos
+  {
+    Label notVolatileLong;
+    __ testl(rdx, rdx);
+    __ jcc(Assembler::zero, notVolatileLong);
 
-  __ pop(ltos);  // overwrites rdx, do this after testing volatile.
-  if (!is_static) pop_and_check_object(obj);
+    __ pop(ltos);  // overwrites rdx, do this after testing volatile.
+    if (!is_static) pop_and_check_object(obj);
 
-  // Replace with real volatile test
-  __ push(rdx);
-  __ push(rax);                 // Must update atomically with FIST
-  __ fild_d(Address(rsp,0));    // So load into FPU register
-  __ fistp_d(lo);               // and put into memory atomically
-  __ addptr(rsp, 2*wordSize);
-  // volatile_barrier();
-  volatile_barrier(Assembler::Membar_mask_bits(Assembler::StoreLoad |
-                                               Assembler::StoreStore));
-  // Don't rewrite volatile version
-  __ jmp(notVolatile);
+    // Replace with real volatile test
+    __ push(rdx);
+    __ push(rax);                 // Must update atomically with FIST
+    __ fild_d(Address(rsp,0));    // So load into FPU register
+    __ fistp_d(lo);               // and put into memory atomically
+    __ addptr(rsp, 2*wordSize);
+    // volatile_barrier();
+    volatile_barrier(Assembler::Membar_mask_bits(Assembler::StoreLoad |
+                                                 Assembler::StoreStore));
+    // Don't rewrite volatile version
+    __ jmp(notVolatile);
 
-  __ bind(notVolatileLong);
+    __ bind(notVolatileLong);
 
-  __ pop(ltos);  // overwrites rdx
-  if (!is_static) pop_and_check_object(obj);
-  NOT_LP64(__ movptr(hi, rdx));
-  __ movptr(lo, rax);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_lputfield, rcx, rbx);
+    __ pop(ltos);  // overwrites rdx
+    if (!is_static) pop_and_check_object(obj);
+    NOT_LP64(__ movptr(hi, rdx));
+    __ movptr(lo, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_lputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(notVolatile);
   }
-  __ jmp(notVolatile);
 
   __ bind(notLong);
-  // ftos
-  __ cmpl(flags, ftos );
+  __ cmpl(flags, ftos);
   __ jcc(Assembler::notEqual, notFloat);
 
-  __ pop(ftos);
-  if (!is_static) pop_and_check_object(obj);
-  __ fstp_s(lo);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_fputfield, rcx, rbx);
+  // ftos
+  {
+    __ pop(ftos);
+    if (!is_static) pop_and_check_object(obj);
+    __ fstp_s(lo);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_fputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notFloat);
-  // dtos
-  __ cmpl(flags, dtos );
+#ifdef ASSERT
+  __ cmpl(flags, dtos);
   __ jcc(Assembler::notEqual, notDouble);
+#endif
 
-  __ pop(dtos);
-  if (!is_static) pop_and_check_object(obj);
-  __ fstp_d(lo);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_dputfield, rcx, rbx);
+  // dtos
+  {
+    __ pop(dtos);
+    if (!is_static) pop_and_check_object(obj);
+    __ fstp_d(lo);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_dputfield, rcx, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
+#ifdef ASSERT
   __ bind(notDouble);
-
   __ stop("Bad state");
+#endif
 
   __ bind(Done);
 
diff --git a/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp b/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp
index a88bcb7..818fb44 100644
--- a/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp
+++ b/hotspot/src/cpu/x86/vm/templateTable_x86_64.cpp
@@ -203,46 +203,74 @@
   return Address(r13, offset);
 }
 
-void TemplateTable::patch_bytecode(Bytecodes::Code bytecode, Register bc,
-                                   Register scratch,
-                                   bool load_bc_into_scratch/*=true*/) {
-  if (!RewriteBytecodes) {
-    return;
+void TemplateTable::patch_bytecode(Bytecodes::Code bc, Register bc_reg,
+                                   Register temp_reg, bool load_bc_into_bc_reg/*=true*/,
+                                   int byte_no) {
+  if (!RewriteBytecodes)  return;
+  Label L_patch_done;
+
+  switch (bc) {
+  case Bytecodes::_fast_aputfield:
+  case Bytecodes::_fast_bputfield:
+  case Bytecodes::_fast_cputfield:
+  case Bytecodes::_fast_dputfield:
+  case Bytecodes::_fast_fputfield:
+  case Bytecodes::_fast_iputfield:
+  case Bytecodes::_fast_lputfield:
+  case Bytecodes::_fast_sputfield:
+    {
+      // We skip bytecode quickening for putfield instructions when
+      // the put_code written to the constant pool cache is zero.
+      // This is required so that every execution of this instruction
+      // calls out to InterpreterRuntime::resolve_get_put to do
+      // additional, required work.
+      assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
+      assert(load_bc_into_bc_reg, "we use bc_reg as temp");
+      __ get_cache_and_index_and_bytecode_at_bcp(temp_reg, bc_reg, temp_reg, byte_no, 1);
+      __ movl(bc_reg, bc);
+      __ cmpl(temp_reg, (int) 0);
+      __ jcc(Assembler::zero, L_patch_done);  // don't patch
+    }
+    break;
+  default:
+    assert(byte_no == -1, "sanity");
+    // the pair bytecodes have already done the load.
+    if (load_bc_into_bc_reg) {
+      __ movl(bc_reg, bc);
+    }
   }
-  // the pair bytecodes have already done the load.
-  if (load_bc_into_scratch) {
-    __ movl(bc, bytecode);
-  }
-  Label patch_done;
+
   if (JvmtiExport::can_post_breakpoint()) {
-    Label fast_patch;
+    Label L_fast_patch;
     // if a breakpoint is present we can't rewrite the stream directly
-    __ movzbl(scratch, at_bcp(0));
-    __ cmpl(scratch, Bytecodes::_breakpoint);
-    __ jcc(Assembler::notEqual, fast_patch);
-    __ get_method(scratch);
+    __ movzbl(temp_reg, at_bcp(0));
+    __ cmpl(temp_reg, Bytecodes::_breakpoint);
+    __ jcc(Assembler::notEqual, L_fast_patch);
+    __ get_method(temp_reg);
     // Let breakpoint table handling rewrite to quicker bytecode
-    __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::set_original_bytecode_at), scratch, r13, bc);
+    __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::set_original_bytecode_at), temp_reg, r13, bc_reg);
 #ifndef ASSERT
-    __ jmpb(patch_done);
+    __ jmpb(L_patch_done);
 #else
-    __ jmp(patch_done);
+    __ jmp(L_patch_done);
 #endif
-    __ bind(fast_patch);
+    __ bind(L_fast_patch);
   }
+
 #ifdef ASSERT
-  Label okay;
-  __ load_unsigned_byte(scratch, at_bcp(0));
-  __ cmpl(scratch, (int) Bytecodes::java_code(bytecode));
-  __ jcc(Assembler::equal, okay);
-  __ cmpl(scratch, bc);
-  __ jcc(Assembler::equal, okay);
+  Label L_okay;
+  __ load_unsigned_byte(temp_reg, at_bcp(0));
+  __ cmpl(temp_reg, (int) Bytecodes::java_code(bc));
+  __ jcc(Assembler::equal, L_okay);
+  __ cmpl(temp_reg, bc_reg);
+  __ jcc(Assembler::equal, L_okay);
   __ stop("patching the wrong bytecode");
-  __ bind(okay);
+  __ bind(L_okay);
 #endif
+
   // patch bytecode
-  __ movb(at_bcp(0), bc);
-  __ bind(patch_done);
+  __ movb(at_bcp(0), bc_reg);
+  __ bind(L_patch_done);
 }
 
 
@@ -2098,24 +2126,20 @@
   assert_different_registers(result, Rcache, index, temp);
 
   Label resolved;
-  __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
   if (byte_no == f1_oop) {
     // We are resolved if the f1 field contains a non-null object (CallSite, etc.)
     // This kind of CP cache entry does not need to match the flags byte, because
     // there is a 1-1 relation between bytecode type and CP entry type.
     assert(result != noreg, ""); //else do cmpptr(Address(...), (int32_t) NULL_WORD)
+    __ get_cache_and_index_at_bcp(Rcache, index, 1, index_size);
     __ movptr(result, Address(Rcache, index, Address::times_ptr, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::f1_offset()));
     __ testptr(result, result);
     __ jcc(Assembler::notEqual, resolved);
   } else {
     assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
     assert(result == noreg, "");  //else change code for setting result
-    const int shift_count = (1 + byte_no) * BitsPerByte;
-    __ movl(temp, Address(Rcache, index, Address::times_ptr, constantPoolCacheOopDesc::base_offset() + ConstantPoolCacheEntry::indices_offset()));
-    __ shrl(temp, shift_count);
-    // have we resolved this bytecode?
-    __ andl(temp, 0xFF);
-    __ cmpl(temp, (int) bytecode());
+    __ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, temp, byte_no, 1, index_size);
+    __ cmpl(temp, (int) bytecode());  // have we resolved this bytecode?
     __ jcc(Assembler::equal, resolved);
   }
 
@@ -2507,101 +2531,123 @@
   assert(btos == 0, "change code, btos != 0");
   __ andl(flags, 0x0f);
   __ jcc(Assembler::notZero, notByte);
+
   // btos
-  __ pop(btos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movb(field, rax);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_bputfield, bc, rbx);
+  {
+    __ pop(btos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movb(field, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_bputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notByte);
   __ cmpl(flags, atos);
   __ jcc(Assembler::notEqual, notObj);
+
   // atos
-  __ pop(atos);
-  if (!is_static) pop_and_check_object(obj);
-
-  // Store into the field
-  do_oop_store(_masm, field, rax, _bs->kind(), false);
-
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_aputfield, bc, rbx);
+  {
+    __ pop(atos);
+    if (!is_static) pop_and_check_object(obj);
+    // Store into the field
+    do_oop_store(_masm, field, rax, _bs->kind(), false);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_aputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notObj);
   __ cmpl(flags, itos);
   __ jcc(Assembler::notEqual, notInt);
+
   // itos
-  __ pop(itos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movl(field, rax);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_iputfield, bc, rbx);
+  {
+    __ pop(itos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movl(field, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_iputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notInt);
   __ cmpl(flags, ctos);
   __ jcc(Assembler::notEqual, notChar);
+
   // ctos
-  __ pop(ctos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movw(field, rax);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_cputfield, bc, rbx);
+  {
+    __ pop(ctos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movw(field, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_cputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notChar);
   __ cmpl(flags, stos);
   __ jcc(Assembler::notEqual, notShort);
+
   // stos
-  __ pop(stos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movw(field, rax);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_sputfield, bc, rbx);
+  {
+    __ pop(stos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movw(field, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_sputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notShort);
   __ cmpl(flags, ltos);
   __ jcc(Assembler::notEqual, notLong);
+
   // ltos
-  __ pop(ltos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movq(field, rax);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_lputfield, bc, rbx);
+  {
+    __ pop(ltos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movq(field, rax);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_lputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notLong);
   __ cmpl(flags, ftos);
   __ jcc(Assembler::notEqual, notFloat);
+
   // ftos
-  __ pop(ftos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movflt(field, xmm0);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_fputfield, bc, rbx);
+  {
+    __ pop(ftos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movflt(field, xmm0);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_fputfield, bc, rbx, true, byte_no);
+    }
+    __ jmp(Done);
   }
-  __ jmp(Done);
 
   __ bind(notFloat);
 #ifdef ASSERT
   __ cmpl(flags, dtos);
   __ jcc(Assembler::notEqual, notDouble);
 #endif
+
   // dtos
-  __ pop(dtos);
-  if (!is_static) pop_and_check_object(obj);
-  __ movdbl(field, xmm0);
-  if (!is_static) {
-    patch_bytecode(Bytecodes::_fast_dputfield, bc, rbx);
+  {
+    __ pop(dtos);
+    if (!is_static) pop_and_check_object(obj);
+    __ movdbl(field, xmm0);
+    if (!is_static) {
+      patch_bytecode(Bytecodes::_fast_dputfield, bc, rbx, true, byte_no);
+    }
   }
 
 #ifdef ASSERT
@@ -2612,12 +2658,12 @@
 #endif
 
   __ bind(Done);
+
   // Check for volatile store
   __ testl(rdx, rdx);
   __ jcc(Assembler::zero, notVolatile);
   volatile_barrier(Assembler::Membar_mask_bits(Assembler::StoreLoad |
                                                Assembler::StoreStore));
-
   __ bind(notVolatile);
 }
 
diff --git a/hotspot/src/cpu/x86/vm/vm_version_x86.cpp b/hotspot/src/cpu/x86/vm/vm_version_x86.cpp
index d140f36..42a4c3c 100644
--- a/hotspot/src/cpu/x86/vm/vm_version_x86.cpp
+++ b/hotspot/src/cpu/x86/vm/vm_version_x86.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2011, Oracle and/or its affiliates.  All Rights Reserved.
+ * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -557,14 +557,16 @@
   if( !supports_sse() && supports_3dnow_prefetch() ) AllocatePrefetchInstr = 3;
 
   // Allocation prefetch settings
-  intx cache_line_size = L1_data_cache_line_size();
+  intx cache_line_size = prefetch_data_size();
   if( cache_line_size > AllocatePrefetchStepSize )
     AllocatePrefetchStepSize = cache_line_size;
-  if( FLAG_IS_DEFAULT(AllocatePrefetchLines) )
-    AllocatePrefetchLines = 3; // Optimistic value
+
   assert(AllocatePrefetchLines > 0, "invalid value");
-  if( AllocatePrefetchLines < 1 ) // set valid value in product VM
-    AllocatePrefetchLines = 1; // Conservative value
+  if( AllocatePrefetchLines < 1 )     // set valid value in product VM
+    AllocatePrefetchLines = 3;
+  assert(AllocateInstancePrefetchLines > 0, "invalid value");
+  if( AllocateInstancePrefetchLines < 1 ) // set valid value in product VM
+    AllocateInstancePrefetchLines = 1;
 
   AllocatePrefetchDistance = allocate_prefetch_distance();
   AllocatePrefetchStyle    = allocate_prefetch_style();
@@ -601,10 +603,11 @@
     tty->print_cr("Logical CPUs per core: %u",
                   logical_processors_per_package());
     tty->print_cr("UseSSE=%d",UseSSE);
-    tty->print("Allocation: ");
+    tty->print("Allocation");
     if (AllocatePrefetchStyle <= 0 || UseSSE == 0 && !supports_3dnow_prefetch()) {
-      tty->print_cr("no prefetching");
+      tty->print_cr(": no prefetching");
     } else {
+      tty->print(" prefetching: ");
       if (UseSSE == 0 && supports_3dnow_prefetch()) {
         tty->print("PREFETCHW");
       } else if (UseSSE >= 1) {
@@ -619,9 +622,9 @@
         }
       }
       if (AllocatePrefetchLines > 1) {
-        tty->print_cr(" %d, %d lines with step %d bytes", AllocatePrefetchDistance, AllocatePrefetchLines, AllocatePrefetchStepSize);
+        tty->print_cr(" at distance %d, %d lines of %d bytes", AllocatePrefetchDistance, AllocatePrefetchLines, AllocatePrefetchStepSize);
       } else {
-        tty->print_cr(" %d, one line", AllocatePrefetchDistance);
+        tty->print_cr(" at distance %d, one line of %d bytes", AllocatePrefetchDistance, AllocatePrefetchStepSize);
       }
     }
 
diff --git a/hotspot/src/cpu/x86/vm/vm_version_x86.hpp b/hotspot/src/cpu/x86/vm/vm_version_x86.hpp
index ba26822..47d81e0 100644
--- a/hotspot/src/cpu/x86/vm/vm_version_x86.hpp
+++ b/hotspot/src/cpu/x86/vm/vm_version_x86.hpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates.  All Rights Reserved.
+ * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -419,7 +419,7 @@
     return result;
   }
 
-  static intx L1_data_cache_line_size()  {
+  static intx prefetch_data_size()  {
     intx result = 0;
     if (is_intel()) {
       result = (_cpuid_info.dcp_cpuid4_ebx.bits.L1_line_size + 1);
diff --git a/hotspot/src/cpu/x86/vm/x86_32.ad b/hotspot/src/cpu/x86/vm/x86_32.ad
index bfa9e28..b403752 100644
--- a/hotspot/src/cpu/x86/vm/x86_32.ad
+++ b/hotspot/src/cpu/x86/vm/x86_32.ad
@@ -1369,7 +1369,12 @@
 //
 // NOTE: If the platform does not provide any short branch variants, then
 //       this method should return false for offset 0.
-bool Matcher::is_short_branch_offset(int rule, int offset) {
+bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) {
+  // The passed offset is relative to address of the branch.
+  // On 86 a branch displacement is calculated relative to address
+  // of a next instruction.
+  offset -= br_size;
+
   // the short version of jmpConUCF2 contains multiple branches,
   // making the reach slightly less
   if (rule == jmpConUCF2_rule)
@@ -1713,18 +1718,6 @@
     else                               emit_d32(cbuf,con);
   %}
 
-  enc_class Lbl (label labl) %{ // JMP, CALL
-    Label *l = $labl$$label;
-    emit_d32(cbuf, l ? (l->loc_pos() - (cbuf.insts_size()+4)) : 0);
-  %}
-
-  enc_class LblShort (label labl) %{ // JMP, CALL
-    Label *l = $labl$$label;
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size()+1)) : 0;
-    assert(-128 <= disp && disp <= 127, "Displacement too large for short jmp");
-    emit_d8(cbuf, disp);
-  %}
-
   enc_class OpcSReg (eRegI dst) %{    // BSWAP
     emit_cc(cbuf, $secondary, $dst$$reg );
   %}
@@ -1747,21 +1740,6 @@
     emit_rm(cbuf, 0x3, $secondary, $div$$reg );
   %}
 
-  enc_class Jcc (cmpOp cop, label labl) %{    // JCC
-    Label *l = $labl$$label;
-    $$$emit8$primary;
-    emit_cc(cbuf, $secondary, $cop$$cmpcode);
-    emit_d32(cbuf, l ? (l->loc_pos() - (cbuf.insts_size()+4)) : 0);
-  %}
-
-  enc_class JccShort (cmpOp cop, label labl) %{    // JCC
-    Label *l = $labl$$label;
-    emit_cc(cbuf, $primary, $cop$$cmpcode);
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size()+1)) : 0;
-    assert(-128 <= disp && disp <= 127, "Displacement too large for short jmp");
-    emit_d8(cbuf, disp);
-  %}
-
   enc_class enc_cmov(cmpOp cop ) %{ // CMOV
     $$$emit8$primary;
     emit_cc(cbuf, $secondary, $cop$$cmpcode);
@@ -4496,7 +4474,6 @@
 //----------Instruction Attributes---------------------------------------------
 ins_attrib ins_cost(100);       // Required cost attribute
 ins_attrib ins_size(8);         // Required size attribute (in bits)
-ins_attrib ins_pc_relative(0);  // Required PC Relative flag
 ins_attrib ins_short_branch(0); // Required flag: is this instruction a
                                 // non-matching short branch variant of some
                                                             // long branch?
@@ -7348,8 +7325,9 @@
   ins_cost(100);
 
   format %{ "PREFETCHR $mem\t! Prefetch into level 1 cache for read" %}
-  opcode(0x0F, 0x0d);     /* Opcode 0F 0d /0 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x00,mem));
+  ins_encode %{
+    __ prefetchr($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -7359,8 +7337,9 @@
   ins_cost(100);
 
   format %{ "PREFETCHNTA $mem\t! Prefetch into non-temporal cache for read" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /0 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x00,mem));
+  ins_encode %{
+    __ prefetchnta($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -7370,8 +7349,9 @@
   ins_cost(100);
 
   format %{ "PREFETCHT0 $mem\t! Prefetch into L1 and L2 caches for read" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /1 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x01,mem));
+  ins_encode %{
+    __ prefetcht0($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -7381,8 +7361,9 @@
   ins_cost(100);
 
   format %{ "PREFETCHT2 $mem\t! Prefetch into L2 cache for read" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /3 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x03,mem));
+  ins_encode %{
+    __ prefetcht2($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -7397,46 +7378,86 @@
 %}
 
 instruct prefetchw( memory mem ) %{
-  predicate(UseSSE==0 && VM_Version::supports_3dnow_prefetch() || AllocatePrefetchInstr==3);
+  predicate(UseSSE==0 && VM_Version::supports_3dnow_prefetch());
   match( PrefetchWrite mem );
   ins_cost(100);
 
   format %{ "PREFETCHW $mem\t! Prefetch into L1 cache and mark modified" %}
-  opcode(0x0F, 0x0D);     /* Opcode 0F 0D /1 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x01,mem));
+  ins_encode %{
+    __ prefetchw($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
 instruct prefetchwNTA( memory mem ) %{
-  predicate(UseSSE>=1 && AllocatePrefetchInstr==0);
+  predicate(UseSSE>=1);
   match(PrefetchWrite mem);
   ins_cost(100);
 
   format %{ "PREFETCHNTA $mem\t! Prefetch into non-temporal cache for write" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /0 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x00,mem));
+  ins_encode %{
+    __ prefetchnta($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
-instruct prefetchwT0( memory mem ) %{
+// Prefetch instructions for allocation.
+
+instruct prefetchAlloc0( memory mem ) %{
+  predicate(UseSSE==0 && AllocatePrefetchInstr!=3);
+  match(PrefetchAllocation mem);
+  ins_cost(0);
+  size(0);
+  format %{ "Prefetch allocation (non-SSE is empty encoding)" %}
+  ins_encode();
+  ins_pipe(empty);
+%}
+
+instruct prefetchAlloc( memory mem ) %{
+  predicate(AllocatePrefetchInstr==3);
+  match( PrefetchAllocation mem );
+  ins_cost(100);
+
+  format %{ "PREFETCHW $mem\t! Prefetch allocation into L1 cache and mark modified" %}
+  ins_encode %{
+    __ prefetchw($mem$$Address);
+  %}
+  ins_pipe(ialu_mem);
+%}
+
+instruct prefetchAllocNTA( memory mem ) %{
+  predicate(UseSSE>=1 && AllocatePrefetchInstr==0);
+  match(PrefetchAllocation mem);
+  ins_cost(100);
+
+  format %{ "PREFETCHNTA $mem\t! Prefetch allocation into non-temporal cache for write" %}
+  ins_encode %{
+    __ prefetchnta($mem$$Address);
+  %}
+  ins_pipe(ialu_mem);
+%}
+
+instruct prefetchAllocT0( memory mem ) %{
   predicate(UseSSE>=1 && AllocatePrefetchInstr==1);
-  match(PrefetchWrite mem);
+  match(PrefetchAllocation mem);
   ins_cost(100);
 
-  format %{ "PREFETCHT0 $mem\t! Prefetch into L1 and L2 caches for write" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /1 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x01,mem));
+  format %{ "PREFETCHT0 $mem\t! Prefetch allocation into L1 and L2 caches for write" %}
+  ins_encode %{
+    __ prefetcht0($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
-instruct prefetchwT2( memory mem ) %{
+instruct prefetchAllocT2( memory mem ) %{
   predicate(UseSSE>=1 && AllocatePrefetchInstr==2);
-  match(PrefetchWrite mem);
+  match(PrefetchAllocation mem);
   ins_cost(100);
 
-  format %{ "PREFETCHT2 $mem\t! Prefetch into L2 cache for write" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /3 */
-  ins_encode(OpcP, OpcS, RMopc_Mem(0x03,mem));
+  format %{ "PREFETCHT2 $mem\t! Prefetch allocation into L2 cache for write" %}
+  ins_encode %{
+    __ prefetcht2($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -7806,8 +7827,7 @@
 %}
 
 instruct membar_acquire_lock() %{
-  match(MemBarAcquire);
-  predicate(Matcher::prior_fast_lock(n));
+  match(MemBarAcquireLock);
   ins_cost(0);
 
   size(0);
@@ -7827,8 +7847,7 @@
 %}
 
 instruct membar_release_lock() %{
-  match(MemBarRelease);
-  predicate(Matcher::post_fast_unlock(n));
+  match(MemBarReleaseLock);
   ins_cost(0);
 
   size(0);
@@ -13047,7 +13066,6 @@
     Address index(noreg, $switch_val$$Register, Address::times_1);
     __ jump(ArrayAddress($constantaddress, index));
   %}
-  ins_pc_relative(1);
   ins_pipe(pipe_jmp);
 %}
 
@@ -13059,10 +13077,11 @@
   ins_cost(300);
   format %{ "JMP    $labl" %}
   size(5);
-  opcode(0xE9);
-  ins_encode( OpcP, Lbl( labl ) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jmp(*L, false); // Always long jump
+  %}
   ins_pipe( pipe_jmp );
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - Label defines a relative address from Jcc+1
@@ -13073,10 +13092,11 @@
   ins_cost(300);
   format %{ "J$cop    $labl" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode( Jcc( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - Label defines a relative address from Jcc+1
@@ -13087,10 +13107,11 @@
   ins_cost(300);
   format %{ "J$cop    $labl\t# Loop end" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode( Jcc( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - Label defines a relative address from Jcc+1
@@ -13101,10 +13122,11 @@
   ins_cost(300);
   format %{ "J$cop,u  $labl\t# Loop end" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode( Jcc( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
 %}
 
 instruct jmpLoopEndUCF(cmpOpUCF cop, eFlagsRegUCF cmp, label labl) %{
@@ -13114,10 +13136,11 @@
   ins_cost(200);
   format %{ "J$cop,u  $labl\t# Loop end" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode( Jcc( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - using unsigned comparison
@@ -13128,10 +13151,11 @@
   ins_cost(300);
   format %{ "J$cop,u  $labl" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 instruct jmpConUCF(cmpOpUCF cop, eFlagsRegUCF cmp, label labl) %{
@@ -13141,10 +13165,11 @@
   ins_cost(200);
   format %{ "J$cop,u  $labl" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 instruct jmpConUCF2(cmpOpUCF2 cop, eFlagsRegUCF cmp, label labl) %{
@@ -13162,31 +13187,21 @@
       $$emit$$"done:"
     }
   %}
-  size(12);
-  opcode(0x0F, 0x80);
   ins_encode %{
     Label* l = $labl$$label;
-    $$$emit8$primary;
-    emit_cc(cbuf, $secondary, Assembler::parity);
-    int parity_disp = -1;
-    bool ok = false;
     if ($cop$$cmpcode == Assembler::notEqual) {
-       // the two jumps 6 bytes apart so the jump distances are too
-       parity_disp = l ? (l->loc_pos() - (cbuf.insts_size() + 4)) : 0;
+      __ jcc(Assembler::parity, *l, false);
+      __ jcc(Assembler::notEqual, *l, false);
     } else if ($cop$$cmpcode == Assembler::equal) {
-       parity_disp = 6;
-       ok = true;
+      Label done;
+      __ jccb(Assembler::parity, done);
+      __ jcc(Assembler::equal, *l, false);
+      __ bind(done);
     } else {
        ShouldNotReachHere();
     }
-    emit_d32(cbuf, parity_disp);
-    $$$emit8$primary;
-    emit_cc(cbuf, $secondary, $cop$$cmpcode);
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size() + 4)) : 0;
-    emit_d32(cbuf, disp);
   %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 // ============================================================================
@@ -13251,10 +13266,11 @@
   ins_cost(300);
   format %{ "JMP,s  $labl" %}
   size(2);
-  opcode(0xEB);
-  ins_encode( OpcP, LblShort( labl ) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jmpb(*L);
+  %}
   ins_pipe( pipe_jmp );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13266,10 +13282,11 @@
   ins_cost(300);
   format %{ "J$cop,s  $labl" %}
   size(2);
-  opcode(0x70);
-  ins_encode( JccShort( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13281,10 +13298,11 @@
   ins_cost(300);
   format %{ "J$cop,s  $labl\t# Loop end" %}
   size(2);
-  opcode(0x70);
-  ins_encode( JccShort( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13296,10 +13314,11 @@
   ins_cost(300);
   format %{ "J$cop,us $labl\t# Loop end" %}
   size(2);
-  opcode(0x70);
-  ins_encode( JccShort( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13310,10 +13329,11 @@
   ins_cost(300);
   format %{ "J$cop,us $labl\t# Loop end" %}
   size(2);
-  opcode(0x70);
-  ins_encode( JccShort( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13325,10 +13345,11 @@
   ins_cost(300);
   format %{ "J$cop,us $labl" %}
   size(2);
-  opcode(0x70);
-  ins_encode( JccShort( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13339,10 +13360,11 @@
   ins_cost(300);
   format %{ "J$cop,us $labl" %}
   size(2);
-  opcode(0x70);
-  ins_encode( JccShort( cop, labl) );
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe( pipe_jcc );
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13362,27 +13384,21 @@
     }
   %}
   size(4);
-  opcode(0x70);
   ins_encode %{
     Label* l = $labl$$label;
-    emit_cc(cbuf, $primary, Assembler::parity);
-    int parity_disp = -1;
     if ($cop$$cmpcode == Assembler::notEqual) {
-      parity_disp = l ? (l->loc_pos() - (cbuf.insts_size() + 1)) : 0;
+      __ jccb(Assembler::parity, *l);
+      __ jccb(Assembler::notEqual, *l);
     } else if ($cop$$cmpcode == Assembler::equal) {
-      parity_disp = 2;
+      Label done;
+      __ jccb(Assembler::parity, done);
+      __ jccb(Assembler::equal, *l);
+      __ bind(done);
     } else {
-      ShouldNotReachHere();
+       ShouldNotReachHere();
     }
-    emit_d8(cbuf, parity_disp);
-    emit_cc(cbuf, $primary, $cop$$cmpcode);
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size() + 1)) : 0;
-    emit_d8(cbuf, disp);
-    assert(-128 <= disp && disp <= 127, "Displacement too large for short jmp");
-    assert(-128 <= parity_disp && parity_disp <= 127, "Displacement too large for short jmp");
   %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -13855,7 +13871,6 @@
               call_epilog,
               post_call_FPU );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
   ins_alignment(4);
 %}
 
@@ -13879,7 +13894,6 @@
               call_epilog,
               post_call_FPU );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
   ins_alignment(4);
 %}
 
@@ -13899,7 +13913,6 @@
               call_epilog,
               post_call_FPU );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
   ins_alignment(4);
 %}
 
@@ -13917,7 +13930,6 @@
               Java_To_Runtime( meth ),
               post_call_FPU );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
 %}
 
 // Call runtime without safepoint
@@ -13933,7 +13945,6 @@
               Java_To_Runtime( meth ),
               Verify_FPU_For_Leaf, post_call_FPU );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
 %}
 
 instruct CallLeafNoFPDirect(method meth) %{
@@ -13945,7 +13956,6 @@
   opcode(0xE8); /* E8 cd */
   ins_encode(Java_To_Runtime(meth));
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
 %}
 
 
@@ -14024,7 +14034,6 @@
   format %{ "FASTLOCK $object, $box KILLS $tmp,$scr" %}
   ins_encode( Fast_Lock(object,box,tmp,scr) );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
 %}
 
 instruct cmpFastUnlock( eFlagsReg cr, eRegP object, eAXRegP box, eRegP tmp ) %{
@@ -14034,7 +14043,6 @@
   format %{ "FASTUNLOCK $object, $box, $tmp" %}
   ins_encode( Fast_Unlock(object,box,tmp) );
   ins_pipe( pipe_slow );
-  ins_pc_relative(1);
 %}
 
 
diff --git a/hotspot/src/cpu/x86/vm/x86_64.ad b/hotspot/src/cpu/x86/vm/x86_64.ad
index 9612d4f..4f6fa3c 100644
--- a/hotspot/src/cpu/x86/vm/x86_64.ad
+++ b/hotspot/src/cpu/x86/vm/x86_64.ad
@@ -1966,7 +1966,12 @@
 //
 // NOTE: If the platform does not provide any short branch variants, then
 //       this method should return false for offset 0.
-bool Matcher::is_short_branch_offset(int rule, int offset) {
+bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) {
+  // The passed offset is relative to address of the branch.
+  // On 86 a branch displacement is calculated relative to address
+  // of a next instruction.
+  offset -= br_size;
+
   // the short version of jmpConUCF2 contains multiple branches,
   // making the reach slightly less
   if (rule == jmpConUCF2_rule)
@@ -2426,22 +2431,6 @@
     }
   %}
 
-  enc_class Lbl(label labl)
-  %{
-    // JMP, CALL
-    Label* l = $labl$$label;
-    emit_d32(cbuf, l ? (l->loc_pos() - (cbuf.insts_size() + 4)) : 0);
-  %}
-
-  enc_class LblShort(label labl)
-  %{
-    // JMP, CALL
-    Label* l = $labl$$label;
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size() + 1)) : 0;
-    assert(-128 <= disp && disp <= 127, "Displacement too large for short jmp");
-    emit_d8(cbuf, disp);
-  %}
-
   enc_class opc2_reg(rRegI dst)
   %{
     // BSWAP
@@ -2460,25 +2449,6 @@
     emit_rm(cbuf, 0x3, $secondary, $div$$reg & 7);
   %}
 
-  enc_class Jcc(cmpOp cop, label labl)
-  %{
-    // JCC
-    Label* l = $labl$$label;
-    $$$emit8$primary;
-    emit_cc(cbuf, $secondary, $cop$$cmpcode);
-    emit_d32(cbuf, l ? (l->loc_pos() - (cbuf.insts_size() + 4)) : 0);
-  %}
-
-  enc_class JccShort (cmpOp cop, label labl)
-  %{
-  // JCC
-    Label *l = $labl$$label;
-    emit_cc(cbuf, $primary, $cop$$cmpcode);
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size() + 1)) : 0;
-    assert(-128 <= disp && disp <= 127, "Displacement too large for short jmp");
-    emit_d8(cbuf, disp);
-  %}
-
   enc_class enc_cmov(cmpOp cop)
   %{
     // CMOV
@@ -4013,7 +3983,6 @@
 //----------Instruction Attributes---------------------------------------------
 ins_attrib ins_cost(100);       // Required cost attribute
 ins_attrib ins_size(8);         // Required size attribute (in bits)
-ins_attrib ins_pc_relative(0);  // Required PC Relative flag
 ins_attrib ins_short_branch(0); // Required flag: is this instruction
                                 // a non-matching short branch variant
                                 // of some long branch?
@@ -6648,8 +6617,9 @@
   ins_cost(125);
 
   format %{ "PREFETCHR $mem\t# Prefetch into level 1 cache" %}
-  opcode(0x0F, 0x0D);     /* Opcode 0F 0D /0 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x00, mem));
+  ins_encode %{
+    __ prefetchr($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -6659,8 +6629,9 @@
   ins_cost(125);
 
   format %{ "PREFETCHNTA $mem\t# Prefetch into non-temporal cache for read" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /0 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x00, mem));
+  ins_encode %{
+    __ prefetchnta($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -6670,8 +6641,9 @@
   ins_cost(125);
 
   format %{ "PREFETCHT0 $mem\t# prefetch into L1 and L2 caches for read" %}
-  opcode(0x0F, 0x18); /* Opcode 0F 18 /1 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x01, mem));
+  ins_encode %{
+    __ prefetcht0($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -6681,52 +6653,70 @@
   ins_cost(125);
 
   format %{ "PREFETCHT2 $mem\t# prefetch into L2 caches for read" %}
-  opcode(0x0F, 0x18); /* Opcode 0F 18 /3 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x03, mem));
-  ins_pipe(ialu_mem);
-%}
-
-instruct prefetchw( memory mem ) %{
-  predicate(AllocatePrefetchInstr==3);
-  match(PrefetchWrite mem);
-  ins_cost(125);
-
-  format %{ "PREFETCHW $mem\t# Prefetch into level 1 cache and mark modified" %}
-  opcode(0x0F, 0x0D);     /* Opcode 0F 0D /1 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x01, mem));
+  ins_encode %{
+    __ prefetcht2($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
 instruct prefetchwNTA( memory mem ) %{
-  predicate(AllocatePrefetchInstr==0);
   match(PrefetchWrite mem);
   ins_cost(125);
 
   format %{ "PREFETCHNTA $mem\t# Prefetch to non-temporal cache for write" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /0 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x00, mem));
+  ins_encode %{
+    __ prefetchnta($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
-instruct prefetchwT0( memory mem ) %{
+// Prefetch instructions for allocation.
+
+instruct prefetchAlloc( memory mem ) %{
+  predicate(AllocatePrefetchInstr==3);
+  match(PrefetchAllocation mem);
+  ins_cost(125);
+
+  format %{ "PREFETCHW $mem\t# Prefetch allocation into level 1 cache and mark modified" %}
+  ins_encode %{
+    __ prefetchw($mem$$Address);
+  %}
+  ins_pipe(ialu_mem);
+%}
+
+instruct prefetchAllocNTA( memory mem ) %{
+  predicate(AllocatePrefetchInstr==0);
+  match(PrefetchAllocation mem);
+  ins_cost(125);
+
+  format %{ "PREFETCHNTA $mem\t# Prefetch allocation to non-temporal cache for write" %}
+  ins_encode %{
+    __ prefetchnta($mem$$Address);
+  %}
+  ins_pipe(ialu_mem);
+%}
+
+instruct prefetchAllocT0( memory mem ) %{
   predicate(AllocatePrefetchInstr==1);
-  match(PrefetchWrite mem);
+  match(PrefetchAllocation mem);
   ins_cost(125);
 
-  format %{ "PREFETCHT0 $mem\t# Prefetch to level 1 and 2 caches for write" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /1 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x01, mem));
+  format %{ "PREFETCHT0 $mem\t# Prefetch allocation to level 1 and 2 caches for write" %}
+  ins_encode %{
+    __ prefetcht0($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
-instruct prefetchwT2( memory mem ) %{
+instruct prefetchAllocT2( memory mem ) %{
   predicate(AllocatePrefetchInstr==2);
-  match(PrefetchWrite mem);
+  match(PrefetchAllocation mem);
   ins_cost(125);
 
-  format %{ "PREFETCHT2 $mem\t# Prefetch to level 2 cache for write" %}
-  opcode(0x0F, 0x18);     /* Opcode 0F 18 /3 */
-  ins_encode(REX_mem(mem), OpcP, OpcS, RM_opc_mem(0x03, mem));
+  format %{ "PREFETCHT2 $mem\t# Prefetch allocation to level 2 cache for write" %}
+  ins_encode %{
+    __ prefetcht2($mem$$Address);
+  %}
   ins_pipe(ialu_mem);
 %}
 
@@ -7376,8 +7366,7 @@
 
 instruct membar_acquire_lock()
 %{
-  match(MemBarAcquire);
-  predicate(Matcher::prior_fast_lock(n));
+  match(MemBarAcquireLock);
   ins_cost(0);
 
   size(0);
@@ -7399,8 +7388,7 @@
 
 instruct membar_release_lock()
 %{
-  match(MemBarRelease);
-  predicate(Matcher::post_fast_unlock(n));
+  match(MemBarReleaseLock);
   ins_cost(0);
 
   size(0);
@@ -7547,7 +7535,6 @@
     __ jmp(dispatch);
   %}
   ins_pipe(pipe_jmp);
-  ins_pc_relative(1);
 %}
 
 instruct jumpXtnd_addr(rRegL switch_val, immI2 shift, immL32 offset, rRegI dest) %{
@@ -7568,7 +7555,6 @@
     __ jmp(dispatch);
   %}
   ins_pipe(pipe_jmp);
-  ins_pc_relative(1);
 %}
 
 instruct jumpXtnd(rRegL switch_val, rRegI dest) %{
@@ -7589,7 +7575,6 @@
     __ jmp(dispatch);
   %}
   ins_pipe(pipe_jmp);
-  ins_pc_relative(1);
 %}
 
 // Conditional move
@@ -12017,10 +12002,11 @@
   ins_cost(300);
   format %{ "jmp     $labl" %}
   size(5);
-  opcode(0xE9);
-  ins_encode(OpcP, Lbl(labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jmp(*L, false); // Always long jump
+  %}
   ins_pipe(pipe_jmp);
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - Label defines a relative address from Jcc+1
@@ -12032,10 +12018,11 @@
   ins_cost(300);
   format %{ "j$cop     $labl" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - Label defines a relative address from Jcc+1
@@ -12047,10 +12034,11 @@
   ins_cost(300);
   format %{ "j$cop     $labl\t# loop end" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - Label defines a relative address from Jcc+1
@@ -12061,10 +12049,11 @@
   ins_cost(300);
   format %{ "j$cop,u   $labl\t# loop end" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 instruct jmpLoopEndUCF(cmpOpUCF cop, rFlagsRegUCF cmp, label labl) %{
@@ -12074,10 +12063,11 @@
   ins_cost(200);
   format %{ "j$cop,u   $labl\t# loop end" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 // Jump Direct Conditional - using unsigned comparison
@@ -12088,10 +12078,11 @@
   ins_cost(300);
   format %{ "j$cop,u  $labl" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 instruct jmpConUCF(cmpOpUCF cop, rFlagsRegUCF cmp, label labl) %{
@@ -12101,10 +12092,11 @@
   ins_cost(200);
   format %{ "j$cop,u  $labl" %}
   size(6);
-  opcode(0x0F, 0x80);
-  ins_encode(Jcc(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jcc((Assembler::Condition)($cop$$cmpcode), *L, false); // Always long jump
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 instruct jmpConUCF2(cmpOpUCF2 cop, rFlagsRegUCF cmp, label labl) %{
@@ -12122,29 +12114,21 @@
       $$emit$$"done:"
     }
   %}
-  size(12);
-  opcode(0x0F, 0x80);
   ins_encode %{
     Label* l = $labl$$label;
-    $$$emit8$primary;
-    emit_cc(cbuf, $secondary, Assembler::parity);
-    int parity_disp = -1;
     if ($cop$$cmpcode == Assembler::notEqual) {
-       // the two jumps 6 bytes apart so the jump distances are too
-       parity_disp = l ? (l->loc_pos() - (cbuf.insts_size() + 4)) : 0;
+      __ jcc(Assembler::parity, *l, false);
+      __ jcc(Assembler::notEqual, *l, false);
     } else if ($cop$$cmpcode == Assembler::equal) {
-       parity_disp = 6;
+      Label done;
+      __ jccb(Assembler::parity, done);
+      __ jcc(Assembler::equal, *l, false);
+      __ bind(done);
     } else {
        ShouldNotReachHere();
     }
-    emit_d32(cbuf, parity_disp);
-    $$$emit8$primary;
-    emit_cc(cbuf, $secondary, $cop$$cmpcode);
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size() + 4)) : 0;
-    emit_d32(cbuf, disp);
   %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
 %}
 
 // ============================================================================
@@ -12218,10 +12202,11 @@
   ins_cost(300);
   format %{ "jmp,s   $labl" %}
   size(2);
-  opcode(0xEB);
-  ins_encode(OpcP, LblShort(labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jmpb(*L);
+  %}
   ins_pipe(pipe_jmp);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12233,10 +12218,11 @@
   ins_cost(300);
   format %{ "j$cop,s   $labl" %}
   size(2);
-  opcode(0x70);
-  ins_encode(JccShort(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12248,10 +12234,11 @@
   ins_cost(300);
   format %{ "j$cop,s   $labl\t# loop end" %}
   size(2);
-  opcode(0x70);
-  ins_encode(JccShort(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12263,10 +12250,11 @@
   ins_cost(300);
   format %{ "j$cop,us  $labl\t# loop end" %}
   size(2);
-  opcode(0x70);
-  ins_encode(JccShort(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12277,10 +12265,11 @@
   ins_cost(300);
   format %{ "j$cop,us  $labl\t# loop end" %}
   size(2);
-  opcode(0x70);
-  ins_encode(JccShort(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12292,10 +12281,11 @@
   ins_cost(300);
   format %{ "j$cop,us  $labl" %}
   size(2);
-  opcode(0x70);
-  ins_encode(JccShort(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12306,10 +12296,11 @@
   ins_cost(300);
   format %{ "j$cop,us  $labl" %}
   size(2);
-  opcode(0x70);
-  ins_encode(JccShort(cop, labl));
+  ins_encode %{
+    Label* L = $labl$$label;
+    __ jccb((Assembler::Condition)($cop$$cmpcode), *L);
+  %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12329,27 +12320,21 @@
     }
   %}
   size(4);
-  opcode(0x70);
   ins_encode %{
     Label* l = $labl$$label;
-    emit_cc(cbuf, $primary, Assembler::parity);
-    int parity_disp = -1;
     if ($cop$$cmpcode == Assembler::notEqual) {
-      parity_disp = l ? (l->loc_pos() - (cbuf.insts_size() + 1)) : 0;
+      __ jccb(Assembler::parity, *l);
+      __ jccb(Assembler::notEqual, *l);
     } else if ($cop$$cmpcode == Assembler::equal) {
-      parity_disp = 2;
+      Label done;
+      __ jccb(Assembler::parity, done);
+      __ jccb(Assembler::equal, *l);
+      __ bind(done);
     } else {
-      ShouldNotReachHere();
+       ShouldNotReachHere();
     }
-    emit_d8(cbuf, parity_disp);
-    emit_cc(cbuf, $primary, $cop$$cmpcode);
-    int disp = l ? (l->loc_pos() - (cbuf.insts_size() + 1)) : 0;
-    emit_d8(cbuf, disp);
-    assert(-128 <= disp && disp <= 127, "Displacement too large for short jmp");
-    assert(-128 <= parity_disp && parity_disp <= 127, "Displacement too large for short jmp");
   %}
   ins_pipe(pipe_jcc);
-  ins_pc_relative(1);
   ins_short_branch(1);
 %}
 
@@ -12366,7 +12351,6 @@
   format %{ "fastlock $object,$box,$tmp,$scr" %}
   ins_encode(Fast_Lock(object, box, tmp, scr));
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
 %}
 
 instruct cmpFastUnlock(rFlagsReg cr,
@@ -12379,7 +12363,6 @@
   format %{ "fastunlock $object, $box, $tmp" %}
   ins_encode(Fast_Unlock(object, box, tmp));
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
 %}
 
 
@@ -12432,7 +12415,6 @@
   opcode(0xE8); /* E8 cd */
   ins_encode(Java_Static_Call(meth), call_epilog);
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
   ins_alignment(4);
 %}
 
@@ -12454,7 +12436,6 @@
              restore_SP,
              call_epilog);
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
   ins_alignment(4);
 %}
 
@@ -12472,7 +12453,6 @@
   opcode(0xE8); /* E8 cd */
   ins_encode(Java_Dynamic_Call(meth), call_epilog);
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
   ins_alignment(4);
 %}
 
@@ -12487,7 +12467,6 @@
   opcode(0xE8); /* E8 cd */
   ins_encode(Java_To_Runtime(meth));
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
 %}
 
 // Call runtime without safepoint
@@ -12501,7 +12480,6 @@
   opcode(0xE8); /* E8 cd */
   ins_encode(Java_To_Runtime(meth));
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
 %}
 
 // Call runtime without safepoint
@@ -12515,7 +12493,6 @@
   opcode(0xE8); /* E8 cd */
   ins_encode(Java_To_Runtime(meth));
   ins_pipe(pipe_slow);
-  ins_pc_relative(1);
 %}
 
 // Return Instruction
diff --git a/hotspot/src/cpu/zero/vm/frame_zero.cpp b/hotspot/src/cpu/zero/vm/frame_zero.cpp
index a1e5ea6..9e32112 100644
--- a/hotspot/src/cpu/zero/vm/frame_zero.cpp
+++ b/hotspot/src/cpu/zero/vm/frame_zero.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc.
+ * Copyright 2007, 2008, 2009, 2010, 2011 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -417,3 +417,11 @@
     return;
   }
 }
+
+#ifdef ASSERT
+
+void frame::describe_pd(FrameValues& values, int frame_no) {
+
+}
+
+#endif
diff --git a/hotspot/src/cpu/zero/vm/methodHandles_zero.hpp b/hotspot/src/cpu/zero/vm/methodHandles_zero.hpp
new file mode 100644
index 0000000..84da099
--- /dev/null
+++ b/hotspot/src/cpu/zero/vm/methodHandles_zero.hpp
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2011 Red Hat, Inc.
+ * 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.
+ *
+ */
+
+
+// Adapters
+enum /* platform_dependent_constants */ {
+  adapter_code_size = 0
+};
+
+#define TARGET_ARCH_NYI_6939861 1
+// ..#ifdef TARGET_ARCH_NYI_6939861
+// ..  // Here are some backward compatible declarations until the 6939861 ports are updated.
+// ..  #define _adapter_flyby    (_EK_LIMIT + 10)
+// ..  #define _adapter_ricochet (_EK_LIMIT + 11)
+// ..  #define _adapter_opt_spread_1    _adapter_opt_spread_1_ref
+// ..  #define _adapter_opt_spread_more _adapter_opt_spread_ref
+// ..  enum {
+// ..    _INSERT_NO_MASK   = -1,
+// ..    _INSERT_REF_MASK  = 0,
+// ..    _INSERT_INT_MASK  = 1,
+// ..    _INSERT_LONG_MASK = 3
+// ..  };
+// ..  static void get_ek_bound_mh_info(EntryKind ek, BasicType& arg_type, int& arg_mask, int& arg_slots) {
+// ..    arg_type = ek_bound_mh_arg_type(ek);
+// ..    arg_mask = 0;
+// ..    arg_slots = type2size[arg_type];;
+// ..  }
+// ..  static void get_ek_adapter_opt_swap_rot_info(EntryKind ek, int& swap_bytes, int& rotate) {
+// ..    int swap_slots = ek_adapter_opt_swap_slots(ek);
+// ..    rotate = ek_adapter_opt_swap_mode(ek);
+// ..    swap_bytes = swap_slots * Interpreter::stackElementSize;
+// ..  }
+// ..  static int get_ek_adapter_opt_spread_info(EntryKind ek) {
+// ..    return ek_adapter_opt_spread_count(ek);
+// ..  }
+// ..
+// ..  static void insert_arg_slots(MacroAssembler* _masm,
+// ..                               RegisterOrConstant arg_slots,
+// ..                               int arg_mask,
+// ..                               Register argslot_reg,
+// ..                               Register temp_reg, Register temp2_reg, Register temp3_reg = noreg);
+// ..
+// ..  static void remove_arg_slots(MacroAssembler* _masm,
+// ..                               RegisterOrConstant arg_slots,
+// ..                               Register argslot_reg,
+// ..                               Register temp_reg, Register temp2_reg, Register temp3_reg = noreg);
+// ..
+// ..  static void trace_method_handle(MacroAssembler* _masm, const char* adaptername) PRODUCT_RETURN;
+// ..#endif //TARGET_ARCH_NYI_6939861
diff --git a/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp b/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp
index 6e7643a..29d0ed1 100644
--- a/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp
+++ b/hotspot/src/cpu/zero/vm/sharedRuntime_zero.cpp
@@ -46,14 +46,6 @@
 #include "shark/sharkCompiler.hpp"
 #endif
 
-DeoptimizationBlob *SharedRuntime::_deopt_blob;
-SafepointBlob      *SharedRuntime::_polling_page_safepoint_handler_blob;
-SafepointBlob      *SharedRuntime::_polling_page_return_handler_blob;
-RuntimeStub        *SharedRuntime::_wrong_method_blob;
-RuntimeStub        *SharedRuntime::_ic_miss_blob;
-RuntimeStub        *SharedRuntime::_resolve_opt_virtual_call_blob;
-RuntimeStub        *SharedRuntime::_resolve_virtual_call_blob;
-RuntimeStub        *SharedRuntime::_resolve_static_call_blob;
 
 int SharedRuntime::java_calling_convention(const BasicType *sig_bt,
                                            VMRegPair *regs,
@@ -114,22 +106,22 @@
   return SafepointBlob::create(&buffer, NULL, 0);
 }
 
-void SharedRuntime::generate_stubs() {
-  _wrong_method_blob =
-    generate_empty_runtime_stub("wrong_method_stub");
-  _ic_miss_blob =
-    generate_empty_runtime_stub("ic_miss_stub");
-  _resolve_opt_virtual_call_blob =
-    generate_empty_runtime_stub("resolve_opt_virtual_call");
-  _resolve_virtual_call_blob =
-    generate_empty_runtime_stub("resolve_virtual_call");
-  _resolve_static_call_blob =
-    generate_empty_runtime_stub("resolve_static_call");
+static DeoptimizationBlob* generate_empty_deopt_blob() {
+  CodeBuffer buffer("handler_blob", 0, 0);
+  return DeoptimizationBlob::create(&buffer, NULL, 0, 0, 0, 0);
+}
 
-  _polling_page_safepoint_handler_blob =
-    generate_empty_safepoint_blob();
-  _polling_page_return_handler_blob =
-    generate_empty_safepoint_blob();
+
+void SharedRuntime::generate_deopt_blob() {
+  _deopt_blob = generate_empty_deopt_blob();
+}
+
+SafepointBlob* SharedRuntime::generate_handler_blob(address call_ptr, bool cause_return) {
+  return generate_empty_safepoint_blob();
+}
+
+RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const char* name) {
+  return generate_empty_runtime_stub("resolve_blob");
 }
 
 int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
diff --git a/hotspot/src/cpu/zero/vm/stack_zero.cpp b/hotspot/src/cpu/zero/vm/stack_zero.cpp
index f1b31cc..33b0551 100644
--- a/hotspot/src/cpu/zero/vm/stack_zero.cpp
+++ b/hotspot/src/cpu/zero/vm/stack_zero.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
  * Copyright 2010 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -69,7 +69,8 @@
     break;
 
   case _thread_in_vm:
-    Exceptions::throw_stack_overflow_exception(thread, __FILE__, __LINE__);
+    Exceptions::throw_stack_overflow_exception(thread, __FILE__, __LINE__,
+                                               methodHandle());
     break;
 
   default:
diff --git a/hotspot/src/os/linux/vm/os_linux.cpp b/hotspot/src/os/linux/vm/os_linux.cpp
index 09285a3..363d5f4 100644
--- a/hotspot/src/os/linux/vm/os_linux.cpp
+++ b/hotspot/src/os/linux/vm/os_linux.cpp
@@ -125,6 +125,10 @@
 # include <inttypes.h>
 # include <sys/ioctl.h>
 
+#ifdef AMD64
+#include <asm/vsyscall.h>
+#endif
+
 #define MAX_PATH    (2 * K)
 
 // for timer info max values which include all bits
@@ -2534,7 +2538,7 @@
 }
 
 void os::free_memory(char *addr, size_t bytes) {
-  ::madvise(addr, bytes, MADV_DONTNEED);
+  commit_memory(addr, bytes, false);
 }
 
 void os::numa_make_global(char *addr, size_t bytes) {
@@ -2578,6 +2582,22 @@
   return end;
 }
 
+
+int os::Linux::sched_getcpu_syscall(void) {
+  unsigned int cpu;
+  int retval = -1;
+
+#if defined(IA32)
+  retval = syscall(SYS_getcpu, &cpu, NULL, NULL);
+#elif defined(AMD64)
+  typedef long (*vgetcpu_t)(unsigned int *cpu, unsigned int *node, unsigned long *tcache);
+  vgetcpu_t vgetcpu = (vgetcpu_t)VSYSCALL_ADDR(__NR_vgetcpu);
+  retval = vgetcpu(&cpu, NULL, NULL);
+#endif
+
+  return (retval == -1) ? retval : cpu;
+}
+
 // Something to do with the numa-aware allocator needs these symbols
 extern "C" JNIEXPORT void numa_warn(int number, char *where, ...) { }
 extern "C" JNIEXPORT void numa_error(char *where) { }
@@ -2601,6 +2621,10 @@
   set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t,
                                   dlsym(RTLD_DEFAULT, "sched_getcpu")));
 
+  // If it's not, try a direct syscall.
+  if (sched_getcpu() == -1)
+    set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t, (void*)&sched_getcpu_syscall));
+
   if (sched_getcpu() != -1) { // Does it work?
     void *handle = dlopen("libnuma.so.1", RTLD_LAZY);
     if (handle != NULL) {
diff --git a/hotspot/src/os/linux/vm/os_linux.hpp b/hotspot/src/os/linux/vm/os_linux.hpp
index c0a63fe..ec32232 100644
--- a/hotspot/src/os/linux/vm/os_linux.hpp
+++ b/hotspot/src/os/linux/vm/os_linux.hpp
@@ -263,6 +263,7 @@
   static void set_numa_tonode_memory(numa_tonode_memory_func_t func) { _numa_tonode_memory = func; }
   static void set_numa_interleave_memory(numa_interleave_memory_func_t func) { _numa_interleave_memory = func; }
   static void set_numa_all_nodes(unsigned long* ptr) { _numa_all_nodes = ptr; }
+  static int sched_getcpu_syscall(void);
 public:
   static int sched_getcpu()  { return _sched_getcpu != NULL ? _sched_getcpu() : -1; }
   static int numa_node_to_cpus(int node, unsigned long *buffer, int bufferlen) {
diff --git a/hotspot/src/os/solaris/vm/os_solaris.cpp b/hotspot/src/os/solaris/vm/os_solaris.cpp
index 3280040..4fa64a2 100644
--- a/hotspot/src/os/solaris/vm/os_solaris.cpp
+++ b/hotspot/src/os/solaris/vm/os_solaris.cpp
@@ -3252,7 +3252,6 @@
 //                                 supported Solaris versions, this combination
 //                                 is equivalent to +UseISM -UseMPSS.
 
-typedef int (*getpagesizes_func_type) (size_t[], int);
 static size_t _large_page_size = 0;
 
 bool os::Solaris::ism_sanity_check(bool warn, size_t * page_size) {
@@ -3284,23 +3283,29 @@
 }
 
 bool os::Solaris::mpss_sanity_check(bool warn, size_t * page_size) {
-  getpagesizes_func_type getpagesizes_func =
-    CAST_TO_FN_PTR(getpagesizes_func_type, dlsym(RTLD_DEFAULT, "getpagesizes"));
-  if (getpagesizes_func == NULL) {
-    if (warn) {
-      warning("MPSS is not supported by the operating system.");
-    }
-    return false;
-  }
-
   const unsigned int usable_count = VM_Version::page_size_count();
   if (usable_count == 1) {
     return false;
   }
 
+  // Find the right getpagesizes interface.  When solaris 11 is the minimum
+  // build platform, getpagesizes() (without the '2') can be called directly.
+  typedef int (*gps_t)(size_t[], int);
+  gps_t gps_func = CAST_TO_FN_PTR(gps_t, dlsym(RTLD_DEFAULT, "getpagesizes2"));
+  if (gps_func == NULL) {
+    gps_func = CAST_TO_FN_PTR(gps_t, dlsym(RTLD_DEFAULT, "getpagesizes"));
+    if (gps_func == NULL) {
+      if (warn) {
+        warning("MPSS is not supported by the operating system.");
+      }
+      return false;
+    }
+  }
+
   // Fill the array of page sizes.
-  int n = getpagesizes_func(_page_sizes, page_sizes_max);
+  int n = (*gps_func)(_page_sizes, page_sizes_max);
   assert(n > 0, "Solaris bug?");
+
   if (n == page_sizes_max) {
     // Add a sentinel value (necessary only if the array was completely filled
     // since it is static (zeroed at initialization)).
@@ -3308,6 +3313,7 @@
     DEBUG_ONLY(warning("increase the size of the os::_page_sizes array.");)
   }
   assert(_page_sizes[n] == 0, "missing sentinel");
+  trace_page_sizes("available page sizes", _page_sizes, n);
 
   if (n == 1) return false;     // Only one page size available.
 
@@ -3337,6 +3343,7 @@
   }
   *page_size = _page_sizes[0];
 
+  trace_page_sizes("usable page sizes", _page_sizes, end + 1);
   return true;
 }
 
diff --git a/hotspot/src/os/windows/vm/decoder_windows.cpp b/hotspot/src/os/windows/vm/decoder_windows.cpp
index c4eaf35..942f3ec 100644
--- a/hotspot/src/os/windows/vm/decoder_windows.cpp
+++ b/hotspot/src/os/windows/vm/decoder_windows.cpp
@@ -24,6 +24,7 @@
 
 #include "precompiled.hpp"
 #include "prims/jvm.h"
+#include "runtime/os.hpp"
 #include "utilities/decoder.hpp"
 
 HMODULE                   Decoder::_dbghelp_handle = NULL;
@@ -35,7 +36,7 @@
   if (!_initialized) {
     _initialized = true;
 
-    HMODULE handle = ::LoadLibrary("dbghelp.dll");
+    HINSTANCE handle = os::win32::load_Windows_dll("dbghelp.dll", NULL, 0);
     if (!handle) {
       _decoder_status = helper_not_found;
         return;
diff --git a/hotspot/src/os/windows/vm/jvm_windows.h b/hotspot/src/os/windows/vm/jvm_windows.h
index 6cb292b..dda8f8b 100644
--- a/hotspot/src/os/windows/vm/jvm_windows.h
+++ b/hotspot/src/os/windows/vm/jvm_windows.h
@@ -30,10 +30,33 @@
  * JNI conversion, which should be sorted out later.
  */
 
-#include <windows.h>
-// #include <windef.h>
-// #include <winbase.h>
+// JDK7 requires VS2010
+#if _MSC_VER >= 1600
+// JDK7 minimum platform requirement: Windows XP
+#if _WIN32_WINNT < 0x0501
+#undef _WIN32_WINNT
+#define _WIN32_WINNT  0x0501
+#endif
+#endif
 
+#include <windows.h>
+
+#if _MSC_VER <= 1200
+// Psapi.h doesn't come with Visual Studio 6; it can be downloaded as Platform
+// SDK from Microsoft.  Here are the definitions copied from Psapi.h
+typedef struct _MODULEINFO {
+    LPVOID lpBaseOfDll;
+    DWORD SizeOfImage;
+    LPVOID EntryPoint;
+} MODULEINFO, *LPMODULEINFO;
+
+#else
+#include <Psapi.h>
+#endif
+
+
+
+#include <Tlhelp32.h>
 
 // #include "jni.h"
 
diff --git a/hotspot/src/os/windows/vm/os_windows.cpp b/hotspot/src/os/windows/vm/os_windows.cpp
index cfa48b1..3db2442 100644
--- a/hotspot/src/os/windows/vm/os_windows.cpp
+++ b/hotspot/src/os/windows/vm/os_windows.cpp
@@ -98,7 +98,6 @@
 #include <imagehlp.h>             // For os::dll_address_to_function_name
 
 /* for enumerating dll libraries */
-#include <tlhelp32.h>
 #include <vdmdbg.h>
 
 // for timer info max values which include all bits
@@ -241,11 +240,11 @@
     /* Win32 library search order (See the documentation for LoadLibrary):
      *
      * 1. The directory from which application is loaded.
-     * 2. The current directory
-     * 3. The system wide Java Extensions directory (Java only)
-     * 4. System directory (GetSystemDirectory)
-     * 5. Windows directory (GetWindowsDirectory)
-     * 6. The PATH environment variable
+     * 2. The system wide Java Extensions directory (Java only)
+     * 3. System directory (GetSystemDirectory)
+     * 4. Windows directory (GetWindowsDirectory)
+     * 5. The PATH environment variable
+     * 6. The current directory
      */
 
     char *library_path;
@@ -261,8 +260,6 @@
     *(strrchr(tmp, '\\')) = '\0';
     strcat(library_path, tmp);
 
-    strcat(library_path, ";.");
-
     GetWindowsDirectory(tmp, sizeof(tmp));
     strcat(library_path, ";");
     strcat(library_path, tmp);
@@ -281,6 +278,8 @@
         strcat(library_path, path_str);
     }
 
+    strcat(library_path, ";.");
+
     Arguments::set_library_path(library_path);
     FREE_C_HEAP_ARRAY(char, library_path);
   }
@@ -939,7 +938,7 @@
     return;
   }
 
-  dbghelp = LoadLibrary("DBGHELP.DLL");
+  dbghelp = os::win32::load_Windows_dll("DBGHELP.DLL", NULL, 0);
 
   if (dbghelp == NULL) {
     VMError::report_coredump_status("Failed to load dbghelp.dll", false);
@@ -1204,70 +1203,6 @@
 
 //-----------------------------------------------------------
 // Helper functions for fatal error handler
-
-// The following library functions are resolved dynamically at runtime:
-
-// PSAPI functions, for Windows NT, 2000, XP
-
-// psapi.h doesn't come with Visual Studio 6; it can be downloaded as Platform
-// SDK from Microsoft.  Here are the definitions copied from psapi.h
-typedef struct _MODULEINFO {
-    LPVOID lpBaseOfDll;
-    DWORD SizeOfImage;
-    LPVOID EntryPoint;
-} MODULEINFO, *LPMODULEINFO;
-
-static BOOL  (WINAPI *_EnumProcessModules)  ( HANDLE, HMODULE *, DWORD, LPDWORD );
-static DWORD (WINAPI *_GetModuleFileNameEx) ( HANDLE, HMODULE, LPTSTR, DWORD );
-static BOOL  (WINAPI *_GetModuleInformation)( HANDLE, HMODULE, LPMODULEINFO, DWORD );
-
-// ToolHelp Functions, for Windows 95, 98 and ME
-
-static HANDLE(WINAPI *_CreateToolhelp32Snapshot)(DWORD,DWORD) ;
-static BOOL  (WINAPI *_Module32First)           (HANDLE,LPMODULEENTRY32) ;
-static BOOL  (WINAPI *_Module32Next)            (HANDLE,LPMODULEENTRY32) ;
-
-bool _has_psapi;
-bool _psapi_init = false;
-bool _has_toolhelp;
-
-static bool _init_psapi() {
-  HINSTANCE psapi = LoadLibrary( "PSAPI.DLL" ) ;
-  if( psapi == NULL ) return false ;
-
-  _EnumProcessModules = CAST_TO_FN_PTR(
-      BOOL(WINAPI *)(HANDLE, HMODULE *, DWORD, LPDWORD),
-      GetProcAddress(psapi, "EnumProcessModules")) ;
-  _GetModuleFileNameEx = CAST_TO_FN_PTR(
-      DWORD (WINAPI *)(HANDLE, HMODULE, LPTSTR, DWORD),
-      GetProcAddress(psapi, "GetModuleFileNameExA"));
-  _GetModuleInformation = CAST_TO_FN_PTR(
-      BOOL (WINAPI *)(HANDLE, HMODULE, LPMODULEINFO, DWORD),
-      GetProcAddress(psapi, "GetModuleInformation"));
-
-  _has_psapi = (_EnumProcessModules && _GetModuleFileNameEx && _GetModuleInformation);
-  _psapi_init = true;
-  return _has_psapi;
-}
-
-static bool _init_toolhelp() {
-  HINSTANCE kernel32 = LoadLibrary("Kernel32.DLL") ;
-  if (kernel32 == NULL) return false ;
-
-  _CreateToolhelp32Snapshot = CAST_TO_FN_PTR(
-      HANDLE(WINAPI *)(DWORD,DWORD),
-      GetProcAddress(kernel32, "CreateToolhelp32Snapshot"));
-  _Module32First = CAST_TO_FN_PTR(
-      BOOL(WINAPI *)(HANDLE,LPMODULEENTRY32),
-      GetProcAddress(kernel32, "Module32First" ));
-  _Module32Next = CAST_TO_FN_PTR(
-      BOOL(WINAPI *)(HANDLE,LPMODULEENTRY32),
-      GetProcAddress(kernel32, "Module32Next" ));
-
-  _has_toolhelp = (_CreateToolhelp32Snapshot && _Module32First && _Module32Next);
-  return _has_toolhelp;
-}
-
 #ifdef _WIN64
 // Helper routine which returns true if address in
 // within the NTDLL address space.
@@ -1279,7 +1214,7 @@
 
   hmod = GetModuleHandle("NTDLL.DLL");
   if ( hmod == NULL ) return false;
-  if ( !_GetModuleInformation( GetCurrentProcess(), hmod,
+  if ( !os::PSApiDll::GetModuleInformation( GetCurrentProcess(), hmod,
                                &minfo, sizeof(MODULEINFO)) )
     return false;
 
@@ -1318,14 +1253,16 @@
   static char filename[ MAX_PATH ];
   int         result = 0;
 
-  if (!_has_psapi && (_psapi_init || !_init_psapi())) return 0;
+  if (!os::PSApiDll::PSApiAvailable()) {
+    return 0;
+  }
 
   hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ,
                          FALSE, pid ) ;
   if (hProcess == NULL) return 0;
 
   DWORD size_needed;
-  if (!_EnumProcessModules(hProcess, modules,
+  if (!os::PSApiDll::EnumProcessModules(hProcess, modules,
                            sizeof(modules), &size_needed)) {
       CloseHandle( hProcess );
       return 0;
@@ -1336,13 +1273,13 @@
 
   for (int i = 0; i < MIN2(num_modules, MAX_NUM_MODULES); i++) {
     // Get Full pathname:
-    if(!_GetModuleFileNameEx(hProcess, modules[i],
+    if(!os::PSApiDll::GetModuleFileNameEx(hProcess, modules[i],
                              filename, sizeof(filename))) {
         filename[0] = '\0';
     }
 
     MODULEINFO modinfo;
-    if (!_GetModuleInformation(hProcess, modules[i],
+    if (!os::PSApiDll::GetModuleInformation(hProcess, modules[i],
                                &modinfo, sizeof(modinfo))) {
         modinfo.lpBaseOfDll = NULL;
         modinfo.SizeOfImage = 0;
@@ -1366,17 +1303,19 @@
   static MODULEENTRY32  modentry ;
   int                   result = 0;
 
-  if (!_has_toolhelp) return 0;
+  if (!os::Kernel32Dll::HelpToolsAvailable()) {
+    return 0;
+  }
 
   // Get a handle to a Toolhelp snapshot of the system
-  hSnapShot = _CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pid ) ;
+  hSnapShot = os::Kernel32Dll::CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pid ) ;
   if( hSnapShot == INVALID_HANDLE_VALUE ) {
       return FALSE ;
   }
 
   // iterate through all modules
   modentry.dwSize = sizeof(MODULEENTRY32) ;
-  bool not_done = _Module32First( hSnapShot, &modentry ) != 0;
+  bool not_done = os::Kernel32Dll::Module32First( hSnapShot, &modentry ) != 0;
 
   while( not_done ) {
     // invoke the callback
@@ -1385,7 +1324,7 @@
     if (result) break;
 
     modentry.dwSize = sizeof(MODULEENTRY32) ;
-    not_done = _Module32Next( hSnapShot, &modentry ) != 0;
+    not_done = os::Kernel32Dll::Module32Next( hSnapShot, &modentry ) != 0;
   }
 
   CloseHandle(hSnapShot);
@@ -1631,10 +1570,6 @@
    enumerate_modules(pid, _print_module, (void *)st);
 }
 
-// function pointer to Windows API "GetNativeSystemInfo".
-typedef void (WINAPI *GetNativeSystemInfo_func_type)(LPSYSTEM_INFO);
-static GetNativeSystemInfo_func_type _GetNativeSystemInfo;
-
 void os::print_os_info(outputStream* st) {
   st->print("OS:");
 
@@ -1661,17 +1596,10 @@
       // find out whether we are running on 64 bit processor or not.
       SYSTEM_INFO si;
       ZeroMemory(&si, sizeof(SYSTEM_INFO));
-      // Check to see if _GetNativeSystemInfo has been initialized.
-      if (_GetNativeSystemInfo == NULL) {
-        HMODULE hKernel32 = GetModuleHandle(TEXT("kernel32.dll"));
-        _GetNativeSystemInfo =
-            CAST_TO_FN_PTR(GetNativeSystemInfo_func_type,
-                           GetProcAddress(hKernel32,
-                                          "GetNativeSystemInfo"));
-        if (_GetNativeSystemInfo == NULL)
+        if (!os::Kernel32Dll::GetNativeSystemInfoAvailable()){
           GetSystemInfo(&si);
       } else {
-        _GetNativeSystemInfo(&si);
+        os::Kernel32Dll::GetNativeSystemInfo(&si);
       }
       if (os_vers == 5002) {
         if (osvi.wProductType == VER_NT_WORKSTATION &&
@@ -2683,47 +2611,14 @@
 #define MEM_LARGE_PAGES 0x20000000
 #endif
 
-// GetLargePageMinimum is only available on Windows 2003. The other functions
-// are available on NT but not on Windows 98/Me. We have to resolve them at
-// runtime.
-typedef SIZE_T (WINAPI *GetLargePageMinimum_func_type) (void);
-typedef BOOL (WINAPI *AdjustTokenPrivileges_func_type)
-             (HANDLE, BOOL, PTOKEN_PRIVILEGES, DWORD, PTOKEN_PRIVILEGES, PDWORD);
-typedef BOOL (WINAPI *OpenProcessToken_func_type) (HANDLE, DWORD, PHANDLE);
-typedef BOOL (WINAPI *LookupPrivilegeValue_func_type) (LPCTSTR, LPCTSTR, PLUID);
-
-static GetLargePageMinimum_func_type   _GetLargePageMinimum;
-static AdjustTokenPrivileges_func_type _AdjustTokenPrivileges;
-static OpenProcessToken_func_type      _OpenProcessToken;
-static LookupPrivilegeValue_func_type  _LookupPrivilegeValue;
-
-static HINSTANCE _kernel32;
-static HINSTANCE _advapi32;
 static HANDLE    _hProcess;
 static HANDLE    _hToken;
 
 static size_t _large_page_size = 0;
 
 static bool resolve_functions_for_large_page_init() {
-  _kernel32 = LoadLibrary("kernel32.dll");
-  if (_kernel32 == NULL) return false;
-
-  _GetLargePageMinimum   = CAST_TO_FN_PTR(GetLargePageMinimum_func_type,
-                            GetProcAddress(_kernel32, "GetLargePageMinimum"));
-  if (_GetLargePageMinimum == NULL) return false;
-
-  _advapi32 = LoadLibrary("advapi32.dll");
-  if (_advapi32 == NULL) return false;
-
-  _AdjustTokenPrivileges = CAST_TO_FN_PTR(AdjustTokenPrivileges_func_type,
-                            GetProcAddress(_advapi32, "AdjustTokenPrivileges"));
-  _OpenProcessToken      = CAST_TO_FN_PTR(OpenProcessToken_func_type,
-                            GetProcAddress(_advapi32, "OpenProcessToken"));
-  _LookupPrivilegeValue  = CAST_TO_FN_PTR(LookupPrivilegeValue_func_type,
-                            GetProcAddress(_advapi32, "LookupPrivilegeValueA"));
-  return _AdjustTokenPrivileges != NULL &&
-         _OpenProcessToken      != NULL &&
-         _LookupPrivilegeValue  != NULL;
+  return os::Kernel32Dll::GetLargePageMinimumAvailable() &&
+    os::Advapi32Dll::AdvapiAvailable();
 }
 
 static bool request_lock_memory_privilege() {
@@ -2732,8 +2627,8 @@
 
   LUID luid;
   if (_hProcess != NULL &&
-      _OpenProcessToken(_hProcess, TOKEN_ADJUST_PRIVILEGES, &_hToken) &&
-      _LookupPrivilegeValue(NULL, "SeLockMemoryPrivilege", &luid)) {
+      os::Advapi32Dll::OpenProcessToken(_hProcess, TOKEN_ADJUST_PRIVILEGES, &_hToken) &&
+      os::Advapi32Dll::LookupPrivilegeValue(NULL, "SeLockMemoryPrivilege", &luid)) {
 
     TOKEN_PRIVILEGES tp;
     tp.PrivilegeCount = 1;
@@ -2742,7 +2637,7 @@
 
     // AdjustTokenPrivileges() may return TRUE even when it couldn't change the
     // privilege. Check GetLastError() too. See MSDN document.
-    if (_AdjustTokenPrivileges(_hToken, false, &tp, sizeof(tp), NULL, NULL) &&
+    if (os::Advapi32Dll::AdjustTokenPrivileges(_hToken, false, &tp, sizeof(tp), NULL, NULL) &&
         (GetLastError() == ERROR_SUCCESS)) {
       return true;
     }
@@ -2752,14 +2647,6 @@
 }
 
 static void cleanup_after_large_page_init() {
-  _GetLargePageMinimum = NULL;
-  _AdjustTokenPrivileges = NULL;
-  _OpenProcessToken = NULL;
-  _LookupPrivilegeValue = NULL;
-  if (_kernel32) FreeLibrary(_kernel32);
-  _kernel32 = NULL;
-  if (_advapi32) FreeLibrary(_advapi32);
-  _advapi32 = NULL;
   if (_hProcess) CloseHandle(_hProcess);
   _hProcess = NULL;
   if (_hToken) CloseHandle(_hToken);
@@ -2777,7 +2664,7 @@
 # define WARN(msg) if (warn_on_failure) { warning(msg); }
   if (resolve_functions_for_large_page_init()) {
     if (request_lock_memory_privilege()) {
-      size_t s = _GetLargePageMinimum();
+      size_t s = os::Kernel32Dll::GetLargePageMinimum();
       if (s) {
 #if defined(IA32) || defined(AMD64)
         if (s > 4*M || LargePageSizeInBytes > 4*M) {
@@ -3190,18 +3077,10 @@
 os::YieldResult os::NakedYield() {
   // Use either SwitchToThread() or Sleep(0)
   // Consider passing back the return value from SwitchToThread().
-  // We use GetProcAddress() as ancient Win9X versions of windows doen't support SwitchToThread.
-  // In that case we revert to Sleep(0).
-  static volatile STTSignature stt = (STTSignature) 1 ;
-
-  if (stt == ((STTSignature) 1)) {
-    stt = (STTSignature) ::GetProcAddress (LoadLibrary ("Kernel32.dll"), "SwitchToThread") ;
-    // It's OK if threads race during initialization as the operation above is idempotent.
-  }
-  if (stt != NULL) {
-    return (*stt)() ? os::YIELD_SWITCHED : os::YIELD_NONEREADY ;
+  if (os::Kernel32Dll::SwitchToThreadAvailable()) {
+    return SwitchToThread() ? os::YIELD_SWITCHED : os::YIELD_NONEREADY ;
   } else {
-    Sleep (0) ;
+    Sleep(0);
   }
   return os::YIELD_UNKNOWN ;
 }
@@ -3425,6 +3304,44 @@
 }
 
 
+HINSTANCE os::win32::load_Windows_dll(const char* name, char *ebuf, int ebuflen) {
+  char path[MAX_PATH];
+  DWORD size;
+  DWORD pathLen = (DWORD)sizeof(path);
+  HINSTANCE result = NULL;
+
+  // only allow library name without path component
+  assert(strchr(name, '\\') == NULL, "path not allowed");
+  assert(strchr(name, ':') == NULL, "path not allowed");
+  if (strchr(name, '\\') != NULL || strchr(name, ':') != NULL) {
+    jio_snprintf(ebuf, ebuflen,
+      "Invalid parameter while calling os::win32::load_windows_dll(): cannot take path: %s", name);
+    return NULL;
+  }
+
+  // search system directory
+  if ((size = GetSystemDirectory(path, pathLen)) > 0) {
+    strcat(path, "\\");
+    strcat(path, name);
+    if ((result = (HINSTANCE)os::dll_load(path, ebuf, ebuflen)) != NULL) {
+      return result;
+    }
+  }
+
+  // try Windows directory
+  if ((size = GetWindowsDirectory(path, pathLen)) > 0) {
+    strcat(path, "\\");
+    strcat(path, name);
+    if ((result = (HINSTANCE)os::dll_load(path, ebuf, ebuflen)) != NULL) {
+      return result;
+    }
+  }
+
+  jio_snprintf(ebuf, ebuflen,
+    "os::win32::load_windows_dll() cannot load %s from system directories.", name);
+  return NULL;
+}
+
 void os::win32::setmode_streams() {
   _setmode(_fileno(stdin), _O_BINARY);
   _setmode(_fileno(stdout), _O_BINARY);
@@ -3658,10 +3575,6 @@
     }
   }
 
-  // initialize PSAPI or ToolHelp for fatal error handler
-  if (win32::is_nt()) _init_psapi();
-  else _init_toolhelp();
-
 #ifndef _WIN64
   // Print something if NX is enabled (win32 on AMD64)
   NOT_PRODUCT(if (PrintMiscellaneous && Verbose) nx_check_protection());
@@ -4708,12 +4621,6 @@
 // We don't build a headless jre for Windows
 bool os::is_headless_jre() { return false; }
 
-// OS_SocketInterface
-// Not used on Windows
-
-// OS_SocketInterface
-typedef struct hostent * (PASCAL FAR *ws2_ifn_ptr_t)(...);
-ws2_ifn_ptr_t *get_host_by_name_fn = NULL;
 
 typedef CRITICAL_SECTION mutex_t;
 #define mutexInit(m)    InitializeCriticalSection(m)
@@ -4721,58 +4628,36 @@
 #define mutexLock(m)    EnterCriticalSection(m)
 #define mutexUnlock(m)  LeaveCriticalSection(m)
 
-static bool sockfnptrs_initialized = FALSE;
+static bool sock_initialized = FALSE;
 static mutex_t sockFnTableMutex;
 
-/* is Winsock2 loaded? better to be explicit than to rely on sockfnptrs */
-static bool winsock2Available = FALSE;
-
-
-static void initSockFnTable() {
-  int (PASCAL FAR* WSAStartupPtr)(WORD, LPWSADATA);
+static void initSock() {
   WSADATA wsadata;
 
+  if (!os::WinSock2Dll::WinSock2Available()) {
+    jio_fprintf(stderr, "Could not load Winsock 2 (error: %d)\n",
+      ::GetLastError());
+    return;
+  }
+  if (sock_initialized == TRUE) return;
+
   ::mutexInit(&sockFnTableMutex);
   ::mutexLock(&sockFnTableMutex);
-
-  if (sockfnptrs_initialized == FALSE) {
-        HMODULE hWinsock;
-
-          /* try to load Winsock2, and if that fails, load Winsock */
-    hWinsock = ::LoadLibrary("ws2_32.dll");
-
-    if (hWinsock == NULL) {
-      jio_fprintf(stderr, "Could not load Winsock 2 (error: %d)\n",
-      ::GetLastError());
-      return;
-    }
-
-    /* If we loaded a DLL, then we might as well initialize it.  */
-    WSAStartupPtr = (int (PASCAL FAR *)(WORD, LPWSADATA))
-    ::GetProcAddress(hWinsock, "WSAStartup");
-
-    if (WSAStartupPtr(MAKEWORD(1,1), &wsadata) != 0) {
-        jio_fprintf(stderr, "Could not initialize Winsock\n");
-    }
-
-    get_host_by_name_fn
-        = (ws2_ifn_ptr_t*) GetProcAddress(hWinsock, "gethostbyname");
+  if (os::WinSock2Dll::WSAStartup(MAKEWORD(1,1), &wsadata) != 0) {
+      jio_fprintf(stderr, "Could not initialize Winsock\n");
   }
-
-  assert(get_host_by_name_fn != NULL,
-    "gethostbyname function not found");
-  sockfnptrs_initialized = TRUE;
+  sock_initialized = TRUE;
   ::mutexUnlock(&sockFnTableMutex);
 }
 
 struct hostent*  os::get_host_by_name(char* name) {
-  if (!sockfnptrs_initialized) {
-    initSockFnTable();
+  if (!sock_initialized) {
+    initSock();
   }
-
-  assert(sockfnptrs_initialized == TRUE && get_host_by_name_fn != NULL,
-    "sockfnptrs is not initialized or pointer to gethostbyname function is NULL");
-  return (*get_host_by_name_fn)(name);
+  if (!os::WinSock2Dll::WinSock2Available()) {
+    return NULL;
+  }
+  return (struct hostent*)os::WinSock2Dll::gethostbyname(name);
 }
 
 
@@ -4869,3 +4754,367 @@
   ShouldNotReachHere();
   return 0;
 }
+
+
+// Kernel32 API
+typedef SIZE_T (WINAPI* GetLargePageMinimum_Fn)(void);
+GetLargePageMinimum_Fn      os::Kernel32Dll::_GetLargePageMinimum = NULL;
+BOOL                        os::Kernel32Dll::initialized = FALSE;
+SIZE_T os::Kernel32Dll::GetLargePageMinimum() {
+  assert(initialized && _GetLargePageMinimum != NULL,
+    "GetLargePageMinimumAvailable() not yet called");
+  return _GetLargePageMinimum();
+}
+
+BOOL os::Kernel32Dll::GetLargePageMinimumAvailable() {
+  if (!initialized) {
+    initialize();
+  }
+  return _GetLargePageMinimum != NULL;
+}
+
+
+#ifndef JDK6_OR_EARLIER
+
+void os::Kernel32Dll::initialize() {
+  if (!initialized) {
+    HMODULE handle = ::GetModuleHandle("Kernel32.dll");
+    assert(handle != NULL, "Just check");
+    _GetLargePageMinimum = (GetLargePageMinimum_Fn)::GetProcAddress(handle, "GetLargePageMinimum");
+    initialized = TRUE;
+  }
+}
+
+
+// Kernel32 API
+inline BOOL os::Kernel32Dll::SwitchToThread() {
+  return ::SwitchToThread();
+}
+
+inline BOOL os::Kernel32Dll::SwitchToThreadAvailable() {
+  return true;
+}
+
+  // Help tools
+inline BOOL os::Kernel32Dll::HelpToolsAvailable() {
+  return true;
+}
+
+inline HANDLE os::Kernel32Dll::CreateToolhelp32Snapshot(DWORD dwFlags,DWORD th32ProcessId) {
+  return ::CreateToolhelp32Snapshot(dwFlags, th32ProcessId);
+}
+
+inline BOOL os::Kernel32Dll::Module32First(HANDLE hSnapshot,LPMODULEENTRY32 lpme) {
+  return ::Module32First(hSnapshot, lpme);
+}
+
+inline BOOL os::Kernel32Dll::Module32Next(HANDLE hSnapshot,LPMODULEENTRY32 lpme) {
+  return ::Module32Next(hSnapshot, lpme);
+}
+
+
+inline BOOL os::Kernel32Dll::GetNativeSystemInfoAvailable() {
+  return true;
+}
+
+inline void os::Kernel32Dll::GetNativeSystemInfo(LPSYSTEM_INFO lpSystemInfo) {
+  ::GetNativeSystemInfo(lpSystemInfo);
+}
+
+// PSAPI API
+inline BOOL os::PSApiDll::EnumProcessModules(HANDLE hProcess, HMODULE *lpModule, DWORD cb, LPDWORD lpcbNeeded) {
+  return ::EnumProcessModules(hProcess, lpModule, cb, lpcbNeeded);
+}
+
+inline DWORD os::PSApiDll::GetModuleFileNameEx(HANDLE hProcess, HMODULE hModule, LPTSTR lpFilename, DWORD nSize) {
+  return ::GetModuleFileNameEx(hProcess, hModule, lpFilename, nSize);
+}
+
+inline BOOL os::PSApiDll::GetModuleInformation(HANDLE hProcess, HMODULE hModule, LPMODULEINFO lpmodinfo, DWORD cb) {
+  return ::GetModuleInformation(hProcess, hModule, lpmodinfo, cb);
+}
+
+inline BOOL os::PSApiDll::PSApiAvailable() {
+  return true;
+}
+
+
+// WinSock2 API
+inline BOOL os::WinSock2Dll::WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData) {
+  return ::WSAStartup(wVersionRequested, lpWSAData);
+}
+
+inline struct hostent* os::WinSock2Dll::gethostbyname(const char *name) {
+  return ::gethostbyname(name);
+}
+
+inline BOOL os::WinSock2Dll::WinSock2Available() {
+  return true;
+}
+
+// Advapi API
+inline BOOL os::Advapi32Dll::AdjustTokenPrivileges(HANDLE TokenHandle,
+   BOOL DisableAllPrivileges, PTOKEN_PRIVILEGES NewState, DWORD BufferLength,
+   PTOKEN_PRIVILEGES PreviousState, PDWORD ReturnLength) {
+     return ::AdjustTokenPrivileges(TokenHandle, DisableAllPrivileges, NewState,
+       BufferLength, PreviousState, ReturnLength);
+}
+
+inline BOOL os::Advapi32Dll::OpenProcessToken(HANDLE ProcessHandle, DWORD DesiredAccess,
+  PHANDLE TokenHandle) {
+    return ::OpenProcessToken(ProcessHandle, DesiredAccess, TokenHandle);
+}
+
+inline BOOL os::Advapi32Dll::LookupPrivilegeValue(LPCTSTR lpSystemName, LPCTSTR lpName, PLUID lpLuid) {
+  return ::LookupPrivilegeValue(lpSystemName, lpName, lpLuid);
+}
+
+inline BOOL os::Advapi32Dll::AdvapiAvailable() {
+  return true;
+}
+
+#else
+// Kernel32 API
+typedef BOOL (WINAPI* SwitchToThread_Fn)(void);
+typedef HANDLE (WINAPI* CreateToolhelp32Snapshot_Fn)(DWORD,DWORD);
+typedef BOOL (WINAPI* Module32First_Fn)(HANDLE,LPMODULEENTRY32);
+typedef BOOL (WINAPI* Module32Next_Fn)(HANDLE,LPMODULEENTRY32);
+typedef void (WINAPI* GetNativeSystemInfo_Fn)(LPSYSTEM_INFO);
+
+SwitchToThread_Fn           os::Kernel32Dll::_SwitchToThread = NULL;
+CreateToolhelp32Snapshot_Fn os::Kernel32Dll::_CreateToolhelp32Snapshot = NULL;
+Module32First_Fn            os::Kernel32Dll::_Module32First = NULL;
+Module32Next_Fn             os::Kernel32Dll::_Module32Next = NULL;
+GetNativeSystemInfo_Fn      os::Kernel32Dll::_GetNativeSystemInfo = NULL;
+
+void os::Kernel32Dll::initialize() {
+  if (!initialized) {
+    HMODULE handle = ::GetModuleHandle("Kernel32.dll");
+    assert(handle != NULL, "Just check");
+
+    _SwitchToThread = (SwitchToThread_Fn)::GetProcAddress(handle, "SwitchToThread");
+    _GetLargePageMinimum = (GetLargePageMinimum_Fn)::GetProcAddress(handle, "GetLargePageMinimum");
+    _CreateToolhelp32Snapshot = (CreateToolhelp32Snapshot_Fn)
+      ::GetProcAddress(handle, "CreateToolhelp32Snapshot");
+    _Module32First = (Module32First_Fn)::GetProcAddress(handle, "Module32First");
+    _Module32Next = (Module32Next_Fn)::GetProcAddress(handle, "Module32Next");
+    _GetNativeSystemInfo = (GetNativeSystemInfo_Fn)::GetProcAddress(handle, "GetNativeSystemInfo");
+
+    initialized = TRUE;
+  }
+}
+
+BOOL os::Kernel32Dll::SwitchToThread() {
+  assert(initialized && _SwitchToThread != NULL,
+    "SwitchToThreadAvailable() not yet called");
+  return _SwitchToThread();
+}
+
+
+BOOL os::Kernel32Dll::SwitchToThreadAvailable() {
+  if (!initialized) {
+    initialize();
+  }
+  return _SwitchToThread != NULL;
+}
+
+// Help tools
+BOOL os::Kernel32Dll::HelpToolsAvailable() {
+  if (!initialized) {
+    initialize();
+  }
+  return _CreateToolhelp32Snapshot != NULL &&
+         _Module32First != NULL &&
+         _Module32Next != NULL;
+}
+
+HANDLE os::Kernel32Dll::CreateToolhelp32Snapshot(DWORD dwFlags,DWORD th32ProcessId) {
+  assert(initialized && _CreateToolhelp32Snapshot != NULL,
+    "HelpToolsAvailable() not yet called");
+
+  return _CreateToolhelp32Snapshot(dwFlags, th32ProcessId);
+}
+
+BOOL os::Kernel32Dll::Module32First(HANDLE hSnapshot,LPMODULEENTRY32 lpme) {
+  assert(initialized && _Module32First != NULL,
+    "HelpToolsAvailable() not yet called");
+
+  return _Module32First(hSnapshot, lpme);
+}
+
+inline BOOL os::Kernel32Dll::Module32Next(HANDLE hSnapshot,LPMODULEENTRY32 lpme) {
+  assert(initialized && _Module32Next != NULL,
+    "HelpToolsAvailable() not yet called");
+
+  return _Module32Next(hSnapshot, lpme);
+}
+
+
+BOOL os::Kernel32Dll::GetNativeSystemInfoAvailable() {
+  if (!initialized) {
+    initialize();
+  }
+  return _GetNativeSystemInfo != NULL;
+}
+
+void os::Kernel32Dll::GetNativeSystemInfo(LPSYSTEM_INFO lpSystemInfo) {
+  assert(initialized && _GetNativeSystemInfo != NULL,
+    "GetNativeSystemInfoAvailable() not yet called");
+
+  _GetNativeSystemInfo(lpSystemInfo);
+}
+
+// PSAPI API
+
+
+typedef BOOL (WINAPI *EnumProcessModules_Fn)(HANDLE, HMODULE *, DWORD, LPDWORD);
+typedef BOOL (WINAPI *GetModuleFileNameEx_Fn)(HANDLE, HMODULE, LPTSTR, DWORD);;
+typedef BOOL (WINAPI *GetModuleInformation_Fn)(HANDLE, HMODULE, LPMODULEINFO, DWORD);
+
+EnumProcessModules_Fn   os::PSApiDll::_EnumProcessModules = NULL;
+GetModuleFileNameEx_Fn  os::PSApiDll::_GetModuleFileNameEx = NULL;
+GetModuleInformation_Fn os::PSApiDll::_GetModuleInformation = NULL;
+BOOL                    os::PSApiDll::initialized = FALSE;
+
+void os::PSApiDll::initialize() {
+  if (!initialized) {
+    HMODULE handle = os::win32::load_Windows_dll("PSAPI.DLL", NULL, 0);
+    if (handle != NULL) {
+      _EnumProcessModules = (EnumProcessModules_Fn)::GetProcAddress(handle,
+        "EnumProcessModules");
+      _GetModuleFileNameEx = (GetModuleFileNameEx_Fn)::GetProcAddress(handle,
+        "GetModuleFileNameExA");
+      _GetModuleInformation = (GetModuleInformation_Fn)::GetProcAddress(handle,
+        "GetModuleInformation");
+    }
+    initialized = TRUE;
+  }
+}
+
+
+
+BOOL os::PSApiDll::EnumProcessModules(HANDLE hProcess, HMODULE *lpModule, DWORD cb, LPDWORD lpcbNeeded) {
+  assert(initialized && _EnumProcessModules != NULL,
+    "PSApiAvailable() not yet called");
+  return _EnumProcessModules(hProcess, lpModule, cb, lpcbNeeded);
+}
+
+DWORD os::PSApiDll::GetModuleFileNameEx(HANDLE hProcess, HMODULE hModule, LPTSTR lpFilename, DWORD nSize) {
+  assert(initialized && _GetModuleFileNameEx != NULL,
+    "PSApiAvailable() not yet called");
+  return _GetModuleFileNameEx(hProcess, hModule, lpFilename, nSize);
+}
+
+BOOL os::PSApiDll::GetModuleInformation(HANDLE hProcess, HMODULE hModule, LPMODULEINFO lpmodinfo, DWORD cb) {
+  assert(initialized && _GetModuleInformation != NULL,
+    "PSApiAvailable() not yet called");
+  return _GetModuleInformation(hProcess, hModule, lpmodinfo, cb);
+}
+
+BOOL os::PSApiDll::PSApiAvailable() {
+  if (!initialized) {
+    initialize();
+  }
+  return _EnumProcessModules != NULL &&
+    _GetModuleFileNameEx != NULL &&
+    _GetModuleInformation != NULL;
+}
+
+
+// WinSock2 API
+typedef int (PASCAL FAR* WSAStartup_Fn)(WORD, LPWSADATA);
+typedef struct hostent *(PASCAL FAR *gethostbyname_Fn)(...);
+
+WSAStartup_Fn    os::WinSock2Dll::_WSAStartup = NULL;
+gethostbyname_Fn os::WinSock2Dll::_gethostbyname = NULL;
+BOOL             os::WinSock2Dll::initialized = FALSE;
+
+void os::WinSock2Dll::initialize() {
+  if (!initialized) {
+    HMODULE handle = os::win32::load_Windows_dll("ws2_32.dll", NULL, 0);
+    if (handle != NULL) {
+      _WSAStartup = (WSAStartup_Fn)::GetProcAddress(handle, "WSAStartup");
+      _gethostbyname = (gethostbyname_Fn)::GetProcAddress(handle, "gethostbyname");
+    }
+    initialized = TRUE;
+  }
+}
+
+
+BOOL os::WinSock2Dll::WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData) {
+  assert(initialized && _WSAStartup != NULL,
+    "WinSock2Available() not yet called");
+  return _WSAStartup(wVersionRequested, lpWSAData);
+}
+
+struct hostent* os::WinSock2Dll::gethostbyname(const char *name) {
+  assert(initialized && _gethostbyname != NULL,
+    "WinSock2Available() not yet called");
+  return _gethostbyname(name);
+}
+
+BOOL os::WinSock2Dll::WinSock2Available() {
+  if (!initialized) {
+    initialize();
+  }
+  return _WSAStartup != NULL &&
+    _gethostbyname != NULL;
+}
+
+typedef BOOL (WINAPI *AdjustTokenPrivileges_Fn)(HANDLE, BOOL, PTOKEN_PRIVILEGES, DWORD, PTOKEN_PRIVILEGES, PDWORD);
+typedef BOOL (WINAPI *OpenProcessToken_Fn)(HANDLE, DWORD, PHANDLE);
+typedef BOOL (WINAPI *LookupPrivilegeValue_Fn)(LPCTSTR, LPCTSTR, PLUID);
+
+AdjustTokenPrivileges_Fn os::Advapi32Dll::_AdjustTokenPrivileges = NULL;
+OpenProcessToken_Fn      os::Advapi32Dll::_OpenProcessToken = NULL;
+LookupPrivilegeValue_Fn  os::Advapi32Dll::_LookupPrivilegeValue = NULL;
+BOOL                     os::Advapi32Dll::initialized = FALSE;
+
+void os::Advapi32Dll::initialize() {
+  if (!initialized) {
+    HMODULE handle = os::win32::load_Windows_dll("advapi32.dll", NULL, 0);
+    if (handle != NULL) {
+      _AdjustTokenPrivileges = (AdjustTokenPrivileges_Fn)::GetProcAddress(handle,
+        "AdjustTokenPrivileges");
+      _OpenProcessToken = (OpenProcessToken_Fn)::GetProcAddress(handle,
+        "OpenProcessToken");
+      _LookupPrivilegeValue = (LookupPrivilegeValue_Fn)::GetProcAddress(handle,
+        "LookupPrivilegeValueA");
+    }
+    initialized = TRUE;
+  }
+}
+
+BOOL os::Advapi32Dll::AdjustTokenPrivileges(HANDLE TokenHandle,
+   BOOL DisableAllPrivileges, PTOKEN_PRIVILEGES NewState, DWORD BufferLength,
+   PTOKEN_PRIVILEGES PreviousState, PDWORD ReturnLength) {
+   assert(initialized && _AdjustTokenPrivileges != NULL,
+     "AdvapiAvailable() not yet called");
+   return _AdjustTokenPrivileges(TokenHandle, DisableAllPrivileges, NewState,
+       BufferLength, PreviousState, ReturnLength);
+}
+
+BOOL os::Advapi32Dll::OpenProcessToken(HANDLE ProcessHandle, DWORD DesiredAccess,
+  PHANDLE TokenHandle) {
+   assert(initialized && _OpenProcessToken != NULL,
+     "AdvapiAvailable() not yet called");
+    return _OpenProcessToken(ProcessHandle, DesiredAccess, TokenHandle);
+}
+
+BOOL os::Advapi32Dll::LookupPrivilegeValue(LPCTSTR lpSystemName, LPCTSTR lpName, PLUID lpLuid) {
+   assert(initialized && _LookupPrivilegeValue != NULL,
+     "AdvapiAvailable() not yet called");
+  return _LookupPrivilegeValue(lpSystemName, lpName, lpLuid);
+}
+
+BOOL os::Advapi32Dll::AdvapiAvailable() {
+  if (!initialized) {
+    initialize();
+  }
+  return _AdjustTokenPrivileges != NULL &&
+    _OpenProcessToken != NULL &&
+    _LookupPrivilegeValue != NULL;
+}
+
+#endif
+
diff --git a/hotspot/src/os/windows/vm/os_windows.hpp b/hotspot/src/os/windows/vm/os_windows.hpp
index 5576f0b..a4ba317 100644
--- a/hotspot/src/os/windows/vm/os_windows.hpp
+++ b/hotspot/src/os/windows/vm/os_windows.hpp
@@ -24,7 +24,6 @@
 
 #ifndef OS_WINDOWS_VM_OS_WINDOWS_HPP
 #define OS_WINDOWS_VM_OS_WINDOWS_HPP
-
 // Win32_OS defines the interface to windows operating systems
 
 class win32 {
@@ -55,6 +54,9 @@
   static julong available_memory();
   static julong physical_memory() { return _physical_memory; }
 
+  // load dll from Windows system directory or Windows directory
+  static HINSTANCE load_Windows_dll(const char* name, char *ebuf, int ebuflen);
+
  public:
   // Generic interface:
 
@@ -132,4 +134,100 @@
 
 } ;
 
+// JDK7 requires VS2010
+#if _MSC_VER < 1600
+#define JDK6_OR_EARLIER 1
+#endif
+
+
+
+class WinSock2Dll: AllStatic {
+public:
+  static BOOL WSAStartup(WORD, LPWSADATA);
+  static struct hostent* gethostbyname(const char *name);
+  static BOOL WinSock2Available();
+#ifdef JDK6_OR_EARLIER
+private:
+  static int (PASCAL FAR* _WSAStartup)(WORD, LPWSADATA);
+  static struct hostent *(PASCAL FAR *_gethostbyname)(...);
+  static BOOL initialized;
+
+  static void initialize();
+#endif
+};
+
+class Kernel32Dll: AllStatic {
+public:
+  static BOOL SwitchToThread();
+  static SIZE_T GetLargePageMinimum();
+
+  static BOOL SwitchToThreadAvailable();
+  static BOOL GetLargePageMinimumAvailable();
+
+  // Help tools
+  static BOOL HelpToolsAvailable();
+  static HANDLE CreateToolhelp32Snapshot(DWORD,DWORD);
+  static BOOL Module32First(HANDLE,LPMODULEENTRY32);
+  static BOOL Module32Next(HANDLE,LPMODULEENTRY32);
+
+  static BOOL GetNativeSystemInfoAvailable();
+  static void GetNativeSystemInfo(LPSYSTEM_INFO);
+
+private:
+  // GetLargePageMinimum available on Windows Vista/Windows Server 2003
+  // and later
+  static SIZE_T (WINAPI *_GetLargePageMinimum)(void);
+  static BOOL initialized;
+
+  static void initialize();
+
+#ifdef JDK6_OR_EARLIER
+private:
+  static BOOL (WINAPI *_SwitchToThread)(void);
+  static HANDLE (WINAPI* _CreateToolhelp32Snapshot)(DWORD,DWORD);
+  static BOOL (WINAPI* _Module32First)(HANDLE,LPMODULEENTRY32);
+  static BOOL (WINAPI* _Module32Next)(HANDLE,LPMODULEENTRY32);
+  static void (WINAPI *_GetNativeSystemInfo)(LPSYSTEM_INFO);
+#endif
+
+};
+
+class Advapi32Dll: AllStatic {
+public:
+  static BOOL AdjustTokenPrivileges(HANDLE, BOOL, PTOKEN_PRIVILEGES, DWORD, PTOKEN_PRIVILEGES, PDWORD);
+  static BOOL OpenProcessToken(HANDLE, DWORD, PHANDLE);
+  static BOOL LookupPrivilegeValue(LPCTSTR, LPCTSTR, PLUID);
+
+  static BOOL AdvapiAvailable();
+
+#ifdef JDK6_OR_EARLIER
+private:
+  static BOOL (WINAPI *_AdjustTokenPrivileges)(HANDLE, BOOL, PTOKEN_PRIVILEGES, DWORD, PTOKEN_PRIVILEGES, PDWORD);
+  static BOOL (WINAPI *_OpenProcessToken)(HANDLE, DWORD, PHANDLE);
+  static BOOL (WINAPI *_LookupPrivilegeValue)(LPCTSTR, LPCTSTR, PLUID);
+  static BOOL initialized;
+
+  static void initialize();
+#endif
+};
+
+class PSApiDll: AllStatic {
+public:
+  static BOOL EnumProcessModules(HANDLE, HMODULE *, DWORD, LPDWORD);
+  static DWORD GetModuleFileNameEx(HANDLE, HMODULE, LPTSTR, DWORD);
+  static BOOL GetModuleInformation(HANDLE, HMODULE, LPMODULEINFO, DWORD);
+
+  static BOOL PSApiAvailable();
+
+#ifdef JDK6_OR_EARLIER
+private:
+  static BOOL (WINAPI *_EnumProcessModules)(HANDLE, HMODULE *, DWORD, LPDWORD);
+  static BOOL (WINAPI *_GetModuleFileNameEx)(HANDLE, HMODULE, LPTSTR, DWORD);;
+  static BOOL (WINAPI *_GetModuleInformation)(HANDLE, HMODULE, LPMODULEINFO, DWORD);
+  static BOOL initialized;
+
+  static void initialize();
+#endif
+};
+
 #endif // OS_WINDOWS_VM_OS_WINDOWS_HPP
diff --git a/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.ad b/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.ad
index c179d08..3d8283d 100644
--- a/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.ad
+++ b/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.ad
@@ -154,7 +154,7 @@
 
 
 uint MachBreakpointNode::size(PhaseRegAlloc *ra_) const {
-  return 5;
+  return MachNode::size(ra_);
 }
 
 %}
diff --git a/hotspot/src/os_cpu/linux_x86/vm/linux_x86_64.ad b/hotspot/src/os_cpu/linux_x86/vm/linux_x86_64.ad
index e19ea02..0127df5 100644
--- a/hotspot/src/os_cpu/linux_x86/vm/linux_x86_64.ad
+++ b/hotspot/src/os_cpu/linux_x86/vm/linux_x86_64.ad
@@ -167,7 +167,8 @@
 }
 
 uint MachBreakpointNode::size(PhaseRegAlloc* ra_) const {
-  return 5;
+  // distance could be far and requires load and call through register
+  return MachNode::size(ra_);
 }
 
 %}
diff --git a/hotspot/src/os_cpu/solaris_sparc/vm/solaris_sparc.s b/hotspot/src/os_cpu/solaris_sparc/vm/solaris_sparc.s
index d85dc5c..aa526a0 100644
--- a/hotspot/src/os_cpu/solaris_sparc/vm/solaris_sparc.s
+++ b/hotspot/src/os_cpu/solaris_sparc/vm/solaris_sparc.s
@@ -1,5 +1,5 @@
 !!
-!! Copyright (c) 2005, 2008 Oracle and/or its affiliates. All rights reserved.
+!! Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
 !! DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 !!
 !! This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp b/hotspot/src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp
index 31f86cf..d53de80 100644
--- a/hotspot/src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp
+++ b/hotspot/src/os_cpu/solaris_sparc/vm/vm_version_solaris_sparc.cpp
@@ -114,6 +114,11 @@
 #endif
     if (av & AV_SPARC_VIS3)         features |= vis3_instructions_m;
 
+#ifndef AV_SPARC_CBCOND
+#define AV_SPARC_CBCOND 0x10000000  /* compare and branch instrs supported */
+#endif
+    if (av & AV_SPARC_CBCOND)       features |= cbcond_instructions_m;
+
   } else {
     // getisax(2) failed, use the old legacy code.
 #ifndef PRODUCT
diff --git a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.ad b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.ad
index 3e6930a..0883527 100644
--- a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.ad
+++ b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.ad
@@ -161,7 +161,7 @@
 
 
 uint MachBreakpointNode::size(PhaseRegAlloc *ra_) const {
-  return 5;
+  return MachNode::size(ra_);
 }
 
 %}
diff --git a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.ad b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.ad
index 3b9c366..32a77c5 100644
--- a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.ad
+++ b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.ad
@@ -180,7 +180,8 @@
 
 uint MachBreakpointNode::size(PhaseRegAlloc* ra_) const
 {
-  return 5;
+  // distance could be far and requires load and call through register
+  return MachNode::size(ra_);
 }
 
 %}
diff --git a/hotspot/src/share/tools/ProjectCreator/WinGammaPlatformVC10.java b/hotspot/src/share/tools/ProjectCreator/WinGammaPlatformVC10.java
index 21c951d..4a96981 100644
--- a/hotspot/src/share/tools/ProjectCreator/WinGammaPlatformVC10.java
+++ b/hotspot/src/share/tools/ProjectCreator/WinGammaPlatformVC10.java
@@ -482,7 +482,7 @@
                 "/export:JVM_GetThreadStateNames "+
                 "/export:JVM_GetThreadStateValues "+
                 "/export:JVM_InitAgentProperties");
-        addAttr(rv, "AdditionalDependencies", "kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;Wsock32.lib;winmm.lib");
+        addAttr(rv, "AdditionalDependencies", "kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;Wsock32.lib;winmm.lib;psapi.lib");
         addAttr(rv, "OutputFile", outDll);
         addAttr(rv, "SuppressStartupBanner", "true");
         addAttr(rv, "ModuleDefinitionFile", outDir+Util.sep+"vm.def");
diff --git a/hotspot/src/share/tools/hsdis/README b/hotspot/src/share/tools/hsdis/README
index f7eb8b8..f3080cb 100644
--- a/hotspot/src/share/tools/hsdis/README
+++ b/hotspot/src/share/tools/hsdis/README
@@ -1,4 +1,4 @@
-Copyright (c) 2008 Oracle and/or its affiliates. All rights reserved.
+Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   
 This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/src/share/vm/adlc/adlparse.cpp b/hotspot/src/share/vm/adlc/adlparse.cpp
index c5381df..a730a0a 100644
--- a/hotspot/src/share/vm/adlc/adlparse.cpp
+++ b/hotspot/src/share/vm/adlc/adlparse.cpp
@@ -126,9 +126,6 @@
   if (_globalNames[AttributeForm::_ins_cost] == NULL) {
     parse_err(SEMERR, "Did not declare 'ins_cost' attribute");
   }
-  if (_globalNames[AttributeForm::_ins_pc_relative] == NULL) {
-    parse_err(SEMERR, "Did not declare 'ins_pc_relative' attribute");
-  }
   if (_globalNames[AttributeForm::_op_cost] == NULL) {
     parse_err(SEMERR, "Did not declare 'op_cost' attribute");
   }
diff --git a/hotspot/src/share/vm/adlc/archDesc.cpp b/hotspot/src/share/vm/adlc/archDesc.cpp
index e751b54..5b4c1fa 100644
--- a/hotspot/src/share/vm/adlc/archDesc.cpp
+++ b/hotspot/src/share/vm/adlc/archDesc.cpp
@@ -331,10 +331,18 @@
     // Find result type for match
     const char *result  = instr->reduce_result();
 
+    if ( instr->is_ideal_branch() && instr->label_position() == -1 ||
+        !instr->is_ideal_branch() && instr->label_position() != -1) {
+      syntax_err(instr->_linenum, "%s: Only branches to a label are supported\n", rootOp);
+    }
+
     Attribute *attr = instr->_attribs;
     while (attr != NULL) {
       if (strcmp(attr->_ident,"ins_short_branch") == 0 &&
           attr->int_val(*this) != 0) {
+        if (!instr->is_ideal_branch() || instr->label_position() == -1) {
+          syntax_err(instr->_linenum, "%s: Only short branch to a label is supported\n", rootOp);
+        }
         instr->set_short_branch(true);
       } else if (strcmp(attr->_ident,"ins_alignment") == 0 &&
           attr->int_val(*this) != 0) {
diff --git a/hotspot/src/share/vm/adlc/formssel.cpp b/hotspot/src/share/vm/adlc/formssel.cpp
index c659cdb..85118e8 100644
--- a/hotspot/src/share/vm/adlc/formssel.cpp
+++ b/hotspot/src/share/vm/adlc/formssel.cpp
@@ -291,15 +291,6 @@
 }
 
 
-// Return 'true' if this instruction matches an ideal 'Copy*' node
-bool InstructForm::is_ideal_unlock() const {
-  return _matrule ? _matrule->is_ideal_unlock() : false;
-}
-
-bool InstructForm::is_ideal_call_leaf() const {
-  return _matrule ? _matrule->is_ideal_call_leaf() : false;
-}
-
 // Return 'true' if this instruction matches an ideal 'If' node
 bool InstructForm::is_ideal_if() const {
   if( _matrule == NULL ) return false;
@@ -349,12 +340,11 @@
   return _matrule->is_ideal_jump();
 }
 
-// Return 'true' if instruction matches ideal 'If' | 'Goto' |
-//                    'CountedLoopEnd' | 'Jump'
+// Return 'true' if instruction matches ideal 'If' | 'Goto' | 'CountedLoopEnd'
 bool InstructForm::is_ideal_branch() const {
   if( _matrule == NULL ) return false;
 
-  return _matrule->is_ideal_if() || _matrule->is_ideal_goto() || _matrule->is_ideal_jump();
+  return _matrule->is_ideal_if() || _matrule->is_ideal_goto();
 }
 
 
@@ -392,7 +382,7 @@
 bool InstructForm::is_ideal_control() const {
   if ( ! _matrule)  return false;
 
-  return is_ideal_return() || is_ideal_branch() || is_ideal_halt();
+  return is_ideal_return() || is_ideal_branch() || _matrule->is_ideal_jump() || is_ideal_halt();
 }
 
 // Return 'true' if this instruction matches an ideal 'Call' node
@@ -633,6 +623,8 @@
 
   if( strcmp(_matrule->_opType,"MemBarRelease") == 0 ) return true;
   if( strcmp(_matrule->_opType,"MemBarAcquire") == 0 ) return true;
+  if( strcmp(_matrule->_opType,"MemBarReleaseLock") == 0 ) return true;
+  if( strcmp(_matrule->_opType,"MemBarAcquireLock") == 0 ) return true;
 
   return false;
 }
@@ -1094,6 +1086,9 @@
   else if (is_ideal_if()) {
     return "MachIfNode";
   }
+  else if (is_ideal_goto()) {
+    return "MachGotoNode";
+  }
   else if (is_ideal_fastlock()) {
     return "MachFastLockNode";
   }
@@ -1185,6 +1180,34 @@
       strcmp(reduce_result(), short_branch->reduce_result()) == 0 &&
       _matrule->equivalent(AD.globalNames(), short_branch->_matrule)) {
     // The instructions are equivalent.
+
+    // Now verify that both instructions have the same parameters and
+    // the same effects. Both branch forms should have the same inputs
+    // and resulting projections to correctly replace a long branch node
+    // with corresponding short branch node during code generation.
+
+    bool different = false;
+    if (short_branch->_components.count() != _components.count()) {
+       different = true;
+    } else if (_components.count() > 0) {
+      short_branch->_components.reset();
+      _components.reset();
+      Component *comp;
+      while ((comp = _components.iter()) != NULL) {
+        Component *short_comp = short_branch->_components.iter();
+        if (short_comp == NULL ||
+            short_comp->_type != comp->_type ||
+            short_comp->_usedef != comp->_usedef) {
+          different = true;
+          break;
+        }
+      }
+      if (short_branch->_components.iter() != NULL)
+        different = true;
+    }
+    if (different) {
+      globalAD->syntax_err(short_branch->_linenum, "Instruction %s and its short form %s have different parameters\n", _ident, short_branch->_ident);
+    }
     if (AD._short_branch_debug) {
       fprintf(stderr, "Instruction %s has short form %s\n", _ident, short_branch->_ident);
     }
@@ -2706,7 +2729,6 @@
 int         AttributeForm::_insId   = 0;           // start counter at 0
 int         AttributeForm::_opId    = 0;           // start counter at 0
 const char* AttributeForm::_ins_cost = "ins_cost"; // required name
-const char* AttributeForm::_ins_pc_relative = "ins_pc_relative";
 const char* AttributeForm::_op_cost  = "op_cost";  // required name
 
 AttributeForm::AttributeForm(char *attr, int type, char *attrdef)
@@ -3368,7 +3390,9 @@
     "ClearArray"
   };
   int cnt = sizeof(needs_ideal_memory_list)/sizeof(char*);
-  if( strcmp(_opType,"PrefetchRead")==0 || strcmp(_opType,"PrefetchWrite")==0 )
+  if( strcmp(_opType,"PrefetchRead")==0 ||
+      strcmp(_opType,"PrefetchWrite")==0 ||
+      strcmp(_opType,"PrefetchAllocation")==0 )
     return 1;
   if( _lChild ) {
     const char *opType = _lChild->_opType;
@@ -3623,7 +3647,27 @@
   assert( mNode2->_opType, "Must have _opType");
   const Form *form  = globals[_opType];
   const Form *form2 = globals[mNode2->_opType];
-  return (form == form2);
+  if( form != form2 ) {
+    return false;
+  }
+
+  // Check that their children also match
+  if (_lChild ) {
+    if( !_lChild->equivalent(globals, mNode2->_lChild) )
+      return false;
+  } else if (mNode2->_lChild) {
+    return false; // I have NULL left child, mNode2 has non-NULL left child.
+  }
+
+  if (_rChild ) {
+    if( !_rChild->equivalent(globals, mNode2->_rChild) )
+      return false;
+  } else if (mNode2->_rChild) {
+    return false; // I have NULL right child, mNode2 has non-NULL right child.
+  }
+
+  // We've made it through the gauntlet.
+  return true;
 }
 
 //-------------------------- has_commutative_op -------------------------------
@@ -3909,19 +3953,6 @@
   return 0;
 }
 
-bool MatchRule::is_ideal_unlock() const {
-  if( !_opType ) return false;
-  return !strcmp(_opType,"Unlock") || !strcmp(_opType,"FastUnlock");
-}
-
-
-bool MatchRule::is_ideal_call_leaf() const {
-  if( !_opType ) return false;
-  return !strcmp(_opType,"CallLeaf")     ||
-         !strcmp(_opType,"CallLeafNoFP");
-}
-
-
 bool MatchRule::is_ideal_if() const {
   if( !_opType ) return false;
   return
@@ -3941,6 +3972,8 @@
   return
     !strcmp(_opType,"MemBarAcquire"  ) ||
     !strcmp(_opType,"MemBarRelease"  ) ||
+    !strcmp(_opType,"MemBarAcquireLock") ||
+    !strcmp(_opType,"MemBarReleaseLock") ||
     !strcmp(_opType,"MemBarVolatile" ) ||
     !strcmp(_opType,"MemBarCPUOrder" ) ;
 }
diff --git a/hotspot/src/share/vm/adlc/formssel.hpp b/hotspot/src/share/vm/adlc/formssel.hpp
index 88ba702..50d7a70 100644
--- a/hotspot/src/share/vm/adlc/formssel.hpp
+++ b/hotspot/src/share/vm/adlc/formssel.hpp
@@ -145,8 +145,6 @@
   virtual int         is_empty_encoding() const; // _size=0 and/or _insencode empty
   virtual int         is_tls_instruction() const; // tlsLoadP rule or ideal ThreadLocal
   virtual int         is_ideal_copy() const;    // node matches ideal 'Copy*'
-  virtual bool        is_ideal_unlock() const;  // node matches ideal 'Unlock'
-  virtual bool        is_ideal_call_leaf() const; // node matches ideal 'CallLeaf'
   virtual bool        is_ideal_if()   const;    // node matches ideal 'If'
   virtual bool        is_ideal_fastlock() const; // node matches 'FastLock'
   virtual bool        is_ideal_membar() const;  // node matches ideal 'MemBarXXX'
@@ -857,7 +855,6 @@
   int  type() { return id;}        // return this object's "id"
 
   static const char* _ins_cost;        // "ins_cost"
-  static const char* _ins_pc_relative; // "ins_pc_relative"
   static const char* _op_cost;         // "op_cost"
 
   void dump();                     // Debug printer
@@ -1002,8 +999,6 @@
   bool       is_chain_rule(FormDict &globals) const;
   int        is_ideal_copy() const;
   int        is_expensive() const;     // node matches ideal 'CosD'
-  bool       is_ideal_unlock() const;
-  bool       is_ideal_call_leaf() const;
   bool       is_ideal_if()   const;    // node matches ideal 'If'
   bool       is_ideal_fastlock() const; // node matches ideal 'FastLock'
   bool       is_ideal_jump()   const;  // node matches ideal 'Jump'
diff --git a/hotspot/src/share/vm/adlc/output_c.cpp b/hotspot/src/share/vm/adlc/output_c.cpp
index c0ef389..493c31e 100644
--- a/hotspot/src/share/vm/adlc/output_c.cpp
+++ b/hotspot/src/share/vm/adlc/output_c.cpp
@@ -3088,12 +3088,19 @@
     int label_position = instr->label_position();
     if( label_position != -1 ) {
       // Set the label
-      fprintf(fp,"void %sNode::label_set( Label& label, uint block_num ) {\n", instr->_ident);
+      fprintf(fp,"void %sNode::label_set( Label* label, uint block_num ) {\n", instr->_ident);
       fprintf(fp,"  labelOper* oper  = (labelOper*)(opnd_array(%d));\n",
               label_position );
-      fprintf(fp,"  oper->_label     = &label;\n");
+      fprintf(fp,"  oper->_label     = label;\n");
       fprintf(fp,"  oper->_block_num = block_num;\n");
       fprintf(fp,"}\n");
+      // Save the label
+      fprintf(fp,"void %sNode::save_label( Label** label, uint* block_num ) {\n", instr->_ident);
+      fprintf(fp,"  labelOper* oper  = (labelOper*)(opnd_array(%d));\n",
+              label_position );
+      fprintf(fp,"  *label = oper->_label;\n");
+      fprintf(fp,"  *block_num = oper->_block_num;\n");
+      fprintf(fp,"}\n");
     }
   }
 
diff --git a/hotspot/src/share/vm/adlc/output_h.cpp b/hotspot/src/share/vm/adlc/output_h.cpp
index 08e8ca6..9e609b8 100644
--- a/hotspot/src/share/vm/adlc/output_h.cpp
+++ b/hotspot/src/share/vm/adlc/output_h.cpp
@@ -1519,8 +1519,9 @@
     // Declare Node::methods that set operand Label's contents
     int label_position = instr->label_position();
     if( label_position != -1 ) {
-      // Set the label, stored in labelOper::_branch_label
-      fprintf(fp,"  virtual void           label_set( Label& label, uint block_num );\n");
+      // Set/Save the label, stored in labelOper::_branch_label
+      fprintf(fp,"  virtual void           label_set( Label* label, uint block_num );\n");
+      fprintf(fp,"  virtual void           save_label( Label** label, uint* block_num );\n");
     }
 
     // If this instruction contains a methodOper
@@ -1536,16 +1537,16 @@
     // Each instruction attribute results in a virtual call of same name.
     // The ins_cost is not handled here.
     Attribute *attr = instr->_attribs;
-    bool is_pc_relative = false;
+    bool avoid_back_to_back = false;
     while (attr != NULL) {
       if (strcmp(attr->_ident,"ins_cost") &&
-          strcmp(attr->_ident,"ins_pc_relative")) {
+          strcmp(attr->_ident,"ins_short_branch")) {
         fprintf(fp,"  int             %s() const { return %s; }\n",
                 attr->_ident, attr->_val);
       }
-      // Check value for ins_pc_relative, and if it is true (1), set the flag
-      if (!strcmp(attr->_ident,"ins_pc_relative") && attr->int_val(*this) != 0)
-        is_pc_relative = true;
+      // Check value for ins_avoid_back_to_back, and if it is true (1), set the flag
+      if (!strcmp(attr->_ident,"ins_avoid_back_to_back") && attr->int_val(*this) != 0)
+        avoid_back_to_back = true;
       attr = (Attribute *)attr->_next;
     }
 
@@ -1657,20 +1658,10 @@
     fprintf(fp," _num_opnds = %d; _opnds = _opnd_array; ", instr->num_opnds());
 
     bool node_flags_set = false;
-    // flag: if this instruction matches an ideal 'Goto' node
-    if ( instr->is_ideal_goto() ) {
-      fprintf(fp,"init_flags(Flag_is_Goto");
-      node_flags_set = true;
-    }
-
     // flag: if this instruction matches an ideal 'Copy*' node
     if ( instr->is_ideal_copy() != 0 ) {
-      if ( node_flags_set ) {
-        fprintf(fp," | Flag_is_Copy");
-      } else {
-        fprintf(fp,"init_flags(Flag_is_Copy");
-        node_flags_set = true;
-      }
+      fprintf(fp,"init_flags(Flag_is_Copy");
+      node_flags_set = true;
     }
 
     // Is an instruction is a constant?  If so, get its type
@@ -1688,16 +1679,6 @@
       }
     }
 
-    // flag: if instruction matches 'If' | 'Goto' | 'CountedLoopEnd | 'Jump'
-    if ( instr->is_ideal_branch() ) {
-      if ( node_flags_set ) {
-        fprintf(fp," | Flag_is_Branch");
-      } else {
-        fprintf(fp,"init_flags(Flag_is_Branch");
-        node_flags_set = true;
-      }
-    }
-
     // flag: if this instruction is cisc alternate
     if ( can_cisc_spill() && instr->is_cisc_alternate() ) {
       if ( node_flags_set ) {
@@ -1708,16 +1689,6 @@
       }
     }
 
-    // flag: if this instruction is pc relative
-    if ( is_pc_relative ) {
-      if ( node_flags_set ) {
-        fprintf(fp," | Flag_is_pc_relative");
-      } else {
-        fprintf(fp,"init_flags(Flag_is_pc_relative");
-        node_flags_set = true;
-      }
-    }
-
     // flag: if this instruction has short branch form
     if ( instr->has_short_branch_form() ) {
       if ( node_flags_set ) {
@@ -1728,6 +1699,16 @@
       }
     }
 
+    // flag: if this instruction should not be generated back to back.
+    if ( avoid_back_to_back ) {
+      if ( node_flags_set ) {
+        fprintf(fp," | Flag_avoid_back_to_back");
+      } else {
+        fprintf(fp,"init_flags(Flag_avoid_back_to_back");
+        node_flags_set = true;
+      }
+    }
+
     // Check if machine instructions that USE memory, but do not DEF memory,
     // depend upon a node that defines memory in machine-independent graph.
     if ( instr->needs_anti_dependence_check(_globalNames) ) {
@@ -1743,10 +1724,6 @@
       fprintf(fp,"); ");
     }
 
-    if (instr->is_ideal_unlock() || instr->is_ideal_call_leaf()) {
-      fprintf(fp,"clear_flag(Flag_is_safepoint_node); ");
-    }
-
     fprintf(fp,"}\n");
 
     // size_of, used by base class's clone to obtain the correct size.
diff --git a/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp b/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp
index 1a6ad3d..266f75f 100644
--- a/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp
+++ b/hotspot/src/share/vm/c1/c1_GraphBuilder.cpp
@@ -3033,6 +3033,9 @@
   if (callee->should_exclude()) {
     // callee is excluded
     INLINE_BAILOUT("excluded by CompilerOracle")
+  } else if (callee->should_not_inline()) {
+    // callee is excluded
+    INLINE_BAILOUT("disallowed by CompilerOracle")
   } else if (!callee->can_be_compiled()) {
     // callee is not compilable (prob. has breakpoints)
     INLINE_BAILOUT("not compilable")
@@ -3410,24 +3413,6 @@
   // Proper inlining of methods with jsrs requires a little more work.
   if (callee->has_jsrs()                 ) INLINE_BAILOUT("jsrs not handled properly by inliner yet");
 
-  // now perform tests that are based on flag settings
-  if (inline_level() > MaxInlineLevel                         ) INLINE_BAILOUT("too-deep inlining");
-  if (recursive_inline_level(callee) > MaxRecursiveInlineLevel) INLINE_BAILOUT("too-deep recursive inlining");
-  if (callee->code_size() > max_inline_size()                 ) INLINE_BAILOUT("callee is too large");
-
-  // don't inline throwable methods unless the inlining tree is rooted in a throwable class
-  if (callee->name() == ciSymbol::object_initializer_name() &&
-      callee->holder()->is_subclass_of(ciEnv::current()->Throwable_klass())) {
-    // Throwable constructor call
-    IRScope* top = scope();
-    while (top->caller() != NULL) {
-      top = top->caller();
-    }
-    if (!top->method()->holder()->is_subclass_of(ciEnv::current()->Throwable_klass())) {
-      INLINE_BAILOUT("don't inline Throwable constructors");
-    }
-  }
-
   // When SSE2 is used on intel, then no special handling is needed
   // for strictfp because the enum-constant is fixed at compile time,
   // the check for UseSSE2 is needed here
@@ -3435,13 +3420,36 @@
     INLINE_BAILOUT("caller and callee have different strict fp requirements");
   }
 
-  if (compilation()->env()->num_inlined_bytecodes() > DesiredMethodLimit) {
-    INLINE_BAILOUT("total inlining greater than DesiredMethodLimit");
-  }
-
   if (is_profiling() && !callee->ensure_method_data()) {
     INLINE_BAILOUT("mdo allocation failed");
   }
+
+  // now perform tests that are based on flag settings
+  if (callee->should_inline()) {
+    // ignore heuristic controls on inlining
+  } else {
+    if (inline_level() > MaxInlineLevel                         ) INLINE_BAILOUT("too-deep inlining");
+    if (recursive_inline_level(callee) > MaxRecursiveInlineLevel) INLINE_BAILOUT("too-deep recursive inlining");
+    if (callee->code_size() > max_inline_size()                 ) INLINE_BAILOUT("callee is too large");
+
+    // don't inline throwable methods unless the inlining tree is rooted in a throwable class
+    if (callee->name() == ciSymbol::object_initializer_name() &&
+        callee->holder()->is_subclass_of(ciEnv::current()->Throwable_klass())) {
+      // Throwable constructor call
+      IRScope* top = scope();
+      while (top->caller() != NULL) {
+        top = top->caller();
+      }
+      if (!top->method()->holder()->is_subclass_of(ciEnv::current()->Throwable_klass())) {
+        INLINE_BAILOUT("don't inline Throwable constructors");
+      }
+    }
+
+    if (compilation()->env()->num_inlined_bytecodes() > DesiredMethodLimit) {
+      INLINE_BAILOUT("total inlining greater than DesiredMethodLimit");
+    }
+  }
+
 #ifndef PRODUCT
       // printing
   if (PrintInlining) {
diff --git a/hotspot/src/share/vm/ci/ciCallSite.cpp b/hotspot/src/share/vm/ci/ciCallSite.cpp
index b2118e8..794042a 100644
--- a/hotspot/src/share/vm/ci/ciCallSite.cpp
+++ b/hotspot/src/share/vm/ci/ciCallSite.cpp
@@ -28,6 +28,16 @@
 
 // ciCallSite
 
+bool ciCallSite::is_constant_call_site() {
+  return klass()->is_subclass_of(CURRENT_ENV->ConstantCallSite_klass());
+}
+bool ciCallSite::is_mutable_call_site() {
+  return klass()->is_subclass_of(CURRENT_ENV->MutableCallSite_klass());
+}
+bool ciCallSite::is_volatile_call_site() {
+  return klass()->is_subclass_of(CURRENT_ENV->VolatileCallSite_klass());
+}
+
 // ------------------------------------------------------------------
 // ciCallSite::get_target
 //
diff --git a/hotspot/src/share/vm/ci/ciCallSite.hpp b/hotspot/src/share/vm/ci/ciCallSite.hpp
index f9ad78d..063f1e3 100644
--- a/hotspot/src/share/vm/ci/ciCallSite.hpp
+++ b/hotspot/src/share/vm/ci/ciCallSite.hpp
@@ -37,6 +37,10 @@
   // What kind of ciObject is this?
   bool is_call_site() const { return true; }
 
+  bool is_constant_call_site();
+  bool is_mutable_call_site();
+  bool is_volatile_call_site();
+
   // Return the target MethodHandle of this CallSite.
   ciMethodHandle* get_target() const;
 
diff --git a/hotspot/src/share/vm/ci/ciField.hpp b/hotspot/src/share/vm/ci/ciField.hpp
index 6406dde..88b6aad 100644
--- a/hotspot/src/share/vm/ci/ciField.hpp
+++ b/hotspot/src/share/vm/ci/ciField.hpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -178,6 +178,8 @@
   bool is_volatile    () { return flags().is_volatile(); }
   bool is_transient   () { return flags().is_transient(); }
 
+  bool is_call_site_target() { return ((holder() == CURRENT_ENV->CallSite_klass()) && (name() == ciSymbol::target_name())); }
+
   // Debugging output
   void print();
   void print_name_on(outputStream* st);
diff --git a/hotspot/src/share/vm/classfile/classLoader.cpp b/hotspot/src/share/vm/classfile/classLoader.cpp
index 88dd616..0a3b5ca 100644
--- a/hotspot/src/share/vm/classfile/classLoader.cpp
+++ b/hotspot/src/share/vm/classfile/classLoader.cpp
@@ -1350,13 +1350,13 @@
                 _codecache_sweep_counter = 0;
               }
               // Force compilation
-              CompileBroker::compile_method(m, InvocationEntryBci, CompLevel_initial_compile,
+              CompileBroker::compile_method(m, InvocationEntryBci, CompilationPolicy::policy()->initial_compile_level(),
                                             methodHandle(), 0, "CTW", THREAD);
               if (HAS_PENDING_EXCEPTION) {
                 clear_pending_exception_if_not_oom(CHECK);
                 tty->print_cr("CompileTheWorld (%d) : Skipping method: %s", _compile_the_world_counter, m->name()->as_C_string());
               }
-              if (TieredCompilation) {
+              if (TieredCompilation && TieredStopAtLevel >= CompLevel_full_optimization) {
                 // Clobber the first compile and force second tier compilation
                 nmethod* nm = m->code();
                 if (nm != NULL) {
diff --git a/hotspot/src/share/vm/classfile/javaClasses.cpp b/hotspot/src/share/vm/classfile/javaClasses.cpp
index 684e96d..d32ac8f 100644
--- a/hotspot/src/share/vm/classfile/javaClasses.cpp
+++ b/hotspot/src/share/vm/classfile/javaClasses.cpp
@@ -1019,6 +1019,16 @@
   compute_offset(_ngroups_offset,     k, vmSymbols::ngroups_name(),     vmSymbols::int_signature());
 }
 
+oop java_lang_Throwable::unassigned_stacktrace() {
+  instanceKlass* ik = instanceKlass::cast(SystemDictionary::Throwable_klass());
+  address addr = ik->static_field_addr(static_unassigned_stacktrace_offset);
+  if (UseCompressedOops) {
+    return oopDesc::load_decode_heap_oop((narrowOop *)addr);
+  } else {
+    return oopDesc::load_decode_heap_oop((oop*)addr);
+  }
+}
+
 oop java_lang_Throwable::backtrace(oop throwable) {
   return throwable->obj_field_acquire(backtrace_offset);
 }
@@ -1044,9 +1054,13 @@
 }
 
 
+void java_lang_Throwable::set_stacktrace(oop throwable, oop st_element_array) {
+  throwable->obj_field_put(stackTrace_offset, st_element_array);
+}
+
 void java_lang_Throwable::clear_stacktrace(oop throwable) {
   assert(JDK_Version::is_gte_jdk14x_version(), "should only be called in >= 1.4");
-  throwable->obj_field_put(stackTrace_offset, NULL);
+  set_stacktrace(throwable, NULL);
 }
 
 
@@ -1340,6 +1354,7 @@
   if (JDK_Version::is_gte_jdk14x_version()) {
     // New since 1.4, clear lazily constructed Java level stacktrace if
     // refilling occurs
+    // This is unnecessary in 1.7+ but harmless
     clear_stacktrace(throwable());
   }
 
@@ -1541,6 +1556,15 @@
     // Bail-out for deep stacks
     if (chunk_count >= max_chunks) break;
   }
+
+  // For Java 7+ we support the Throwable immutability protocol defined for Java 7. This support
+  // was missing in 7u0 so in 7u0 there is a workaround in the Throwable class. That workaround
+  // can be removed in a JDK using this JVM version
+  if (JDK_Version::is_gte_jdk17x_version()) {
+      java_lang_Throwable::set_stacktrace(throwable(), java_lang_Throwable::unassigned_stacktrace());
+      assert(java_lang_Throwable::unassigned_stacktrace() != NULL, "not initialized");
+  }
+
 }
 
 
@@ -2770,6 +2794,7 @@
 int java_lang_Throwable::detailMessage_offset;
 int java_lang_Throwable::cause_offset;
 int java_lang_Throwable::stackTrace_offset;
+int java_lang_Throwable::static_unassigned_stacktrace_offset;
 int java_lang_reflect_AccessibleObject::override_offset;
 int java_lang_reflect_Method::clazz_offset;
 int java_lang_reflect_Method::name_offset;
@@ -2947,6 +2972,7 @@
   java_lang_Throwable::detailMessage_offset = java_lang_Throwable::hc_detailMessage_offset * x + header;
   java_lang_Throwable::cause_offset      = java_lang_Throwable::hc_cause_offset      * x + header;
   java_lang_Throwable::stackTrace_offset = java_lang_Throwable::hc_stackTrace_offset * x + header;
+  java_lang_Throwable::static_unassigned_stacktrace_offset = java_lang_Throwable::hc_static_unassigned_stacktrace_offset *  x;
 
   // java_lang_boxing_object
   java_lang_boxing_object::value_offset = java_lang_boxing_object::hc_value_offset + header;
diff --git a/hotspot/src/share/vm/classfile/javaClasses.hpp b/hotspot/src/share/vm/classfile/javaClasses.hpp
index 02c0ce9..7161252 100644
--- a/hotspot/src/share/vm/classfile/javaClasses.hpp
+++ b/hotspot/src/share/vm/classfile/javaClasses.hpp
@@ -393,6 +393,9 @@
     hc_cause_offset         =  2,  // New since 1.4
     hc_stackTrace_offset    =  3   // New since 1.4
   };
+  enum {
+      hc_static_unassigned_stacktrace_offset = 0  // New since 1.7
+  };
   // Trace constants
   enum {
     trace_methods_offset = 0,
@@ -406,6 +409,7 @@
   static int detailMessage_offset;
   static int cause_offset;
   static int stackTrace_offset;
+  static int static_unassigned_stacktrace_offset;
 
   // Printing
   static char* print_stack_element_to_buffer(methodOop method, int bci);
@@ -414,6 +418,9 @@
   static void clear_stacktrace(oop throwable);
   // No stack trace available
   static const char* no_stack_trace_message();
+  // Stacktrace (post JDK 1.7.0 to allow immutability protocol to be followed)
+  static void set_stacktrace(oop throwable, oop st_element_array);
+  static oop unassigned_stacktrace();
 
  public:
   // Backtrace
@@ -438,7 +445,6 @@
   static void allocate_backtrace(Handle throwable, TRAPS);
   // Fill in current stack trace for throwable with preallocated backtrace (no GC)
   static void fill_in_stack_trace_of_preallocated_backtrace(Handle throwable);
-
   // Fill in current stack trace, can cause GC
   static void fill_in_stack_trace(Handle throwable, methodHandle method, TRAPS);
   static void fill_in_stack_trace(Handle throwable, methodHandle method = methodHandle());
diff --git a/hotspot/src/share/vm/classfile/systemDictionary.cpp b/hotspot/src/share/vm/classfile/systemDictionary.cpp
index 892adb1..76ebb98 100644
--- a/hotspot/src/share/vm/classfile/systemDictionary.cpp
+++ b/hotspot/src/share/vm/classfile/systemDictionary.cpp
@@ -1978,7 +1978,7 @@
 
   // JSR 292 classes
   WKID jsr292_group_start = WK_KLASS_ENUM_NAME(MethodHandle_klass);
-  WKID jsr292_group_end   = WK_KLASS_ENUM_NAME(CallSite_klass);
+  WKID jsr292_group_end   = WK_KLASS_ENUM_NAME(VolatileCallSite_klass);
   initialize_wk_klasses_until(jsr292_group_start, scan, CHECK);
   if (EnableInvokeDynamic) {
     initialize_wk_klasses_through(jsr292_group_end, scan, CHECK);
diff --git a/hotspot/src/share/vm/classfile/systemDictionary.hpp b/hotspot/src/share/vm/classfile/systemDictionary.hpp
index dff9f07..4e33c42 100644
--- a/hotspot/src/share/vm/classfile/systemDictionary.hpp
+++ b/hotspot/src/share/vm/classfile/systemDictionary.hpp
@@ -144,18 +144,21 @@
   template(reflect_UnsafeStaticFieldAccessorImpl_klass, sun_reflect_UnsafeStaticFieldAccessorImpl, Opt_Only_JDK15) \
                                                                               \
   /* support for dynamic typing; it's OK if these are NULL in earlier JDKs */ \
-  template(MethodHandle_klass,           java_lang_invoke_MethodHandle,     Pre_JSR292) \
-  template(MemberName_klass,             java_lang_invoke_MemberName,       Pre_JSR292) \
-  template(MethodHandleNatives_klass,    java_lang_invoke_MethodHandleNatives, Pre_JSR292) \
-  template(AdapterMethodHandle_klass,    java_lang_invoke_AdapterMethodHandle, Pre_JSR292) \
-  template(BoundMethodHandle_klass,      java_lang_invoke_BoundMethodHandle, Pre_JSR292) \
-  template(DirectMethodHandle_klass,     java_lang_invoke_DirectMethodHandle, Pre_JSR292) \
-  template(MethodType_klass,             java_lang_invoke_MethodType,       Pre_JSR292) \
-  template(MethodTypeForm_klass,         java_lang_invoke_MethodTypeForm,   Pre_JSR292) \
-  template(BootstrapMethodError_klass,   java_lang_BootstrapMethodError, Pre_JSR292) \
+  template(MethodHandle_klass,             java_lang_invoke_MethodHandle,             Pre_JSR292) \
+  template(MemberName_klass,               java_lang_invoke_MemberName,               Pre_JSR292) \
+  template(MethodHandleNatives_klass,      java_lang_invoke_MethodHandleNatives,      Pre_JSR292) \
+  template(AdapterMethodHandle_klass,      java_lang_invoke_AdapterMethodHandle,      Pre_JSR292) \
+  template(BoundMethodHandle_klass,        java_lang_invoke_BoundMethodHandle,        Pre_JSR292) \
+  template(DirectMethodHandle_klass,       java_lang_invoke_DirectMethodHandle,       Pre_JSR292) \
+  template(MethodType_klass,               java_lang_invoke_MethodType,               Pre_JSR292) \
+  template(MethodTypeForm_klass,           java_lang_invoke_MethodTypeForm,           Pre_JSR292) \
+  template(BootstrapMethodError_klass,     java_lang_BootstrapMethodError,            Pre_JSR292) \
   template(WrongMethodTypeException_klass, java_lang_invoke_WrongMethodTypeException, Pre_JSR292) \
-  template(CallSite_klass,               java_lang_invoke_CallSite,         Pre_JSR292) \
-  /* Note: MethodHandle must be first, and CallSite last in group */          \
+  template(CallSite_klass,                 java_lang_invoke_CallSite,                 Pre_JSR292) \
+  template(ConstantCallSite_klass,         java_lang_invoke_ConstantCallSite,         Pre_JSR292) \
+  template(MutableCallSite_klass,          java_lang_invoke_MutableCallSite,          Pre_JSR292) \
+  template(VolatileCallSite_klass,         java_lang_invoke_VolatileCallSite,         Pre_JSR292) \
+  /* Note: MethodHandle must be first, and VolatileCallSite last in group */  \
                                                                               \
   template(StringBuffer_klass,           java_lang_StringBuffer,         Pre) \
   template(StringBuilder_klass,          java_lang_StringBuilder,        Pre) \
diff --git a/hotspot/src/share/vm/classfile/vmSymbols.hpp b/hotspot/src/share/vm/classfile/vmSymbols.hpp
index 3e367d2..f78be8c 100644
--- a/hotspot/src/share/vm/classfile/vmSymbols.hpp
+++ b/hotspot/src/share/vm/classfile/vmSymbols.hpp
@@ -233,6 +233,9 @@
   template(java_lang_invoke_InvokeDynamic,            "java/lang/invoke/InvokeDynamic")           \
   template(java_lang_invoke_Linkage,                  "java/lang/invoke/Linkage")                 \
   template(java_lang_invoke_CallSite,                 "java/lang/invoke/CallSite")                \
+  template(java_lang_invoke_ConstantCallSite,         "java/lang/invoke/ConstantCallSite")        \
+  template(java_lang_invoke_MutableCallSite,          "java/lang/invoke/MutableCallSite")         \
+  template(java_lang_invoke_VolatileCallSite,         "java/lang/invoke/VolatileCallSite")        \
   template(java_lang_invoke_MethodHandle,             "java/lang/invoke/MethodHandle")            \
   template(java_lang_invoke_MethodType,               "java/lang/invoke/MethodType")              \
   template(java_lang_invoke_WrongMethodTypeException, "java/lang/invoke/WrongMethodTypeException") \
diff --git a/hotspot/src/share/vm/code/dependencies.cpp b/hotspot/src/share/vm/code/dependencies.cpp
index c152965..4579b1e 100644
--- a/hotspot/src/share/vm/code/dependencies.cpp
+++ b/hotspot/src/share/vm/code/dependencies.cpp
@@ -113,6 +113,11 @@
   assert_common_1(no_finalizable_subclasses, ctxk);
 }
 
+void Dependencies::assert_call_site_target_value(ciKlass* ctxk, ciCallSite* call_site, ciMethodHandle* method_handle) {
+  check_ctxk(ctxk);
+  assert_common_3(call_site_target_value, ctxk, call_site, method_handle);
+}
+
 // Helper function.  If we are adding a new dep. under ctxk2,
 // try to find an old dep. under a broader* ctxk1.  If there is
 //
@@ -341,7 +346,8 @@
   "unique_concrete_method",
   "abstract_with_exclusive_concrete_subtypes_2",
   "exclusive_concrete_methods_2",
-  "no_finalizable_subclasses"
+  "no_finalizable_subclasses",
+  "call_site_target_value"
 };
 
 int Dependencies::_dep_args[TYPE_LIMIT] = {
@@ -354,7 +360,8 @@
   2, // unique_concrete_method ctxk, m
   3, // unique_concrete_subtypes_2 ctxk, k1, k2
   3, // unique_concrete_methods_2 ctxk, m1, m2
-  1  // no_finalizable_subclasses ctxk
+  1, // no_finalizable_subclasses ctxk
+  3  // call_site_target_value ctxk, call_site, method_handle
 };
 
 const char* Dependencies::dep_name(Dependencies::DepType dept) {
@@ -367,6 +374,13 @@
   return _dep_args[dept];
 }
 
+void Dependencies::check_valid_dependency_type(DepType dept) {
+  for (int deptv = (int) FIRST_TYPE; deptv < (int) TYPE_LIMIT; deptv++) {
+    if (dept == ((DepType) deptv))  return;
+  }
+  ShouldNotReachHere();
+}
+
 // for the sake of the compiler log, print out current dependencies:
 void Dependencies::log_all_dependencies() {
   if (log() == NULL)  return;
@@ -800,11 +814,11 @@
                                  bool participants_hide_witnesses,
                                  bool top_level_call = true);
   // the spot-checking version:
-  klassOop find_witness_in(DepChange& changes,
+  klassOop find_witness_in(KlassDepChange& changes,
                            klassOop context_type,
                            bool participants_hide_witnesses);
  public:
-  klassOop find_witness_subtype(klassOop context_type, DepChange* changes = NULL) {
+  klassOop find_witness_subtype(klassOop context_type, KlassDepChange* changes = NULL) {
     assert(doing_subtype_search(), "must set up a subtype search");
     // When looking for unexpected concrete types,
     // do not look beneath expected ones.
@@ -817,7 +831,7 @@
       return find_witness_anywhere(context_type, participants_hide_witnesses);
     }
   }
-  klassOop find_witness_definer(klassOop context_type, DepChange* changes = NULL) {
+  klassOop find_witness_definer(klassOop context_type, KlassDepChange* changes = NULL) {
     assert(!doing_subtype_search(), "must set up a method definer search");
     // When looking for unexpected concrete methods,
     // look beneath expected ones, to see if there are overrides.
@@ -878,7 +892,7 @@
 #endif //PRODUCT
 
 
-klassOop ClassHierarchyWalker::find_witness_in(DepChange& changes,
+klassOop ClassHierarchyWalker::find_witness_in(KlassDepChange& changes,
                                                klassOop context_type,
                                                bool participants_hide_witnesses) {
   assert(changes.involves_context(context_type), "irrelevant dependency");
@@ -1137,7 +1151,7 @@
 // when dealing with the types of actual instances.
 klassOop Dependencies::check_abstract_with_unique_concrete_subtype(klassOop ctxk,
                                                                    klassOop conck,
-                                                                   DepChange* changes) {
+                                                                   KlassDepChange* changes) {
   ClassHierarchyWalker wf(conck);
   return wf.find_witness_subtype(ctxk, changes);
 }
@@ -1146,7 +1160,7 @@
 // instantiatable.  This can allow the compiler to make some paths go
 // dead, if they are gated by a test of the type.
 klassOop Dependencies::check_abstract_with_no_concrete_subtype(klassOop ctxk,
-                                                               DepChange* changes) {
+                                                               KlassDepChange* changes) {
   // Find any concrete subtype, with no participants:
   ClassHierarchyWalker wf;
   return wf.find_witness_subtype(ctxk, changes);
@@ -1156,7 +1170,7 @@
 // If a concrete class has no concrete subtypes, it can always be
 // exactly typed.  This allows the use of a cheaper type test.
 klassOop Dependencies::check_concrete_with_no_concrete_subtype(klassOop ctxk,
-                                                               DepChange* changes) {
+                                                               KlassDepChange* changes) {
   // Find any concrete subtype, with only the ctxk as participant:
   ClassHierarchyWalker wf(ctxk);
   return wf.find_witness_subtype(ctxk, changes);
@@ -1217,7 +1231,7 @@
                                                 klassOop ctxk,
                                                 klassOop k1,
                                                 klassOop k2,
-                                                DepChange* changes) {
+                                                KlassDepChange* changes) {
   ClassHierarchyWalker wf;
   wf.add_participant(k1);
   wf.add_participant(k2);
@@ -1278,7 +1292,7 @@
 // If a class (or interface) has a unique concrete method uniqm, return NULL.
 // Otherwise, return a class that contains an interfering method.
 klassOop Dependencies::check_unique_concrete_method(klassOop ctxk, methodOop uniqm,
-                                                    DepChange* changes) {
+                                                    KlassDepChange* changes) {
   // Here is a missing optimization:  If uniqm->is_final(),
   // we don't really need to search beneath it for overrides.
   // This is probably not important, since we don't use dependencies
@@ -1321,7 +1335,7 @@
 klassOop Dependencies::check_exclusive_concrete_methods(klassOop ctxk,
                                                         methodOop m1,
                                                         methodOop m2,
-                                                        DepChange* changes) {
+                                                        KlassDepChange* changes) {
   ClassHierarchyWalker wf(m1);
   wf.add_participant(m1->method_holder());
   wf.add_participant(m2->method_holder());
@@ -1383,7 +1397,7 @@
 }
 
 
-klassOop Dependencies::check_has_no_finalizable_subclasses(klassOop ctxk, DepChange* changes) {
+klassOop Dependencies::check_has_no_finalizable_subclasses(klassOop ctxk, KlassDepChange* changes) {
   Klass* search_at = ctxk->klass_part();
   if (changes != NULL)
     search_at = changes->new_type()->klass_part(); // just look at the new bit
@@ -1395,8 +1409,39 @@
 }
 
 
-klassOop Dependencies::DepStream::check_dependency_impl(DepChange* changes) {
+klassOop Dependencies::check_call_site_target_value(klassOop ctxk, oop call_site, oop method_handle, CallSiteDepChange* changes) {
+  assert(call_site    ->is_a(SystemDictionary::CallSite_klass()),     "sanity");
+  assert(method_handle->is_a(SystemDictionary::MethodHandle_klass()), "sanity");
+  if (changes == NULL) {
+    // Validate all CallSites
+    if (java_lang_invoke_CallSite::target(call_site) != method_handle)
+      return ctxk;  // assertion failed
+  } else {
+    // Validate the given CallSite
+    if (call_site == changes->call_site() && java_lang_invoke_CallSite::target(call_site) != changes->method_handle()) {
+      assert(method_handle != changes->method_handle(), "must be");
+      return ctxk;  // assertion failed
+    }
+  }
+  assert(java_lang_invoke_CallSite::target(call_site) == method_handle, "should still be valid");
+  return NULL;  // assertion still valid
+}
+
+
+void Dependencies::DepStream::trace_and_log_witness(klassOop witness) {
+  if (witness != NULL) {
+    if (TraceDependencies) {
+      print_dependency(witness, /*verbose=*/ true);
+    }
+    // The following is a no-op unless logging is enabled:
+    log_dependency(witness);
+  }
+}
+
+
+klassOop Dependencies::DepStream::check_klass_dependency(KlassDepChange* changes) {
   assert_locked_or_safepoint(Compile_lock);
+  Dependencies::check_valid_dependency_type(type());
 
   klassOop witness = NULL;
   switch (type()) {
@@ -1407,95 +1452,103 @@
     witness = check_leaf_type(context_type());
     break;
   case abstract_with_unique_concrete_subtype:
-    witness = check_abstract_with_unique_concrete_subtype(context_type(),
-                                                          type_argument(1),
-                                                          changes);
+    witness = check_abstract_with_unique_concrete_subtype(context_type(), type_argument(1), changes);
     break;
   case abstract_with_no_concrete_subtype:
-    witness = check_abstract_with_no_concrete_subtype(context_type(),
-                                                      changes);
+    witness = check_abstract_with_no_concrete_subtype(context_type(), changes);
     break;
   case concrete_with_no_concrete_subtype:
-    witness = check_concrete_with_no_concrete_subtype(context_type(),
-                                                      changes);
+    witness = check_concrete_with_no_concrete_subtype(context_type(), changes);
     break;
   case unique_concrete_method:
-    witness = check_unique_concrete_method(context_type(),
-                                           method_argument(1),
-                                           changes);
+    witness = check_unique_concrete_method(context_type(), method_argument(1), changes);
     break;
   case abstract_with_exclusive_concrete_subtypes_2:
-    witness = check_abstract_with_exclusive_concrete_subtypes(context_type(),
-                                                              type_argument(1),
-                                                              type_argument(2),
-                                                              changes);
+    witness = check_abstract_with_exclusive_concrete_subtypes(context_type(), type_argument(1), type_argument(2), changes);
     break;
   case exclusive_concrete_methods_2:
-    witness = check_exclusive_concrete_methods(context_type(),
-                                               method_argument(1),
-                                               method_argument(2),
-                                               changes);
+    witness = check_exclusive_concrete_methods(context_type(), method_argument(1), method_argument(2), changes);
     break;
   case no_finalizable_subclasses:
-    witness = check_has_no_finalizable_subclasses(context_type(),
-                                                  changes);
+    witness = check_has_no_finalizable_subclasses(context_type(), changes);
     break;
-          default:
+  default:
     witness = NULL;
-    ShouldNotReachHere();
     break;
   }
-  if (witness != NULL) {
-    if (TraceDependencies) {
-      print_dependency(witness, /*verbose=*/ true);
-    }
-    // The following is a no-op unless logging is enabled:
-    log_dependency(witness);
+  trace_and_log_witness(witness);
+  return witness;
+}
+
+
+klassOop Dependencies::DepStream::check_call_site_dependency(CallSiteDepChange* changes) {
+  assert_locked_or_safepoint(Compile_lock);
+  Dependencies::check_valid_dependency_type(type());
+
+  klassOop witness = NULL;
+  switch (type()) {
+  case call_site_target_value:
+    witness = check_call_site_target_value(context_type(), argument(1), argument(2), changes);
+    break;
+  default:
+    witness = NULL;
+    break;
   }
+  trace_and_log_witness(witness);
   return witness;
 }
 
 
 klassOop Dependencies::DepStream::spot_check_dependency_at(DepChange& changes) {
-  if (!changes.involves_context(context_type()))
-    // irrelevant dependency; skip it
-    return NULL;
+  // Handle klass dependency
+  if (changes.is_klass_change() && changes.as_klass_change()->involves_context(context_type()))
+    return check_klass_dependency(changes.as_klass_change());
 
-  return check_dependency_impl(&changes);
+  // Handle CallSite dependency
+  if (changes.is_call_site_change())
+    return check_call_site_dependency(changes.as_call_site_change());
+
+  // irrelevant dependency; skip it
+  return NULL;
 }
 
 
-void DepChange::initialize() {
-  // entire transaction must be under this lock:
-  assert_lock_strong(Compile_lock);
-
-  // Mark all dependee and all its superclasses
-  // Mark transitive interfaces
+void DepChange::print() {
+  int nsup = 0, nint = 0;
   for (ContextStream str(*this); str.next(); ) {
-    klassOop d = str.klass();
-    assert(!instanceKlass::cast(d)->is_marked_dependent(), "checking");
-    instanceKlass::cast(d)->set_is_marked_dependent(true);
+    klassOop k = str.klass();
+    switch (str.change_type()) {
+    case Change_new_type:
+      tty->print_cr("  dependee = %s", instanceKlass::cast(k)->external_name());
+      break;
+    case Change_new_sub:
+      if (!WizardMode) {
+        ++nsup;
+      } else {
+        tty->print_cr("  context super = %s", instanceKlass::cast(k)->external_name());
+      }
+      break;
+    case Change_new_impl:
+      if (!WizardMode) {
+        ++nint;
+      } else {
+        tty->print_cr("  context interface = %s", instanceKlass::cast(k)->external_name());
+      }
+      break;
+    }
+  }
+  if (nsup + nint != 0) {
+    tty->print_cr("  context supers = %d, interfaces = %d", nsup, nint);
   }
 }
 
-DepChange::~DepChange() {
-  // Unmark all dependee and all its superclasses
-  // Unmark transitive interfaces
-  for (ContextStream str(*this); str.next(); ) {
-    klassOop d = str.klass();
-    instanceKlass::cast(d)->set_is_marked_dependent(false);
-  }
-}
-
-bool DepChange::involves_context(klassOop k) {
-  if (k == NULL || !Klass::cast(k)->oop_is_instance()) {
-    return false;
-  }
-  instanceKlass* ik = instanceKlass::cast(k);
-  bool is_contained = ik->is_marked_dependent();
-  assert(is_contained == Klass::cast(new_type())->is_subtype_of(k),
-         "correct marking of potential context types");
-  return is_contained;
+void DepChange::ContextStream::start() {
+  klassOop new_type = _changes.is_klass_change() ? _changes.as_klass_change()->new_type() : (klassOop) NULL;
+  _change_type = (new_type == NULL ? NO_CHANGE : Start_Klass);
+  _klass = new_type;
+  _ti_base = NULL;
+  _ti_index = 0;
+  _ti_limit = 0;
 }
 
 bool DepChange::ContextStream::next() {
@@ -1534,35 +1587,39 @@
   return false;
 }
 
-void DepChange::print() {
-  int nsup = 0, nint = 0;
+void KlassDepChange::initialize() {
+  // entire transaction must be under this lock:
+  assert_lock_strong(Compile_lock);
+
+  // Mark all dependee and all its superclasses
+  // Mark transitive interfaces
   for (ContextStream str(*this); str.next(); ) {
-    klassOop k = str.klass();
-    switch (str.change_type()) {
-    case Change_new_type:
-      tty->print_cr("  dependee = %s", instanceKlass::cast(k)->external_name());
-      break;
-    case Change_new_sub:
-      if (!WizardMode) {
-        ++nsup;
-      } else {
-        tty->print_cr("  context super = %s", instanceKlass::cast(k)->external_name());
-      }
-      break;
-    case Change_new_impl:
-      if (!WizardMode) {
-        ++nint;
-      } else {
-        tty->print_cr("  context interface = %s", instanceKlass::cast(k)->external_name());
-      }
-      break;
-    }
+    klassOop d = str.klass();
+    assert(!instanceKlass::cast(d)->is_marked_dependent(), "checking");
+    instanceKlass::cast(d)->set_is_marked_dependent(true);
   }
-  if (nsup + nint != 0) {
-    tty->print_cr("  context supers = %d, interfaces = %d", nsup, nint);
+}
+
+KlassDepChange::~KlassDepChange() {
+  // Unmark all dependee and all its superclasses
+  // Unmark transitive interfaces
+  for (ContextStream str(*this); str.next(); ) {
+    klassOop d = str.klass();
+    instanceKlass::cast(d)->set_is_marked_dependent(false);
   }
 }
 
+bool KlassDepChange::involves_context(klassOop k) {
+  if (k == NULL || !Klass::cast(k)->oop_is_instance()) {
+    return false;
+  }
+  instanceKlass* ik = instanceKlass::cast(k);
+  bool is_contained = ik->is_marked_dependent();
+  assert(is_contained == Klass::cast(new_type())->is_subtype_of(k),
+         "correct marking of potential context types");
+  return is_contained;
+}
+
 #ifndef PRODUCT
 void Dependencies::print_statistics() {
   if (deps_find_witness_print != 0) {
diff --git a/hotspot/src/share/vm/code/dependencies.hpp b/hotspot/src/share/vm/code/dependencies.hpp
index 770e7f7..b4d9303 100644
--- a/hotspot/src/share/vm/code/dependencies.hpp
+++ b/hotspot/src/share/vm/code/dependencies.hpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,18 +25,21 @@
 #ifndef SHARE_VM_CODE_DEPENDENCIES_HPP
 #define SHARE_VM_CODE_DEPENDENCIES_HPP
 
+#include "ci/ciCallSite.hpp"
 #include "ci/ciKlass.hpp"
+#include "ci/ciMethodHandle.hpp"
+#include "classfile/systemDictionary.hpp"
 #include "code/compressedStream.hpp"
 #include "code/nmethod.hpp"
 #include "utilities/growableArray.hpp"
 
 //** Dependencies represent assertions (approximate invariants) within
-// the class hierarchy.  An example is an assertion that a given
-// method is not overridden; another example is that a type has only
-// one concrete subtype.  Compiled code which relies on such
-// assertions must be discarded if they are overturned by changes in
-// the class hierarchy.  We can think of these assertions as
-// approximate invariants, because we expect them to be overturned
+// the runtime system, e.g. class hierarchy changes.  An example is an
+// assertion that a given method is not overridden; another example is
+// that a type has only one concrete subtype.  Compiled code which
+// relies on such assertions must be discarded if they are overturned
+// by changes in the runtime system.  We can think of these assertions
+// as approximate invariants, because we expect them to be overturned
 // very infrequently.  We are willing to perform expensive recovery
 // operations when they are overturned.  The benefit, of course, is
 // performing optimistic optimizations (!) on the object code.
@@ -52,6 +55,8 @@
 class xmlStream;
 class CompileLog;
 class DepChange;
+class   KlassDepChange;
+class   CallSiteDepChange;
 class No_Safepoint_Verifier;
 
 class Dependencies: public ResourceObj {
@@ -152,6 +157,9 @@
     // subclasses require finalization registration.
     no_finalizable_subclasses,
 
+    // This dependency asserts when the CallSite.target value changed.
+    call_site_target_value,
+
     TYPE_LIMIT
   };
   enum {
@@ -179,6 +187,7 @@
   static int  dep_context_arg(DepType dept) {
     return dept_in_mask(dept, ctxk_types)? 0: -1;
   }
+  static void check_valid_dependency_type(DepType dept);
 
  private:
   // State for writing a new set of dependencies:
@@ -255,6 +264,7 @@
   void assert_abstract_with_exclusive_concrete_subtypes(ciKlass* ctxk, ciKlass* k1, ciKlass* k2);
   void assert_exclusive_concrete_methods(ciKlass* ctxk, ciMethod* m1, ciMethod* m2);
   void assert_has_no_finalizable_subclasses(ciKlass* ctxk);
+  void assert_call_site_target_value(ciKlass* ctxk, ciCallSite* call_site, ciMethodHandle* method_handle);
 
   // Define whether a given method or type is concrete.
   // These methods define the term "concrete" as used in this module.
@@ -296,19 +306,19 @@
   static klassOop check_evol_method(methodOop m);
   static klassOop check_leaf_type(klassOop ctxk);
   static klassOop check_abstract_with_unique_concrete_subtype(klassOop ctxk, klassOop conck,
-                                                              DepChange* changes = NULL);
+                                                              KlassDepChange* changes = NULL);
   static klassOop check_abstract_with_no_concrete_subtype(klassOop ctxk,
-                                                          DepChange* changes = NULL);
+                                                          KlassDepChange* changes = NULL);
   static klassOop check_concrete_with_no_concrete_subtype(klassOop ctxk,
-                                                          DepChange* changes = NULL);
+                                                          KlassDepChange* changes = NULL);
   static klassOop check_unique_concrete_method(klassOop ctxk, methodOop uniqm,
-                                               DepChange* changes = NULL);
+                                               KlassDepChange* changes = NULL);
   static klassOop check_abstract_with_exclusive_concrete_subtypes(klassOop ctxk, klassOop k1, klassOop k2,
-                                                                  DepChange* changes = NULL);
+                                                                  KlassDepChange* changes = NULL);
   static klassOop check_exclusive_concrete_methods(klassOop ctxk, methodOop m1, methodOop m2,
-                                                   DepChange* changes = NULL);
-  static klassOop check_has_no_finalizable_subclasses(klassOop ctxk,
-                                                      DepChange* changes = NULL);
+                                                   KlassDepChange* changes = NULL);
+  static klassOop check_has_no_finalizable_subclasses(klassOop ctxk, KlassDepChange* changes = NULL);
+  static klassOop check_call_site_target_value(klassOop ctxk, oop call_site, oop method_handle, CallSiteDepChange* changes = NULL);
   // A returned klassOop is NULL if the dependency assertion is still
   // valid.  A non-NULL klassOop is a 'witness' to the assertion
   // failure, a point in the class hierarchy where the assertion has
@@ -415,7 +425,10 @@
     inline oop recorded_oop_at(int i);
         // => _code? _code->oop_at(i): *_deps->_oop_recorder->handle_at(i)
 
-    klassOop check_dependency_impl(DepChange* changes);
+    klassOop check_klass_dependency(KlassDepChange* changes);
+    klassOop check_call_site_dependency(CallSiteDepChange* changes);
+
+    void trace_and_log_witness(klassOop witness);
 
   public:
     DepStream(Dependencies* deps)
@@ -453,10 +466,13 @@
       return (klassOop) x;
     }
 
-    // The point of the whole exercise:  Is this dep is still OK?
+    // The point of the whole exercise:  Is this dep still OK?
     klassOop check_dependency() {
-      return check_dependency_impl(NULL);
+      klassOop result = check_klass_dependency(NULL);
+      if (result != NULL)  return result;
+      return check_call_site_dependency(NULL);
     }
+
     // A lighter version:  Checks only around recent changes in a class
     // hierarchy.  (See Universe::flush_dependents_on.)
     klassOop spot_check_dependency_at(DepChange& changes);
@@ -472,13 +488,27 @@
   static void print_statistics() PRODUCT_RETURN;
 };
 
-// A class hierarchy change coming through the VM (under the Compile_lock).
-// The change is structured as a single new type with any number of supers
-// and implemented interface types.  Other than the new type, any of the
-// super types can be context types for a relevant dependency, which the
-// new type could invalidate.
+
+// Every particular DepChange is a sub-class of this class.
 class DepChange : public StackObj {
  public:
+  // What kind of DepChange is this?
+  virtual bool is_klass_change()     const { return false; }
+  virtual bool is_call_site_change() const { return false; }
+
+  // Subclass casting with assertions.
+  KlassDepChange*    as_klass_change() {
+    assert(is_klass_change(), "bad cast");
+    return (KlassDepChange*) this;
+  }
+  CallSiteDepChange* as_call_site_change() {
+    assert(is_call_site_change(), "bad cast");
+    return (CallSiteDepChange*) this;
+  }
+
+  void print();
+
+ public:
   enum ChangeType {
     NO_CHANGE = 0,              // an uninvolved klass
     Change_new_type,            // a newly loaded type
@@ -488,28 +518,6 @@
     Start_Klass = CHANGE_LIMIT  // internal indicator for ContextStream
   };
 
- private:
-  // each change set is rooted in exactly one new type (at present):
-  KlassHandle _new_type;
-
-  void initialize();
-
- public:
-  // notes the new type, marks it and all its super-types
-  DepChange(KlassHandle new_type)
-    : _new_type(new_type)
-  {
-    initialize();
-  }
-
-  // cleans up the marks
-  ~DepChange();
-
-  klassOop new_type()                   { return _new_type(); }
-
-  // involves_context(k) is true if k is new_type or any of the super types
-  bool involves_context(klassOop k);
-
   // Usage:
   // for (DepChange::ContextStream str(changes); str.next(); ) {
   //   klassOop k = str.klass();
@@ -530,14 +538,7 @@
     int         _ti_limit;
 
     // start at the beginning:
-    void start() {
-      klassOop new_type = _changes.new_type();
-      _change_type = (new_type == NULL ? NO_CHANGE: Start_Klass);
-      _klass = new_type;
-      _ti_base = NULL;
-      _ti_index = 0;
-      _ti_limit = 0;
-    }
+    void start();
 
    public:
     ContextStream(DepChange& changes)
@@ -555,8 +556,62 @@
     klassOop   klass()           { return _klass; }
   };
   friend class DepChange::ContextStream;
+};
 
-  void print();
+
+// A class hierarchy change coming through the VM (under the Compile_lock).
+// The change is structured as a single new type with any number of supers
+// and implemented interface types.  Other than the new type, any of the
+// super types can be context types for a relevant dependency, which the
+// new type could invalidate.
+class KlassDepChange : public DepChange {
+ private:
+  // each change set is rooted in exactly one new type (at present):
+  KlassHandle _new_type;
+
+  void initialize();
+
+ public:
+  // notes the new type, marks it and all its super-types
+  KlassDepChange(KlassHandle new_type)
+    : _new_type(new_type)
+  {
+    initialize();
+  }
+
+  // cleans up the marks
+  ~KlassDepChange();
+
+  // What kind of DepChange is this?
+  virtual bool is_klass_change() const { return true; }
+
+  klassOop new_type() { return _new_type(); }
+
+  // involves_context(k) is true if k is new_type or any of the super types
+  bool involves_context(klassOop k);
+};
+
+
+// A CallSite has changed its target.
+class CallSiteDepChange : public DepChange {
+ private:
+  Handle _call_site;
+  Handle _method_handle;
+
+ public:
+  CallSiteDepChange(Handle call_site, Handle method_handle)
+    : _call_site(call_site),
+      _method_handle(method_handle)
+  {
+    assert(_call_site()    ->is_a(SystemDictionary::CallSite_klass()),     "must be");
+    assert(_method_handle()->is_a(SystemDictionary::MethodHandle_klass()), "must be");
+  }
+
+  // What kind of DepChange is this?
+  virtual bool is_call_site_change() const { return true; }
+
+  oop call_site()     const { return _call_site();     }
+  oop method_handle() const { return _method_handle(); }
 };
 
 #endif // SHARE_VM_CODE_DEPENDENCIES_HPP
diff --git a/hotspot/src/share/vm/code/nmethod.cpp b/hotspot/src/share/vm/code/nmethod.cpp
index 2908560..2449ca3 100644
--- a/hotspot/src/share/vm/code/nmethod.cpp
+++ b/hotspot/src/share/vm/code/nmethod.cpp
@@ -25,6 +25,7 @@
 #include "precompiled.hpp"
 #include "code/codeCache.hpp"
 #include "code/compiledIC.hpp"
+#include "code/dependencies.hpp"
 #include "code/nmethod.hpp"
 #include "code/scopeDesc.hpp"
 #include "compiler/abstractCompiler.hpp"
diff --git a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
index 9a2fb02..c5bd4ca 100644
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
@@ -2025,9 +2025,6 @@
                                             _intra_sweep_estimate.padded_average());
   }
 
-  {
-    TraceCMSMemoryManagerStats tmms(gch->gc_cause());
-  }
   GenMarkSweep::invoke_at_safepoint(_cmsGen->level(),
     ref_processor(), clear_all_soft_refs);
   #ifdef ASSERT
@@ -9345,15 +9342,3 @@
   }
 }
 
-// when bailing out of cms in concurrent mode failure
-TraceCMSMemoryManagerStats::TraceCMSMemoryManagerStats(GCCause::Cause cause): TraceMemoryManagerStats() {
-  initialize(true /* fullGC */ ,
-             cause /* cause of the GC */,
-             true /* recordGCBeginTime */,
-             true /* recordPreGCUsage */,
-             true /* recordPeakUsage */,
-             true /* recordPostGCusage */,
-             true /* recordAccumulatedGCTime */,
-             true /* recordGCEndTime */,
-             true /* countCollection */ );
-}
diff --git a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp
index 89b44e8..4406774 100644
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp
@@ -1900,7 +1900,6 @@
 
  public:
   TraceCMSMemoryManagerStats(CMSCollector::CollectorState phase, GCCause::Cause cause);
-  TraceCMSMemoryManagerStats(GCCause::Cause cause);
 };
 
 
diff --git a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
index add683c..1c8673f 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
@@ -801,39 +801,6 @@
   reset();
 }
 
-class CMMarkRootsClosure: public OopsInGenClosure {
-private:
-  ConcurrentMark*  _cm;
-  G1CollectedHeap* _g1h;
-  bool             _do_barrier;
-
-public:
-  CMMarkRootsClosure(ConcurrentMark* cm,
-                     G1CollectedHeap* g1h,
-                     bool do_barrier) : _cm(cm), _g1h(g1h),
-                                        _do_barrier(do_barrier) { }
-
-  virtual void do_oop(narrowOop* p) { do_oop_work(p); }
-  virtual void do_oop(      oop* p) { do_oop_work(p); }
-
-  template <class T> void do_oop_work(T* p) {
-    T heap_oop = oopDesc::load_heap_oop(p);
-    if (!oopDesc::is_null(heap_oop)) {
-      oop obj = oopDesc::decode_heap_oop_not_null(heap_oop);
-      assert(obj->is_oop() || obj->mark() == NULL,
-             "expected an oop, possibly with mark word displaced");
-      HeapWord* addr = (HeapWord*)obj;
-      if (_g1h->is_in_g1_reserved(addr)) {
-        _cm->grayRoot(obj);
-      }
-    }
-    if (_do_barrier) {
-      assert(!_g1h->is_in_g1_reserved(p),
-             "Should be called on external roots");
-      do_barrier(p);
-    }
-  }
-};
 
 void ConcurrentMark::checkpointRootsInitialPost() {
   G1CollectedHeap*   g1h = G1CollectedHeap::heap();
@@ -868,50 +835,6 @@
   // during it. No need to call it here.
 }
 
-// Checkpoint the roots into this generation from outside
-// this generation. [Note this initial checkpoint need only
-// be approximate -- we'll do a catch up phase subsequently.]
-void ConcurrentMark::checkpointRootsInitial() {
-  assert(SafepointSynchronize::is_at_safepoint(), "world should be stopped");
-  G1CollectedHeap* g1h = G1CollectedHeap::heap();
-
-  double start = os::elapsedTime();
-
-  G1CollectorPolicy* g1p = G1CollectedHeap::heap()->g1_policy();
-  g1p->record_concurrent_mark_init_start();
-  checkpointRootsInitialPre();
-
-  // YSR: when concurrent precleaning is in place, we'll
-  // need to clear the cached card table here
-
-  ResourceMark rm;
-  HandleMark  hm;
-
-  g1h->ensure_parsability(false);
-  g1h->perm_gen()->save_marks();
-
-  CMMarkRootsClosure notOlder(this, g1h, false);
-  CMMarkRootsClosure older(this, g1h, true);
-
-  g1h->set_marking_started();
-  g1h->rem_set()->prepare_for_younger_refs_iterate(false);
-
-  g1h->process_strong_roots(true,    // activate StrongRootsScope
-                            false,   // fake perm gen collection
-                            SharedHeap::SO_AllClasses,
-                            &notOlder, // Regular roots
-                            NULL,     // do not visit active blobs
-                            &older    // Perm Gen Roots
-                            );
-  checkpointRootsInitialPost();
-
-  // Statistics.
-  double end = os::elapsedTime();
-  _init_times.add((end - start) * 1000.0);
-
-  g1p->record_concurrent_mark_init_end();
-}
-
 /*
  * Notice that in the next two methods, we actually leave the STS
  * during the barrier sync and join it immediately afterwards. If we
diff --git a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp
index 1b4bb03..0aca642 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp
@@ -756,9 +756,6 @@
   // Clear the next marking bitmap (will be called concurrently).
   void clearNextBitmap();
 
-  // main CMS steps and related support
-  void checkpointRootsInitial();
-
   // These two do the work that needs to be done before and after the
   // initial root checkpoint. Since this checkpoint can be done at two
   // different points (i.e. an explicit pause or piggy-backed on a
diff --git a/hotspot/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp b/hotspot/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp
index 9fbf20f..85fb9a4 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp
@@ -50,19 +50,6 @@
   create_and_start();
 }
 
-class CMCheckpointRootsInitialClosure: public VoidClosure {
-
-  ConcurrentMark* _cm;
-public:
-
-  CMCheckpointRootsInitialClosure(ConcurrentMark* cm) :
-    _cm(cm) {}
-
-  void do_void(){
-    _cm->checkpointRootsInitial();
-  }
-};
-
 class CMCheckpointRootsFinalClosure: public VoidClosure {
 
   ConcurrentMark* _cm;
@@ -116,27 +103,6 @@
         gclog_or_tty->print_cr("[GC concurrent-mark-start]");
       }
 
-      if (!g1_policy->in_young_gc_mode()) {
-        // this ensures the flag is not set if we bail out of the marking
-        // cycle; normally the flag is cleared immediately after cleanup
-        g1h->set_marking_complete();
-
-        if (g1_policy->adaptive_young_list_length()) {
-          double now = os::elapsedTime();
-          double init_prediction_ms = g1_policy->predict_init_time_ms();
-          jlong sleep_time_ms = mmu_tracker->when_ms(now, init_prediction_ms);
-          os::sleep(current_thread, sleep_time_ms, false);
-        }
-
-        // We don't have to skip here if we've been asked to restart, because
-        // in the worst case we just enqueue a new VM operation to start a
-        // marking.  Note that the init operation resets has_aborted()
-        CMCheckpointRootsInitialClosure init_cl(_cm);
-        strcpy(verbose_str, "GC initial-mark");
-        VM_CGC_Operation op(&init_cl, verbose_str);
-        VMThread::execute(&op);
-      }
-
       int iter = 0;
       do {
         iter++;
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.cpp
index 5d0d916..ca31817 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.cpp
@@ -129,6 +129,7 @@
     // region in _alloc_region. This is the reason why an active region
     // can never be empty.
     _alloc_region = new_alloc_region;
+    _count += 1;
     trace("region allocation successful");
     return result;
   } else {
@@ -139,8 +140,8 @@
 }
 
 void G1AllocRegion::fill_in_ext_msg(ar_ext_msg* msg, const char* message) {
-  msg->append("[%s] %s b: %s r: "PTR_FORMAT" u: "SIZE_FORMAT,
-              _name, message, BOOL_TO_STR(_bot_updates),
+  msg->append("[%s] %s c: "SIZE_FORMAT" b: %s r: "PTR_FORMAT" u: "SIZE_FORMAT,
+              _name, message, _count, BOOL_TO_STR(_bot_updates),
               _alloc_region, _used_bytes_before);
 }
 
@@ -148,16 +149,34 @@
   trace("initializing");
   assert(_alloc_region == NULL && _used_bytes_before == 0,
          ar_ext_msg(this, "pre-condition"));
-  assert(_dummy_region != NULL, "should have been set");
+  assert(_dummy_region != NULL, ar_ext_msg(this, "should have been set"));
   _alloc_region = _dummy_region;
+  _count = 0;
   trace("initialized");
 }
 
+void G1AllocRegion::set(HeapRegion* alloc_region) {
+  trace("setting");
+  // We explicitly check that the region is not empty to make sure we
+  // maintain the "the alloc region cannot be empty" invariant.
+  assert(alloc_region != NULL && !alloc_region->is_empty(),
+         ar_ext_msg(this, "pre-condition"));
+  assert(_alloc_region == _dummy_region &&
+         _used_bytes_before == 0 && _count == 0,
+         ar_ext_msg(this, "pre-condition"));
+
+  _used_bytes_before = alloc_region->used();
+  _alloc_region = alloc_region;
+  _count += 1;
+  trace("set");
+}
+
 HeapRegion* G1AllocRegion::release() {
   trace("releasing");
   HeapRegion* alloc_region = _alloc_region;
   retire(false /* fill_up */);
-  assert(_alloc_region == _dummy_region, "post-condition of retire()");
+  assert(_alloc_region == _dummy_region,
+         ar_ext_msg(this, "post-condition of retire()"));
   _alloc_region = NULL;
   trace("released");
   return (alloc_region == _dummy_region) ? NULL : alloc_region;
@@ -196,7 +215,8 @@
       jio_snprintf(rest_buffer, buffer_length, "");
     }
 
-    tty->print_cr("[%s] %s : %s %s", _name, hr_buffer, str, rest_buffer);
+    tty->print_cr("[%s] "SIZE_FORMAT" %s : %s %s",
+                  _name, _count, hr_buffer, str, rest_buffer);
   }
 }
 #endif // G1_ALLOC_REGION_TRACING
@@ -204,5 +224,5 @@
 G1AllocRegion::G1AllocRegion(const char* name,
                              bool bot_updates)
   : _name(name), _bot_updates(bot_updates),
-    _alloc_region(NULL), _used_bytes_before(0) { }
+    _alloc_region(NULL), _count(0), _used_bytes_before(0) { }
 
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.hpp
index d329d1e..caf7ff9 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1AllocRegion.hpp
@@ -36,7 +36,7 @@
 
 // A class that holds a region that is active in satisfying allocation
 // requests, potentially issued in parallel. When the active region is
-// full it will be retired it replaced with a new one. The
+// full it will be retired and replaced with a new one. The
 // implementation assumes that fast-path allocations will be lock-free
 // and a lock will need to be taken when the active region needs to be
 // replaced.
@@ -57,13 +57,22 @@
   // correct use of init() and release()).
   HeapRegion* _alloc_region;
 
+  // It keeps track of the distinct number of regions that are used
+  // for allocation in the active interval of this object, i.e.,
+  // between a call to init() and a call to release(). The count
+  // mostly includes regions that are freshly allocated, as well as
+  // the region that is re-used using the set() method. This count can
+  // be used in any heuristics that might want to bound how many
+  // distinct regions this object can used during an active interval.
+  size_t _count;
+
   // When we set up a new active region we save its used bytes in this
   // field so that, when we retire it, we can calculate how much space
   // we allocated in it.
   size_t _used_bytes_before;
 
-  // Specifies whether the allocate calls will do BOT updates or not.
-  bool _bot_updates;
+  // When true, indicates that allocate calls should do BOT updates.
+  const bool _bot_updates;
 
   // Useful for debugging and tracing.
   const char* _name;
@@ -127,6 +136,8 @@
     return (_alloc_region == _dummy_region) ? NULL : _alloc_region;
   }
 
+  size_t count() { return _count; }
+
   // The following two are the building blocks for the allocation method.
 
   // First-level allocation: Should be called without holding a
@@ -153,6 +164,12 @@
   // Should be called before we start using this object.
   void init();
 
+  // This can be used to set the active region to a specific
+  // region. (Use Example: we try to retain the last old GC alloc
+  // region that we've used during a GC and we can use set() to
+  // re-instate it at the beginning of the next GC.)
+  void set(HeapRegion* alloc_region);
+
   // Should be called when we want to release the active region which
   // is returned after it's been retired.
   HeapRegion* release();
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
index 1029d6c..48b017d 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
@@ -587,26 +587,6 @@
   return res;
 }
 
-HeapRegion* G1CollectedHeap::new_gc_alloc_region(int purpose,
-                                                 size_t word_size) {
-  HeapRegion* alloc_region = NULL;
-  if (_gc_alloc_region_counts[purpose] < g1_policy()->max_regions(purpose)) {
-    alloc_region = new_region(word_size, true /* do_expand */);
-    if (alloc_region != NULL) {
-      if (purpose == GCAllocForSurvived) {
-        _hr_printer.alloc(alloc_region, G1HRPrinter::Survivor);
-        alloc_region->set_survivor();
-      } else {
-        _hr_printer.alloc(alloc_region, G1HRPrinter::Old);
-      }
-      ++_gc_alloc_region_counts[purpose];
-    }
-  } else {
-    g1_policy()->note_alloc_region_limit_reached(purpose);
-  }
-  return alloc_region;
-}
-
 size_t G1CollectedHeap::humongous_obj_allocate_find_first(size_t num_regions,
                                                           size_t word_size) {
   assert(isHumongous(word_size), "word_size should be humongous");
@@ -1091,12 +1071,6 @@
   ShouldNotReachHere();
 }
 
-void G1CollectedHeap::abandon_gc_alloc_regions() {
-  // first, make sure that the GC alloc region list is empty (it should!)
-  assert(_gc_alloc_region_list == NULL, "invariant");
-  release_gc_alloc_regions(true /* totally */);
-}
-
 class PostMCRemSetClearClosure: public HeapRegionClosure {
   ModRefBarrierSet* _mr_bs;
 public:
@@ -1253,6 +1227,7 @@
                        /* option      */ VerifyOption_G1UsePrevMarking);
 
     }
+    pre_full_gc_dump();
 
     COMPILER2_PRESENT(DerivedPointerTable::clear());
 
@@ -1289,10 +1264,8 @@
     g1_policy()->clear_incremental_cset();
     g1_policy()->stop_incremental_cset_building();
 
-    if (g1_policy()->in_young_gc_mode()) {
-      empty_young_list();
-      g1_policy()->set_full_young_gcs(true);
-    }
+    empty_young_list();
+    g1_policy()->set_full_young_gcs(true);
 
     // See the comment in G1CollectedHeap::ref_processing_init() about
     // how reference processing currently works in G1.
@@ -1413,13 +1386,11 @@
            || (G1DeferredRSUpdate && (dirty_card_queue_set().completed_buffers_num() == 0)), "Should not be any");
   }
 
-  if (g1_policy()->in_young_gc_mode()) {
-    _young_list->reset_sampled_info();
-    // At this point there should be no regions in the
-    // entire heap tagged as young.
-    assert( check_young_list_empty(true /* check_heap */),
-            "young list should be empty at this point");
-  }
+  _young_list->reset_sampled_info();
+  // At this point there should be no regions in the
+  // entire heap tagged as young.
+  assert( check_young_list_empty(true /* check_heap */),
+    "young list should be empty at this point");
 
   // Update the number of full collections that have been completed.
   increment_full_collections_completed(false /* concurrent */);
@@ -1431,6 +1402,7 @@
     Universe::print_heap_after_gc();
   }
   g1mm()->update_counters();
+  post_full_gc_dump();
 
   return true;
 }
@@ -1781,7 +1753,11 @@
 void G1CollectedHeap::shrink(size_t shrink_bytes) {
   verify_region_sets_optional();
 
-  release_gc_alloc_regions(true /* totally */);
+  // We should only reach here at the end of a Full GC which means we
+  // should not not be holding to any GC alloc regions. The method
+  // below will make sure of that and do any remaining clean up.
+  abandon_gc_alloc_regions();
+
   // Instead of tearing down / rebuilding the free lists here, we
   // could instead use the remove_all_pending() method on free_list to
   // remove only the ones that we need to remove.
@@ -1821,6 +1797,7 @@
   _free_regions_coming(false),
   _young_list(new YoungList(this)),
   _gc_time_stamp(0),
+  _retained_old_gc_alloc_region(NULL),
   _surviving_young_words(NULL),
   _full_collections_completed(0),
   _in_cset_fast_test(NULL),
@@ -1852,20 +1829,6 @@
     _task_queues->register_queue(i, q);
   }
 
-  for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-    _gc_alloc_regions[ap]          = NULL;
-    _gc_alloc_region_counts[ap]    = 0;
-    _retained_gc_alloc_regions[ap] = NULL;
-    // by default, we do not retain a GC alloc region for each ap;
-    // we'll override this, when appropriate, below
-    _retain_gc_alloc_region[ap]    = false;
-  }
-
-  // We will try to remember the last half-full tenured region we
-  // allocated to at the end of a collection so that we can re-use it
-  // during the next collection.
-  _retain_gc_alloc_region[GCAllocForTenured]  = true;
-
   guarantee(_task_queues != NULL, "task_queues allocation failure.");
 }
 
@@ -1901,12 +1864,27 @@
   PermanentGenerationSpec* pgs = collector_policy()->permanent_generation();
   // Includes the perm-gen.
 
-  const size_t total_reserved = max_byte_size + pgs->max_size();
+  // When compressed oops are enabled, the preferred heap base
+  // is calculated by subtracting the requested size from the
+  // 32Gb boundary and using the result as the base address for
+  // heap reservation. If the requested size is not aligned to
+  // HeapRegion::GrainBytes (i.e. the alignment that is passed
+  // into the ReservedHeapSpace constructor) then the actual
+  // base of the reserved heap may end up differing from the
+  // address that was requested (i.e. the preferred heap base).
+  // If this happens then we could end up using a non-optimal
+  // compressed oops mode.
+
+  // Since max_byte_size is aligned to the size of a heap region (checked
+  // above), we also need to align the perm gen size as it might not be.
+  const size_t total_reserved = max_byte_size +
+                                align_size_up(pgs->max_size(), HeapRegion::GrainBytes);
+  Universe::check_alignment(total_reserved, HeapRegion::GrainBytes, "g1 heap and perm");
+
   char* addr = Universe::preferred_heap_base(total_reserved, Universe::UnscaledNarrowOop);
 
-  ReservedSpace heap_rs(max_byte_size + pgs->max_size(),
-                        HeapRegion::GrainBytes,
-                        UseLargePages, addr);
+  ReservedHeapSpace heap_rs(total_reserved, HeapRegion::GrainBytes,
+                            UseLargePages, addr);
 
   if (UseCompressedOops) {
     if (addr != NULL && !heap_rs.is_reserved()) {
@@ -1914,14 +1892,17 @@
       // region is taken already, for example, by 'java' launcher.
       // Try again to reserver heap higher.
       addr = Universe::preferred_heap_base(total_reserved, Universe::ZeroBasedNarrowOop);
-      ReservedSpace heap_rs0(total_reserved, HeapRegion::GrainBytes,
-                             UseLargePages, addr);
+
+      ReservedHeapSpace heap_rs0(total_reserved, HeapRegion::GrainBytes,
+                                 UseLargePages, addr);
+
       if (addr != NULL && !heap_rs0.is_reserved()) {
         // Failed to reserve at specified address again - give up.
         addr = Universe::preferred_heap_base(total_reserved, Universe::HeapBasedNarrowOop);
         assert(addr == NULL, "");
-        ReservedSpace heap_rs1(total_reserved, HeapRegion::GrainBytes,
-                               UseLargePages, addr);
+
+        ReservedHeapSpace heap_rs1(total_reserved, HeapRegion::GrainBytes,
+                                   UseLargePages, addr);
         heap_rs = heap_rs1;
       } else {
         heap_rs = heap_rs0;
@@ -2065,8 +2046,6 @@
   // counts and that mechanism.
   SpecializationStats::clear();
 
-  _gc_alloc_region_list = NULL;
-
   // Do later initialization work for concurrent refinement.
   _cg1r->init();
 
@@ -2187,27 +2166,6 @@
   return blk.result();
 }
 
-#ifndef PRODUCT
-class SumUsedRegionsClosure: public HeapRegionClosure {
-  size_t _num;
-public:
-  SumUsedRegionsClosure() : _num(0) {}
-  bool doHeapRegion(HeapRegion* r) {
-    if (r->continuesHumongous() || r->used() > 0 || r->is_gc_alloc_region()) {
-      _num += 1;
-    }
-    return false;
-  }
-  size_t result() { return _num; }
-};
-
-size_t G1CollectedHeap::recalculate_used_regions() const {
-  SumUsedRegionsClosure blk;
-  heap_region_iterate(&blk);
-  return blk.result();
-}
-#endif // PRODUCT
-
 size_t G1CollectedHeap::unsafe_max_alloc() {
   if (free_regions() > 0) return HeapRegion::GrainBytes;
   // otherwise, is there space in the current allocation region?
@@ -3201,12 +3159,6 @@
   }
 }
 
-void G1CollectedHeap::do_sync_mark() {
-  _cm->checkpointRootsInitial();
-  _cm->markFromRoots();
-  _cm->checkpointRootsFinal(false);
-}
-
 // <NEW PREDICTION>
 
 double G1CollectedHeap::predict_region_elapsed_time_ms(HeapRegion *hr,
@@ -3357,11 +3309,10 @@
 
     char verbose_str[128];
     sprintf(verbose_str, "GC pause ");
-    if (g1_policy()->in_young_gc_mode()) {
-      if (g1_policy()->full_young_gcs())
-        strcat(verbose_str, "(young)");
-      else
-        strcat(verbose_str, "(partial)");
+    if (g1_policy()->full_young_gcs()) {
+      strcat(verbose_str, "(young)");
+    } else {
+      strcat(verbose_str, "(partial)");
     }
     if (g1_policy()->during_initial_mark_pause()) {
       strcat(verbose_str, " (initial-mark)");
@@ -3390,18 +3341,15 @@
       append_secondary_free_list_if_not_empty_with_lock();
     }
 
-    increment_gc_time_stamp();
-
-    if (g1_policy()->in_young_gc_mode()) {
-      assert(check_young_list_well_formed(),
-             "young list should be well formed");
-    }
+    assert(check_young_list_well_formed(),
+      "young list should be well formed");
 
     { // Call to jvmpi::post_class_unload_events must occur outside of active GC
       IsGCActiveMark x;
 
       gc_prologue(false);
       increment_total_collections(false /* full gc */);
+      increment_gc_time_stamp();
 
       if (VerifyBeforeGC && total_collections() >= VerifyGCStartAt) {
         HandleMark hm;  // Discard invalid handles created during verification
@@ -3454,7 +3402,7 @@
       if (g1_policy()->during_initial_mark_pause()) {
         concurrent_mark()->checkpointRootsInitialPre();
       }
-      save_marks();
+      perm_gen()->save_marks();
 
       // We must do this before any possible evacuation that should propagate
       // marks.
@@ -3516,8 +3464,8 @@
 
       setup_surviving_young_words();
 
-      // Set up the gc allocation regions.
-      get_gc_alloc_regions();
+      // Initialize the GC alloc regions.
+      init_gc_alloc_regions();
 
       // Actually do the work...
       evacuate_collection_set();
@@ -3535,38 +3483,35 @@
       // evacuation pause.
       clear_cset_fast_test();
 
-      if (g1_policy()->in_young_gc_mode()) {
-        _young_list->reset_sampled_info();
+      _young_list->reset_sampled_info();
 
-        // Don't check the whole heap at this point as the
-        // GC alloc regions from this pause have been tagged
-        // as survivors and moved on to the survivor list.
-        // Survivor regions will fail the !is_young() check.
-        assert(check_young_list_empty(false /* check_heap */),
-               "young list should be empty");
+      // Don't check the whole heap at this point as the
+      // GC alloc regions from this pause have been tagged
+      // as survivors and moved on to the survivor list.
+      // Survivor regions will fail the !is_young() check.
+      assert(check_young_list_empty(false /* check_heap */),
+        "young list should be empty");
 
 #if YOUNG_LIST_VERBOSE
-        gclog_or_tty->print_cr("Before recording survivors.\nYoung List:");
-        _young_list->print();
+      gclog_or_tty->print_cr("Before recording survivors.\nYoung List:");
+      _young_list->print();
 #endif // YOUNG_LIST_VERBOSE
 
-        g1_policy()->record_survivor_regions(_young_list->survivor_length(),
-                                          _young_list->first_survivor_region(),
-                                          _young_list->last_survivor_region());
+      g1_policy()->record_survivor_regions(_young_list->survivor_length(),
+        _young_list->first_survivor_region(),
+        _young_list->last_survivor_region());
 
-        _young_list->reset_auxilary_lists();
-      }
+      _young_list->reset_auxilary_lists();
 
       if (evacuation_failed()) {
         _summary_bytes_used = recalculate_used();
       } else {
         // The "used" of the the collection set have already been subtracted
         // when they were freed.  Add in the bytes evacuated.
-        _summary_bytes_used += g1_policy()->bytes_in_to_space();
+        _summary_bytes_used += g1_policy()->bytes_copied_during_gc();
       }
 
-      if (g1_policy()->in_young_gc_mode() &&
-          g1_policy()->during_initial_mark_pause()) {
+      if (g1_policy()->during_initial_mark_pause()) {
         concurrent_mark()->checkpointRootsInitialPost();
         set_marking_started();
         // CAUTION: after the doConcurrentMark() call below,
@@ -3596,6 +3541,29 @@
 
       MemoryService::track_memory_usage();
 
+      // In prepare_for_verify() below we'll need to scan the deferred
+      // update buffers to bring the RSets up-to-date if
+      // G1HRRSFlushLogBuffersOnVerify has been set. While scanning
+      // the update buffers we'll probably need to scan cards on the
+      // regions we just allocated to (i.e., the GC alloc
+      // regions). However, during the last GC we called
+      // set_saved_mark() on all the GC alloc regions, so card
+      // scanning might skip the [saved_mark_word()...top()] area of
+      // those regions (i.e., the area we allocated objects into
+      // during the last GC). But it shouldn't. Given that
+      // saved_mark_word() is conditional on whether the GC time stamp
+      // on the region is current or not, by incrementing the GC time
+      // stamp here we invalidate all the GC time stamps on all the
+      // regions and saved_mark_word() will simply return top() for
+      // all the regions. This is a nicer way of ensuring this rather
+      // than iterating over the regions and fixing them. In fact, the
+      // GC time stamp increment here also ensures that
+      // saved_mark_word() will return top() between pauses, i.e.,
+      // during concurrent refinement. So we don't need the
+      // is_gc_active() check to decided which top to use when
+      // scanning cards (see CR 7039627).
+      increment_gc_time_stamp();
+
       if (VerifyAfterGC && total_collections() >= VerifyGCStartAt) {
         HandleMark hm;  // Discard invalid handles created during verification
         gclog_or_tty->print(" VerifyAfterGC:");
@@ -3695,251 +3663,49 @@
   assert(_mutator_alloc_region.get() == NULL, "post-condition");
 }
 
-void G1CollectedHeap::set_gc_alloc_region(int purpose, HeapRegion* r) {
-  assert(purpose >= 0 && purpose < GCAllocPurposeCount, "invalid purpose");
-  // make sure we don't call set_gc_alloc_region() multiple times on
-  // the same region
-  assert(r == NULL || !r->is_gc_alloc_region(),
-         "shouldn't already be a GC alloc region");
-  assert(r == NULL || !r->isHumongous(),
-         "humongous regions shouldn't be used as GC alloc regions");
-
-  HeapWord* original_top = NULL;
-  if (r != NULL)
-    original_top = r->top();
-
-  // We will want to record the used space in r as being there before gc.
-  // One we install it as a GC alloc region it's eligible for allocation.
-  // So record it now and use it later.
-  size_t r_used = 0;
-  if (r != NULL) {
-    r_used = r->used();
-
-    if (G1CollectedHeap::use_parallel_gc_threads()) {
-      // need to take the lock to guard against two threads calling
-      // get_gc_alloc_region concurrently (very unlikely but...)
-      MutexLockerEx x(ParGCRareEvent_lock, Mutex::_no_safepoint_check_flag);
-      r->save_marks();
-    }
-  }
-  HeapRegion* old_alloc_region = _gc_alloc_regions[purpose];
-  _gc_alloc_regions[purpose] = r;
-  if (old_alloc_region != NULL) {
-    // Replace aliases too.
-    for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-      if (_gc_alloc_regions[ap] == old_alloc_region) {
-        _gc_alloc_regions[ap] = r;
-      }
-    }
-  }
-  if (r != NULL) {
-    push_gc_alloc_region(r);
-    if (mark_in_progress() && original_top != r->next_top_at_mark_start()) {
-      // We are using a region as a GC alloc region after it has been used
-      // as a mutator allocation region during the current marking cycle.
-      // The mutator-allocated objects are currently implicitly marked, but
-      // when we move hr->next_top_at_mark_start() forward at the the end
-      // of the GC pause, they won't be.  We therefore mark all objects in
-      // the "gap".  We do this object-by-object, since marking densely
-      // does not currently work right with marking bitmap iteration.  This
-      // means we rely on TLAB filling at the start of pauses, and no
-      // "resuscitation" of filled TLAB's.  If we want to do this, we need
-      // to fix the marking bitmap iteration.
-      HeapWord* curhw = r->next_top_at_mark_start();
-      HeapWord* t = original_top;
-
-      while (curhw < t) {
-        oop cur = (oop)curhw;
-        // We'll assume parallel for generality.  This is rare code.
-        concurrent_mark()->markAndGrayObjectIfNecessary(cur); // can't we just mark them?
-        curhw = curhw + cur->size();
-      }
-      assert(curhw == t, "Should have parsed correctly.");
-    }
-    if (G1PolicyVerbose > 1) {
-      gclog_or_tty->print("New alloc region ["PTR_FORMAT", "PTR_FORMAT", " PTR_FORMAT") "
-                          "for survivors:", r->bottom(), original_top, r->end());
-      r->print();
-    }
-    g1_policy()->record_before_bytes(r_used);
-  }
-}
-
-void G1CollectedHeap::push_gc_alloc_region(HeapRegion* hr) {
-  assert(Thread::current()->is_VM_thread() ||
-         FreeList_lock->owned_by_self(), "Precondition");
-  assert(!hr->is_gc_alloc_region() && !hr->in_collection_set(),
-         "Precondition.");
-  hr->set_is_gc_alloc_region(true);
-  hr->set_next_gc_alloc_region(_gc_alloc_region_list);
-  _gc_alloc_region_list = hr;
-}
-
-#ifdef G1_DEBUG
-class FindGCAllocRegion: public HeapRegionClosure {
-public:
-  bool doHeapRegion(HeapRegion* r) {
-    if (r->is_gc_alloc_region()) {
-      gclog_or_tty->print_cr("Region "HR_FORMAT" is still a GC alloc region",
-                             HR_FORMAT_PARAMS(r));
-    }
-    return false;
-  }
-};
-#endif // G1_DEBUG
-
-void G1CollectedHeap::forget_alloc_region_list() {
+void G1CollectedHeap::init_gc_alloc_regions() {
   assert_at_safepoint(true /* should_be_vm_thread */);
-  while (_gc_alloc_region_list != NULL) {
-    HeapRegion* r = _gc_alloc_region_list;
-    assert(r->is_gc_alloc_region(), "Invariant.");
-    // We need HeapRegion::oops_on_card_seq_iterate_careful() to work on
-    // newly allocated data in order to be able to apply deferred updates
-    // before the GC is done for verification purposes (i.e to allow
-    // G1HRRSFlushLogBuffersOnVerify). It's safe thing to do after the
-    // collection.
-    r->ContiguousSpace::set_saved_mark();
-    _gc_alloc_region_list = r->next_gc_alloc_region();
-    r->set_next_gc_alloc_region(NULL);
-    r->set_is_gc_alloc_region(false);
-    if (r->is_survivor()) {
-      if (r->is_empty()) {
-        r->set_not_young();
-      } else {
-        _young_list->add_survivor_region(r);
-      }
-    }
-  }
-#ifdef G1_DEBUG
-  FindGCAllocRegion fa;
-  heap_region_iterate(&fa);
-#endif // G1_DEBUG
-}
 
+  _survivor_gc_alloc_region.init();
+  _old_gc_alloc_region.init();
+  HeapRegion* retained_region = _retained_old_gc_alloc_region;
+  _retained_old_gc_alloc_region = NULL;
 
-bool G1CollectedHeap::check_gc_alloc_regions() {
-  // TODO: allocation regions check
-  return true;
-}
-
-void G1CollectedHeap::get_gc_alloc_regions() {
-  // First, let's check that the GC alloc region list is empty (it should)
-  assert(_gc_alloc_region_list == NULL, "invariant");
-
-  for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-    assert(_gc_alloc_regions[ap] == NULL, "invariant");
-    assert(_gc_alloc_region_counts[ap] == 0, "invariant");
-
-    // Create new GC alloc regions.
-    HeapRegion* alloc_region = _retained_gc_alloc_regions[ap];
-    _retained_gc_alloc_regions[ap] = NULL;
-
-    if (alloc_region != NULL) {
-      assert(_retain_gc_alloc_region[ap], "only way to retain a GC region");
-
-      // let's make sure that the GC alloc region is not tagged as such
-      // outside a GC operation
-      assert(!alloc_region->is_gc_alloc_region(), "sanity");
-
-      if (alloc_region->in_collection_set() ||
-          alloc_region->top() == alloc_region->end() ||
-          alloc_region->top() == alloc_region->bottom() ||
-          alloc_region->isHumongous()) {
-        // we will discard the current GC alloc region if
-        // * it's in the collection set (it can happen!),
-        // * it's already full (no point in using it),
-        // * it's empty (this means that it was emptied during
-        // a cleanup and it should be on the free list now), or
-        // * it's humongous (this means that it was emptied
-        // during a cleanup and was added to the free list, but
-        // has been subseqently used to allocate a humongous
-        // object that may be less than the region size).
-
-        alloc_region = NULL;
-      }
-    }
-
-    if (alloc_region == NULL) {
-      // we will get a new GC alloc region
-      alloc_region = new_gc_alloc_region(ap, HeapRegion::GrainWords);
-    } else {
-      // the region was retained from the last collection
-      ++_gc_alloc_region_counts[ap];
-
-      _hr_printer.reuse(alloc_region);
-    }
-
-    if (alloc_region != NULL) {
-      assert(_gc_alloc_regions[ap] == NULL, "pre-condition");
-      set_gc_alloc_region(ap, alloc_region);
-    }
-
-    assert(_gc_alloc_regions[ap] == NULL ||
-           _gc_alloc_regions[ap]->is_gc_alloc_region(),
-           "the GC alloc region should be tagged as such");
-    assert(_gc_alloc_regions[ap] == NULL ||
-           _gc_alloc_regions[ap] == _gc_alloc_region_list,
-           "the GC alloc region should be the same as the GC alloc list head");
-  }
-  // Set alternative regions for allocation purposes that have reached
-  // their limit.
-  for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-    GCAllocPurpose alt_purpose = g1_policy()->alternative_purpose(ap);
-    if (_gc_alloc_regions[ap] == NULL && alt_purpose != ap) {
-      _gc_alloc_regions[ap] = _gc_alloc_regions[alt_purpose];
-    }
-  }
-  assert(check_gc_alloc_regions(), "alloc regions messed up");
-}
-
-void G1CollectedHeap::release_gc_alloc_regions(bool totally) {
-  // We keep a separate list of all regions that have been alloc regions in
-  // the current collection pause. Forget that now. This method will
-  // untag the GC alloc regions and tear down the GC alloc region
-  // list. It's desirable that no regions are tagged as GC alloc
-  // outside GCs.
-
-  forget_alloc_region_list();
-
-  // The current alloc regions contain objs that have survived
-  // collection. Make them no longer GC alloc regions.
-  for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-    HeapRegion* r = _gc_alloc_regions[ap];
-    _retained_gc_alloc_regions[ap] = NULL;
-    _gc_alloc_region_counts[ap] = 0;
-
-    if (r != NULL) {
-      // we retain nothing on _gc_alloc_regions between GCs
-      set_gc_alloc_region(ap, NULL);
-
-      if (r->is_empty()) {
-        // We didn't actually allocate anything in it; let's just put
-        // it back on the free list.
-        _free_list.add_as_head(r);
-      } else if (_retain_gc_alloc_region[ap] && !totally) {
-        // retain it so that we can use it at the beginning of the next GC
-        _retained_gc_alloc_regions[ap] = r;
-      }
-    }
+  // We will discard the current GC alloc region if:
+  // a) it's in the collection set (it can happen!),
+  // b) it's already full (no point in using it),
+  // c) it's empty (this means that it was emptied during
+  // a cleanup and it should be on the free list now), or
+  // d) it's humongous (this means that it was emptied
+  // during a cleanup and was added to the free list, but
+  // has been subseqently used to allocate a humongous
+  // object that may be less than the region size).
+  if (retained_region != NULL &&
+      !retained_region->in_collection_set() &&
+      !(retained_region->top() == retained_region->end()) &&
+      !retained_region->is_empty() &&
+      !retained_region->isHumongous()) {
+    retained_region->set_saved_mark();
+    _old_gc_alloc_region.set(retained_region);
+    _hr_printer.reuse(retained_region);
   }
 }
 
-#ifndef PRODUCT
-// Useful for debugging
-
-void G1CollectedHeap::print_gc_alloc_regions() {
-  gclog_or_tty->print_cr("GC alloc regions");
-  for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-    HeapRegion* r = _gc_alloc_regions[ap];
-    if (r == NULL) {
-      gclog_or_tty->print_cr("  %2d : "PTR_FORMAT, ap, NULL);
-    } else {
-      gclog_or_tty->print_cr("  %2d : "PTR_FORMAT" "SIZE_FORMAT,
-                             ap, r->bottom(), r->used());
-    }
-  }
+void G1CollectedHeap::release_gc_alloc_regions() {
+  _survivor_gc_alloc_region.release();
+  // If we have an old GC alloc region to release, we'll save it in
+  // _retained_old_gc_alloc_region. If we don't
+  // _retained_old_gc_alloc_region will become NULL. This is what we
+  // want either way so no reason to check explicitly for either
+  // condition.
+  _retained_old_gc_alloc_region = _old_gc_alloc_region.release();
 }
-#endif // PRODUCT
+
+void G1CollectedHeap::abandon_gc_alloc_regions() {
+  assert(_survivor_gc_alloc_region.get() == NULL, "pre-condition");
+  assert(_old_gc_alloc_region.get() == NULL, "pre-condition");
+  _retained_old_gc_alloc_region = NULL;
+}
 
 void G1CollectedHeap::init_for_evac_failure(OopsInHeapRegionClosure* cl) {
   _drain_in_progress = false;
@@ -3956,8 +3722,6 @@
   _evac_failure_scan_stack = NULL;
 }
 
-
-
 // *** Sequential G1 Evacuation
 
 class G1IsAliveClosure: public BoolObjectClosure {
@@ -4269,136 +4033,32 @@
   }
 }
 
-// *** Parallel G1 Evacuation
-
 HeapWord* G1CollectedHeap::par_allocate_during_gc(GCAllocPurpose purpose,
                                                   size_t word_size) {
-  assert(!isHumongous(word_size),
-         err_msg("we should not be seeing humongous allocation requests "
-                 "during GC, word_size = "SIZE_FORMAT, word_size));
-
-  HeapRegion* alloc_region = _gc_alloc_regions[purpose];
-  // let the caller handle alloc failure
-  if (alloc_region == NULL) return NULL;
-
-  HeapWord* block = alloc_region->par_allocate(word_size);
-  if (block == NULL) {
-    block = allocate_during_gc_slow(purpose, alloc_region, true, word_size);
-  }
-  return block;
-}
-
-void G1CollectedHeap::retire_alloc_region(HeapRegion* alloc_region,
-                                            bool par) {
-  // Another thread might have obtained alloc_region for the given
-  // purpose, and might be attempting to allocate in it, and might
-  // succeed.  Therefore, we can't do the "finalization" stuff on the
-  // region below until we're sure the last allocation has happened.
-  // We ensure this by allocating the remaining space with a garbage
-  // object.
-  if (par) par_allocate_remaining_space(alloc_region);
-  // Now we can do the post-GC stuff on the region.
-  alloc_region->note_end_of_copying();
-  g1_policy()->record_after_bytes(alloc_region->used());
-  _hr_printer.retire(alloc_region);
-}
-
-HeapWord*
-G1CollectedHeap::allocate_during_gc_slow(GCAllocPurpose purpose,
-                                         HeapRegion*    alloc_region,
-                                         bool           par,
-                                         size_t         word_size) {
-  assert(!isHumongous(word_size),
-         err_msg("we should not be seeing humongous allocation requests "
-                 "during GC, word_size = "SIZE_FORMAT, word_size));
-
-  // We need to make sure we serialize calls to this method. Given
-  // that the FreeList_lock guards accesses to the free_list anyway,
-  // and we need to potentially remove a region from it, we'll use it
-  // to protect the whole call.
-  MutexLockerEx x(FreeList_lock, Mutex::_no_safepoint_check_flag);
-
-  HeapWord* block = NULL;
-  // In the parallel case, a previous thread to obtain the lock may have
-  // already assigned a new gc_alloc_region.
-  if (alloc_region != _gc_alloc_regions[purpose]) {
-    assert(par, "But should only happen in parallel case.");
-    alloc_region = _gc_alloc_regions[purpose];
-    if (alloc_region == NULL) return NULL;
-    block = alloc_region->par_allocate(word_size);
-    if (block != NULL) return block;
-    // Otherwise, continue; this new region is empty, too.
-  }
-  assert(alloc_region != NULL, "We better have an allocation region");
-  retire_alloc_region(alloc_region, par);
-
-  if (_gc_alloc_region_counts[purpose] >= g1_policy()->max_regions(purpose)) {
-    // Cannot allocate more regions for the given purpose.
-    GCAllocPurpose alt_purpose = g1_policy()->alternative_purpose(purpose);
-    // Is there an alternative?
-    if (purpose != alt_purpose) {
-      HeapRegion* alt_region = _gc_alloc_regions[alt_purpose];
-      // Has not the alternative region been aliased?
-      if (alloc_region != alt_region && alt_region != NULL) {
-        // Try to allocate in the alternative region.
-        if (par) {
-          block = alt_region->par_allocate(word_size);
-        } else {
-          block = alt_region->allocate(word_size);
-        }
-        // Make an alias.
-        _gc_alloc_regions[purpose] = _gc_alloc_regions[alt_purpose];
-        if (block != NULL) {
-          return block;
-        }
-        retire_alloc_region(alt_region, par);
-      }
-      // Both the allocation region and the alternative one are full
-      // and aliased, replace them with a new allocation region.
-      purpose = alt_purpose;
+  if (purpose == GCAllocForSurvived) {
+    HeapWord* result = survivor_attempt_allocation(word_size);
+    if (result != NULL) {
+      return result;
     } else {
-      set_gc_alloc_region(purpose, NULL);
-      return NULL;
+      // Let's try to allocate in the old gen in case we can fit the
+      // object there.
+      return old_attempt_allocation(word_size);
     }
-  }
-
-  // Now allocate a new region for allocation.
-  alloc_region = new_gc_alloc_region(purpose, word_size);
-
-  // let the caller handle alloc failure
-  if (alloc_region != NULL) {
-
-    assert(check_gc_alloc_regions(), "alloc regions messed up");
-    assert(alloc_region->saved_mark_at_top(),
-           "Mark should have been saved already.");
-    // This must be done last: once it's installed, other regions may
-    // allocate in it (without holding the lock.)
-    set_gc_alloc_region(purpose, alloc_region);
-
-    if (par) {
-      block = alloc_region->par_allocate(word_size);
-    } else {
-      block = alloc_region->allocate(word_size);
-    }
-    // Caller handles alloc failure.
   } else {
-    // This sets other apis using the same old alloc region to NULL, also.
-    set_gc_alloc_region(purpose, NULL);
+    assert(purpose ==  GCAllocForTenured, "sanity");
+    HeapWord* result = old_attempt_allocation(word_size);
+    if (result != NULL) {
+      return result;
+    } else {
+      // Let's try to allocate in the survivors in case we can fit the
+      // object there.
+      return survivor_attempt_allocation(word_size);
+    }
   }
-  return block;  // May be NULL.
-}
 
-void G1CollectedHeap::par_allocate_remaining_space(HeapRegion* r) {
-  HeapWord* block = NULL;
-  size_t free_words;
-  do {
-    free_words = r->free()/HeapWordSize;
-    // If there's too little space, no one can allocate, so we're done.
-    if (free_words < CollectedHeap::min_fill_size()) return;
-    // Otherwise, try to claim it.
-    block = r->par_allocate(free_words);
-  } while (block == NULL);
-  fill_with_object(block, free_words);
+  ShouldNotReachHere();
+  // Trying to keep some compilers happy.
+  return NULL;
 }
 
 #ifndef PRODUCT
@@ -4834,6 +4494,7 @@
                                   scan_perm_cl,
                                   i);
     pss.end_strong_roots();
+
     {
       double start = os::elapsedTime();
       G1ParEvacuateFollowersClosure evac(_g1h, &pss, _queues, &_terminator);
@@ -4890,17 +4551,29 @@
                        &eager_scan_code_roots,
                        &buf_scan_perm);
 
-  // Finish up any enqueued closure apps.
+  // Now the ref_processor roots.
+  if (!_process_strong_tasks->is_task_claimed(G1H_PS_refProcessor_oops_do)) {
+    // We need to treat the discovered reference lists as roots and
+    // keep entries (which are added by the marking threads) on them
+    // live until they can be processed at the end of marking.
+    ref_processor()->weak_oops_do(&buf_scan_non_heap_roots);
+    ref_processor()->oops_do(&buf_scan_non_heap_roots);
+  }
+
+  // Finish up any enqueued closure apps (attributed as object copy time).
   buf_scan_non_heap_roots.done();
   buf_scan_perm.done();
+
   double ext_roots_end = os::elapsedTime();
+
   g1_policy()->reset_obj_copy_time(worker_i);
-  double obj_copy_time_sec =
-    buf_scan_non_heap_roots.closure_app_seconds() +
-    buf_scan_perm.closure_app_seconds();
+  double obj_copy_time_sec = buf_scan_perm.closure_app_seconds() +
+                                buf_scan_non_heap_roots.closure_app_seconds();
   g1_policy()->record_obj_copy_time(worker_i, obj_copy_time_sec * 1000.0);
+
   double ext_root_time_ms =
     ((ext_roots_end - ext_roots_start) - obj_copy_time_sec) * 1000.0;
+
   g1_policy()->record_ext_root_scan_time(worker_i, ext_root_time_ms);
 
   // Scan strong roots in mark stack.
@@ -4910,21 +4583,11 @@
   double mark_stack_scan_ms = (os::elapsedTime() - ext_roots_end) * 1000.0;
   g1_policy()->record_mark_stack_scan_time(worker_i, mark_stack_scan_ms);
 
-  // XXX What should this be doing in the parallel case?
-  g1_policy()->record_collection_pause_end_CH_strong_roots();
   // Now scan the complement of the collection set.
   if (scan_rs != NULL) {
     g1_rem_set()->oops_into_collection_set_do(scan_rs, worker_i);
   }
-  // Finish with the ref_processor roots.
-  if (!_process_strong_tasks->is_task_claimed(G1H_PS_refProcessor_oops_do)) {
-    // We need to treat the discovered reference lists as roots and
-    // keep entries (which are added by the marking threads) on them
-    // live until they can be processed at the end of marking.
-    ref_processor()->weak_oops_do(scan_non_heap_roots);
-    ref_processor()->oops_do(scan_non_heap_roots);
-  }
-  g1_policy()->record_collection_pause_end_G1_strong_roots();
+
   _process_strong_tasks->all_tasks_completed();
 }
 
@@ -4935,24 +4598,6 @@
   SharedHeap::process_weak_roots(root_closure, &roots_in_blobs, non_root_closure);
 }
 
-
-class SaveMarksClosure: public HeapRegionClosure {
-public:
-  bool doHeapRegion(HeapRegion* r) {
-    r->save_marks();
-    return false;
-  }
-};
-
-void G1CollectedHeap::save_marks() {
-  if (!CollectedHeap::use_parallel_gc_threads()) {
-    SaveMarksClosure sm;
-    heap_region_iterate(&sm);
-  }
-  // We do this even in the parallel case
-  perm_gen()->save_marks();
-}
-
 void G1CollectedHeap::evacuate_collection_set() {
   set_evacuation_failed(false);
 
@@ -4983,10 +4628,6 @@
   double par_time = (os::elapsedTime() - start_par) * 1000.0;
   g1_policy()->record_par_time(par_time);
   set_par_threads(0);
-  // Is this the right thing to do here?  We don't save marks
-  // on individual heap regions when we allocate from
-  // them in parallel, so this seems like the correct place for this.
-  retire_all_alloc_regions();
 
   // Weak root processing.
   // Note: when JSR 292 is enabled and code blobs can contain
@@ -4997,7 +4638,7 @@
     G1KeepAliveClosure keep_alive(this);
     JNIHandles::weak_oops_do(&is_alive, &keep_alive);
   }
-  release_gc_alloc_regions(false /* totally */);
+  release_gc_alloc_regions();
   g1_rem_set()->cleanup_after_oops_into_collection_set_do();
 
   concurrent_g1_refine()->clear_hot_cache();
@@ -5118,68 +4759,31 @@
   }
 }
 
-void G1CollectedHeap::dirtyCardsForYoungRegions(CardTableModRefBS* ct_bs, HeapRegion* list) {
-  while (list != NULL) {
-    guarantee( list->is_young(), "invariant" );
-
-    HeapWord* bottom = list->bottom();
-    HeapWord* end = list->end();
-    MemRegion mr(bottom, end);
-    ct_bs->dirty(mr);
-
-    list = list->get_next_young_region();
-  }
-}
-
-
 class G1ParCleanupCTTask : public AbstractGangTask {
   CardTableModRefBS* _ct_bs;
   G1CollectedHeap* _g1h;
   HeapRegion* volatile _su_head;
 public:
   G1ParCleanupCTTask(CardTableModRefBS* ct_bs,
-                     G1CollectedHeap* g1h,
-                     HeapRegion* survivor_list) :
+                     G1CollectedHeap* g1h) :
     AbstractGangTask("G1 Par Cleanup CT Task"),
-    _ct_bs(ct_bs),
-    _g1h(g1h),
-    _su_head(survivor_list)
-  { }
+    _ct_bs(ct_bs), _g1h(g1h) { }
 
   void work(int i) {
     HeapRegion* r;
     while (r = _g1h->pop_dirty_cards_region()) {
       clear_cards(r);
     }
-    // Redirty the cards of the survivor regions.
-    dirty_list(&this->_su_head);
   }
 
   void clear_cards(HeapRegion* r) {
-    // Cards for Survivor regions will be dirtied later.
+    // Cards of the survivors should have already been dirtied.
     if (!r->is_survivor()) {
       _ct_bs->clear(MemRegion(r->bottom(), r->end()));
     }
   }
-
-  void dirty_list(HeapRegion* volatile * head_ptr) {
-    HeapRegion* head;
-    do {
-      // Pop region off the list.
-      head = *head_ptr;
-      if (head != NULL) {
-        HeapRegion* r = (HeapRegion*)
-          Atomic::cmpxchg_ptr(head->get_next_young_region(), head_ptr, head);
-        if (r == head) {
-          assert(!r->isHumongous(), "Humongous regions shouldn't be on survivor list");
-          _ct_bs->dirty(MemRegion(r->bottom(), r->end()));
-        }
-      }
-    } while (*head_ptr != NULL);
-  }
 };
 
-
 #ifndef PRODUCT
 class G1VerifyCardTableCleanup: public HeapRegionClosure {
   G1CollectedHeap* _g1h;
@@ -5235,8 +4839,7 @@
   double start = os::elapsedTime();
 
   // Iterate over the dirty cards region list.
-  G1ParCleanupCTTask cleanup_task(ct_bs, this,
-                                  _young_list->first_survivor_region());
+  G1ParCleanupCTTask cleanup_task(ct_bs, this);
 
   if (ParallelGCThreads > 0) {
     set_par_threads(workers()->total_workers());
@@ -5253,10 +4856,6 @@
       }
       r->set_next_dirty_cards_region(NULL);
     }
-    // now, redirty the cards of the survivor regions
-    // (it seemed faster to do it this way, instead of iterating over
-    // all regions and then clearing / dirtying as appropriate)
-    dirtyCardsForYoungRegions(ct_bs, _young_list->first_survivor_region());
   }
 
   double elapsed = os::elapsedTime() - start;
@@ -5478,39 +5077,10 @@
 void G1CollectedHeap::empty_young_list() {
   assert(heap_lock_held_for_gc(),
               "the heap lock should already be held by or for this thread");
-  assert(g1_policy()->in_young_gc_mode(), "should be in young GC mode");
 
   _young_list->empty_list();
 }
 
-bool G1CollectedHeap::all_alloc_regions_no_allocs_since_save_marks() {
-  bool no_allocs = true;
-  for (int ap = 0; ap < GCAllocPurposeCount && no_allocs; ++ap) {
-    HeapRegion* r = _gc_alloc_regions[ap];
-    no_allocs = r == NULL || r->saved_mark_at_top();
-  }
-  return no_allocs;
-}
-
-void G1CollectedHeap::retire_all_alloc_regions() {
-  for (int ap = 0; ap < GCAllocPurposeCount; ++ap) {
-    HeapRegion* r = _gc_alloc_regions[ap];
-    if (r != NULL) {
-      // Check for aliases.
-      bool has_processed_alias = false;
-      for (int i = 0; i < ap; ++i) {
-        if (_gc_alloc_regions[i] == r) {
-          has_processed_alias = true;
-          break;
-        }
-      }
-      if (!has_processed_alias) {
-        retire_alloc_region(r, false /* par */);
-      }
-    }
-  }
-}
-
 // Done at the start of full GC.
 void G1CollectedHeap::tear_down_region_lists() {
   _free_list.remove_all();
@@ -5565,6 +5135,8 @@
   }
 }
 
+// Methods for the mutator alloc region
+
 HeapRegion* G1CollectedHeap::new_mutator_alloc_region(size_t word_size,
                                                       bool force) {
   assert_heap_locked_or_at_safepoint(true /* should_be_vm_thread */);
@@ -5605,6 +5177,69 @@
   _g1h->retire_mutator_alloc_region(alloc_region, allocated_bytes);
 }
 
+// Methods for the GC alloc regions
+
+HeapRegion* G1CollectedHeap::new_gc_alloc_region(size_t word_size,
+                                                 size_t count,
+                                                 GCAllocPurpose ap) {
+  assert(FreeList_lock->owned_by_self(), "pre-condition");
+
+  if (count < g1_policy()->max_regions(ap)) {
+    HeapRegion* new_alloc_region = new_region(word_size,
+                                              true /* do_expand */);
+    if (new_alloc_region != NULL) {
+      // We really only need to do this for old regions given that we
+      // should never scan survivors. But it doesn't hurt to do it
+      // for survivors too.
+      new_alloc_region->set_saved_mark();
+      if (ap == GCAllocForSurvived) {
+        new_alloc_region->set_survivor();
+        _hr_printer.alloc(new_alloc_region, G1HRPrinter::Survivor);
+      } else {
+        _hr_printer.alloc(new_alloc_region, G1HRPrinter::Old);
+      }
+      return new_alloc_region;
+    } else {
+      g1_policy()->note_alloc_region_limit_reached(ap);
+    }
+  }
+  return NULL;
+}
+
+void G1CollectedHeap::retire_gc_alloc_region(HeapRegion* alloc_region,
+                                             size_t allocated_bytes,
+                                             GCAllocPurpose ap) {
+  alloc_region->note_end_of_copying();
+  g1_policy()->record_bytes_copied_during_gc(allocated_bytes);
+  if (ap == GCAllocForSurvived) {
+    young_list()->add_survivor_region(alloc_region);
+  }
+  _hr_printer.retire(alloc_region);
+}
+
+HeapRegion* SurvivorGCAllocRegion::allocate_new_region(size_t word_size,
+                                                       bool force) {
+  assert(!force, "not supported for GC alloc regions");
+  return _g1h->new_gc_alloc_region(word_size, count(), GCAllocForSurvived);
+}
+
+void SurvivorGCAllocRegion::retire_region(HeapRegion* alloc_region,
+                                          size_t allocated_bytes) {
+  _g1h->retire_gc_alloc_region(alloc_region, allocated_bytes,
+                               GCAllocForSurvived);
+}
+
+HeapRegion* OldGCAllocRegion::allocate_new_region(size_t word_size,
+                                                  bool force) {
+  assert(!force, "not supported for GC alloc regions");
+  return _g1h->new_gc_alloc_region(word_size, count(), GCAllocForTenured);
+}
+
+void OldGCAllocRegion::retire_region(HeapRegion* alloc_region,
+                                     size_t allocated_bytes) {
+  _g1h->retire_gc_alloc_region(alloc_region, allocated_bytes,
+                               GCAllocForTenured);
+}
 // Heap region set verification
 
 class VerifyRegionListsClosure : public HeapRegionClosure {
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
index 98a7df0..154fc8c 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
@@ -155,6 +155,24 @@
     : G1AllocRegion("Mutator Alloc Region", false /* bot_updates */) { }
 };
 
+class SurvivorGCAllocRegion : public G1AllocRegion {
+protected:
+  virtual HeapRegion* allocate_new_region(size_t word_size, bool force);
+  virtual void retire_region(HeapRegion* alloc_region, size_t allocated_bytes);
+public:
+  SurvivorGCAllocRegion()
+  : G1AllocRegion("Survivor GC Alloc Region", false /* bot_updates */) { }
+};
+
+class OldGCAllocRegion : public G1AllocRegion {
+protected:
+  virtual HeapRegion* allocate_new_region(size_t word_size, bool force);
+  virtual void retire_region(HeapRegion* alloc_region, size_t allocated_bytes);
+public:
+  OldGCAllocRegion()
+  : G1AllocRegion("Old GC Alloc Region", true /* bot_updates */) { }
+};
+
 class RefineCardTableEntryClosure;
 class G1CollectedHeap : public SharedHeap {
   friend class VM_G1CollectForAllocation;
@@ -163,6 +181,8 @@
   friend class VM_G1IncCollectionPause;
   friend class VMStructs;
   friend class MutatorAllocRegion;
+  friend class SurvivorGCAllocRegion;
+  friend class OldGCAllocRegion;
 
   // Closures used in implementation.
   friend class G1ParCopyHelper;
@@ -225,51 +245,40 @@
   // Alloc region used to satisfy mutator allocation requests.
   MutatorAllocRegion _mutator_alloc_region;
 
+  // Alloc region used to satisfy allocation requests by the GC for
+  // survivor objects.
+  SurvivorGCAllocRegion _survivor_gc_alloc_region;
+
+  // Alloc region used to satisfy allocation requests by the GC for
+  // old objects.
+  OldGCAllocRegion _old_gc_alloc_region;
+
+  // The last old region we allocated to during the last GC.
+  // Typically, it is not full so we should re-use it during the next GC.
+  HeapRegion* _retained_old_gc_alloc_region;
+
   // It resets the mutator alloc region before new allocations can take place.
   void init_mutator_alloc_region();
 
   // It releases the mutator alloc region.
   void release_mutator_alloc_region();
 
+  // It initializes the GC alloc regions at the start of a GC.
+  void init_gc_alloc_regions();
+
+  // It releases the GC alloc regions at the end of a GC.
+  void release_gc_alloc_regions();
+
+  // It does any cleanup that needs to be done on the GC alloc regions
+  // before a Full GC.
   void abandon_gc_alloc_regions();
 
-  // The to-space memory regions into which objects are being copied during
-  // a GC.
-  HeapRegion* _gc_alloc_regions[GCAllocPurposeCount];
-  size_t _gc_alloc_region_counts[GCAllocPurposeCount];
-  // These are the regions, one per GCAllocPurpose, that are half-full
-  // at the end of a collection and that we want to reuse during the
-  // next collection.
-  HeapRegion* _retained_gc_alloc_regions[GCAllocPurposeCount];
-  // This specifies whether we will keep the last half-full region at
-  // the end of a collection so that it can be reused during the next
-  // collection (this is specified per GCAllocPurpose)
-  bool _retain_gc_alloc_region[GCAllocPurposeCount];
-
-  // A list of the regions that have been set to be alloc regions in the
-  // current collection.
-  HeapRegion* _gc_alloc_region_list;
-
   // Helper for monitoring and management support.
   G1MonitoringSupport* _g1mm;
 
   // Determines PLAB size for a particular allocation purpose.
   static size_t desired_plab_sz(GCAllocPurpose purpose);
 
-  // When called by par thread, requires the FreeList_lock to be held.
-  void push_gc_alloc_region(HeapRegion* hr);
-
-  // This should only be called single-threaded.  Undeclares all GC alloc
-  // regions.
-  void forget_alloc_region_list();
-
-  // Should be used to set an alloc region, because there's other
-  // associated bookkeeping.
-  void set_gc_alloc_region(int purpose, HeapRegion* r);
-
-  // Check well-formedness of alloc region list.
-  bool check_gc_alloc_regions();
-
   // Outside of GC pauses, the number of bytes used in all regions other
   // than the current allocation region.
   size_t _summary_bytes_used;
@@ -387,14 +396,7 @@
 
 protected:
 
-  // Returns "true" iff none of the gc alloc regions have any allocations
-  // since the last call to "save_marks".
-  bool all_alloc_regions_no_allocs_since_save_marks();
-  // Perform finalization stuff on all allocation regions.
-  void retire_all_alloc_regions();
-
-  // The number of regions allocated to hold humongous objects.
-  int         _num_humongous_regions;
+  // The young region list.
   YoungList*  _young_list;
 
   // The current policy object for the collector.
@@ -413,11 +415,6 @@
   // request.
   HeapRegion* new_region(size_t word_size, bool do_expand);
 
-  // Try to allocate a new region to be used for allocation by
-  // a GC thread. It will try to expand the heap if no region is
-  // available.
-  HeapRegion* new_gc_alloc_region(int purpose, size_t word_size);
-
   // Attempt to satisfy a humongous allocation request of the given
   // size by finding a contiguous set of free regions of num_regions
   // length and remove them from the master free list. Return the
@@ -525,16 +522,25 @@
   // that parallel threads might be attempting allocations.
   void par_allocate_remaining_space(HeapRegion* r);
 
-  // Retires an allocation region when it is full or at the end of a
-  // GC pause.
-  void  retire_alloc_region(HeapRegion* alloc_region, bool par);
+  // Allocation attempt during GC for a survivor object / PLAB.
+  inline HeapWord* survivor_attempt_allocation(size_t word_size);
 
-  // These two methods are the "callbacks" from the G1AllocRegion class.
+  // Allocation attempt during GC for an old object / PLAB.
+  inline HeapWord* old_attempt_allocation(size_t word_size);
 
+  // These methods are the "callbacks" from the G1AllocRegion class.
+
+  // For mutator alloc regions.
   HeapRegion* new_mutator_alloc_region(size_t word_size, bool force);
   void retire_mutator_alloc_region(HeapRegion* alloc_region,
                                    size_t allocated_bytes);
 
+  // For GC alloc regions.
+  HeapRegion* new_gc_alloc_region(size_t word_size, size_t count,
+                                  GCAllocPurpose ap);
+  void retire_gc_alloc_region(HeapRegion* alloc_region,
+                              size_t allocated_bytes, GCAllocPurpose ap);
+
   // - if explicit_gc is true, the GC is for a System.gc() or a heap
   //   inspection request and should collect the entire heap
   // - if clear_all_soft_refs is true, all soft references should be
@@ -728,9 +734,6 @@
   void g1_process_weak_roots(OopClosure* root_closure,
                              OopClosure* non_root_closure);
 
-  // Invoke "save_marks" on all heap regions.
-  void save_marks();
-
   // Frees a non-humongous region by initializing its contents and
   // adding it to the free list that's passed as a parameter (this is
   // usually a local list which will be appended to the master free
@@ -822,24 +825,6 @@
   oop handle_evacuation_failure_par(OopsInHeapRegionClosure* cl, oop obj);
   void handle_evacuation_failure_common(oop obj, markOop m);
 
-  // Ensure that the relevant gc_alloc regions are set.
-  void get_gc_alloc_regions();
-  // We're done with GC alloc regions. We are going to tear down the
-  // gc alloc list and remove the gc alloc tag from all the regions on
-  // that list. However, we will also retain the last (i.e., the one
-  // that is half-full) GC alloc region, per GCAllocPurpose, for
-  // possible reuse during the next collection, provided
-  // _retain_gc_alloc_region[] indicates that it should be the
-  // case. Said regions are kept in the _retained_gc_alloc_regions[]
-  // array. If the parameter totally is set, we will not retain any
-  // regions, irrespective of what _retain_gc_alloc_region[]
-  // indicates.
-  void release_gc_alloc_regions(bool totally);
-#ifndef PRODUCT
-  // Useful for debugging.
-  void print_gc_alloc_regions();
-#endif // !PRODUCT
-
   // Instance of the concurrent mark is_alive closure for embedding
   // into the reference processor as the is_alive_non_header. This
   // prevents unnecessary additions to the discovered lists during
@@ -948,9 +933,6 @@
   // result might be a bit inaccurate.
   size_t used_unlocked() const;
   size_t recalculate_used() const;
-#ifndef PRODUCT
-  size_t recalculate_used_regions() const;
-#endif // PRODUCT
 
   // These virtual functions do the actual allocation.
   // Some heaps may offer a contiguous region for shared non-blocking
@@ -1110,9 +1092,6 @@
 
   virtual bool is_in_closed_subset(const void* p) const;
 
-  // Dirty card table entries covering a list of young regions.
-  void dirtyCardsForYoungRegions(CardTableModRefBS* ct_bs, HeapRegion* list);
-
   // This resets the card table to all zeros.  It is used after
   // a collection pause which used the card table to claim cards.
   void cleanUpCardTable();
@@ -1284,16 +1263,10 @@
   // in the young gen: for the SATB pre-barrier, there is no
   // pre-value that needs to be remembered; for the remembered-set
   // update logging post-barrier, we don't maintain remembered set
-  // information for young gen objects. Note that non-generational
-  // G1 does not have any "young" objects, should not elide
-  // the rs logging barrier and so should always answer false below.
-  // However, non-generational G1 (-XX:-G1Gen) appears to have
-  // bit-rotted so was not tested below.
+  // information for young gen objects.
   virtual bool can_elide_initializing_store_barrier(oop new_obj) {
     // Re 6920090, 6920109 above.
     assert(ReduceInitialCardMarksForG1, "Else cannot be here");
-    assert(G1Gen || !is_in_young(new_obj),
-           "Non-generational G1 should never return true below");
     return is_in_young(new_obj);
   }
 
@@ -1410,9 +1383,6 @@
   // bitmap off to the side.
   void doConcurrentMark();
 
-  // Do a full concurrent marking, synchronously.
-  void do_sync_mark();
-
   bool isMarkedPrev(oop obj) const;
   bool isMarkedNext(oop obj) const;
 
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp
index 05a42d7..ee18c4d 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp
@@ -77,6 +77,38 @@
   return result;
 }
 
+inline HeapWord* G1CollectedHeap::survivor_attempt_allocation(size_t
+                                                              word_size) {
+  assert(!isHumongous(word_size),
+         "we should not be seeing humongous-size allocations in this path");
+
+  HeapWord* result = _survivor_gc_alloc_region.attempt_allocation(word_size,
+                                                      false /* bot_updates */);
+  if (result == NULL) {
+    MutexLockerEx x(FreeList_lock, Mutex::_no_safepoint_check_flag);
+    result = _survivor_gc_alloc_region.attempt_allocation_locked(word_size,
+                                                      false /* bot_updates */);
+  }
+  if (result != NULL) {
+    dirty_young_block(result, word_size);
+  }
+  return result;
+}
+
+inline HeapWord* G1CollectedHeap::old_attempt_allocation(size_t word_size) {
+  assert(!isHumongous(word_size),
+         "we should not be seeing humongous-size allocations in this path");
+
+  HeapWord* result = _old_gc_alloc_region.attempt_allocation(word_size,
+                                                       true /* bot_updates */);
+  if (result == NULL) {
+    MutexLockerEx x(FreeList_lock, Mutex::_no_safepoint_check_flag);
+    result = _old_gc_alloc_region.attempt_allocation_locked(word_size,
+                                                       true /* bot_updates */);
+  }
+  return result;
+}
+
 // It dirties the cards that cover the block so that so that the post
 // write barrier never queues anything when updating objects on this
 // block. It is assumed (and in fact we assert) that the block
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
index 4084550..5574765 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
@@ -134,13 +134,10 @@
 
 G1CollectorPolicy::G1CollectorPolicy() :
   _parallel_gc_threads(G1CollectedHeap::use_parallel_gc_threads()
-    ? ParallelGCThreads : 1),
-
+                        ? ParallelGCThreads : 1),
 
   _n_pauses(0),
-  _recent_CH_strong_roots_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
-  _recent_G1_strong_roots_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
-  _recent_evac_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
+  _recent_rs_scan_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
   _recent_pause_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
   _recent_rs_sizes(new TruncatedSeq(NumPrevPausesForHeuristics)),
   _recent_gc_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
@@ -173,7 +170,6 @@
   _cur_aux_times_ms(new double[_aux_num]),
   _cur_aux_times_set(new bool[_aux_num]),
 
-  _concurrent_mark_init_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
   _concurrent_mark_remark_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
   _concurrent_mark_cleanup_times_ms(new TruncatedSeq(NumPrevPausesForHeuristics)),
 
@@ -204,7 +200,6 @@
 
   // </NEW PREDICTION>
 
-  _in_young_gc_mode(false),
   _full_young_gcs(true),
   _full_young_pause_num(0),
   _partial_young_pause_num(0),
@@ -403,15 +398,12 @@
   _sigma = (double) G1ConfidencePercent / 100.0;
 
   // start conservatively (around 50ms is about right)
-  _concurrent_mark_init_times_ms->add(0.05);
   _concurrent_mark_remark_times_ms->add(0.05);
   _concurrent_mark_cleanup_times_ms->add(0.20);
   _tenuring_threshold = MaxTenuringThreshold;
-
-  // if G1FixedSurvivorSpaceSize is 0 which means the size is not
-  // fixed, then _max_survivor_regions will be calculated at
-  // calculate_young_list_target_length during initialization
-  _max_survivor_regions = G1FixedSurvivorSpaceSize / HeapRegion::GrainBytes;
+  // _max_survivor_regions will be calculated by
+  // calculate_young_list_target_length() during initialization.
+  _max_survivor_regions = 0;
 
   assert(GCTimeRatio > 0,
          "we should have set it to a default value set_g1_gc_flags() "
@@ -471,27 +463,20 @@
 
   initialize_gc_policy_counters();
 
-  if (G1Gen) {
-    _in_young_gc_mode = true;
+  G1YoungGenSizer sizer;
+  size_t initial_region_num = sizer.initial_young_region_num();
 
-    G1YoungGenSizer sizer;
-    size_t initial_region_num = sizer.initial_young_region_num();
-
-    if (UseAdaptiveSizePolicy) {
-      set_adaptive_young_list_length(true);
-      _young_list_fixed_length = 0;
-    } else {
-      set_adaptive_young_list_length(false);
-      _young_list_fixed_length = initial_region_num;
-    }
-    _free_regions_at_end_of_collection = _g1->free_regions();
-    calculate_young_list_min_length();
-    guarantee( _young_list_min_length == 0, "invariant, not enough info" );
-    calculate_young_list_target_length();
+  if (UseAdaptiveSizePolicy) {
+    set_adaptive_young_list_length(true);
+    _young_list_fixed_length = 0;
   } else {
-     _young_list_fixed_length = 0;
-    _in_young_gc_mode = false;
+    set_adaptive_young_list_length(false);
+    _young_list_fixed_length = initial_region_num;
   }
+  _free_regions_at_end_of_collection = _g1->free_regions();
+  calculate_young_list_min_length();
+  guarantee( _young_list_min_length == 0, "invariant, not enough info" );
+  calculate_young_list_target_length();
 
   // We may immediately start allocating regions and placing them on the
   // collection set list. Initialize the per-collection set info
@@ -501,7 +486,7 @@
 // Create the jstat counters for the policy.
 void G1CollectorPolicy::initialize_gc_policy_counters()
 {
-  _gc_policy_counters = new GCPolicyCounters("GarbageFirst", 1, 2 + G1Gen);
+  _gc_policy_counters = new GCPolicyCounters("GarbageFirst", 1, 3);
 }
 
 void G1CollectorPolicy::calculate_young_list_min_length() {
@@ -862,14 +847,6 @@
   calculate_young_list_target_length();
 }
 
-void G1CollectorPolicy::record_before_bytes(size_t bytes) {
-  _bytes_in_to_space_before_gc += bytes;
-}
-
-void G1CollectorPolicy::record_after_bytes(size_t bytes) {
-  _bytes_in_to_space_after_gc += bytes;
-}
-
 void G1CollectorPolicy::record_stop_world_start() {
   _stop_world_start = os::elapsedTime();
 }
@@ -879,8 +856,7 @@
   if (PrintGCDetails) {
     gclog_or_tty->stamp(PrintGCTimeStamps);
     gclog_or_tty->print("[GC pause");
-    if (in_young_gc_mode())
-      gclog_or_tty->print(" (%s)", full_young_gcs() ? "young" : "partial");
+    gclog_or_tty->print(" (%s)", full_young_gcs() ? "young" : "partial");
   }
 
   assert(_g1->used() == _g1->recalculate_used(),
@@ -897,9 +873,8 @@
   _pending_cards = _g1->pending_card_num();
   _max_pending_cards = _g1->max_pending_card_num();
 
-  _bytes_in_to_space_before_gc = 0;
-  _bytes_in_to_space_after_gc = 0;
   _bytes_in_collection_set_before_gc = 0;
+  _bytes_copied_during_gc = 0;
 
   YoungList* young_list = _g1->young_list();
   _eden_bytes_before_gc = young_list->eden_used_bytes();
@@ -933,8 +908,7 @@
   _satb_drain_time_set = false;
   _last_satb_drain_processed_buffers = -1;
 
-  if (in_young_gc_mode())
-    _last_young_gc_full = false;
+  _last_young_gc_full = false;
 
   // do that for any other surv rate groups
   _short_lived_surv_rate_group->stop_adding_regions();
@@ -947,12 +921,7 @@
   _mark_closure_time_ms = mark_closure_time_ms;
 }
 
-void G1CollectorPolicy::record_concurrent_mark_init_start() {
-  _mark_init_start_sec = os::elapsedTime();
-  guarantee(!in_young_gc_mode(), "should not do be here in young GC mode");
-}
-
-void G1CollectorPolicy::record_concurrent_mark_init_end_pre(double
+void G1CollectorPolicy::record_concurrent_mark_init_end(double
                                                    mark_init_elapsed_time_ms) {
   _during_marking = true;
   assert(!initiate_conc_mark_if_possible(), "we should have cleared it by now");
@@ -960,15 +929,6 @@
   _cur_mark_stop_world_time_ms = mark_init_elapsed_time_ms;
 }
 
-void G1CollectorPolicy::record_concurrent_mark_init_end() {
-  double end_time_sec = os::elapsedTime();
-  double elapsed_time_ms = (end_time_sec - _mark_init_start_sec) * 1000.0;
-  _concurrent_mark_init_times_ms->add(elapsed_time_ms);
-  record_concurrent_mark_init_end_pre(elapsed_time_ms);
-
-  _mmu_tracker->add_pause(_mark_init_start_sec, end_time_sec, true);
-}
-
 void G1CollectorPolicy::record_concurrent_mark_remark_start() {
   _mark_remark_start_sec = os::elapsedTime();
   _during_marking = false;
@@ -1031,13 +991,11 @@
 
 void
 G1CollectorPolicy::record_concurrent_mark_cleanup_completed() {
-  if (in_young_gc_mode()) {
-    _should_revert_to_full_young_gcs = false;
-    _last_full_young_gc = true;
-    _in_marking_window = false;
-    if (adaptive_young_list_length())
-      calculate_young_list_target_length();
-  }
+  _should_revert_to_full_young_gcs = false;
+  _last_full_young_gc = true;
+  _in_marking_window = false;
+  if (adaptive_young_list_length())
+    calculate_young_list_target_length();
 }
 
 void G1CollectorPolicy::record_concurrent_pause() {
@@ -1050,18 +1008,6 @@
 void G1CollectorPolicy::record_concurrent_pause_end() {
 }
 
-void G1CollectorPolicy::record_collection_pause_end_CH_strong_roots() {
-  _cur_CH_strong_roots_end_sec = os::elapsedTime();
-  _cur_CH_strong_roots_dur_ms =
-    (_cur_CH_strong_roots_end_sec - _cur_collection_start_sec) * 1000.0;
-}
-
-void G1CollectorPolicy::record_collection_pause_end_G1_strong_roots() {
-  _cur_G1_strong_roots_end_sec = os::elapsedTime();
-  _cur_G1_strong_roots_dur_ms =
-    (_cur_G1_strong_roots_end_sec - _cur_CH_strong_roots_end_sec) * 1000.0;
-}
-
 template<class T>
 T sum_of(T* sum_arr, int start, int n, int N) {
   T sum = (T)0;
@@ -1183,7 +1129,6 @@
   double end_time_sec = os::elapsedTime();
   double elapsed_ms = _last_pause_time_ms;
   bool parallel = G1CollectedHeap::use_parallel_gc_threads();
-  double evac_ms = (end_time_sec - _cur_G1_strong_roots_end_sec) * 1000.0;
   size_t rs_size =
     _cur_collection_pause_used_regions_at_start - collection_set_size();
   size_t cur_used_bytes = _g1->used();
@@ -1199,31 +1144,29 @@
   }
 #endif // PRODUCT
 
-  if (in_young_gc_mode()) {
-    last_pause_included_initial_mark = during_initial_mark_pause();
-    if (last_pause_included_initial_mark)
-      record_concurrent_mark_init_end_pre(0.0);
+  last_pause_included_initial_mark = during_initial_mark_pause();
+  if (last_pause_included_initial_mark)
+    record_concurrent_mark_init_end(0.0);
 
-    size_t min_used_targ =
-      (_g1->capacity() / 100) * InitiatingHeapOccupancyPercent;
+  size_t min_used_targ =
+    (_g1->capacity() / 100) * InitiatingHeapOccupancyPercent;
 
 
-    if (!_g1->mark_in_progress() && !_last_full_young_gc) {
-      assert(!last_pause_included_initial_mark, "invariant");
-      if (cur_used_bytes > min_used_targ &&
-          cur_used_bytes > _prev_collection_pause_used_at_end_bytes) {
+  if (!_g1->mark_in_progress() && !_last_full_young_gc) {
+    assert(!last_pause_included_initial_mark, "invariant");
+    if (cur_used_bytes > min_used_targ &&
+      cur_used_bytes > _prev_collection_pause_used_at_end_bytes) {
         assert(!during_initial_mark_pause(), "we should not see this here");
 
         // Note: this might have already been set, if during the last
         // pause we decided to start a cycle but at the beginning of
         // this pause we decided to postpone it. That's OK.
         set_initiate_conc_mark_if_possible();
-      }
     }
-
-    _prev_collection_pause_used_at_end_bytes = cur_used_bytes;
   }
 
+  _prev_collection_pause_used_at_end_bytes = cur_used_bytes;
+
   _mmu_tracker->add_pause(end_time_sec - elapsed_ms/1000.0,
                           end_time_sec, false);
 
@@ -1256,14 +1199,52 @@
 
   _n_pauses++;
 
-  if (update_stats) {
-    _recent_CH_strong_roots_times_ms->add(_cur_CH_strong_roots_dur_ms);
-    _recent_G1_strong_roots_times_ms->add(_cur_G1_strong_roots_dur_ms);
-    _recent_evac_times_ms->add(evac_ms);
-    _recent_pause_times_ms->add(elapsed_ms);
+  double ext_root_scan_time = avg_value(_par_last_ext_root_scan_times_ms);
+  double mark_stack_scan_time = avg_value(_par_last_mark_stack_scan_times_ms);
+  double update_rs_time = avg_value(_par_last_update_rs_times_ms);
+  double update_rs_processed_buffers =
+    sum_of_values(_par_last_update_rs_processed_buffers);
+  double scan_rs_time = avg_value(_par_last_scan_rs_times_ms);
+  double obj_copy_time = avg_value(_par_last_obj_copy_times_ms);
+  double termination_time = avg_value(_par_last_termination_times_ms);
 
+  double parallel_known_time = update_rs_time +
+                               ext_root_scan_time +
+                               mark_stack_scan_time +
+                               scan_rs_time +
+                               obj_copy_time +
+                               termination_time;
+
+  double parallel_other_time = _cur_collection_par_time_ms - parallel_known_time;
+
+  PauseSummary* summary = _summary;
+
+  if (update_stats) {
+    _recent_rs_scan_times_ms->add(scan_rs_time);
+    _recent_pause_times_ms->add(elapsed_ms);
     _recent_rs_sizes->add(rs_size);
 
+    MainBodySummary* body_summary = summary->main_body_summary();
+    guarantee(body_summary != NULL, "should not be null!");
+
+    if (_satb_drain_time_set)
+      body_summary->record_satb_drain_time_ms(_cur_satb_drain_time_ms);
+    else
+      body_summary->record_satb_drain_time_ms(0.0);
+
+    body_summary->record_ext_root_scan_time_ms(ext_root_scan_time);
+    body_summary->record_mark_stack_scan_time_ms(mark_stack_scan_time);
+    body_summary->record_update_rs_time_ms(update_rs_time);
+    body_summary->record_scan_rs_time_ms(scan_rs_time);
+    body_summary->record_obj_copy_time_ms(obj_copy_time);
+    if (parallel) {
+      body_summary->record_parallel_time_ms(_cur_collection_par_time_ms);
+      body_summary->record_clear_ct_time_ms(_cur_clear_ct_time_ms);
+      body_summary->record_termination_time_ms(termination_time);
+      body_summary->record_parallel_other_time_ms(parallel_other_time);
+    }
+    body_summary->record_mark_closure_time_ms(_mark_closure_time_ms);
+
     // We exempt parallel collection from this check because Alloc Buffer
     // fragmentation can produce negative collections.  Same with evac
     // failure.
@@ -1328,56 +1309,12 @@
     gclog_or_tty->print_cr("   Recording collection pause(%d)", _n_pauses);
   }
 
-  PauseSummary* summary = _summary;
-
-  double ext_root_scan_time = avg_value(_par_last_ext_root_scan_times_ms);
-  double mark_stack_scan_time = avg_value(_par_last_mark_stack_scan_times_ms);
-  double update_rs_time = avg_value(_par_last_update_rs_times_ms);
-  double update_rs_processed_buffers =
-    sum_of_values(_par_last_update_rs_processed_buffers);
-  double scan_rs_time = avg_value(_par_last_scan_rs_times_ms);
-  double obj_copy_time = avg_value(_par_last_obj_copy_times_ms);
-  double termination_time = avg_value(_par_last_termination_times_ms);
-
-  double parallel_other_time = _cur_collection_par_time_ms -
-    (update_rs_time + ext_root_scan_time + mark_stack_scan_time +
-     scan_rs_time + obj_copy_time + termination_time);
-  if (update_stats) {
-    MainBodySummary* body_summary = summary->main_body_summary();
-    guarantee(body_summary != NULL, "should not be null!");
-
-    if (_satb_drain_time_set)
-      body_summary->record_satb_drain_time_ms(_cur_satb_drain_time_ms);
-    else
-      body_summary->record_satb_drain_time_ms(0.0);
-    body_summary->record_ext_root_scan_time_ms(ext_root_scan_time);
-    body_summary->record_mark_stack_scan_time_ms(mark_stack_scan_time);
-    body_summary->record_update_rs_time_ms(update_rs_time);
-    body_summary->record_scan_rs_time_ms(scan_rs_time);
-    body_summary->record_obj_copy_time_ms(obj_copy_time);
-    if (parallel) {
-      body_summary->record_parallel_time_ms(_cur_collection_par_time_ms);
-      body_summary->record_clear_ct_time_ms(_cur_clear_ct_time_ms);
-      body_summary->record_termination_time_ms(termination_time);
-      body_summary->record_parallel_other_time_ms(parallel_other_time);
-    }
-    body_summary->record_mark_closure_time_ms(_mark_closure_time_ms);
-  }
-
   if (G1PolicyVerbose > 1) {
     gclog_or_tty->print_cr("      ET: %10.6f ms           (avg: %10.6f ms)\n"
-                           "        CH Strong: %10.6f ms    (avg: %10.6f ms)\n"
-                           "        G1 Strong: %10.6f ms    (avg: %10.6f ms)\n"
-                           "        Evac:      %10.6f ms    (avg: %10.6f ms)\n"
                            "       ET-RS:  %10.6f ms      (avg: %10.6f ms)\n"
                            "      |RS|: " SIZE_FORMAT,
                            elapsed_ms, recent_avg_time_for_pauses_ms(),
-                           _cur_CH_strong_roots_dur_ms, recent_avg_time_for_CH_strong_ms(),
-                           _cur_G1_strong_roots_dur_ms, recent_avg_time_for_G1_strong_ms(),
-                           evac_ms, recent_avg_time_for_evac_ms(),
-                           scan_rs_time,
-                           recent_avg_time_for_pauses_ms() -
-                           recent_avg_time_for_G1_strong_ms(),
+                           scan_rs_time, recent_avg_time_for_rs_scan_ms(),
                            rs_size);
 
     gclog_or_tty->print_cr("       Used at start: " SIZE_FORMAT"K"
@@ -1438,7 +1375,7 @@
       }
       print_par_stats(2, "GC Worker Times", _par_last_gc_worker_times_ms);
 
-      print_stats(2, "Other", parallel_other_time);
+      print_stats(2, "Parallel Other", parallel_other_time);
       print_stats(1, "Clear CT", _cur_clear_ct_time_ms);
     } else {
       print_stats(1, "Update RS", update_rs_time);
@@ -1499,24 +1436,23 @@
     new_in_marking_window_im = true;
   }
 
-  if (in_young_gc_mode()) {
-    if (_last_full_young_gc) {
-      set_full_young_gcs(false);
-      _last_full_young_gc = false;
-    }
+  if (_last_full_young_gc) {
+    set_full_young_gcs(false);
+    _last_full_young_gc = false;
+  }
 
-    if ( !_last_young_gc_full ) {
-      if ( _should_revert_to_full_young_gcs ||
-           _known_garbage_ratio < 0.05 ||
-           (adaptive_young_list_length() &&
-           (get_gc_eff_factor() * cur_efficiency < predict_young_gc_eff())) ) {
+  if ( !_last_young_gc_full ) {
+    if ( _should_revert_to_full_young_gcs ||
+      _known_garbage_ratio < 0.05 ||
+      (adaptive_young_list_length() &&
+      (get_gc_eff_factor() * cur_efficiency < predict_young_gc_eff())) ) {
         set_full_young_gcs(true);
-      }
     }
-    _should_revert_to_full_young_gcs = false;
+  }
+  _should_revert_to_full_young_gcs = false;
 
-    if (_last_young_gc_full && !_during_marking)
-      _young_gc_eff_seq->add(cur_efficiency);
+  if (_last_young_gc_full && !_during_marking) {
+    _young_gc_eff_seq->add(cur_efficiency);
   }
 
   _short_lived_surv_rate_group->start_adding_regions();
@@ -1600,8 +1536,8 @@
 
     double survival_ratio = 0.0;
     if (_bytes_in_collection_set_before_gc > 0) {
-      survival_ratio = (double) bytes_in_to_space_during_gc() /
-        (double) _bytes_in_collection_set_before_gc;
+      survival_ratio = (double) _bytes_copied_during_gc /
+                                   (double) _bytes_in_collection_set_before_gc;
     }
 
     _pending_cards_seq->add((double) _pending_cards);
@@ -1941,18 +1877,8 @@
   // I don't think we need to do this when in young GC mode since
   // marking will be initiated next time we hit the soft limit anyway...
   if (predicted_time_ms > _expensive_region_limit_ms) {
-    if (!in_young_gc_mode()) {
-        set_full_young_gcs(true);
-        // We might want to do something different here. However,
-        // right now we don't support the non-generational G1 mode
-        // (and in fact we are planning to remove the associated code,
-        // see CR 6814390). So, let's leave it as is and this will be
-        // removed some time in the future
-        ShouldNotReachHere();
-        set_during_initial_mark_pause();
-    } else
-      // no point in doing another partial one
-      _should_revert_to_full_young_gcs = true;
+    // no point in doing another partial one
+    _should_revert_to_full_young_gcs = true;
   }
 }
 
@@ -1967,38 +1893,27 @@
 }
 
 double G1CollectorPolicy::recent_avg_time_for_pauses_ms() {
-  if (_recent_pause_times_ms->num() == 0) return (double) MaxGCPauseMillis;
-  else return _recent_pause_times_ms->avg();
+  if (_recent_pause_times_ms->num() == 0) {
+    return (double) MaxGCPauseMillis;
+  }
+  return _recent_pause_times_ms->avg();
 }
 
-double G1CollectorPolicy::recent_avg_time_for_CH_strong_ms() {
-  if (_recent_CH_strong_roots_times_ms->num() == 0)
+double G1CollectorPolicy::recent_avg_time_for_rs_scan_ms() {
+  if (_recent_rs_scan_times_ms->num() == 0) {
     return (double)MaxGCPauseMillis/3.0;
-  else return _recent_CH_strong_roots_times_ms->avg();
-}
-
-double G1CollectorPolicy::recent_avg_time_for_G1_strong_ms() {
-  if (_recent_G1_strong_roots_times_ms->num() == 0)
-    return (double)MaxGCPauseMillis/3.0;
-  else return _recent_G1_strong_roots_times_ms->avg();
-}
-
-double G1CollectorPolicy::recent_avg_time_for_evac_ms() {
-  if (_recent_evac_times_ms->num() == 0) return (double)MaxGCPauseMillis/3.0;
-  else return _recent_evac_times_ms->avg();
+  }
+  return _recent_rs_scan_times_ms->avg();
 }
 
 int G1CollectorPolicy::number_of_recent_gcs() {
-  assert(_recent_CH_strong_roots_times_ms->num() ==
-         _recent_G1_strong_roots_times_ms->num(), "Sequence out of sync");
-  assert(_recent_G1_strong_roots_times_ms->num() ==
-         _recent_evac_times_ms->num(), "Sequence out of sync");
-  assert(_recent_evac_times_ms->num() ==
+  assert(_recent_rs_scan_times_ms->num() ==
          _recent_pause_times_ms->num(), "Sequence out of sync");
   assert(_recent_pause_times_ms->num() ==
          _recent_CS_bytes_used_before->num(), "Sequence out of sync");
   assert(_recent_CS_bytes_used_before->num() ==
          _recent_CS_bytes_surviving->num(), "Sequence out of sync");
+
   return _recent_pause_times_ms->num();
 }
 
@@ -2373,18 +2288,9 @@
 // Calculates survivor space parameters.
 void G1CollectorPolicy::calculate_survivors_policy()
 {
-  if (G1FixedSurvivorSpaceSize == 0) {
-    _max_survivor_regions = _young_list_target_length / SurvivorRatio;
-  } else {
-    _max_survivor_regions = G1FixedSurvivorSpaceSize / HeapRegion::GrainBytes;
-  }
-
-  if (G1FixedTenuringThreshold) {
-    _tenuring_threshold = MaxTenuringThreshold;
-  } else {
-    _tenuring_threshold = _survivors_age_table.compute_tenuring_threshold(
+  _max_survivor_regions = _young_list_target_length / SurvivorRatio;
+  _tenuring_threshold = _survivors_age_table.compute_tenuring_threshold(
         HeapRegion::GrainWords * _max_survivor_regions);
-  }
 }
 
 #ifndef PRODUCT
@@ -2659,9 +2565,7 @@
   _inc_cset_size = 0;
   _inc_cset_bytes_used_before = 0;
 
-  if (in_young_gc_mode()) {
-    _inc_cset_young_index = 0;
-  }
+  _inc_cset_young_index = 0;
 
   _inc_cset_max_finger = 0;
   _inc_cset_recorded_young_bytes = 0;
@@ -2890,86 +2794,77 @@
   max_live_bytes = max_live_bytes + expansion_bytes;
 
   HeapRegion* hr;
-  if (in_young_gc_mode()) {
-    double young_start_time_sec = os::elapsedTime();
+  double young_start_time_sec = os::elapsedTime();
 
-    if (G1PolicyVerbose > 0) {
-      gclog_or_tty->print_cr("Adding %d young regions to the CSet",
-                    _g1->young_list()->length());
-    }
-
-    _young_cset_length  = 0;
-    _last_young_gc_full = full_young_gcs() ? true : false;
-
-    if (_last_young_gc_full)
-      ++_full_young_pause_num;
-    else
-      ++_partial_young_pause_num;
-
-    // The young list is laid with the survivor regions from the previous
-    // pause are appended to the RHS of the young list, i.e.
-    //   [Newly Young Regions ++ Survivors from last pause].
-
-    hr = _g1->young_list()->first_survivor_region();
-    while (hr != NULL) {
-      assert(hr->is_survivor(), "badly formed young list");
-      hr->set_young();
-      hr = hr->get_next_young_region();
-    }
-
-    // Clear the fields that point to the survivor list - they are
-    // all young now.
-    _g1->young_list()->clear_survivors();
-
-    if (_g1->mark_in_progress())
-      _g1->concurrent_mark()->register_collection_set_finger(_inc_cset_max_finger);
-
-    _young_cset_length = _inc_cset_young_index;
-    _collection_set = _inc_cset_head;
-    _collection_set_size = _inc_cset_size;
-    _collection_set_bytes_used_before = _inc_cset_bytes_used_before;
-
-    // For young regions in the collection set, we assume the worst
-    // case of complete survival
-    max_live_bytes -= _inc_cset_size * HeapRegion::GrainBytes;
-
-    time_remaining_ms -= _inc_cset_predicted_elapsed_time_ms;
-    predicted_pause_time_ms += _inc_cset_predicted_elapsed_time_ms;
-
-    // The number of recorded young regions is the incremental
-    // collection set's current size
-    set_recorded_young_regions(_inc_cset_size);
-    set_recorded_rs_lengths(_inc_cset_recorded_rs_lengths);
-    set_recorded_young_bytes(_inc_cset_recorded_young_bytes);
-#if PREDICTIONS_VERBOSE
-    set_predicted_bytes_to_copy(_inc_cset_predicted_bytes_to_copy);
-#endif // PREDICTIONS_VERBOSE
-
-    if (G1PolicyVerbose > 0) {
-      gclog_or_tty->print_cr("  Added " PTR_FORMAT " Young Regions to CS.",
-                             _inc_cset_size);
-      gclog_or_tty->print_cr("    (" SIZE_FORMAT " KB left in heap.)",
-                            max_live_bytes/K);
-    }
-
-    assert(_inc_cset_size == _g1->young_list()->length(), "Invariant");
-
-    double young_end_time_sec = os::elapsedTime();
-    _recorded_young_cset_choice_time_ms =
-      (young_end_time_sec - young_start_time_sec) * 1000.0;
-
-    // We are doing young collections so reset this.
-    non_young_start_time_sec = young_end_time_sec;
-
-    // Note we can use either _collection_set_size or
-    // _young_cset_length here
-    if (_collection_set_size > 0 && _last_young_gc_full) {
-      // don't bother adding more regions...
-      goto choose_collection_set_end;
-    }
+  if (G1PolicyVerbose > 0) {
+    gclog_or_tty->print_cr("Adding %d young regions to the CSet",
+      _g1->young_list()->length());
   }
 
-  if (!in_young_gc_mode() || !full_young_gcs()) {
+  _young_cset_length  = 0;
+  _last_young_gc_full = full_young_gcs() ? true : false;
+
+  if (_last_young_gc_full)
+    ++_full_young_pause_num;
+  else
+    ++_partial_young_pause_num;
+
+  // The young list is laid with the survivor regions from the previous
+  // pause are appended to the RHS of the young list, i.e.
+  //   [Newly Young Regions ++ Survivors from last pause].
+
+  hr = _g1->young_list()->first_survivor_region();
+  while (hr != NULL) {
+    assert(hr->is_survivor(), "badly formed young list");
+    hr->set_young();
+    hr = hr->get_next_young_region();
+  }
+
+  // Clear the fields that point to the survivor list - they are
+  // all young now.
+  _g1->young_list()->clear_survivors();
+
+  if (_g1->mark_in_progress())
+    _g1->concurrent_mark()->register_collection_set_finger(_inc_cset_max_finger);
+
+  _young_cset_length = _inc_cset_young_index;
+  _collection_set = _inc_cset_head;
+  _collection_set_size = _inc_cset_size;
+  _collection_set_bytes_used_before = _inc_cset_bytes_used_before;
+
+  // For young regions in the collection set, we assume the worst
+  // case of complete survival
+  max_live_bytes -= _inc_cset_size * HeapRegion::GrainBytes;
+
+  time_remaining_ms -= _inc_cset_predicted_elapsed_time_ms;
+  predicted_pause_time_ms += _inc_cset_predicted_elapsed_time_ms;
+
+  // The number of recorded young regions is the incremental
+  // collection set's current size
+  set_recorded_young_regions(_inc_cset_size);
+  set_recorded_rs_lengths(_inc_cset_recorded_rs_lengths);
+  set_recorded_young_bytes(_inc_cset_recorded_young_bytes);
+#if PREDICTIONS_VERBOSE
+  set_predicted_bytes_to_copy(_inc_cset_predicted_bytes_to_copy);
+#endif // PREDICTIONS_VERBOSE
+
+  if (G1PolicyVerbose > 0) {
+    gclog_or_tty->print_cr("  Added " PTR_FORMAT " Young Regions to CS.",
+      _inc_cset_size);
+    gclog_or_tty->print_cr("    (" SIZE_FORMAT " KB left in heap.)",
+      max_live_bytes/K);
+  }
+
+  assert(_inc_cset_size == _g1->young_list()->length(), "Invariant");
+
+  double young_end_time_sec = os::elapsedTime();
+  _recorded_young_cset_choice_time_ms =
+    (young_end_time_sec - young_start_time_sec) * 1000.0;
+
+  // We are doing young collections so reset this.
+  non_young_start_time_sec = young_end_time_sec;
+
+  if (!full_young_gcs()) {
     bool should_continue = true;
     NumberSeq seq;
     double avg_prediction = 100000000000000000.0; // something very large
@@ -3002,7 +2897,6 @@
       _should_revert_to_full_young_gcs  = true;
   }
 
-choose_collection_set_end:
   stop_incremental_cset_building();
 
   count_CS_bytes_used();
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp
index c44f6bb..c30017d 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -129,15 +129,9 @@
   jlong  _num_cc_clears;                // number of times the card count cache has been cleared
 #endif
 
-  double _cur_CH_strong_roots_end_sec;
-  double _cur_CH_strong_roots_dur_ms;
-  double _cur_G1_strong_roots_end_sec;
-  double _cur_G1_strong_roots_dur_ms;
-
   // Statistics for recent GC pauses.  See below for how indexed.
-  TruncatedSeq* _recent_CH_strong_roots_times_ms;
-  TruncatedSeq* _recent_G1_strong_roots_times_ms;
-  TruncatedSeq* _recent_evac_times_ms;
+  TruncatedSeq* _recent_rs_scan_times_ms;
+
   // These exclude marking times.
   TruncatedSeq* _recent_pause_times_ms;
   TruncatedSeq* _recent_gc_times_ms;
@@ -147,7 +141,6 @@
 
   TruncatedSeq* _recent_rs_sizes;
 
-  TruncatedSeq* _concurrent_mark_init_times_ms;
   TruncatedSeq* _concurrent_mark_remark_times_ms;
   TruncatedSeq* _concurrent_mark_cleanup_times_ms;
 
@@ -184,9 +177,6 @@
   double* _par_last_gc_worker_end_times_ms;
   double* _par_last_gc_worker_times_ms;
 
-  // indicates that we are in young GC mode
-  bool _in_young_gc_mode;
-
   // indicates whether we are in full young or partially young GC mode
   bool _full_young_gcs;
 
@@ -533,10 +523,6 @@
     return _mmu_tracker->max_gc_time() * 1000.0;
   }
 
-  double predict_init_time_ms() {
-    return get_new_prediction(_concurrent_mark_init_times_ms);
-  }
-
   double predict_remark_time_ms() {
     return get_new_prediction(_concurrent_mark_remark_times_ms);
   }
@@ -591,13 +577,9 @@
   int _last_update_rs_processed_buffers;
   double _last_pause_time_ms;
 
-  size_t _bytes_in_to_space_before_gc;
-  size_t _bytes_in_to_space_after_gc;
-  size_t bytes_in_to_space_during_gc() {
-    return
-      _bytes_in_to_space_after_gc - _bytes_in_to_space_before_gc;
-  }
   size_t _bytes_in_collection_set_before_gc;
+  size_t _bytes_copied_during_gc;
+
   // Used to count used bytes in CS.
   friend class CountCSClosure;
 
@@ -692,17 +674,11 @@
   // The average time in ms per collection pause, averaged over recent pauses.
   double recent_avg_time_for_pauses_ms();
 
-  // The average time in ms for processing CollectedHeap strong roots, per
-  // collection pause, averaged over recent pauses.
-  double recent_avg_time_for_CH_strong_ms();
-
-  // The average time in ms for processing the G1 remembered set, per
-  // pause, averaged over recent pauses.
-  double recent_avg_time_for_G1_strong_ms();
-
-  // The average time in ms for "evacuating followers", per pause, averaged
-  // over recent pauses.
-  double recent_avg_time_for_evac_ms();
+  // The average time in ms for RS scanning, per pause, averaged
+  // over recent pauses. (Note the RS scanning time for a pause
+  // is itself an average of the RS scanning time for each worker
+  // thread.)
+  double recent_avg_time_for_rs_scan_ms();
 
   // The number of "recent" GCs recorded in the number sequences
   int number_of_recent_gcs();
@@ -792,7 +768,6 @@
   // This set of variables tracks the collector efficiency, in order to
   // determine whether we should initiate a new marking.
   double _cur_mark_stop_world_time_ms;
-  double _mark_init_start_sec;
   double _mark_remark_start_sec;
   double _mark_cleanup_start_sec;
   double _mark_closure_time_ms;
@@ -817,10 +792,6 @@
     return _bytes_in_collection_set_before_gc;
   }
 
-  size_t bytes_in_to_space() {
-    return bytes_in_to_space_during_gc();
-  }
-
   unsigned calc_gc_alloc_time_stamp() {
     return _all_pause_times_ms->num() + 1;
   }
@@ -869,9 +840,7 @@
                                              size_t start_used);
 
   // Must currently be called while the world is stopped.
-  virtual void record_concurrent_mark_init_start();
-  virtual void record_concurrent_mark_init_end();
-  void record_concurrent_mark_init_end_pre(double
+  void record_concurrent_mark_init_end(double
                                            mark_init_elapsed_time_ms);
 
   void record_mark_closure_time(double mark_closure_time_ms);
@@ -887,9 +856,6 @@
   virtual void record_concurrent_pause();
   virtual void record_concurrent_pause_end();
 
-  virtual void record_collection_pause_end_CH_strong_roots();
-  virtual void record_collection_pause_end_G1_strong_roots();
-
   virtual void record_collection_pause_end();
   void print_heap_transition();
 
@@ -992,9 +958,16 @@
   }
 #endif
 
-  // Record the fact that "bytes" bytes allocated in a region.
-  void record_before_bytes(size_t bytes);
-  void record_after_bytes(size_t bytes);
+  // Record how much space we copied during a GC. This is typically
+  // called when a GC alloc region is being retired.
+  void record_bytes_copied_during_gc(size_t bytes) {
+    _bytes_copied_during_gc += bytes;
+  }
+
+  // The amount of space we copied during a GC.
+  size_t bytes_copied_during_gc() {
+    return _bytes_copied_during_gc;
+  }
 
   // Choose a new collection set.  Marks the chosen regions as being
   // "in_collection_set", and links them together.  The head and number of
@@ -1117,30 +1090,17 @@
   bool is_young_list_full() {
     size_t young_list_length = _g1->young_list()->length();
     size_t young_list_target_length = _young_list_target_length;
-    if (G1FixedEdenSize) {
-      young_list_target_length -= _max_survivor_regions;
-    }
     return young_list_length >= young_list_target_length;
   }
 
   bool can_expand_young_list() {
     size_t young_list_length = _g1->young_list()->length();
     size_t young_list_max_length = _young_list_max_length;
-    if (G1FixedEdenSize) {
-      young_list_max_length -= _max_survivor_regions;
-    }
     return young_list_length < young_list_max_length;
   }
 
   void update_region_num(bool young);
 
-  bool in_young_gc_mode() {
-    return _in_young_gc_mode;
-  }
-  void set_in_young_gc_mode(bool in_young_gc_mode) {
-    _in_young_gc_mode = in_young_gc_mode;
-  }
-
   bool full_young_gcs() {
     return _full_young_gcs;
   }
@@ -1208,10 +1168,6 @@
     return purpose == GCAllocForSurvived;
   }
 
-  inline GCAllocPurpose alternative_purpose(int purpose) {
-    return GCAllocForTenured;
-  }
-
   static const size_t REGIONS_UNLIMITED = ~(size_t)0;
 
   size_t max_regions(int purpose);
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp
index ee1bc44..0daabdb 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1_globals.hpp
@@ -39,8 +39,6 @@
   develop(intx, G1MarkingOverheadPercent, 0,                                \
           "Overhead of concurrent marking")                                 \
                                                                             \
-  develop(bool, G1Gen, true,                                                \
-          "If true, it will enable the generational G1")                    \
                                                                             \
   develop(intx, G1PolicyVerbose, 0,                                         \
           "The verbosity level on G1 policy decisions")                     \
@@ -251,16 +249,6 @@
           "When set, G1 will fail when it encounters an FP 'error', "       \
           "so as to allow debugging")                                       \
                                                                             \
-  develop(bool, G1FixedTenuringThreshold, false,                            \
-          "When set, G1 will not adjust the tenuring threshold")            \
-                                                                            \
-  develop(bool, G1FixedEdenSize, false,                                     \
-          "When set, G1 will not allocate unused survivor space regions")   \
-                                                                            \
-  develop(uintx, G1FixedSurvivorSpaceSize, 0,                               \
-          "If non-0 is the size of the G1 survivor space, "                 \
-          "otherwise SurvivorRatio is used to determine the size")          \
-                                                                            \
   product(uintx, G1HeapRegionSize, 0,                                       \
           "Size of the G1 regions.")                                        \
                                                                             \
diff --git a/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp b/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
index 3acd100..ec42314 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
@@ -352,7 +352,6 @@
          "we should have already filtered out humongous regions");
 
   _in_collection_set = false;
-  _is_gc_alloc_region = false;
 
   set_young_index_in_cset(-1);
   uninstall_surv_rate_group();
@@ -486,7 +485,7 @@
   : G1OffsetTableContigSpace(sharedOffsetArray, mr, is_zeroed),
     _next_fk(HeapRegionDCTOC::NoFilterKind), _hrs_index(hrs_index),
     _humongous_type(NotHumongous), _humongous_start_region(NULL),
-    _in_collection_set(false), _is_gc_alloc_region(false),
+    _in_collection_set(false),
     _next_in_special_set(NULL), _orig_end(NULL),
     _claimed(InitialClaimValue), _evacuation_failed(false),
     _prev_marked_bytes(0), _next_marked_bytes(0), _sort_index(-1),
@@ -716,8 +715,6 @@
   }
   if (in_collection_set())
     st->print(" CS");
-  else if (is_gc_alloc_region())
-    st->print(" A ");
   else
     st->print("   ");
   if (is_young())
diff --git a/hotspot/src/share/vm/gc_implementation/g1/heapRegion.hpp b/hotspot/src/share/vm/gc_implementation/g1/heapRegion.hpp
index ec63d1f..774987d 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegion.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegion.hpp
@@ -251,10 +251,6 @@
   // True iff the region is in current collection_set.
   bool _in_collection_set;
 
-  // Is this or has it been an allocation region in the current collection
-  // pause.
-  bool _is_gc_alloc_region;
-
   // True iff an attempt to evacuate an object in the region failed.
   bool _evacuation_failed;
 
@@ -497,27 +493,6 @@
     _next_in_special_set = r;
   }
 
-  // True iff it is or has been an allocation region in the current
-  // collection pause.
-  bool is_gc_alloc_region() const {
-    return _is_gc_alloc_region;
-  }
-  void set_is_gc_alloc_region(bool b) {
-    _is_gc_alloc_region = b;
-  }
-  HeapRegion* next_gc_alloc_region() {
-    assert(is_gc_alloc_region(), "should only invoke on member of CS.");
-    assert(_next_in_special_set == NULL ||
-           _next_in_special_set->is_gc_alloc_region(),
-           "Malformed CS.");
-    return _next_in_special_set;
-  }
-  void set_next_gc_alloc_region(HeapRegion* r) {
-    assert(is_gc_alloc_region(), "should only invoke on member of CS.");
-    assert(r == NULL || r->is_gc_alloc_region(), "Malformed CS.");
-    _next_in_special_set = r;
-  }
-
   // Methods used by the HeapRegionSetBase class and subclasses.
 
   // Getter and setter for the next field used to link regions into
diff --git a/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp b/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
index 0840bdd..8c5f15e 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
@@ -364,7 +364,10 @@
   PosParPRT** next_addr() { return &_next; }
 
   bool should_expand(int tid) {
-    return par_tables() == NULL && tid > 0 && hr()->is_gc_alloc_region();
+    // Given that we now defer RSet updates for after a GC we don't
+    // really need to expand the tables any more. This code should be
+    // cleaned up in the future (see CR 6921087).
+    return false;
   }
 
   void par_expand() {
diff --git a/hotspot/src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp b/hotspot/src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp
index cd2fc29..9cb40b5 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp
@@ -1,5 +1,5 @@
 /*
- * copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp b/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp
index 091045c..ea75a59 100644
--- a/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parCardTableModRefBS.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2011 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
index 6b99a8f..f080754 100644
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
@@ -404,13 +404,13 @@
 
 void CollectedHeap::pre_full_gc_dump() {
   if (HeapDumpBeforeFullGC) {
-    TraceTime tt("Heap Dump: ", PrintGCDetails, false, gclog_or_tty);
+    TraceTime tt("Heap Dump (before full gc): ", PrintGCDetails, false, gclog_or_tty);
     // We are doing a "major" collection and a heap dump before
     // major collection has been requested.
     HeapDumper::dump_heap();
   }
   if (PrintClassHistogramBeforeFullGC) {
-    TraceTime tt("Class Histogram: ", PrintGCDetails, true, gclog_or_tty);
+    TraceTime tt("Class Histogram (before full gc): ", PrintGCDetails, true, gclog_or_tty);
     VM_GC_HeapInspection inspector(gclog_or_tty, false /* ! full gc */, false /* ! prologue */);
     inspector.doit();
   }
@@ -418,11 +418,11 @@
 
 void CollectedHeap::post_full_gc_dump() {
   if (HeapDumpAfterFullGC) {
-    TraceTime tt("Heap Dump", PrintGCDetails, false, gclog_or_tty);
+    TraceTime tt("Heap Dump (after full gc): ", PrintGCDetails, false, gclog_or_tty);
     HeapDumper::dump_heap();
   }
   if (PrintClassHistogramAfterFullGC) {
-    TraceTime tt("Class Histogram", PrintGCDetails, true, gclog_or_tty);
+    TraceTime tt("Class Histogram (after full gc): ", PrintGCDetails, true, gclog_or_tty);
     VM_GC_HeapInspection inspector(gclog_or_tty, false /* ! full gc */, false /* ! prologue */);
     inspector.doit();
   }
diff --git a/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp b/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp
index 3466f43..87bbcd3 100644
--- a/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp
+++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp
@@ -509,6 +509,7 @@
   // resolve field
   FieldAccessInfo info;
   constantPoolHandle pool(thread, method(thread)->constants());
+  bool is_put    = (bytecode == Bytecodes::_putfield  || bytecode == Bytecodes::_putstatic);
   bool is_static = (bytecode == Bytecodes::_getstatic || bytecode == Bytecodes::_putstatic);
 
   {
@@ -528,8 +529,6 @@
   // exceptions at the correct place. If we do not resolve completely
   // in the current pass, leaving the put_code set to zero will
   // cause the next put instruction to reresolve.
-  bool is_put = (bytecode == Bytecodes::_putfield ||
-                 bytecode == Bytecodes::_putstatic);
   Bytecodes::Code put_code = (Bytecodes::Code)0;
 
   // We also need to delay resolving getstatic instructions until the
@@ -541,7 +540,6 @@
                                !klass->is_initialized());
   Bytecodes::Code get_code = (Bytecodes::Code)0;
 
-
   if (!uninitialized_static) {
     get_code = ((is_static) ? Bytecodes::_getstatic : Bytecodes::_getfield);
     if (is_put || !info.access_flags().is_final()) {
@@ -549,6 +547,23 @@
     }
   }
 
+  if (is_put && !is_static && klass->is_subclass_of(SystemDictionary::CallSite_klass()) && (info.name() == vmSymbols::target_name())) {
+    const jint direction = frame::interpreter_frame_expression_stack_direction();
+    oop call_site     = *((oop*) thread->last_frame().interpreter_frame_tos_at(-1 * direction));
+    oop method_handle = *((oop*) thread->last_frame().interpreter_frame_tos_at( 0 * direction));
+    assert(call_site    ->is_a(SystemDictionary::CallSite_klass()),     "must be");
+    assert(method_handle->is_a(SystemDictionary::MethodHandle_klass()), "must be");
+
+    {
+      // Walk all nmethods depending on CallSite
+      MutexLocker mu(Compile_lock, thread);
+      Universe::flush_dependents_on(call_site, method_handle);
+    }
+
+    // Don't allow fast path for setting CallSite.target and sub-classes.
+    put_code = (Bytecodes::Code) 0;
+  }
+
   cache_entry(thread)->set_field(
     get_code,
     put_code,
diff --git a/hotspot/src/share/vm/interpreter/linkResolver.cpp b/hotspot/src/share/vm/interpreter/linkResolver.cpp
index 7b42fe3..3d655af 100644
--- a/hotspot/src/share/vm/interpreter/linkResolver.cpp
+++ b/hotspot/src/share/vm/interpreter/linkResolver.cpp
@@ -132,7 +132,7 @@
       return;
     }
     CompileBroker::compile_method(selected_method, InvocationEntryBci,
-                                  CompLevel_initial_compile,
+                                  CompilationPolicy::policy()->initial_compile_level(),
                                   methodHandle(), 0, "must_be_compiled", CHECK);
   }
 }
diff --git a/hotspot/src/share/vm/interpreter/templateTable.hpp b/hotspot/src/share/vm/interpreter/templateTable.hpp
index f91ecc7..3b006ad 100644
--- a/hotspot/src/share/vm/interpreter/templateTable.hpp
+++ b/hotspot/src/share/vm/interpreter/templateTable.hpp
@@ -120,8 +120,8 @@
 
   // helpers
   static void unimplemented_bc();
-  static void patch_bytecode(Bytecodes::Code bc, Register scratch1,
-                             Register scratch2, bool load_bc_in_scratch = true);
+  static void patch_bytecode(Bytecodes::Code bc, Register bc_reg,
+                             Register temp_reg, bool load_bc_into_bc_reg = true, int byte_no = -1);
 
   // C calls
   static void call_VM(Register oop_result, address entry_point);
diff --git a/hotspot/src/share/vm/memory/threadLocalAllocBuffer.hpp b/hotspot/src/share/vm/memory/threadLocalAllocBuffer.hpp
index 4b88835..1b8bb0a 100644
--- a/hotspot/src/share/vm/memory/threadLocalAllocBuffer.hpp
+++ b/hotspot/src/share/vm/memory/threadLocalAllocBuffer.hpp
@@ -124,16 +124,7 @@
   // Reserve space at the end of TLAB
   static size_t end_reserve() {
     int reserve_size = typeArrayOopDesc::header_size(T_INT);
-    if (AllocatePrefetchStyle == 3) {
-      // BIS is used to prefetch - we need a space for it.
-      // +1 for rounding up to next cache line +1 to be safe
-      int lines = AllocatePrefetchLines + 2;
-      int step_size = AllocatePrefetchStepSize;
-      int distance = AllocatePrefetchDistance;
-      int prefetch_end = (distance + step_size*lines)/(int)HeapWordSize;
-      reserve_size = MAX2(reserve_size, prefetch_end);
-    }
-    return reserve_size;
+    return MAX2(reserve_size, VM_Version::reserve_for_allocation_prefetch());
   }
   static size_t alignment_reserve()              { return align_object_size(end_reserve()); }
   static size_t alignment_reserve_in_bytes()     { return alignment_reserve() * HeapWordSize; }
diff --git a/hotspot/src/share/vm/memory/universe.cpp b/hotspot/src/share/vm/memory/universe.cpp
index ff14097..146307b 100644
--- a/hotspot/src/share/vm/memory/universe.cpp
+++ b/hotspot/src/share/vm/memory/universe.cpp
@@ -1177,7 +1177,7 @@
   // stopped dring the safepoint so CodeCache will be safe to update without
   // holding the CodeCache_lock.
 
-  DepChange changes(dependee);
+  KlassDepChange changes(dependee);
 
   // Compute the dependent nmethods
   if (CodeCache::mark_for_deoptimization(changes) > 0) {
@@ -1187,6 +1187,37 @@
   }
 }
 
+// Flushes compiled methods dependent on a particular CallSite
+// instance when its target is different than the given MethodHandle.
+void Universe::flush_dependents_on(Handle call_site, Handle method_handle) {
+  assert_lock_strong(Compile_lock);
+
+  if (CodeCache::number_of_nmethods_with_dependencies() == 0) return;
+
+  // CodeCache can only be updated by a thread_in_VM and they will all be
+  // stopped dring the safepoint so CodeCache will be safe to update without
+  // holding the CodeCache_lock.
+
+  CallSiteDepChange changes(call_site(), method_handle());
+
+  // Compute the dependent nmethods that have a reference to a
+  // CallSite object.  We use instanceKlass::mark_dependent_nmethod
+  // directly instead of CodeCache::mark_for_deoptimization because we
+  // want dependents on the class CallSite only not all classes in the
+  // ContextStream.
+  int marked = 0;
+  {
+    MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
+    instanceKlass* call_site_klass = instanceKlass::cast(SystemDictionary::CallSite_klass());
+    marked = call_site_klass->mark_dependent_nmethods(changes);
+  }
+  if (marked > 0) {
+    // At least one nmethod has been marked for deoptimization
+    VM_Deoptimize op;
+    VMThread::execute(&op);
+  }
+}
+
 #ifdef HOTSWAP
 // Flushes compiled methods dependent on dependee in the evolutionary sense
 void Universe::flush_evol_dependents_on(instanceKlassHandle ev_k_h) {
diff --git a/hotspot/src/share/vm/memory/universe.hpp b/hotspot/src/share/vm/memory/universe.hpp
index 04f289a..0f90ff5 100644
--- a/hotspot/src/share/vm/memory/universe.hpp
+++ b/hotspot/src/share/vm/memory/universe.hpp
@@ -439,6 +439,7 @@
 
   // Flushing and deoptimization
   static void flush_dependents_on(instanceKlassHandle dependee);
+  static void flush_dependents_on(Handle call_site, Handle method_handle);
 #ifdef HOTSWAP
   // Flushing and deoptimization in case of evolution
   static void flush_evol_dependents_on(instanceKlassHandle dependee);
diff --git a/hotspot/src/share/vm/oops/generateOopMap.cpp b/hotspot/src/share/vm/oops/generateOopMap.cpp
index 10b39c6..58ef931 100644
--- a/hotspot/src/share/vm/oops/generateOopMap.cpp
+++ b/hotspot/src/share/vm/oops/generateOopMap.cpp
@@ -963,10 +963,21 @@
   // initialize the CellTypeState-related information.
   init_state();
 
-  // We allocate space for all state-vectors for all basicblocks in one huge chuck.
-  // Then in the next part of the code, we set a pointer in each _basic_block that
-  // points to each piece.
-  CellTypeState *basicBlockState = NEW_RESOURCE_ARRAY(CellTypeState, bbNo * _state_len);
+  // We allocate space for all state-vectors for all basicblocks in one huge
+  // chunk.  Then in the next part of the code, we set a pointer in each
+  // _basic_block that points to each piece.
+
+  // The product of bbNo and _state_len can get large if there are lots of
+  // basic blocks and stack/locals/monitors.  Need to check to make sure
+  // we don't overflow the capacity of a pointer.
+  if ((unsigned)bbNo > UINTPTR_MAX / sizeof(CellTypeState) / _state_len) {
+    report_error("The amount of memory required to analyze this method "
+                 "exceeds addressable range");
+    return;
+  }
+
+  CellTypeState *basicBlockState =
+      NEW_RESOURCE_ARRAY(CellTypeState, bbNo * _state_len);
   memset(basicBlockState, 0, bbNo * _state_len * sizeof(CellTypeState));
 
   // Make a pass over the basicblocks and assign their state vectors.
@@ -1556,9 +1567,7 @@
     case Bytecodes::_jsr:               do_jsr(itr->dest());         break;
     case Bytecodes::_jsr_w:             do_jsr(itr->dest_w());       break;
 
-    case Bytecodes::_getstatic:         do_field(true,  true,
-                                                 itr->get_index_u2_cpcache(),
-                                                 itr->bci()); break;
+    case Bytecodes::_getstatic:         do_field(true,  true,  itr->get_index_u2_cpcache(), itr->bci()); break;
     case Bytecodes::_putstatic:         do_field(false, true,  itr->get_index_u2_cpcache(), itr->bci()); break;
     case Bytecodes::_getfield:          do_field(true,  false, itr->get_index_u2_cpcache(), itr->bci()); break;
     case Bytecodes::_putfield:          do_field(false, false, itr->get_index_u2_cpcache(), itr->bci()); break;
diff --git a/hotspot/src/share/vm/oops/instanceKlass.cpp b/hotspot/src/share/vm/oops/instanceKlass.cpp
index ddc91c2..841b807 100644
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp
@@ -1406,7 +1406,7 @@
 
 //
 // Walk the list of dependent nmethods searching for nmethods which
-// are dependent on the klassOop that was passed in and mark them for
+// are dependent on the changes that were passed in and mark them for
 // deoptimization.  Returns the number of nmethods found.
 //
 int instanceKlass::mark_dependent_nmethods(DepChange& changes) {
diff --git a/hotspot/src/share/vm/opto/block.cpp b/hotspot/src/share/vm/opto/block.cpp
index 5514b97..3cbc5e7 100644
--- a/hotspot/src/share/vm/opto/block.cpp
+++ b/hotspot/src/share/vm/opto/block.cpp
@@ -80,35 +80,37 @@
 
 uint Block::code_alignment() {
   // Check for Root block
-  if( _pre_order == 0 ) return CodeEntryAlignment;
+  if (_pre_order == 0) return CodeEntryAlignment;
   // Check for Start block
-  if( _pre_order == 1 ) return InteriorEntryAlignment;
+  if (_pre_order == 1) return InteriorEntryAlignment;
   // Check for loop alignment
-  if (has_loop_alignment())  return loop_alignment();
+  if (has_loop_alignment()) return loop_alignment();
 
-  return 1;                     // no particular alignment
+  return relocInfo::addr_unit(); // no particular alignment
 }
 
 uint Block::compute_loop_alignment() {
   Node *h = head();
-  if( h->is_Loop() && h->as_Loop()->is_inner_loop() )  {
+  int unit_sz = relocInfo::addr_unit();
+  if (h->is_Loop() && h->as_Loop()->is_inner_loop())  {
     // Pre- and post-loops have low trip count so do not bother with
     // NOPs for align loop head.  The constants are hidden from tuning
     // but only because my "divide by 4" heuristic surely gets nearly
     // all possible gain (a "do not align at all" heuristic has a
     // chance of getting a really tiny gain).
-    if( h->is_CountedLoop() && (h->as_CountedLoop()->is_pre_loop() ||
-                                h->as_CountedLoop()->is_post_loop()) )
-      return (OptoLoopAlignment > 4) ? (OptoLoopAlignment>>2) : 1;
+    if (h->is_CountedLoop() && (h->as_CountedLoop()->is_pre_loop() ||
+                                h->as_CountedLoop()->is_post_loop())) {
+      return (OptoLoopAlignment > 4*unit_sz) ? (OptoLoopAlignment>>2) : unit_sz;
+    }
     // Loops with low backedge frequency should not be aligned.
     Node *n = h->in(LoopNode::LoopBackControl)->in(0);
-    if( n->is_MachIf() && n->as_MachIf()->_prob < 0.01 ) {
-      return 1;             // Loop does not loop, more often than not!
+    if (n->is_MachIf() && n->as_MachIf()->_prob < 0.01) {
+      return unit_sz; // Loop does not loop, more often than not!
     }
     return OptoLoopAlignment; // Otherwise align loop head
   }
 
-  return 1;                     // no particular alignment
+  return unit_sz; // no particular alignment
 }
 
 //-----------------------------------------------------------------------------
@@ -165,7 +167,7 @@
   int end_idx = _nodes.size()-1;
 
   // Check for ending goto
-  if ((end_idx > 0) && (_nodes[end_idx]->is_Goto())) {
+  if ((end_idx > 0) && (_nodes[end_idx]->is_MachGoto())) {
     success_result = empty_with_goto;
     end_idx--;
   }
@@ -197,11 +199,11 @@
 bool Block::has_uncommon_code() const {
   Node* en = end();
 
-  if (en->is_Goto())
+  if (en->is_MachGoto())
     en = en->in(0);
   if (en->is_Catch())
     en = en->in(0);
-  if (en->is_Proj() && en->in(0)->is_MachCall()) {
+  if (en->is_MachProj() && en->in(0)->is_MachCall()) {
     MachCallNode* call = en->in(0)->as_MachCall();
     if (call->cnt() != COUNT_UNKNOWN && call->cnt() <= PROB_UNLIKELY_MAG(4)) {
       // This is true for slow-path stubs like new_{instance,array},
@@ -271,55 +273,55 @@
 
 //------------------------------dump-------------------------------------------
 #ifndef PRODUCT
-void Block::dump_bidx(const Block* orig) const {
-  if (_pre_order) tty->print("B%d",_pre_order);
-  else tty->print("N%d", head()->_idx);
+void Block::dump_bidx(const Block* orig, outputStream* st) const {
+  if (_pre_order) st->print("B%d",_pre_order);
+  else st->print("N%d", head()->_idx);
 
   if (Verbose && orig != this) {
     // Dump the original block's idx
-    tty->print(" (");
-    orig->dump_bidx(orig);
-    tty->print(")");
+    st->print(" (");
+    orig->dump_bidx(orig, st);
+    st->print(")");
   }
 }
 
-void Block::dump_pred(const Block_Array *bbs, Block* orig) const {
+void Block::dump_pred(const Block_Array *bbs, Block* orig, outputStream* st) const {
   if (is_connector()) {
     for (uint i=1; i<num_preds(); i++) {
       Block *p = ((*bbs)[pred(i)->_idx]);
-      p->dump_pred(bbs, orig);
+      p->dump_pred(bbs, orig, st);
     }
   } else {
-    dump_bidx(orig);
-    tty->print(" ");
+    dump_bidx(orig, st);
+    st->print(" ");
   }
 }
 
-void Block::dump_head( const Block_Array *bbs ) const {
+void Block::dump_head( const Block_Array *bbs, outputStream* st ) const {
   // Print the basic block
-  dump_bidx(this);
-  tty->print(": #\t");
+  dump_bidx(this, st);
+  st->print(": #\t");
 
   // Print the incoming CFG edges and the outgoing CFG edges
   for( uint i=0; i<_num_succs; i++ ) {
-    non_connector_successor(i)->dump_bidx(_succs[i]);
-    tty->print(" ");
+    non_connector_successor(i)->dump_bidx(_succs[i], st);
+    st->print(" ");
   }
-  tty->print("<- ");
+  st->print("<- ");
   if( head()->is_block_start() ) {
     for (uint i=1; i<num_preds(); i++) {
       Node *s = pred(i);
       if (bbs) {
         Block *p = (*bbs)[s->_idx];
-        p->dump_pred(bbs, p);
+        p->dump_pred(bbs, p, st);
       } else {
         while (!s->is_block_start())
           s = s->in(0);
-        tty->print("N%d ", s->_idx );
+        st->print("N%d ", s->_idx );
       }
     }
   } else
-    tty->print("BLOCK HEAD IS JUNK  ");
+    st->print("BLOCK HEAD IS JUNK  ");
 
   // Print loop, if any
   const Block *bhead = this;    // Head of self-loop
@@ -330,24 +332,24 @@
     while (bx->is_connector()) {
       bx = (*bbs)[bx->pred(1)->_idx];
     }
-    tty->print("\tLoop: B%d-B%d ", bhead->_pre_order, bx->_pre_order);
+    st->print("\tLoop: B%d-B%d ", bhead->_pre_order, bx->_pre_order);
     // Dump any loop-specific bits, especially for CountedLoops.
-    loop->dump_spec(tty);
+    loop->dump_spec(st);
   } else if (has_loop_alignment()) {
-    tty->print(" top-of-loop");
+    st->print(" top-of-loop");
   }
-  tty->print(" Freq: %g",_freq);
+  st->print(" Freq: %g",_freq);
   if( Verbose || WizardMode ) {
-    tty->print(" IDom: %d/#%d", _idom ? _idom->_pre_order : 0, _dom_depth);
-    tty->print(" RegPressure: %d",_reg_pressure);
-    tty->print(" IHRP Index: %d",_ihrp_index);
-    tty->print(" FRegPressure: %d",_freg_pressure);
-    tty->print(" FHRP Index: %d",_fhrp_index);
+    st->print(" IDom: %d/#%d", _idom ? _idom->_pre_order : 0, _dom_depth);
+    st->print(" RegPressure: %d",_reg_pressure);
+    st->print(" IHRP Index: %d",_ihrp_index);
+    st->print(" FRegPressure: %d",_freg_pressure);
+    st->print(" FHRP Index: %d",_fhrp_index);
   }
-  tty->print_cr("");
+  st->print_cr("");
 }
 
-void Block::dump() const { dump(0); }
+void Block::dump() const { dump(NULL); }
 
 void Block::dump( const Block_Array *bbs ) const {
   dump_head(bbs);
@@ -441,9 +443,9 @@
       Block *bb = new (_bbs._arena) Block(_bbs._arena,p);
       _bbs.map(p->_idx,bb);
       _bbs.map(x->_idx,bb);
-      if( x != p )                  // Only for root is x == p
+      if( x != p ) {                // Only for root is x == p
         bb->_nodes.push((Node*)x);
-
+      }
       // Now handle predecessors
       ++sum;                        // Count 1 for self block
       uint cnt = bb->num_preds();
@@ -837,7 +839,7 @@
 
       // Make sure we TRUE branch to the target
       if( proj0->Opcode() == Op_IfFalse ) {
-        iff->negate();
+        iff->as_MachIf()->negate();
       }
 
       b->_nodes.pop();          // Remove IfFalse & IfTrue projections
@@ -945,8 +947,8 @@
     assert( bp, "last instruction must be a block proj" );
     assert( bp == b->_nodes[j], "wrong number of successors for this block" );
     if( bp->is_Catch() ) {
-      while( b->_nodes[--j]->Opcode() == Op_MachProj ) ;
-      assert( b->_nodes[j]->is_Call(), "CatchProj must follow call" );
+      while( b->_nodes[--j]->is_MachProj() ) ;
+      assert( b->_nodes[j]->is_MachCall(), "CatchProj must follow call" );
     }
     else if( bp->is_Mach() && bp->as_Mach()->ideal_Opcode() == Op_If ) {
       assert( b->_num_succs == 2, "Conditional branch must have two targets");
diff --git a/hotspot/src/share/vm/opto/block.hpp b/hotspot/src/share/vm/opto/block.hpp
index bb87812..7a3c224 100644
--- a/hotspot/src/share/vm/opto/block.hpp
+++ b/hotspot/src/share/vm/opto/block.hpp
@@ -329,10 +329,10 @@
 
 #ifndef PRODUCT
   // Debugging print of basic block
-  void dump_bidx(const Block* orig) const;
-  void dump_pred(const Block_Array *bbs, Block* orig) const;
-  void dump_head( const Block_Array *bbs ) const;
-  void dump( ) const;
+  void dump_bidx(const Block* orig, outputStream* st = tty) const;
+  void dump_pred(const Block_Array *bbs, Block* orig, outputStream* st = tty) const;
+  void dump_head( const Block_Array *bbs, outputStream* st = tty ) const;
+  void dump() const;
   void dump( const Block_Array *bbs ) const;
 #endif
 };
diff --git a/hotspot/src/share/vm/opto/callGenerator.cpp b/hotspot/src/share/vm/opto/callGenerator.cpp
index fb91f57..58426dd 100644
--- a/hotspot/src/share/vm/opto/callGenerator.cpp
+++ b/hotspot/src/share/vm/opto/callGenerator.cpp
@@ -24,6 +24,7 @@
 
 #include "precompiled.hpp"
 #include "ci/bcEscapeAnalyzer.hpp"
+#include "ci/ciCallSite.hpp"
 #include "ci/ciCPCache.hpp"
 #include "ci/ciMethodHandle.hpp"
 #include "classfile/javaClasses.hpp"
@@ -738,6 +739,34 @@
 }
 
 
+CallGenerator* CallGenerator::for_invokedynamic_inline(ciCallSite* call_site, JVMState* jvms,
+                                                       ciMethod* caller, ciMethod* callee, ciCallProfile profile) {
+  assert(call_site->is_constant_call_site() || call_site->is_mutable_call_site(), "must be");
+  ciMethodHandle* method_handle = call_site->get_target();
+
+  // Set the callee to have access to the class and signature in the
+  // MethodHandleCompiler.
+  method_handle->set_callee(callee);
+  method_handle->set_caller(caller);
+  method_handle->set_call_profile(profile);
+
+  // Get an adapter for the MethodHandle.
+  ciMethod* target_method = method_handle->get_invokedynamic_adapter();
+  if (target_method != NULL) {
+    Compile *C = Compile::current();
+    CallGenerator* hit_cg = C->call_generator(target_method, -1, false, jvms, true, PROB_ALWAYS);
+    if (hit_cg != NULL && hit_cg->is_inline()) {
+      // Add a dependence for invalidation of the optimization.
+      if (call_site->is_mutable_call_site()) {
+        C->dependencies()->assert_call_site_target_value(C->env()->CallSite_klass(), call_site, method_handle);
+      }
+      return hit_cg;
+    }
+  }
+  return NULL;
+}
+
+
 JVMState* PredictedDynamicCallGenerator::generate(JVMState* jvms) {
   GraphKit kit(jvms);
   PhaseGVN& gvn = kit.gvn();
diff --git a/hotspot/src/share/vm/opto/callGenerator.hpp b/hotspot/src/share/vm/opto/callGenerator.hpp
index cdefb59..d95ba2b 100644
--- a/hotspot/src/share/vm/opto/callGenerator.hpp
+++ b/hotspot/src/share/vm/opto/callGenerator.hpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -111,7 +111,8 @@
   static CallGenerator* for_dynamic_call(ciMethod* m);   // invokedynamic
   static CallGenerator* for_virtual_call(ciMethod* m, int vtable_index);  // virtual, interface
 
-  static CallGenerator* for_method_handle_inline(Node* method_handle, JVMState* jvms, ciMethod* caller, ciMethod* callee, ciCallProfile profile);
+  static CallGenerator* for_method_handle_inline(Node* method_handle,   JVMState* jvms, ciMethod* caller, ciMethod* callee, ciCallProfile profile);
+  static CallGenerator* for_invokedynamic_inline(ciCallSite* call_site, JVMState* jvms, ciMethod* caller, ciMethod* callee, ciCallProfile profile);
 
   // How to generate a replace a direct call with an inline version
   static CallGenerator* for_late_inline(ciMethod* m, CallGenerator* inline_cg);
diff --git a/hotspot/src/share/vm/opto/callnode.hpp b/hotspot/src/share/vm/opto/callnode.hpp
index 774b4b8..ee72a6e 100644
--- a/hotspot/src/share/vm/opto/callnode.hpp
+++ b/hotspot/src/share/vm/opto/callnode.hpp
@@ -67,7 +67,6 @@
   const TypeTuple *_domain;
   StartNode( Node *root, const TypeTuple *domain ) : MultiNode(2), _domain(domain) {
     init_class_id(Class_Start);
-    init_flags(Flag_is_block_start);
     init_req(0,this);
     init_req(1,root);
   }
@@ -513,7 +512,6 @@
       _cnt(COUNT_UNKNOWN)
   {
     init_class_id(Class_Call);
-    init_flags(Flag_is_Call);
   }
 
   const TypeFunc* tf()        const { return _tf; }
diff --git a/hotspot/src/share/vm/opto/cfgnode.cpp b/hotspot/src/share/vm/opto/cfgnode.cpp
index 49d3070..c8e45b6 100644
--- a/hotspot/src/share/vm/opto/cfgnode.cpp
+++ b/hotspot/src/share/vm/opto/cfgnode.cpp
@@ -1349,17 +1349,9 @@
 static void split_once(PhaseIterGVN *igvn, Node *phi, Node *val, Node *n, Node *newn) {
   igvn->hash_delete(n);         // Remove from hash before hacking edges
 
-  Node* predicate_proj = NULL;
   uint j = 1;
   for (uint i = phi->req()-1; i > 0; i--) {
     if (phi->in(i) == val) {   // Found a path with val?
-      if (n->is_Region()) {
-        Node* proj = PhaseIdealLoop::find_predicate(n->in(i));
-        if (proj != NULL) {
-          assert(predicate_proj == NULL, "only one predicate entry expected");
-          predicate_proj = proj;
-        }
-      }
       // Add to NEW Region/Phi, no DU info
       newn->set_req( j++, n->in(i) );
       // Remove from OLD Region/Phi
@@ -1371,11 +1363,6 @@
   // entire Region/Phi conglomerate has been hacked as a single huge transform.
   igvn->register_new_node_with_optimizer( newn );
 
-  // Clone loop predicates
-  if (predicate_proj != NULL) {
-    newn = igvn->clone_loop_predicates(predicate_proj, newn, !n->is_CountedLoop());
-  }
-
   // Now I can point to the new node.
   n->add_req(newn);
   igvn->_worklist.push(n);
@@ -1404,13 +1391,18 @@
 
   Node *val = phi->in(i);       // Constant to split for
   uint hit = 0;                 // Number of times it occurs
+  Node *r = phi->region();
 
   for( ; i < phi->req(); i++ ){ // Count occurrences of constant
     Node *n = phi->in(i);
     if( !n ) return NULL;
     if( phase->type(n) == Type::TOP ) return NULL;
-    if( phi->in(i) == val )
+    if( phi->in(i) == val ) {
       hit++;
+      if (PhaseIdealLoop::find_predicate(r->in(i)) != NULL) {
+        return NULL;            // don't split loop entry path
+      }
+    }
   }
 
   if( hit <= 1 ||               // Make sure we find 2 or more
@@ -1420,7 +1412,6 @@
   // Now start splitting out the flow paths that merge the same value.
   // Split first the RegionNode.
   PhaseIterGVN *igvn = phase->is_IterGVN();
-  Node *r = phi->region();
   RegionNode *newr = new (phase->C, hit+1) RegionNode(hit+1);
   split_once(igvn, phi, val, r, newr);
 
diff --git a/hotspot/src/share/vm/opto/cfgnode.hpp b/hotspot/src/share/vm/opto/cfgnode.hpp
index 71bc2ab..a51d78b 100644
--- a/hotspot/src/share/vm/opto/cfgnode.hpp
+++ b/hotspot/src/share/vm/opto/cfgnode.hpp
@@ -217,9 +217,7 @@
 // GotoNodes perform direct branches.
 class GotoNode : public Node {
 public:
-  GotoNode( Node *control ) : Node(control) {
-    init_flags(Flag_is_Goto);
-  }
+  GotoNode( Node *control ) : Node(control) {}
   virtual int Opcode() const;
   virtual bool pinned() const { return true; }
   virtual bool  is_CFG() const { return true; }
diff --git a/hotspot/src/share/vm/opto/classes.hpp b/hotspot/src/share/vm/opto/classes.hpp
index 46f1b84..dbece76 100644
--- a/hotspot/src/share/vm/opto/classes.hpp
+++ b/hotspot/src/share/vm/opto/classes.hpp
@@ -161,8 +161,10 @@
 macro(MachProj)
 macro(MaxI)
 macro(MemBarAcquire)
+macro(MemBarAcquireLock)
 macro(MemBarCPUOrder)
 macro(MemBarRelease)
+macro(MemBarReleaseLock)
 macro(MemBarVolatile)
 macro(MergeMem)
 macro(MinI)
@@ -194,6 +196,7 @@
 macro(PopCountI)
 macro(PopCountL)
 macro(PowD)
+macro(PrefetchAllocation)
 macro(PrefetchRead)
 macro(PrefetchWrite)
 macro(Proj)
diff --git a/hotspot/src/share/vm/opto/coalesce.cpp b/hotspot/src/share/vm/opto/coalesce.cpp
index bc4d1fd..0811ea0 100644
--- a/hotspot/src/share/vm/opto/coalesce.cpp
+++ b/hotspot/src/share/vm/opto/coalesce.cpp
@@ -139,7 +139,7 @@
   Block *bcon = _cfg._bbs[con->_idx];
   uint cindex = bcon->find_node(con);
   Node *con_next = bcon->_nodes[cindex+1];
-  if( con_next->in(0) != con || con_next->Opcode() != Op_MachProj )
+  if( con_next->in(0) != con || !con_next->is_MachProj() )
     return false;               // No MachProj's follow
 
   // Copy kills after the cloned constant
@@ -312,7 +312,7 @@
     // parallel renaming effort.
     if( n->_idx < _unique ) break;
     uint idx = n->is_Copy();
-    assert( idx || n->is_Con() || n->Opcode() == Op_MachProj, "Only copies during parallel renaming" );
+    assert( idx || n->is_Con() || n->is_MachProj(), "Only copies during parallel renaming" );
     if( idx && _phc.Find(n->in(idx)) == dst_name ) break;
     i--;
   }
@@ -329,7 +329,7 @@
     // Check for end of virtual copies; this is also the end of the
     // parallel renaming effort.
     if( n->_idx < _unique ) break;
-    assert( n->is_Copy() || n->is_Con() || n->Opcode() == Op_MachProj, "Only copies during parallel renaming" );
+    assert( n->is_Copy() || n->is_Con() || n->is_MachProj(), "Only copies during parallel renaming" );
     if( _phc.Find(n) == src_name ) {
       kill_src_idx = i;
       break;
diff --git a/hotspot/src/share/vm/opto/compile.cpp b/hotspot/src/share/vm/opto/compile.cpp
index bfaa98b..89559f2 100644
--- a/hotspot/src/share/vm/opto/compile.cpp
+++ b/hotspot/src/share/vm/opto/compile.cpp
@@ -517,7 +517,20 @@
   buf.stubs()->initialize_shared_locs( &locs_buf[lsize * 2], lsize);
 
   // Do the emission.
+
+  Label fakeL; // Fake label for branch instructions.
+  Label*   saveL = NULL;
+  uint save_bnum = 0;
+  bool is_branch = n->is_MachBranch();
+  if (is_branch) {
+    MacroAssembler masm(&buf);
+    masm.bind(fakeL);
+    n->as_MachBranch()->save_label(&saveL, &save_bnum);
+    n->as_MachBranch()->label_set(&fakeL, 0);
+  }
   n->emit(buf, this->regalloc());
+  if (is_branch) // Restore label.
+    n->as_MachBranch()->label_set(saveL, save_bnum);
 
   // End scratch_emit_size section.
   set_in_scratch_emit_size(false);
diff --git a/hotspot/src/share/vm/opto/compile.hpp b/hotspot/src/share/vm/opto/compile.hpp
index b2d8189..3a88318 100644
--- a/hotspot/src/share/vm/opto/compile.hpp
+++ b/hotspot/src/share/vm/opto/compile.hpp
@@ -785,11 +785,14 @@
   // Process an OopMap Element while emitting nodes
   void Process_OopMap_Node(MachNode *mach, int code_offset);
 
+  // Initialize code buffer
+  CodeBuffer* init_buffer(uint* blk_starts);
+
   // Write out basic block data to code buffer
-  void Fill_buffer();
+  void fill_buffer(CodeBuffer* cb, uint* blk_starts);
 
   // Determine which variable sized branches can be shortened
-  void Shorten_branches(Label *labels, int& code_size, int& reloc_size, int& stub_size);
+  void shorten_branches(uint* blk_starts, int& code_size, int& reloc_size, int& stub_size);
 
   // Compute the size of first NumberOfLoopInstrToAlign instructions
   // at the head of a loop.
diff --git a/hotspot/src/share/vm/opto/doCall.cpp b/hotspot/src/share/vm/opto/doCall.cpp
index c1b25d8..de51329 100644
--- a/hotspot/src/share/vm/opto/doCall.cpp
+++ b/hotspot/src/share/vm/opto/doCall.cpp
@@ -114,7 +114,7 @@
     if (cg != NULL)  return cg;
   }
 
-  // Do MethodHandle calls.
+  // Do method handle calls.
   // NOTE: This must happen before normal inlining logic below since
   // MethodHandle.invoke* are native methods which obviously don't
   // have bytecodes and so normal inlining fails.
@@ -127,33 +127,25 @@
       if (cg != NULL) {
         return cg;
       }
-
       return CallGenerator::for_direct_call(call_method);
     }
     else {
-      // Get the MethodHandle from the CallSite.
+      // Get the CallSite object.
       ciMethod* caller_method = jvms->method();
       ciBytecodeStream str(caller_method);
       str.force_bci(jvms->bci());  // Set the stream to the invokedynamic bci.
-      ciCallSite*     call_site     = str.get_call_site();
-      ciMethodHandle* method_handle = call_site->get_target();
+      ciCallSite* call_site = str.get_call_site();
 
-      // Set the callee to have access to the class and signature in
-      // the MethodHandleCompiler.
-      method_handle->set_callee(call_method);
-      method_handle->set_caller(caller);
-      method_handle->set_call_profile(profile);
-
-      // Get an adapter for the MethodHandle.
-      ciMethod* target_method = method_handle->get_invokedynamic_adapter();
-      if (target_method != NULL) {
-        CallGenerator* hit_cg = this->call_generator(target_method, vtable_index, false, jvms, true, prof_factor);
-        if (hit_cg != NULL && hit_cg->is_inline()) {
-          CallGenerator* miss_cg = CallGenerator::for_dynamic_call(call_method);
-          return CallGenerator::for_predicted_dynamic_call(method_handle, miss_cg, hit_cg, prof_factor);
+      // Inline constant and mutable call sites.  We don't inline
+      // volatile call sites optimistically since they are specified
+      // to change their value often and that would result in a lot of
+      // deoptimizations and recompiles.
+      if (call_site->is_constant_call_site() || call_site->is_mutable_call_site()) {
+        CallGenerator* cg = CallGenerator::for_invokedynamic_inline(call_site, jvms, caller, call_method, profile);
+        if (cg != NULL) {
+          return cg;
         }
       }
-
       // If something failed, generate a normal dynamic call.
       return CallGenerator::for_dynamic_call(call_method);
     }
diff --git a/hotspot/src/share/vm/opto/gcm.cpp b/hotspot/src/share/vm/opto/gcm.cpp
index f714d01..b504ea5 100644
--- a/hotspot/src/share/vm/opto/gcm.cpp
+++ b/hotspot/src/share/vm/opto/gcm.cpp
@@ -1137,7 +1137,7 @@
 
     // No uses, just terminate
     if (self->outcnt() == 0) {
-      assert(self->Opcode() == Op_MachProj, "sanity");
+      assert(self->is_MachProj(), "sanity");
       continue;                   // Must be a dead machine projection
     }
 
diff --git a/hotspot/src/share/vm/opto/graphKit.cpp b/hotspot/src/share/vm/opto/graphKit.cpp
index db61258..4971729 100644
--- a/hotspot/src/share/vm/opto/graphKit.cpp
+++ b/hotspot/src/share/vm/opto/graphKit.cpp
@@ -2856,7 +2856,7 @@
   // lock has no side-effects, sets few values
   set_predefined_output_for_runtime_call(lock, mem, TypeRawPtr::BOTTOM);
 
-  insert_mem_bar(Op_MemBarAcquire);
+  insert_mem_bar(Op_MemBarAcquireLock);
 
   // Add this to the worklist so that the lock can be eliminated
   record_for_igvn(lock);
@@ -2889,7 +2889,7 @@
   }
 
   // Memory barrier to avoid floating things down past the locked region
-  insert_mem_bar(Op_MemBarRelease);
+  insert_mem_bar(Op_MemBarReleaseLock);
 
   const TypeFunc *tf = OptoRuntime::complete_monitor_exit_Type();
   UnlockNode *unlock = new (C, tf->domain()->cnt()) UnlockNode(C, tf);
diff --git a/hotspot/src/share/vm/opto/idealGraphPrinter.cpp b/hotspot/src/share/vm/opto/idealGraphPrinter.cpp
index 829673a..7459534 100644
--- a/hotspot/src/share/vm/opto/idealGraphPrinter.cpp
+++ b/hotspot/src/share/vm/opto/idealGraphPrinter.cpp
@@ -426,9 +426,6 @@
     if (flags & Node::Flag_is_Copy) {
       print_prop("is_copy", "true");
     }
-    if (flags & Node::Flag_is_Call) {
-      print_prop("is_call", "true");
-    }
     if (flags & Node::Flag_rematerialize) {
       print_prop("rematerialize", "true");
     }
@@ -444,27 +441,12 @@
     if (flags & Node::Flag_is_cisc_alternate) {
       print_prop("is_cisc_alternate", "true");
     }
-    if (flags & Node::Flag_is_Branch) {
-      print_prop("is_branch", "true");
-    }
-    if (flags & Node::Flag_is_block_start) {
-      print_prop("is_block_start", "true");
-    }
-    if (flags & Node::Flag_is_Goto) {
-      print_prop("is_goto", "true");
-    }
     if (flags & Node::Flag_is_dead_loop_safe) {
       print_prop("is_dead_loop_safe", "true");
     }
     if (flags & Node::Flag_may_be_short_branch) {
       print_prop("may_be_short_branch", "true");
     }
-    if (flags & Node::Flag_is_safepoint_node) {
-      print_prop("is_safepoint_node", "true");
-    }
-    if (flags & Node::Flag_is_pc_relative) {
-      print_prop("is_pc_relative", "true");
-    }
 
     if (C->matcher() != NULL) {
       if (C->matcher()->is_shared(node)) {
diff --git a/hotspot/src/share/vm/opto/ifnode.cpp b/hotspot/src/share/vm/opto/ifnode.cpp
index a7e7ebd..ce84f64 100644
--- a/hotspot/src/share/vm/opto/ifnode.cpp
+++ b/hotspot/src/share/vm/opto/ifnode.cpp
@@ -255,6 +255,14 @@
         predicate_x = predicate_proj;
     }
   }
+  if (predicate_c != NULL && (req_c > 1)) {
+    assert(predicate_x == NULL, "only one predicate entry expected");
+    predicate_c = NULL; // Do not clone predicate below merge point
+  }
+  if (predicate_x != NULL && ((len - req_c) > 2)) {
+    assert(predicate_c == NULL, "only one predicate entry expected");
+    predicate_x = NULL; // Do not clone predicate below merge point
+  }
 
   // Register the new RegionNodes but do not transform them.  Cannot
   // transform until the entire Region/Phi conglomerate has been hacked
@@ -1009,6 +1017,13 @@
   int prev_op = prev_dom->Opcode();
   Node *top = igvn->C->top(); // Shortcut to top
 
+  // Loop predicates may have depending checks which should not
+  // be skipped. For example, range check predicate has two checks
+  // for lower and upper bounds.
+  ProjNode* unc_proj = proj_out(1 - prev_dom->as_Proj()->_con)->as_Proj();
+  if (PhaseIdealLoop::is_uncommon_trap_proj(unc_proj, Deoptimization::Reason_predicate))
+    prev_dom = idom;
+
   // Now walk the current IfNode's projections.
   // Loop ends when 'this' has no more uses.
   for (DUIterator_Last imin, i = last_outs(imin); i >= imin; --i) {
@@ -1019,9 +1034,9 @@
     // or TOP if the dominating projection is of opposite type.
     // Data-target will be used as the new control edge for the non-CFG
     // nodes like Casts and Loads.
-    Node *data_target = (ifp->Opcode() == prev_op ) ? prev_dom : top;
+    Node *data_target = (ifp->Opcode() == prev_op) ? prev_dom : top;
     // Control-target is just the If's immediate dominator or TOP.
-    Node *ctrl_target = (ifp->Opcode() == prev_op ) ?     idom : top;
+    Node *ctrl_target = (ifp->Opcode() == prev_op) ?     idom : top;
 
     // For each child of an IfTrue/IfFalse projection, reroute.
     // Loop ends when projection has no more uses.
diff --git a/hotspot/src/share/vm/opto/lcm.cpp b/hotspot/src/share/vm/opto/lcm.cpp
index af75a8d..425e10b 100644
--- a/hotspot/src/share/vm/opto/lcm.cpp
+++ b/hotspot/src/share/vm/opto/lcm.cpp
@@ -325,7 +325,7 @@
       // that also need to be hoisted.
       for (DUIterator_Fast jmax, j = val->fast_outs(jmax); j < jmax; j++) {
         Node* n = val->fast_out(j);
-        if( n->Opcode() == Op_MachProj ) {
+        if( n->is_MachProj() ) {
           cfg->_bbs[n->_idx]->find_remove(n);
           this->add_inst(n);
           cfg->_bbs.map(n->_idx,this);
@@ -347,7 +347,7 @@
   // Should be DU safe because no edge updates.
   for (DUIterator_Fast jmax, j = best->fast_outs(jmax); j < jmax; j++) {
     Node* n = best->fast_out(j);
-    if( n->Opcode() == Op_MachProj ) {
+    if( n->is_MachProj() ) {
       cfg->_bbs[n->_idx]->find_remove(n);
       add_inst(n);
       cfg->_bbs.map(n->_idx,this);
@@ -539,7 +539,7 @@
     Node* m = this_call->fast_out(i);
     if( bbs[m->_idx] == this && // Local-block user
         m != this_call &&       // Not self-start node
-        m->is_Call() )
+        m->is_MachCall() )
       call = m;
       break;
   }
@@ -557,7 +557,7 @@
   // Collect all the defined registers.
   for (DUIterator_Fast imax, i = mcall->fast_outs(imax); i < imax; i++) {
     Node* n = mcall->fast_out(i);
-    assert( n->Opcode()==Op_MachProj, "" );
+    assert( n->is_MachProj(), "" );
     --ready_cnt[n->_idx];
     assert( !ready_cnt[n->_idx], "" );
     // Schedule next to call
@@ -975,8 +975,8 @@
   if( !_nodes[end]->is_Catch() ) return;
   // Start of region to clone
   uint beg = end;
-  while( _nodes[beg-1]->Opcode() != Op_MachProj ||
-        !_nodes[beg-1]->in(0)->is_Call() ) {
+  while(!_nodes[beg-1]->is_MachProj() ||
+        !_nodes[beg-1]->in(0)->is_MachCall() ) {
     beg--;
     assert(beg > 0,"Catch cleanup walking beyond block boundary");
   }
diff --git a/hotspot/src/share/vm/opto/loopPredicate.cpp b/hotspot/src/share/vm/opto/loopPredicate.cpp
index c5227c2..d4a575d 100644
--- a/hotspot/src/share/vm/opto/loopPredicate.cpp
+++ b/hotspot/src/share/vm/opto/loopPredicate.cpp
@@ -327,81 +327,20 @@
   return new_predicate_proj;
 }
 
-//--------------------------move_predicate-----------------------
-// Cut predicate from old place and move it to new.
-ProjNode* PhaseIdealLoop::move_predicate(ProjNode* predicate_proj, Node* new_entry,
-                                         Deoptimization::DeoptReason reason,
-                                         PhaseIdealLoop* loop_phase,
-                                         PhaseIterGVN* igvn) {
-  assert(new_entry != NULL, "must be");
-  assert(predicate_proj->in(0)->in(1)->in(1)->Opcode()==Op_Opaque1, "must be");
-  IfNode* iff = predicate_proj->in(0)->as_If();
-  Node* old_entry = iff->in(0);
-
-  // Cut predicate from old place.
-  Node* old = predicate_proj;
-  igvn->_worklist.push(old);
-  for (DUIterator_Last imin, i = old->last_outs(imin); i >= imin;) {
-    Node* use = old->last_out(i);  // for each use...
-    igvn->hash_delete(use);
-    igvn->_worklist.push(use);
-    // Update use-def info
-    uint uses_found = 0;
-    for (uint j = 0; j < use->req(); j++) {
-      if (use->in(j) == old) {
-        use->set_req(j, old_entry);
-        uses_found++;
-        if (loop_phase != NULL) {
-          if (use->is_CFG()) {
-            // When called from beautify_loops() idom is not constructed yet.
-            if (loop_phase->_idom != NULL)
-              loop_phase->set_idom(use, old_entry, loop_phase->dom_depth(use));
-          } else {
-            loop_phase->set_ctrl(use, old_entry);
-          }
-        }
-      }
-    }
-    i -= uses_found;    // we deleted 1 or more copies of this edge
-  }
-
-  // Move predicate.
-  igvn->hash_delete(iff);
-  iff->set_req(0, new_entry);
-  igvn->_worklist.push(iff);
-
-  if (loop_phase != NULL) {
-    // Fix up idom and ctrl.
-    loop_phase->set_ctrl(iff->in(1), new_entry);
-    loop_phase->set_ctrl(iff->in(1)->in(1), new_entry);
-    // When called from beautify_loops() idom is not constructed yet.
-    if (loop_phase->_idom != NULL)
-      loop_phase->set_idom(iff, new_entry, loop_phase->dom_depth(iff));
-  }
-
-  return predicate_proj;
-}
 
 //--------------------------clone_loop_predicates-----------------------
 // Interface from IGVN
 Node* PhaseIterGVN::clone_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check) {
-  return PhaseIdealLoop::clone_loop_predicates(old_entry, new_entry, false, clone_limit_check, NULL, this);
-}
-Node* PhaseIterGVN::move_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check) {
-  return PhaseIdealLoop::clone_loop_predicates(old_entry, new_entry, true, clone_limit_check, NULL, this);
+  return PhaseIdealLoop::clone_loop_predicates(old_entry, new_entry, clone_limit_check, NULL, this);
 }
 
 // Interface from PhaseIdealLoop
 Node* PhaseIdealLoop::clone_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check) {
-  return clone_loop_predicates(old_entry, new_entry, false, clone_limit_check, this, &this->_igvn);
-}
-Node* PhaseIdealLoop::move_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check) {
-  return clone_loop_predicates(old_entry, new_entry, true, clone_limit_check, this, &this->_igvn);
+  return clone_loop_predicates(old_entry, new_entry, clone_limit_check, this, &this->_igvn);
 }
 
 // Clone loop predicates to cloned loops (peeled, unswitched, split_if).
 Node* PhaseIdealLoop::clone_loop_predicates(Node* old_entry, Node* new_entry,
-                                                bool move_predicates,
                                                 bool clone_limit_check,
                                                 PhaseIdealLoop* loop_phase,
                                                 PhaseIterGVN* igvn) {
@@ -424,20 +363,13 @@
   if (UseLoopPredicate) {
     ProjNode* predicate_proj = find_predicate_insertion_point(entry, Deoptimization::Reason_predicate);
     if (predicate_proj != NULL) { // right pattern that can be used by loop predication
-      if (move_predicates) {
-        new_entry =  move_predicate(predicate_proj, new_entry,
-                                    Deoptimization::Reason_predicate,
-                                    loop_phase, igvn);
-        assert(new_entry == predicate_proj, "old predicate fall through projection");
-      } else {
-        // clone predicate
-        new_entry = clone_predicate(predicate_proj, new_entry,
-                                    Deoptimization::Reason_predicate,
-                                    loop_phase, igvn);
-        assert(new_entry != NULL && new_entry->is_Proj(), "IfTrue or IfFalse after clone predicate");
-      }
+      // clone predicate
+      new_entry = clone_predicate(predicate_proj, new_entry,
+                                  Deoptimization::Reason_predicate,
+                                  loop_phase, igvn);
+      assert(new_entry != NULL && new_entry->is_Proj(), "IfTrue or IfFalse after clone predicate");
       if (TraceLoopPredicate) {
-        tty->print_cr("Loop Predicate %s: ", move_predicates ? "moved" : "cloned");
+        tty->print("Loop Predicate cloned: ");
         debug_only( new_entry->in(0)->dump(); )
       }
     }
@@ -446,45 +378,18 @@
     // Clone loop limit check last to insert it before loop.
     // Don't clone a limit check which was already finalized
     // for this counted loop (only one limit check is needed).
-    if (move_predicates) {
-      new_entry =  move_predicate(limit_check_proj, new_entry,
-                                  Deoptimization::Reason_loop_limit_check,
-                                  loop_phase, igvn);
-      assert(new_entry == limit_check_proj, "old limit check fall through projection");
-    } else {
-      new_entry = clone_predicate(limit_check_proj, new_entry,
-                                  Deoptimization::Reason_loop_limit_check,
-                                  loop_phase, igvn);
-      assert(new_entry != NULL && new_entry->is_Proj(), "IfTrue or IfFalse after clone limit check");
-    }
+    new_entry = clone_predicate(limit_check_proj, new_entry,
+                                Deoptimization::Reason_loop_limit_check,
+                                loop_phase, igvn);
+    assert(new_entry != NULL && new_entry->is_Proj(), "IfTrue or IfFalse after clone limit check");
     if (TraceLoopLimitCheck) {
-      tty->print_cr("Loop Limit Check %s: ", move_predicates ? "moved" : "cloned");
+      tty->print("Loop Limit Check cloned: ");
       debug_only( new_entry->in(0)->dump(); )
     }
   }
   return new_entry;
 }
 
-//--------------------------eliminate_loop_predicates-----------------------
-void PhaseIdealLoop::eliminate_loop_predicates(Node* entry) {
-  if (LoopLimitCheck) {
-    Node* predicate = find_predicate_insertion_point(entry, Deoptimization::Reason_loop_limit_check);
-    if (predicate != NULL) {
-      entry = entry->in(0)->in(0);
-    }
-  }
-  if (UseLoopPredicate) {
-    ProjNode* predicate_proj = find_predicate_insertion_point(entry, Deoptimization::Reason_predicate);
-    if (predicate_proj != NULL) { // right pattern that can be used by loop predication
-      Node* n = entry->in(0)->in(1)->in(1);
-      assert(n->Opcode()==Op_Opaque1, "must be");
-      // Remove Opaque1 node from predicates list.
-      // IGVN will remove this predicate check.
-      _igvn.replace_node(n, n->in(1));
-    }
-  }
-}
-
 //--------------------------skip_loop_predicates------------------------------
 // Skip related predicates.
 Node* PhaseIdealLoop::skip_loop_predicates(Node* entry) {
@@ -813,10 +718,14 @@
   }
 
   CountedLoopNode *cl = NULL;
-  if (head->is_CountedLoop()) {
+  if (head->is_valid_counted_loop()) {
     cl = head->as_CountedLoop();
     // do nothing for iteration-splitted loops
     if (!cl->is_normal_loop()) return false;
+    // Avoid RCE if Counted loop's test is '!='.
+    BoolTest::mask bt = cl->loopexit()->test_trip();
+    if (bt != BoolTest::lt && bt != BoolTest::gt)
+      cl = NULL;
   }
 
   Node* entry = head->in(LoopNode::EntryControl);
@@ -958,7 +867,7 @@
       if (TraceLoopPredicate) tty->print_cr("lower bound check if: %d", lower_bound_iff->_idx);
 
       // Test the upper bound
-      Node* upper_bound_bol = rc_predicate(loop, ctrl, scale, offset, init, limit, stride, rng, true);
+      Node* upper_bound_bol = rc_predicate(loop, lower_bound_proj, scale, offset, init, limit, stride, rng, true);
       IfNode* upper_bound_iff = upper_bound_proj->in(0)->as_If();
       _igvn.hash_delete(upper_bound_iff);
       upper_bound_iff->set_req(1, upper_bound_bol);
diff --git a/hotspot/src/share/vm/opto/loopTransform.cpp b/hotspot/src/share/vm/opto/loopTransform.cpp
index 7ef2d13..148c2e3 100644
--- a/hotspot/src/share/vm/opto/loopTransform.cpp
+++ b/hotspot/src/share/vm/opto/loopTransform.cpp
@@ -509,14 +509,13 @@
   //         backedges) and then map to the new peeled iteration.  This leaves
   //         the pre-loop with only 1 user (the new peeled iteration), but the
   //         peeled-loop backedge has 2 users.
-  Node* new_exit_value = old_new[head->in(LoopNode::LoopBackControl)->_idx];
-  new_exit_value = move_loop_predicates(entry, new_exit_value, !counted_loop);
+  Node* new_entry = old_new[head->in(LoopNode::LoopBackControl)->_idx];
   _igvn.hash_delete(head);
-  head->set_req(LoopNode::EntryControl, new_exit_value);
+  head->set_req(LoopNode::EntryControl, new_entry);
   for (DUIterator_Fast jmax, j = head->fast_outs(jmax); j < jmax; j++) {
     Node* old = head->fast_out(j);
     if (old->in(0) == loop->_head && old->req() == 3 && old->is_Phi()) {
-      new_exit_value = old_new[old->in(LoopNode::LoopBackControl)->_idx];
+      Node* new_exit_value = old_new[old->in(LoopNode::LoopBackControl)->_idx];
       if (!new_exit_value )     // Backedge value is ALSO loop invariant?
         // Then loop body backedge value remains the same.
         new_exit_value = old->in(LoopNode::LoopBackControl);
@@ -2100,7 +2099,7 @@
   if (!_head->is_CountedLoop())
     return false;     // Dead loop
   CountedLoopNode *cl = _head->as_CountedLoop();
-  if (!cl->loopexit())
+  if (!cl->is_valid_counted_loop())
     return false; // Malformed loop
   if (!phase->is_member(this, phase->get_ctrl(cl->loopexit()->in(CountedLoopEndNode::TestValue))))
     return false;             // Infinite loop
@@ -2256,7 +2255,7 @@
   }
   CountedLoopNode *cl = _head->as_CountedLoop();
 
-  if (!cl->loopexit()) return true; // Ignore various kinds of broken loops
+  if (!cl->is_valid_counted_loop()) return true; // Ignore various kinds of broken loops
 
   // Do nothing special to pre- and post- loops
   if (cl->is_pre_loop() || cl->is_post_loop()) return true;
@@ -2637,7 +2636,7 @@
 
   // Must have constant stride
   CountedLoopNode* head = lpt->_head->as_CountedLoop();
-  if (!head->stride_is_con() || !head->is_normal_loop()) {
+  if (!head->is_valid_counted_loop() || !head->is_normal_loop()) {
     return false;
   }
 
diff --git a/hotspot/src/share/vm/opto/loopUnswitch.cpp b/hotspot/src/share/vm/opto/loopUnswitch.cpp
index 9fa6421..20ddf78 100644
--- a/hotspot/src/share/vm/opto/loopUnswitch.cpp
+++ b/hotspot/src/share/vm/opto/loopUnswitch.cpp
@@ -255,7 +255,7 @@
   _igvn._worklist.push(head);
 
   // Slow (false) control
-  Node* ifslow_pred = move_loop_predicates(entry, ifslow, !counted_loop);
+  Node* ifslow_pred = clone_loop_predicates(entry, ifslow, !counted_loop);
   LoopNode* slow_head = old_new[head->_idx]->as_Loop();
   _igvn.hash_delete(slow_head);
   slow_head->set_req(LoopNode::EntryControl, ifslow_pred);
diff --git a/hotspot/src/share/vm/opto/loopnode.cpp b/hotspot/src/share/vm/opto/loopnode.cpp
index eb138f5..688c5c0 100644
--- a/hotspot/src/share/vm/opto/loopnode.cpp
+++ b/hotspot/src/share/vm/opto/loopnode.cpp
@@ -689,6 +689,7 @@
 Node* PhaseIdealLoop::exact_limit( IdealLoopTree *loop ) {
   assert(loop->_head->is_CountedLoop(), "");
   CountedLoopNode *cl = loop->_head->as_CountedLoop();
+  assert(cl->is_valid_counted_loop(), "");
 
   if (!LoopLimitCheck || ABS(cl->stride_con()) == 1 ||
       cl->limit()->Opcode() == Op_LoopLimit) {
@@ -1167,9 +1168,8 @@
   outer = igvn.register_new_node_with_optimizer(outer, _head);
   phase->set_created_loop_node();
 
-  Node* pred = phase->clone_loop_predicates(ctl, outer, true);
   // Outermost loop falls into '_head' loop
-  _head->set_req(LoopNode::EntryControl, pred);
+  _head->set_req(LoopNode::EntryControl, outer);
   _head->del_req(outer_idx);
   // Split all the Phis up between '_head' loop and 'outer' loop.
   for (DUIterator_Fast jmax, j = _head->fast_outs(jmax); j < jmax; j++) {
@@ -1609,14 +1609,13 @@
 void PhaseIdealLoop::replace_parallel_iv(IdealLoopTree *loop) {
   assert(loop->_head->is_CountedLoop(), "");
   CountedLoopNode *cl = loop->_head->as_CountedLoop();
+  if (!cl->is_valid_counted_loop())
+    return;         // skip malformed counted loop
   Node *incr = cl->incr();
   if (incr == NULL)
     return;         // Dead loop?
   Node *init = cl->init_trip();
   Node *phi  = cl->phi();
-  // protect against stride not being a constant
-  if (!cl->stride_is_con())
-    return;
   int stride_con = cl->stride_con();
 
   PhaseGVN *gvn = &_igvn;
diff --git a/hotspot/src/share/vm/opto/loopnode.hpp b/hotspot/src/share/vm/opto/loopnode.hpp
index 07d13de..817124b 100644
--- a/hotspot/src/share/vm/opto/loopnode.hpp
+++ b/hotspot/src/share/vm/opto/loopnode.hpp
@@ -877,19 +877,13 @@
                                    Deoptimization::DeoptReason reason,
                                    PhaseIdealLoop* loop_phase,
                                    PhaseIterGVN* igvn);
-  static ProjNode*  move_predicate(ProjNode* predicate_proj, Node* new_entry,
-                                   Deoptimization::DeoptReason reason,
-                                   PhaseIdealLoop* loop_phase,
-                                   PhaseIterGVN* igvn);
+
   static Node* clone_loop_predicates(Node* old_entry, Node* new_entry,
-                                         bool move_predicates,
                                          bool clone_limit_check,
                                          PhaseIdealLoop* loop_phase,
                                          PhaseIterGVN* igvn);
   Node* clone_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check);
-  Node*  move_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check);
 
-  void eliminate_loop_predicates(Node* entry);
   static Node* skip_loop_predicates(Node* entry);
 
   // Find a good location to insert a predicate
@@ -1009,7 +1003,7 @@
   Node *has_local_phi_input( Node *n );
   // Mark an IfNode as being dominated by a prior test,
   // without actually altering the CFG (and hence IDOM info).
-  void dominated_by( Node *prevdom, Node *iff, bool flip = false );
+  void dominated_by( Node *prevdom, Node *iff, bool flip = false, bool exclude_loop_predicate = false );
 
   // Split Node 'n' through merge point
   Node *split_thru_region( Node *n, Node *region );
diff --git a/hotspot/src/share/vm/opto/loopopts.cpp b/hotspot/src/share/vm/opto/loopopts.cpp
index 6498d3c..c693deb 100644
--- a/hotspot/src/share/vm/opto/loopopts.cpp
+++ b/hotspot/src/share/vm/opto/loopopts.cpp
@@ -194,7 +194,7 @@
 // Replace the dominated test with an obvious true or false.  Place it on the
 // IGVN worklist for later cleanup.  Move control-dependent data Nodes on the
 // live path up to the dominating control.
-void PhaseIdealLoop::dominated_by( Node *prevdom, Node *iff, bool flip ) {
+void PhaseIdealLoop::dominated_by( Node *prevdom, Node *iff, bool flip, bool exclude_loop_predicate ) {
 #ifndef PRODUCT
   if (VerifyLoopOptimizations && PrintOpto) tty->print_cr("dominating test");
 #endif
@@ -228,7 +228,16 @@
   // Make control-dependent data Nodes on the live path (path that will remain
   // once the dominated IF is removed) become control-dependent on the
   // dominating projection.
-  Node* dp = ((IfNode*)iff)->proj_out(pop == Op_IfTrue);
+  Node* dp = iff->as_If()->proj_out(pop == Op_IfTrue);
+
+  // Loop predicates may have depending checks which should not
+  // be skipped. For example, range check predicate has two checks
+  // for lower and upper bounds.
+  ProjNode* unc_proj = iff->as_If()->proj_out(1 - dp->as_Proj()->_con)->as_Proj();
+  if (exclude_loop_predicate &&
+      is_uncommon_trap_proj(unc_proj, Deoptimization::Reason_predicate))
+    return; // Let IGVN transformation change control dependence.
+
   IdealLoopTree *old_loop = get_loop(dp);
 
   for (DUIterator_Fast imax, i = dp->fast_outs(imax); i < imax; i++) {
@@ -859,7 +868,7 @@
           // Replace the dominated test with an obvious true or false.
           // Place it on the IGVN worklist for later cleanup.
           C->set_major_progress();
-          dominated_by( prevdom, n );
+          dominated_by( prevdom, n, false, true );
 #ifndef PRODUCT
           if( VerifyLoopOptimizations ) verify();
 #endif
diff --git a/hotspot/src/share/vm/opto/machnode.cpp b/hotspot/src/share/vm/opto/machnode.cpp
index 6242c66..dd6c3c0 100644
--- a/hotspot/src/share/vm/opto/machnode.cpp
+++ b/hotspot/src/share/vm/opto/machnode.cpp
@@ -389,12 +389,6 @@
 }
 
 
-//------------------------------negate-----------------------------------------
-// Negate conditional branches.  Error for non-branch Nodes
-void MachNode::negate() {
-  ShouldNotCallThis();
-}
-
 //------------------------------peephole---------------------------------------
 // Apply peephole rule(s) to this instruction
 MachNode *MachNode::peephole( Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile* C ) {
@@ -407,12 +401,6 @@
   ShouldNotCallThis();
 }
 
-//------------------------------label_set--------------------------------------
-// Set the Label for a LabelOper, if an operand for this instruction
-void MachNode::label_set( Label& label, uint block_num ) {
-  ShouldNotCallThis();
-}
-
 //------------------------------method_set-------------------------------------
 // Set the absolute address of a method
 void MachNode::method_set( intptr_t addr ) {
@@ -514,6 +502,12 @@
 void MachNullCheckNode::emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const {
   // only emits entries in the null-pointer exception handler table
 }
+void MachNullCheckNode::label_set(Label* label, uint block_num) {
+  // Nothing to emit
+}
+void MachNullCheckNode::save_label( Label** label, uint* block_num ) {
+  // Nothing to emit
+}
 
 const RegMask &MachNullCheckNode::in_RegMask( uint idx ) const {
   if( idx == 0 ) return RegMask::Empty;
diff --git a/hotspot/src/share/vm/opto/machnode.hpp b/hotspot/src/share/vm/opto/machnode.hpp
index d947bb8..c44c8d0 100644
--- a/hotspot/src/share/vm/opto/machnode.hpp
+++ b/hotspot/src/share/vm/opto/machnode.hpp
@@ -185,9 +185,11 @@
   virtual void use_cisc_RegMask();
 
   // Support for short branches
-  virtual MachNode *short_branch_version(Compile* C) { return NULL; }
   bool may_be_short_branch() const { return (flags() & Flag_may_be_short_branch) != 0; }
 
+  // Avoid back to back some instructions on some CPUs.
+  bool avoid_back_to_back() const { return (flags() & Flag_avoid_back_to_back) != 0; }
+
   // First index in _in[] corresponding to operand, or -1 if there is none
   int  operand_index(uint operand) const;
 
@@ -269,21 +271,12 @@
   // Call "get_base_and_disp" to decide which category of memory is used here.
   virtual const class TypePtr *adr_type() const;
 
-  // Negate conditional branches.  Error for non-branch Nodes
-  virtual void negate();
-
   // Apply peephole rule(s) to this instruction
   virtual MachNode *peephole( Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile* C );
 
-  // Check for PC-Relative addressing
-  bool is_pc_relative() const { return (flags() & Flag_is_pc_relative) != 0; }
-
   // Top-level ideal Opcode matched
   virtual int ideal_Opcode()     const { return Op_Node; }
 
-  // Set the branch inside jump MachNodes.  Error for non-branch Nodes.
-  virtual void label_set( Label& label, uint block_num );
-
   // Adds the label for the case
   virtual void add_case_label( int switch_val, Label* blockLabel);
 
@@ -514,24 +507,41 @@
 #endif
 };
 
+//------------------------------MachBranchNode--------------------------------
+// Abstract machine branch Node
+class MachBranchNode : public MachIdealNode {
+public:
+  MachBranchNode() : MachIdealNode() {
+    init_class_id(Class_MachBranch);
+  }
+  virtual void label_set(Label* label, uint block_num) = 0;
+  virtual void save_label(Label** label, uint* block_num) = 0;
+
+  // Support for short branches
+  virtual MachNode *short_branch_version(Compile* C) { return NULL; }
+
+  virtual bool pinned() const { return true; };
+};
+
 //------------------------------MachNullChkNode--------------------------------
 // Machine-dependent null-pointer-check Node.  Points a real MachNode that is
 // also some kind of memory op.  Turns the indicated MachNode into a
 // conditional branch with good latency on the ptr-not-null path and awful
 // latency on the pointer-is-null path.
 
-class MachNullCheckNode : public MachIdealNode {
+class MachNullCheckNode : public MachBranchNode {
 public:
   const uint _vidx;             // Index of memop being tested
-  MachNullCheckNode( Node *ctrl, Node *memop, uint vidx ) : MachIdealNode(), _vidx(vidx) {
+  MachNullCheckNode( Node *ctrl, Node *memop, uint vidx ) : MachBranchNode(), _vidx(vidx) {
     init_class_id(Class_MachNullCheck);
-    init_flags(Flag_is_Branch | Flag_is_pc_relative);
     add_req(ctrl);
     add_req(memop);
   }
+  virtual uint size_of() const { return sizeof(*this); }
 
   virtual void emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const;
-  virtual bool pinned() const { return true; };
+  virtual void label_set(Label* label, uint block_num);
+  virtual void save_label(Label** label, uint* block_num);
   virtual void negate() { }
   virtual const class Type *bottom_type() const { return TypeTuple::IFBOTH; }
   virtual uint ideal_reg() const { return NotAMachineReg; }
@@ -553,7 +563,9 @@
 // occasional callbacks to the machine model for important info.
 class MachProjNode : public ProjNode {
 public:
-  MachProjNode( Node *multi, uint con, const RegMask &out, uint ideal_reg ) : ProjNode(multi,con), _rout(out), _ideal_reg(ideal_reg) {}
+  MachProjNode( Node *multi, uint con, const RegMask &out, uint ideal_reg ) : ProjNode(multi,con), _rout(out), _ideal_reg(ideal_reg) {
+    init_class_id(Class_MachProj);
+  }
   RegMask _rout;
   const uint  _ideal_reg;
   enum projType {
@@ -575,19 +587,30 @@
 
 //------------------------------MachIfNode-------------------------------------
 // Machine-specific versions of IfNodes
-class MachIfNode : public MachNode {
+class MachIfNode : public MachBranchNode {
   virtual uint size_of() const { return sizeof(*this); } // Size is bigger
 public:
   float _prob;                  // Probability branch goes either way
   float _fcnt;                  // Frequency counter
-  MachIfNode() : MachNode() {
+  MachIfNode() : MachBranchNode() {
     init_class_id(Class_MachIf);
   }
+  // Negate conditional branches.
+  virtual void negate() = 0;
 #ifndef PRODUCT
   virtual void dump_spec(outputStream *st) const;
 #endif
 };
 
+//------------------------------MachGotoNode-----------------------------------
+// Machine-specific versions of GotoNodes
+class MachGotoNode : public MachBranchNode {
+public:
+  MachGotoNode() : MachBranchNode() {
+    init_class_id(Class_MachGoto);
+  }
+};
+
 //------------------------------MachFastLockNode-------------------------------------
 // Machine-specific versions of FastLockNodes
 class MachFastLockNode : public MachNode {
@@ -630,14 +653,12 @@
 
   MachSafePointNode() : MachReturnNode(), _oop_map(NULL), _jvms(NULL), _jvmadj(0) {
     init_class_id(Class_MachSafePoint);
-    init_flags(Flag_is_safepoint_node);
   }
 
   virtual JVMState* jvms() const { return _jvms; }
   void set_jvms(JVMState* s) {
     _jvms = s;
   }
-  bool is_safepoint_node() const { return (flags() & Flag_is_safepoint_node) != 0; }
   virtual const Type    *bottom_type() const;
 
   virtual const RegMask &in_RegMask(uint) const;
@@ -701,7 +722,6 @@
 
   MachCallNode() : MachSafePointNode() {
     init_class_id(Class_MachCall);
-    init_flags(Flag_is_Call);
   }
 
   virtual const Type *bottom_type() const;
@@ -853,7 +873,7 @@
 
   virtual MachOper *clone(Compile* C) const;
 
-  virtual Label *label() const { return _label; }
+  virtual Label *label() const { assert(_label != NULL, "need Label"); return _label; }
 
   virtual uint           opcode() const;
 
diff --git a/hotspot/src/share/vm/opto/macro.cpp b/hotspot/src/share/vm/opto/macro.cpp
index e7b9013..1e12e36 100644
--- a/hotspot/src/share/vm/opto/macro.cpp
+++ b/hotspot/src/share/vm/opto/macro.cpp
@@ -1590,7 +1590,7 @@
         prefetch_adr = new (C, 4) AddPNode( old_pf_wm, new_pf_wmt,
                                             _igvn.MakeConX(distance) );
         transform_later(prefetch_adr);
-        prefetch = new (C, 3) PrefetchWriteNode( i_o, prefetch_adr );
+        prefetch = new (C, 3) PrefetchAllocationNode( i_o, prefetch_adr );
         transform_later(prefetch);
         distance += step_size;
         i_o = prefetch;
@@ -1611,13 +1611,14 @@
       contended_phi_rawmem = pf_phi_rawmem;
       i_o = pf_phi_abio;
    } else if( UseTLAB && AllocatePrefetchStyle == 3 ) {
-      // Insert a prefetch for each allocation only on the fast-path
+      // Insert a prefetch for each allocation.
+      // This code is used for Sparc with BIS.
       Node *pf_region = new (C, 3) RegionNode(3);
       Node *pf_phi_rawmem = new (C, 3) PhiNode( pf_region, Type::MEMORY,
                                                 TypeRawPtr::BOTTOM );
 
-      // Generate several prefetch instructions only for arrays.
-      uint lines = (length != NULL) ? AllocatePrefetchLines : 1;
+      // Generate several prefetch instructions.
+      uint lines = (length != NULL) ? AllocatePrefetchLines : AllocateInstancePrefetchLines;
       uint step_size = AllocatePrefetchStepSize;
       uint distance = AllocatePrefetchDistance;
 
@@ -1634,7 +1635,7 @@
       transform_later(cache_adr);
 
       // Prefetch
-      Node *prefetch = new (C, 3) PrefetchWriteNode( contended_phi_rawmem, cache_adr );
+      Node *prefetch = new (C, 3) PrefetchAllocationNode( contended_phi_rawmem, cache_adr );
       prefetch->set_req(0, needgc_false);
       transform_later(prefetch);
       contended_phi_rawmem = prefetch;
@@ -1644,7 +1645,7 @@
         prefetch_adr = new (C, 4) AddPNode( cache_adr, cache_adr,
                                             _igvn.MakeConX(distance) );
         transform_later(prefetch_adr);
-        prefetch = new (C, 3) PrefetchWriteNode( contended_phi_rawmem, prefetch_adr );
+        prefetch = new (C, 3) PrefetchAllocationNode( contended_phi_rawmem, prefetch_adr );
         transform_later(prefetch);
         distance += step_size;
         contended_phi_rawmem = prefetch;
@@ -1653,15 +1654,15 @@
       // Insert a prefetch for each allocation only on the fast-path
       Node *prefetch_adr;
       Node *prefetch;
-      // Generate several prefetch instructions only for arrays.
-      uint lines = (length != NULL) ? AllocatePrefetchLines : 1;
+      // Generate several prefetch instructions.
+      uint lines = (length != NULL) ? AllocatePrefetchLines : AllocateInstancePrefetchLines;
       uint step_size = AllocatePrefetchStepSize;
       uint distance = AllocatePrefetchDistance;
       for ( uint i = 0; i < lines; i++ ) {
         prefetch_adr = new (C, 4) AddPNode( old_eden_top, new_eden_top,
                                             _igvn.MakeConX(distance) );
         transform_later(prefetch_adr);
-        prefetch = new (C, 3) PrefetchWriteNode( i_o, prefetch_adr );
+        prefetch = new (C, 3) PrefetchAllocationNode( i_o, prefetch_adr );
         // Do not let it float too high, since if eden_top == eden_end,
         // both might be null.
         if( i == 0 ) { // Set control for first prefetch, next follows it
@@ -1816,9 +1817,9 @@
   // The input to a Lock is merged memory, so extract its RawMem input
   // (unless the MergeMem has been optimized away.)
   if (alock->is_Lock()) {
-    // Seach for MemBarAcquire node and delete it also.
+    // Seach for MemBarAcquireLock node and delete it also.
     MemBarNode* membar = fallthroughproj->unique_ctrl_out()->as_MemBar();
-    assert(membar != NULL && membar->Opcode() == Op_MemBarAcquire, "");
+    assert(membar != NULL && membar->Opcode() == Op_MemBarAcquireLock, "");
     Node* ctrlproj = membar->proj_out(TypeFunc::Control);
     Node* memproj = membar->proj_out(TypeFunc::Memory);
     _igvn.replace_node(ctrlproj, fallthroughproj);
@@ -1833,11 +1834,11 @@
     }
   }
 
-  // Seach for MemBarRelease node and delete it also.
+  // Seach for MemBarReleaseLock node and delete it also.
   if (alock->is_Unlock() && ctrl != NULL && ctrl->is_Proj() &&
       ctrl->in(0)->is_MemBar()) {
     MemBarNode* membar = ctrl->in(0)->as_MemBar();
-    assert(membar->Opcode() == Op_MemBarRelease &&
+    assert(membar->Opcode() == Op_MemBarReleaseLock &&
            mem->is_Proj() && membar == mem->in(0), "");
     _igvn.replace_node(fallthroughproj, ctrl);
     _igvn.replace_node(memproj_fallthrough, mem);
diff --git a/hotspot/src/share/vm/opto/matcher.cpp b/hotspot/src/share/vm/opto/matcher.cpp
index bf24f9b..1faf3b9 100644
--- a/hotspot/src/share/vm/opto/matcher.cpp
+++ b/hotspot/src/share/vm/opto/matcher.cpp
@@ -826,6 +826,7 @@
     switch (n->Opcode()) {
     case Op_PrefetchRead:
     case Op_PrefetchWrite:
+    case Op_PrefetchAllocation:
       nidx = Compile::AliasIdxRaw;
       nat = TypeRawPtr::BOTTOM;
       break;
@@ -2230,57 +2231,6 @@
   }
 }
 
-
-// Used by the DFA in dfa_sparc.cpp.  Check for a prior FastLock
-// acting as an Acquire and thus we don't need an Acquire here.  We
-// retain the Node to act as a compiler ordering barrier.
-bool Matcher::prior_fast_lock( const Node *acq ) {
-  Node *r = acq->in(0);
-  if( !r->is_Region() || r->req() <= 1 ) return false;
-  Node *proj = r->in(1);
-  if( !proj->is_Proj() ) return false;
-  Node *call = proj->in(0);
-  if( !call->is_Call() || call->as_Call()->entry_point() != OptoRuntime::complete_monitor_locking_Java() )
-    return false;
-
-  return true;
-}
-
-// Used by the DFA in dfa_sparc.cpp.  Check for a following FastUnLock
-// acting as a Release and thus we don't need a Release here.  We
-// retain the Node to act as a compiler ordering barrier.
-bool Matcher::post_fast_unlock( const Node *rel ) {
-  Compile *C = Compile::current();
-  assert( rel->Opcode() == Op_MemBarRelease, "" );
-  const MemBarReleaseNode *mem = (const MemBarReleaseNode*)rel;
-  DUIterator_Fast imax, i = mem->fast_outs(imax);
-  Node *ctrl = NULL;
-  while( true ) {
-    ctrl = mem->fast_out(i);            // Throw out-of-bounds if proj not found
-    assert( ctrl->is_Proj(), "only projections here" );
-    ProjNode *proj = (ProjNode*)ctrl;
-    if( proj->_con == TypeFunc::Control &&
-        !C->node_arena()->contains(ctrl) ) // Unmatched old-space only
-      break;
-    i++;
-  }
-  Node *iff = NULL;
-  for( DUIterator_Fast jmax, j = ctrl->fast_outs(jmax); j < jmax; j++ ) {
-    Node *x = ctrl->fast_out(j);
-    if( x->is_If() && x->req() > 1 &&
-        !C->node_arena()->contains(x) ) { // Unmatched old-space only
-      iff = x;
-      break;
-    }
-  }
-  if( !iff ) return false;
-  Node *bol = iff->in(1);
-  // The iff might be some random subclass of If or bol might be Con-Top
-  if (!bol->is_Bool())  return false;
-  assert( bol->req() > 1, "" );
-  return (bol->in(1)->Opcode() == Op_FastUnlock);
-}
-
 // Used by the DFA in dfa_xxx.cpp.  Check for a following barrier or
 // atomic instruction acting as a store_load barrier without any
 // intervening volatile load, and thus we don't need a barrier here.
diff --git a/hotspot/src/share/vm/opto/matcher.hpp b/hotspot/src/share/vm/opto/matcher.hpp
index 5a34bea..39b00b03 100644
--- a/hotspot/src/share/vm/opto/matcher.hpp
+++ b/hotspot/src/share/vm/opto/matcher.hpp
@@ -351,7 +351,7 @@
   virtual int      regnum_to_fpu_offset(int regnum);
 
   // Is this branch offset small enough to be addressed by a short branch?
-  bool is_short_branch_offset(int rule, int offset);
+  bool is_short_branch_offset(int rule, int br_size, int offset);
 
   // Optional scaling for the parameter to the ClearArray/CopyArray node.
   static const bool init_array_count_is_in_bytes;
@@ -441,16 +441,6 @@
     else { fatal("SoftMatchFailure is not allowed except in product"); }
   }
 
-  // Used by the DFA in dfa_sparc.cpp.  Check for a prior FastLock
-  // acting as an Acquire and thus we don't need an Acquire here.  We
-  // retain the Node to act as a compiler ordering barrier.
-  static bool prior_fast_lock( const Node *acq );
-
-  // Used by the DFA in dfa_sparc.cpp.  Check for a following
-  // FastUnLock acting as a Release and thus we don't need a Release
-  // here.  We retain the Node to act as a compiler ordering barrier.
-  static bool post_fast_unlock( const Node *rel );
-
   // Check for a following volatile memory barrier without an
   // intervening load and thus we don't need a barrier here.  We
   // retain the Node to act as a compiler ordering barrier.
diff --git a/hotspot/src/share/vm/opto/memnode.cpp b/hotspot/src/share/vm/opto/memnode.cpp
index 5f49c03..b27b133 100644
--- a/hotspot/src/share/vm/opto/memnode.cpp
+++ b/hotspot/src/share/vm/opto/memnode.cpp
@@ -925,8 +925,9 @@
     // a synchronized region.
     while (current->is_Proj()) {
       int opc = current->in(0)->Opcode();
-      if ((final && opc == Op_MemBarAcquire) ||
-          opc == Op_MemBarRelease || opc == Op_MemBarCPUOrder) {
+      if ((final && (opc == Op_MemBarAcquire || opc == Op_MemBarAcquireLock)) ||
+          opc == Op_MemBarRelease || opc == Op_MemBarCPUOrder ||
+          opc == Op_MemBarReleaseLock) {
         Node* mem = current->in(0)->in(TypeFunc::Memory);
         if (mem->is_MergeMem()) {
           MergeMemNode* merge = mem->as_MergeMem();
@@ -2666,6 +2667,8 @@
   switch (opcode) {
   case Op_MemBarAcquire:   return new(C, len) MemBarAcquireNode(C,  atp, pn);
   case Op_MemBarRelease:   return new(C, len) MemBarReleaseNode(C,  atp, pn);
+  case Op_MemBarAcquireLock: return new(C, len) MemBarAcquireLockNode(C,  atp, pn);
+  case Op_MemBarReleaseLock: return new(C, len) MemBarReleaseLockNode(C,  atp, pn);
   case Op_MemBarVolatile:  return new(C, len) MemBarVolatileNode(C, atp, pn);
   case Op_MemBarCPUOrder:  return new(C, len) MemBarCPUOrderNode(C, atp, pn);
   case Op_Initialize:      return new(C, len) InitializeNode(C,     atp, pn);
diff --git a/hotspot/src/share/vm/opto/memnode.hpp b/hotspot/src/share/vm/opto/memnode.hpp
index 9608b33..a9eacdd 100644
--- a/hotspot/src/share/vm/opto/memnode.hpp
+++ b/hotspot/src/share/vm/opto/memnode.hpp
@@ -879,7 +879,7 @@
 
 // "Acquire" - no following ref can move before (but earlier refs can
 // follow, like an early Load stalled in cache).  Requires multi-cpu
-// visibility.  Inserted after a volatile load or FastLock.
+// visibility.  Inserted after a volatile load.
 class MemBarAcquireNode: public MemBarNode {
 public:
   MemBarAcquireNode(Compile* C, int alias_idx, Node* precedent)
@@ -889,7 +889,7 @@
 
 // "Release" - no earlier ref can move after (but later refs can move
 // up, like a speculative pipelined cache-hitting Load).  Requires
-// multi-cpu visibility.  Inserted before a volatile store or FastUnLock.
+// multi-cpu visibility.  Inserted before a volatile store.
 class MemBarReleaseNode: public MemBarNode {
 public:
   MemBarReleaseNode(Compile* C, int alias_idx, Node* precedent)
@@ -897,6 +897,26 @@
   virtual int Opcode() const;
 };
 
+// "Acquire" - no following ref can move before (but earlier refs can
+// follow, like an early Load stalled in cache).  Requires multi-cpu
+// visibility.  Inserted after a FastLock.
+class MemBarAcquireLockNode: public MemBarNode {
+public:
+  MemBarAcquireLockNode(Compile* C, int alias_idx, Node* precedent)
+    : MemBarNode(C, alias_idx, precedent) {}
+  virtual int Opcode() const;
+};
+
+// "Release" - no earlier ref can move after (but later refs can move
+// up, like a speculative pipelined cache-hitting Load).  Requires
+// multi-cpu visibility.  Inserted before a FastUnLock.
+class MemBarReleaseLockNode: public MemBarNode {
+public:
+  MemBarReleaseLockNode(Compile* C, int alias_idx, Node* precedent)
+    : MemBarNode(C, alias_idx, precedent) {}
+  virtual int Opcode() const;
+};
+
 // Ordering between a volatile store and a following volatile load.
 // Requires multi-CPU visibility?
 class MemBarVolatileNode: public MemBarNode {
@@ -1258,6 +1278,16 @@
   virtual int Opcode() const;
   virtual uint ideal_reg() const { return NotAMachineReg; }
   virtual uint match_edge(uint idx) const { return idx==2; }
+  virtual const Type *bottom_type() const { return Type::ABIO; }
+};
+
+// Allocation prefetch which may fault, TLAB size have to be adjusted.
+class PrefetchAllocationNode : public Node {
+public:
+  PrefetchAllocationNode(Node *mem, Node *adr) : Node(0,mem,adr) {}
+  virtual int Opcode() const;
+  virtual uint ideal_reg() const { return NotAMachineReg; }
+  virtual uint match_edge(uint idx) const { return idx==2; }
   virtual const Type *bottom_type() const { return ( AllocatePrefetchStyle == 3 ) ? Type::MEMORY : Type::ABIO; }
 };
 
diff --git a/hotspot/src/share/vm/opto/mulnode.cpp b/hotspot/src/share/vm/opto/mulnode.cpp
index cf838c7..f086319 100644
--- a/hotspot/src/share/vm/opto/mulnode.cpp
+++ b/hotspot/src/share/vm/opto/mulnode.cpp
@@ -98,7 +98,7 @@
       const Type *t12 = phase->type( mul1->in(2) );
       if( t12->singleton() && t12 != Type::TOP) { // Left input is an add of a constant?
         // Compute new constant; check for overflow
-        const Type *tcon01 = mul1->as_Mul()->mul_ring(t2,t12);
+        const Type *tcon01 = ((MulNode*)mul1)->mul_ring(t2,t12);
         if( tcon01->singleton() ) {
           // The Mul of the flattened expression
           set_req(1, mul1->in(1));
diff --git a/hotspot/src/share/vm/opto/mulnode.hpp b/hotspot/src/share/vm/opto/mulnode.hpp
index a674940..11cc771 100644
--- a/hotspot/src/share/vm/opto/mulnode.hpp
+++ b/hotspot/src/share/vm/opto/mulnode.hpp
@@ -41,9 +41,7 @@
 class MulNode : public Node {
   virtual uint hash() const;
 public:
-  MulNode( Node *in1, Node *in2 ): Node(0,in1,in2) {
-    init_class_id(Class_Mul);
-  }
+  MulNode( Node *in1, Node *in2 ): Node(0,in1,in2) {}
 
   // Handle algebraic identities here.  If we have an identity, return the Node
   // we are equivalent to.  We look for "add of zero" as an identity.
diff --git a/hotspot/src/share/vm/opto/node.hpp b/hotspot/src/share/vm/opto/node.hpp
index 37a658d..e88c4b9 100644
--- a/hotspot/src/share/vm/opto/node.hpp
+++ b/hotspot/src/share/vm/opto/node.hpp
@@ -67,6 +67,8 @@
 class FastLockNode;
 class FastUnlockNode;
 class IfNode;
+class IfFalseNode;
+class IfTrueNode;
 class InitializeNode;
 class JVMState;
 class JumpNode;
@@ -75,6 +77,7 @@
 class LoadStoreNode;
 class LockNode;
 class LoopNode;
+class MachBranchNode;
 class MachCallDynamicJavaNode;
 class MachCallJavaNode;
 class MachCallLeafNode;
@@ -83,9 +86,11 @@
 class MachCallStaticJavaNode;
 class MachConstantBaseNode;
 class MachConstantNode;
+class MachGotoNode;
 class MachIfNode;
 class MachNode;
 class MachNullCheckNode;
+class MachProjNode;
 class MachReturnNode;
 class MachSafePointNode;
 class MachSpillCopyNode;
@@ -94,7 +99,6 @@
 class MemBarNode;
 class MemNode;
 class MergeMemNode;
-class MulNode;
 class MultiNode;
 class MultiBranchNode;
 class NeverBranchNode;
@@ -127,9 +131,10 @@
 class Type;
 class TypeNode;
 class UnlockNode;
+class VectorNode;
+class VectorLoadNode;
+class VectorStoreNode;
 class VectorSet;
-class IfTrueNode;
-class IfFalseNode;
 typedef void (*NFunc)(Node&,void*);
 extern "C" {
   typedef int (*C_sort_func_t)(const void *, const void *);
@@ -568,31 +573,16 @@
               DEFINE_CLASS_ID(MachCallDynamicJava,  MachCallJava, 1)
             DEFINE_CLASS_ID(MachCallRuntime,      MachCall, 1)
               DEFINE_CLASS_ID(MachCallLeaf,         MachCallRuntime, 0)
-      DEFINE_CLASS_ID(MachSpillCopy,    Mach, 1)
-      DEFINE_CLASS_ID(MachNullCheck,    Mach, 2)
-      DEFINE_CLASS_ID(MachIf,           Mach, 3)
-      DEFINE_CLASS_ID(MachTemp,         Mach, 4)
-      DEFINE_CLASS_ID(MachConstantBase, Mach, 5)
-      DEFINE_CLASS_ID(MachConstant,     Mach, 6)
+      DEFINE_CLASS_ID(MachBranch, Mach, 1)
+        DEFINE_CLASS_ID(MachIf,         MachBranch, 0)
+        DEFINE_CLASS_ID(MachGoto,       MachBranch, 1)
+        DEFINE_CLASS_ID(MachNullCheck,  MachBranch, 2)
+      DEFINE_CLASS_ID(MachSpillCopy,    Mach, 2)
+      DEFINE_CLASS_ID(MachTemp,         Mach, 3)
+      DEFINE_CLASS_ID(MachConstantBase, Mach, 4)
+      DEFINE_CLASS_ID(MachConstant,     Mach, 5)
 
-    DEFINE_CLASS_ID(Proj,  Node, 2)
-      DEFINE_CLASS_ID(CatchProj, Proj, 0)
-      DEFINE_CLASS_ID(JumpProj,  Proj, 1)
-      DEFINE_CLASS_ID(IfTrue,    Proj, 2)
-      DEFINE_CLASS_ID(IfFalse,   Proj, 3)
-      DEFINE_CLASS_ID(Parm,      Proj, 4)
-
-    DEFINE_CLASS_ID(Region, Node, 3)
-      DEFINE_CLASS_ID(Loop, Region, 0)
-        DEFINE_CLASS_ID(Root,        Loop, 0)
-        DEFINE_CLASS_ID(CountedLoop, Loop, 1)
-
-    DEFINE_CLASS_ID(Sub,   Node, 4)
-      DEFINE_CLASS_ID(Cmp,   Sub, 0)
-        DEFINE_CLASS_ID(FastLock,   Cmp, 0)
-        DEFINE_CLASS_ID(FastUnlock, Cmp, 1)
-
-    DEFINE_CLASS_ID(Type,  Node, 5)
+    DEFINE_CLASS_ID(Type,  Node, 2)
       DEFINE_CLASS_ID(Phi,   Type, 0)
       DEFINE_CLASS_ID(ConstraintCast, Type, 1)
       DEFINE_CLASS_ID(CheckCastPP, Type, 2)
@@ -601,17 +591,37 @@
       DEFINE_CLASS_ID(DecodeN, Type, 5)
       DEFINE_CLASS_ID(EncodeP, Type, 6)
 
-    DEFINE_CLASS_ID(Mem,   Node, 6)
+    DEFINE_CLASS_ID(Proj,  Node, 3)
+      DEFINE_CLASS_ID(CatchProj, Proj, 0)
+      DEFINE_CLASS_ID(JumpProj,  Proj, 1)
+      DEFINE_CLASS_ID(IfTrue,    Proj, 2)
+      DEFINE_CLASS_ID(IfFalse,   Proj, 3)
+      DEFINE_CLASS_ID(Parm,      Proj, 4)
+      DEFINE_CLASS_ID(MachProj,  Proj, 5)
+
+    DEFINE_CLASS_ID(Mem,   Node, 4)
       DEFINE_CLASS_ID(Load,  Mem, 0)
+        DEFINE_CLASS_ID(VectorLoad,  Load, 0)
       DEFINE_CLASS_ID(Store, Mem, 1)
+        DEFINE_CLASS_ID(VectorStore, Store, 0)
       DEFINE_CLASS_ID(LoadStore, Mem, 2)
 
+    DEFINE_CLASS_ID(Region, Node, 5)
+      DEFINE_CLASS_ID(Loop, Region, 0)
+        DEFINE_CLASS_ID(Root,        Loop, 0)
+        DEFINE_CLASS_ID(CountedLoop, Loop, 1)
+
+    DEFINE_CLASS_ID(Sub,   Node, 6)
+      DEFINE_CLASS_ID(Cmp,   Sub, 0)
+        DEFINE_CLASS_ID(FastLock,   Cmp, 0)
+        DEFINE_CLASS_ID(FastUnlock, Cmp, 1)
+
     DEFINE_CLASS_ID(MergeMem, Node, 7)
     DEFINE_CLASS_ID(Bool,     Node, 8)
     DEFINE_CLASS_ID(AddP,     Node, 9)
     DEFINE_CLASS_ID(BoxLock,  Node, 10)
     DEFINE_CLASS_ID(Add,      Node, 11)
-    DEFINE_CLASS_ID(Mul,      Node, 12)
+    DEFINE_CLASS_ID(Vector,   Node, 12)
     DEFINE_CLASS_ID(ClearArray, Node, 13)
 
     _max_classes  = ClassMask_ClearArray
@@ -621,21 +631,15 @@
   // Flags are sorted by usage frequency.
   enum NodeFlags {
     Flag_is_Copy             = 0x01, // should be first bit to avoid shift
-    Flag_is_Call             = Flag_is_Copy << 1,
-    Flag_rematerialize       = Flag_is_Call << 1,
+    Flag_rematerialize       = Flag_is_Copy << 1,
     Flag_needs_anti_dependence_check = Flag_rematerialize << 1,
     Flag_is_macro            = Flag_needs_anti_dependence_check << 1,
     Flag_is_Con              = Flag_is_macro << 1,
     Flag_is_cisc_alternate   = Flag_is_Con << 1,
-    Flag_is_Branch           = Flag_is_cisc_alternate << 1,
-    Flag_is_block_start      = Flag_is_Branch << 1,
-    Flag_is_Goto             = Flag_is_block_start << 1,
-    Flag_is_dead_loop_safe   = Flag_is_Goto << 1,
+    Flag_is_dead_loop_safe   = Flag_is_cisc_alternate << 1,
     Flag_may_be_short_branch = Flag_is_dead_loop_safe << 1,
-    Flag_is_safepoint_node   = Flag_may_be_short_branch << 1,
-    Flag_is_pc_relative      = Flag_is_safepoint_node << 1,
-    Flag_is_Vector           = Flag_is_pc_relative << 1,
-    _max_flags = (Flag_is_Vector << 1) - 1 // allow flags combination
+    Flag_avoid_back_to_back  = Flag_may_be_short_branch << 1,
+    _max_flags = (Flag_avoid_back_to_back << 1) - 1 // allow flags combination
   };
 
 private:
@@ -669,21 +673,6 @@
   virtual uint size_of() const;
 
   // Other interesting Node properties
-
-  // Special case: is_Call() returns true for both CallNode and MachCallNode.
-  bool is_Call() const {
-    return (_flags & Flag_is_Call) != 0;
-  }
-
-  CallNode* isa_Call() const {
-    return is_Call() ? as_Call() : NULL;
-  }
-
-  CallNode *as_Call() const { // Only for CallNode (not for MachCallNode)
-    assert((_class_id & ClassMask_Call) == Class_Call, "invalid node class");
-    return (CallNode*)this;
-  }
-
   #define DEFINE_CLASS_QUERY(type)                           \
   bool is_##type() const {                                   \
     return ((_class_id & ClassMask_##type) == Class_##type); \
@@ -703,6 +692,7 @@
   DEFINE_CLASS_QUERY(AllocateArray)
   DEFINE_CLASS_QUERY(Bool)
   DEFINE_CLASS_QUERY(BoxLock)
+  DEFINE_CLASS_QUERY(Call)
   DEFINE_CLASS_QUERY(CallDynamicJava)
   DEFINE_CLASS_QUERY(CallJava)
   DEFINE_CLASS_QUERY(CallLeaf)
@@ -732,6 +722,7 @@
   DEFINE_CLASS_QUERY(Lock)
   DEFINE_CLASS_QUERY(Loop)
   DEFINE_CLASS_QUERY(Mach)
+  DEFINE_CLASS_QUERY(MachBranch)
   DEFINE_CLASS_QUERY(MachCall)
   DEFINE_CLASS_QUERY(MachCallDynamicJava)
   DEFINE_CLASS_QUERY(MachCallJava)
@@ -740,8 +731,10 @@
   DEFINE_CLASS_QUERY(MachCallStaticJava)
   DEFINE_CLASS_QUERY(MachConstantBase)
   DEFINE_CLASS_QUERY(MachConstant)
+  DEFINE_CLASS_QUERY(MachGoto)
   DEFINE_CLASS_QUERY(MachIf)
   DEFINE_CLASS_QUERY(MachNullCheck)
+  DEFINE_CLASS_QUERY(MachProj)
   DEFINE_CLASS_QUERY(MachReturn)
   DEFINE_CLASS_QUERY(MachSafePoint)
   DEFINE_CLASS_QUERY(MachSpillCopy)
@@ -749,7 +742,6 @@
   DEFINE_CLASS_QUERY(Mem)
   DEFINE_CLASS_QUERY(MemBar)
   DEFINE_CLASS_QUERY(MergeMem)
-  DEFINE_CLASS_QUERY(Mul)
   DEFINE_CLASS_QUERY(Multi)
   DEFINE_CLASS_QUERY(MultiBranch)
   DEFINE_CLASS_QUERY(Parm)
@@ -764,6 +756,9 @@
   DEFINE_CLASS_QUERY(Store)
   DEFINE_CLASS_QUERY(Sub)
   DEFINE_CLASS_QUERY(Type)
+  DEFINE_CLASS_QUERY(Vector)
+  DEFINE_CLASS_QUERY(VectorLoad)
+  DEFINE_CLASS_QUERY(VectorStore)
   DEFINE_CLASS_QUERY(Unlock)
 
   #undef DEFINE_CLASS_QUERY
@@ -774,7 +769,6 @@
   }
 
   bool is_Con () const { return (_flags & Flag_is_Con) != 0; }
-  bool is_Goto() const { return (_flags & Flag_is_Goto) != 0; }
   // The data node which is safe to leave in dead loop during IGVN optimization.
   bool is_dead_loop_safe() const {
     return is_Phi() || (is_Proj() && in(0) == NULL) ||
@@ -795,9 +789,6 @@
   // skip some other important test.)
   virtual bool depends_only_on_test() const { assert(!is_CFG(), ""); return true; };
 
-  // defined for MachNodes that match 'If' | 'Goto' | 'CountedLoopEnd'
-  bool is_Branch() const { return (_flags & Flag_is_Branch) != 0; }
-
   // When building basic blocks, I need to have a notion of block beginning
   // Nodes, next block selector Nodes (block enders), and next block
   // projections.  These calls need to work on their machine equivalents.  The
@@ -806,7 +797,7 @@
     if ( is_Region() )
       return this == (const Node*)in(0);
     else
-      return (_flags & Flag_is_block_start) != 0;
+      return is_Start();
   }
 
   // The Ideal control projection Nodes are IfTrue/IfFalse, JumpProjNode, Root,
@@ -816,9 +807,6 @@
   // The node is a "macro" node which needs to be expanded before matching
   bool is_macro() const { return (_flags & Flag_is_macro) != 0; }
 
-  // Value is a vector of primitive values
-  bool is_Vector() const { return (_flags & Flag_is_Vector) != 0; }
-
 //----------------- Optimization
 
   // Get the worst-case Type output for this Node.
diff --git a/hotspot/src/share/vm/opto/output.cpp b/hotspot/src/share/vm/opto/output.cpp
index 8bd9c93..d9317d6 100644
--- a/hotspot/src/share/vm/opto/output.cpp
+++ b/hotspot/src/share/vm/opto/output.cpp
@@ -128,6 +128,14 @@
   if ( ZapDeadCompiledLocals )  Insert_zap_nodes();
 # endif
 
+  uint* blk_starts = NEW_RESOURCE_ARRAY(uint,_cfg->_num_blocks+1);
+  blk_starts[0]    = 0;
+
+  // Initialize code buffer and process short branches.
+  CodeBuffer* cb = init_buffer(blk_starts);
+
+  if (cb == NULL || failing())  return;
+
   ScheduleAndBundle();
 
 #ifndef PRODUCT
@@ -152,7 +160,7 @@
 
   if (failing())  return;
 
-  Fill_buffer();
+  fill_buffer(cb, blk_starts);
 }
 
 bool Compile::need_stack_bang(int frame_size_in_bytes) const {
@@ -325,22 +333,22 @@
   } // if( MaxLoopPad < OptoLoopAlignment-1 )
 }
 
-//----------------------Shorten_branches---------------------------------------
+//----------------------shorten_branches---------------------------------------
 // The architecture description provides short branch variants for some long
 // branch instructions. Replace eligible long branches with short branches.
-void Compile::Shorten_branches(Label *labels, int& code_size, int& reloc_size, int& stub_size) {
-
-  // fill in the nop array for bundling computations
-  MachNode *_nop_list[Bundle::_nop_count];
-  Bundle::initialize_nops(_nop_list, this);
+void Compile::shorten_branches(uint* blk_starts, int& code_size, int& reloc_size, int& stub_size) {
 
   // ------------------
   // Compute size of each block, method size, and relocation information size
-  uint *jmp_end    = NEW_RESOURCE_ARRAY(uint,_cfg->_num_blocks);
-  uint *blk_starts = NEW_RESOURCE_ARRAY(uint,_cfg->_num_blocks+1);
-  DEBUG_ONLY( uint *jmp_target = NEW_RESOURCE_ARRAY(uint,_cfg->_num_blocks); )
-  DEBUG_ONLY( uint *jmp_rule = NEW_RESOURCE_ARRAY(uint,_cfg->_num_blocks); )
-  blk_starts[0]    = 0;
+  uint nblocks  = _cfg->_num_blocks;
+
+  uint*      jmp_offset = NEW_RESOURCE_ARRAY(uint,nblocks);
+  uint*      jmp_size   = NEW_RESOURCE_ARRAY(uint,nblocks);
+  int*       jmp_nidx   = NEW_RESOURCE_ARRAY(int ,nblocks);
+  DEBUG_ONLY( uint *jmp_target = NEW_RESOURCE_ARRAY(uint,nblocks); )
+  DEBUG_ONLY( uint *jmp_rule = NEW_RESOURCE_ARRAY(uint,nblocks); )
+
+  bool has_short_branch_candidate = false;
 
   // Initialize the sizes to 0
   code_size  = 0;          // Size in bytes of generated code
@@ -350,28 +358,34 @@
   reloc_size = 1;          // Number of relocation entries
 
   // Make three passes.  The first computes pessimistic blk_starts,
-  // relative jmp_end and reloc_size information.  The second performs
+  // relative jmp_offset and reloc_size information.  The second performs
   // short branch substitution using the pessimistic sizing.  The
   // third inserts nops where needed.
 
-  Node *nj; // tmp
-
   // Step one, perform a pessimistic sizing pass.
-  uint i;
-  uint min_offset_from_last_call = 1;  // init to a positive value
+  uint last_call_adr = max_uint;
+  uint last_avoid_back_to_back_adr = max_uint;
   uint nop_size = (new (this) MachNopNode())->size(_regalloc);
-  for( i=0; i<_cfg->_num_blocks; i++ ) { // For all blocks
+  for (uint i = 0; i < nblocks; i++) { // For all blocks
     Block *b = _cfg->_blocks[i];
 
+    // During short branch replacement, we store the relative (to blk_starts)
+    // offset of jump in jmp_offset, rather than the absolute offset of jump.
+    // This is so that we do not need to recompute sizes of all nodes when
+    // we compute correct blk_starts in our next sizing pass.
+    jmp_offset[i] = 0;
+    jmp_size[i]   = 0;
+    jmp_nidx[i]   = -1;
+    DEBUG_ONLY( jmp_target[i] = 0; )
+    DEBUG_ONLY( jmp_rule[i]   = 0; )
+
     // Sum all instruction sizes to compute block size
     uint last_inst = b->_nodes.size();
     uint blk_size = 0;
-    for( uint j = 0; j<last_inst; j++ ) {
-      nj = b->_nodes[j];
-      uint inst_size = nj->size(_regalloc);
-      blk_size += inst_size;
+    for (uint j = 0; j < last_inst; j++) {
+      Node* nj = b->_nodes[j];
       // Handle machine instruction nodes
-      if( nj->is_Mach() ) {
+      if (nj->is_Mach()) {
         MachNode *mach = nj->as_Mach();
         blk_size += (mach->alignment_required() - 1) * relocInfo::addr_unit(); // assume worst case padding
         reloc_size += mach->reloc();
@@ -388,32 +402,52 @@
         } else if (mach->is_MachSafePoint()) {
           // If call/safepoint are adjacent, account for possible
           // nop to disambiguate the two safepoints.
-          if (min_offset_from_last_call == 0) {
+          // ScheduleAndBundle() can rearrange nodes in a block,
+          // check for all offsets inside this block.
+          if (last_call_adr >= blk_starts[i]) {
             blk_size += nop_size;
           }
         }
+        if (mach->avoid_back_to_back()) {
+          // Nop is inserted between "avoid back to back" instructions.
+          // ScheduleAndBundle() can rearrange nodes in a block,
+          // check for all offsets inside this block.
+          if (last_avoid_back_to_back_adr >= blk_starts[i]) {
+            blk_size += nop_size;
+          }
+        }
+        if (mach->may_be_short_branch()) {
+          if (!nj->is_MachBranch()) {
+#ifndef PRODUCT
+            nj->dump(3);
+#endif
+            Unimplemented();
+          }
+          assert(jmp_nidx[i] == -1, "block should have only one branch");
+          jmp_offset[i] = blk_size;
+          jmp_size[i]   = nj->size(_regalloc);
+          jmp_nidx[i]   = j;
+          has_short_branch_candidate = true;
+        }
       }
-      min_offset_from_last_call += inst_size;
+      blk_size += nj->size(_regalloc);
       // Remember end of call offset
-      if (nj->is_MachCall() && nj->as_MachCall()->is_safepoint_node()) {
-        min_offset_from_last_call = 0;
+      if (nj->is_MachCall() && !nj->is_MachCallLeaf()) {
+        last_call_adr = blk_starts[i]+blk_size;
+      }
+      // Remember end of avoid_back_to_back offset
+      if (nj->is_Mach() && nj->as_Mach()->avoid_back_to_back()) {
+        last_avoid_back_to_back_adr = blk_starts[i]+blk_size;
       }
     }
 
-    // During short branch replacement, we store the relative (to blk_starts)
-    // end of jump in jmp_end, rather than the absolute end of jump.  This
-    // is so that we do not need to recompute sizes of all nodes when we compute
-    // correct blk_starts in our next sizing pass.
-    jmp_end[i] = blk_size;
-    DEBUG_ONLY( jmp_target[i] = 0; )
-
     // When the next block starts a loop, we may insert pad NOP
     // instructions.  Since we cannot know our future alignment,
     // assume the worst.
-    if( i<_cfg->_num_blocks-1 ) {
+    if (i< nblocks-1) {
       Block *nb = _cfg->_blocks[i+1];
       int max_loop_pad = nb->code_alignment()-relocInfo::addr_unit();
-      if( max_loop_pad > 0 ) {
+      if (max_loop_pad > 0) {
         assert(is_power_of_2(max_loop_pad+relocInfo::addr_unit()), "");
         blk_size += max_loop_pad;
       }
@@ -424,124 +458,100 @@
   }
 
   // Step two, replace eligible long jumps.
+  bool progress = true;
+  uint last_may_be_short_branch_adr = max_uint;
+  while (has_short_branch_candidate && progress) {
+    progress = false;
+    has_short_branch_candidate = false;
+    int adjust_block_start = 0;
+    for (uint i = 0; i < nblocks; i++) {
+      Block *b = _cfg->_blocks[i];
+      int idx = jmp_nidx[i];
+      MachNode* mach = (idx == -1) ? NULL: b->_nodes[idx]->as_Mach();
+      if (mach != NULL && mach->may_be_short_branch()) {
+#ifdef ASSERT
+        assert(jmp_size[i] > 0 && mach->is_MachBranch(), "sanity");
+        int j;
+        // Find the branch; ignore trailing NOPs.
+        for (j = b->_nodes.size()-1; j>=0; j--) {
+          Node* n = b->_nodes[j];
+          if (!n->is_Mach() || n->as_Mach()->ideal_Opcode() != Op_Con)
+            break;
+        }
+        assert(j >= 0 && j == idx && b->_nodes[j] == (Node*)mach, "sanity");
+#endif
+        int br_size = jmp_size[i];
+        int br_offs = blk_starts[i] + jmp_offset[i];
 
-  // Note: this will only get the long branches within short branch
-  //   range. Another pass might detect more branches that became
-  //   candidates because the shortening in the first pass exposed
-  //   more opportunities. Unfortunately, this would require
-  //   recomputing the starting and ending positions for the blocks
-  for( i=0; i<_cfg->_num_blocks; i++ ) {
-    Block *b = _cfg->_blocks[i];
-
-    int j;
-    // Find the branch; ignore trailing NOPs.
-    for( j = b->_nodes.size()-1; j>=0; j-- ) {
-      nj = b->_nodes[j];
-      if( !nj->is_Mach() || nj->as_Mach()->ideal_Opcode() != Op_Con )
-        break;
-    }
-
-    if (j >= 0) {
-      if( nj->is_Mach() && nj->as_Mach()->may_be_short_branch() ) {
-        MachNode *mach = nj->as_Mach();
         // This requires the TRUE branch target be in succs[0]
         uint bnum = b->non_connector_successor(0)->_pre_order;
-        uintptr_t target = blk_starts[bnum];
-        if( mach->is_pc_relative() ) {
-          int offset = target-(blk_starts[i] + jmp_end[i]);
-          if (_matcher->is_short_branch_offset(mach->rule(), offset)) {
-            // We've got a winner.  Replace this branch.
-            MachNode* replacement = mach->short_branch_version(this);
-            b->_nodes.map(j, replacement);
-            mach->subsume_by(replacement);
+        int offset = blk_starts[bnum] - br_offs;
+        if (bnum > i) { // adjust following block's offset
+          offset -= adjust_block_start;
+        }
+        // In the following code a nop could be inserted before
+        // the branch which will increase the backward distance.
+        bool needs_padding = ((uint)br_offs == last_may_be_short_branch_adr);
+        if (needs_padding && offset <= 0)
+          offset -= nop_size;
 
-            // Update the jmp_end size to save time in our
-            // next pass.
-            jmp_end[i] -= (mach->size(_regalloc) - replacement->size(_regalloc));
-            DEBUG_ONLY( jmp_target[i] = bnum; );
-            DEBUG_ONLY( jmp_rule[i] = mach->rule(); );
+        if (_matcher->is_short_branch_offset(mach->rule(), br_size, offset)) {
+          // We've got a winner.  Replace this branch.
+          MachNode* replacement = mach->as_MachBranch()->short_branch_version(this);
+
+          // Update the jmp_size.
+          int new_size = replacement->size(_regalloc);
+          int diff     = br_size - new_size;
+          assert(diff >= (int)nop_size, "short_branch size should be smaller");
+          // Conservatively take into accound padding between
+          // avoid_back_to_back branches. Previous branch could be
+          // converted into avoid_back_to_back branch during next
+          // rounds.
+          if (needs_padding && replacement->avoid_back_to_back()) {
+            jmp_offset[i] += nop_size;
+            diff -= nop_size;
           }
+          adjust_block_start += diff;
+          b->_nodes.map(idx, replacement);
+          mach->subsume_by(replacement);
+          mach = replacement;
+          progress = true;
+
+          jmp_size[i] = new_size;
+          DEBUG_ONLY( jmp_target[i] = bnum; );
+          DEBUG_ONLY( jmp_rule[i] = mach->rule(); );
         } else {
-#ifndef PRODUCT
-          mach->dump(3);
-#endif
-          Unimplemented();
+          // The jump distance is not short, try again during next iteration.
+          has_short_branch_candidate = true;
         }
+      } // (mach->may_be_short_branch())
+      if (mach != NULL && (mach->may_be_short_branch() ||
+                           mach->avoid_back_to_back())) {
+        last_may_be_short_branch_adr = blk_starts[i] + jmp_offset[i] + jmp_size[i];
       }
-    }
-  }
-
-  // Compute the size of first NumberOfLoopInstrToAlign instructions at head
-  // of a loop. It is used to determine the padding for loop alignment.
-  compute_loop_first_inst_sizes();
-
-  // Step 3, compute the offsets of all the labels
-  uint last_call_adr = max_uint;
-  for( i=0; i<_cfg->_num_blocks; i++ ) { // For all blocks
-    // copy the offset of the beginning to the corresponding label
-    assert(labels[i].is_unused(), "cannot patch at this point");
-    labels[i].bind_loc(blk_starts[i], CodeBuffer::SECT_INSTS);
-
-    // insert padding for any instructions that need it
-    Block *b = _cfg->_blocks[i];
-    uint last_inst = b->_nodes.size();
-    uint adr = blk_starts[i];
-    for( uint j = 0; j<last_inst; j++ ) {
-      nj = b->_nodes[j];
-      if( nj->is_Mach() ) {
-        int padding = nj->as_Mach()->compute_padding(adr);
-        // If call/safepoint are adjacent insert a nop (5010568)
-        if (padding == 0 && nj->is_MachSafePoint() && !nj->is_MachCall() &&
-            adr == last_call_adr ) {
-          padding = nop_size;
-        }
-        if(padding > 0) {
-          assert((padding % nop_size) == 0, "padding is not a multiple of NOP size");
-          int nops_cnt = padding / nop_size;
-          MachNode *nop = new (this) MachNopNode(nops_cnt);
-          b->_nodes.insert(j++, nop);
-          _cfg->_bbs.map( nop->_idx, b );
-          adr += padding;
-          last_inst++;
-        }
-      }
-      adr += nj->size(_regalloc);
-
-      // Remember end of call offset
-      if (nj->is_MachCall() && nj->as_MachCall()->is_safepoint_node()) {
-        last_call_adr = adr;
-      }
-    }
-
-    if ( i != _cfg->_num_blocks-1) {
-      // Get the size of the block
-      uint blk_size = adr - blk_starts[i];
-
-      // When the next block is the top of a loop, we may insert pad NOP
-      // instructions.
-      Block *nb = _cfg->_blocks[i+1];
-      int current_offset = blk_starts[i] + blk_size;
-      current_offset += nb->alignment_padding(current_offset);
-      // Save block size; update total method size
-      blk_starts[i+1] = current_offset;
+      blk_starts[i+1] -= adjust_block_start;
     }
   }
 
 #ifdef ASSERT
-  for( i=0; i<_cfg->_num_blocks; i++ ) { // For all blocks
-    if( jmp_target[i] != 0 ) {
-      int offset = blk_starts[jmp_target[i]]-(blk_starts[i] + jmp_end[i]);
-      if (!_matcher->is_short_branch_offset(jmp_rule[i], offset)) {
-        tty->print_cr("target (%d) - jmp_end(%d) = offset (%d), jmp_block B%d, target_block B%d", blk_starts[jmp_target[i]], blk_starts[i] + jmp_end[i], offset, i, jmp_target[i]);
+  for (uint i = 0; i < nblocks; i++) { // For all blocks
+    if (jmp_target[i] != 0) {
+      int br_size = jmp_size[i];
+      int offset = blk_starts[jmp_target[i]]-(blk_starts[i] + jmp_offset[i]);
+      if (!_matcher->is_short_branch_offset(jmp_rule[i], br_size, offset)) {
+        tty->print_cr("target (%d) - jmp_offset(%d) = offset (%d), jump_size(%d), jmp_block B%d, target_block B%d", blk_starts[jmp_target[i]], blk_starts[i] + jmp_offset[i], offset, br_size, i, jmp_target[i]);
       }
-      assert(_matcher->is_short_branch_offset(jmp_rule[i], offset), "Displacement too large for short jmp");
+      assert(_matcher->is_short_branch_offset(jmp_rule[i], br_size, offset), "Displacement too large for short jmp");
     }
   }
 #endif
 
+  // Step 3, compute the offsets of all blocks, will be done in fill_buffer()
+  // after ScheduleAndBundle().
+
   // ------------------
   // Compute size for code buffer
-  code_size   = blk_starts[i-1] + jmp_end[i-1];
+  code_size = blk_starts[nblocks];
 
   // Relocation records
   reloc_size += 1;              // Relo entry for exception handler
@@ -550,7 +560,7 @@
   // Min is 2 bytes, max is probably 6 or 8, with a tax up to 25% for
   // a relocation index.
   // The CodeBuffer will expand the locs array if this estimate is too low.
-  reloc_size   *= 10 / sizeof(relocInfo);
+  reloc_size *= 10 / sizeof(relocInfo);
 }
 
 //------------------------------FillLocArray-----------------------------------
@@ -1026,7 +1036,7 @@
 
 
 
-// helper for Fill_buffer bailout logic
+// helper for fill_buffer bailout logic
 static void turn_off_compiler(Compile* C) {
   if (CodeCache::largest_free_block() >= CodeCacheMinimumFreeSpace*10) {
     // Do not turn off compilation if a single giant method has
@@ -1039,22 +1049,20 @@
 }
 
 
-//------------------------------Fill_buffer------------------------------------
-void Compile::Fill_buffer() {
+//------------------------------init_buffer------------------------------------
+CodeBuffer* Compile::init_buffer(uint* blk_starts) {
 
   // Set the initially allocated size
   int  code_req   = initial_code_capacity;
   int  locs_req   = initial_locs_capacity;
   int  stub_req   = TraceJumps ? initial_stub_capacity * 10 : initial_stub_capacity;
   int  const_req  = initial_const_capacity;
-  bool labels_not_set = true;
 
   int  pad_req    = NativeCall::instruction_size;
   // The extra spacing after the code is necessary on some platforms.
   // Sometimes we need to patch in a jump after the last instruction,
   // if the nmethod has been deoptimized.  (See 4932387, 4894843.)
 
-  uint i;
   // Compute the byte offset where we can store the deopt pc.
   if (fixed_slots() != 0) {
     _orig_pc_slot_offset_in_bytes = _regalloc->reg2offset(OptoReg::stack2reg(_orig_pc_slot));
@@ -1078,19 +1086,12 @@
     _frame_slots += 8*(16/BytesPerInt);
   }
 #endif
-  assert( _frame_slots >= 0 && _frame_slots < 1000000, "sanity check" );
-
-  // Create an array of unused labels, one for each basic block
-  Label *blk_labels = NEW_RESOURCE_ARRAY(Label, _cfg->_num_blocks+1);
-
-  for( i=0; i <= _cfg->_num_blocks; i++ ) {
-    blk_labels[i].init();
-  }
+  assert(_frame_slots >= 0 && _frame_slots < 1000000, "sanity check");
 
   if (has_mach_constant_base_node()) {
     // Fill the constant table.
-    // Note:  This must happen before Shorten_branches.
-    for (i = 0; i < _cfg->_num_blocks; i++) {
+    // Note:  This must happen before shorten_branches.
+    for (uint i = 0; i < _cfg->_num_blocks; i++) {
       Block* b = _cfg->_blocks[i];
 
       for (uint j = 0; j < b->_nodes.size(); j++) {
@@ -1114,14 +1115,11 @@
   // Initialize the space for the BufferBlob used to find and verify
   // instruction size in MachNode::emit_size()
   init_scratch_buffer_blob(const_req);
-  if (failing())  return; // Out of memory
+  if (failing())  return NULL; // Out of memory
 
-  // If this machine supports different size branch offsets, then pre-compute
-  // the length of the blocks
-  if( _matcher->is_short_branch_offset(-1, 0) ) {
-    Shorten_branches(blk_labels, code_req, locs_req, stub_req);
-    labels_not_set = false;
-  }
+  // Pre-compute the length of blocks and replace
+  // long branches with short if machine supports it.
+  shorten_branches(blk_starts, code_req, locs_req, stub_req);
 
   // nmethod and CodeBuffer count stubs & constants as part of method's code.
   int exception_handler_req = size_exception_handler();
@@ -1151,7 +1149,7 @@
   // Have we run out of code space?
   if ((cb->blob() == NULL) || (!CompileBroker::should_compile_new_jobs())) {
     turn_off_compiler(this);
-    return;
+    return NULL;
   }
   // Configure the code buffer.
   cb->initialize_consts_size(const_req);
@@ -1162,18 +1160,31 @@
   MachNode *_nop_list[Bundle::_nop_count];
   Bundle::initialize_nops(_nop_list, this);
 
+  return cb;
+}
+
+//------------------------------fill_buffer------------------------------------
+void Compile::fill_buffer(CodeBuffer* cb, uint* blk_starts) {
+  // blk_starts[] contains offsets calculated during short branches processing,
+  // offsets should not be increased during following steps.
+
+  // Compute the size of first NumberOfLoopInstrToAlign instructions at head
+  // of a loop. It is used to determine the padding for loop alignment.
+  compute_loop_first_inst_sizes();
+
   // Create oopmap set.
   _oop_map_set = new OopMapSet();
 
   // !!!!! This preserves old handling of oopmaps for now
   debug_info()->set_oopmaps(_oop_map_set);
 
+  uint nblocks  = _cfg->_num_blocks;
   // Count and start of implicit null check instructions
   uint inct_cnt = 0;
-  uint *inct_starts = NEW_RESOURCE_ARRAY(uint, _cfg->_num_blocks+1);
+  uint *inct_starts = NEW_RESOURCE_ARRAY(uint, nblocks+1);
 
   // Count and start of calls
-  uint *call_returns = NEW_RESOURCE_ARRAY(uint, _cfg->_num_blocks+1);
+  uint *call_returns = NEW_RESOURCE_ARRAY(uint, nblocks+1);
 
   uint  return_offset = 0;
   int nop_size = (new (this) MachNopNode())->size(_regalloc);
@@ -1181,14 +1192,22 @@
   int previous_offset = 0;
   int current_offset  = 0;
   int last_call_offset = -1;
+  int last_avoid_back_to_back_offset = -1;
+#ifdef ASSERT
+  int block_alignment_padding = 0;
+
+  uint* jmp_target = NEW_RESOURCE_ARRAY(uint,nblocks);
+  uint* jmp_offset = NEW_RESOURCE_ARRAY(uint,nblocks);
+  uint* jmp_size   = NEW_RESOURCE_ARRAY(uint,nblocks);
+  uint* jmp_rule   = NEW_RESOURCE_ARRAY(uint,nblocks);
+#endif
 
   // Create an array of unused labels, one for each basic block, if printing is enabled
 #ifndef PRODUCT
   int *node_offsets      = NULL;
-  uint  node_offset_limit = unique();
+  uint node_offset_limit = unique();
 
-
-  if ( print_assembly() )
+  if (print_assembly())
     node_offsets         = NEW_RESOURCE_ARRAY(int, node_offset_limit);
 #endif
 
@@ -1199,11 +1218,19 @@
     constant_table().emit(*cb);
   }
 
+  // Create an array of labels, one for each basic block
+  Label *blk_labels = NEW_RESOURCE_ARRAY(Label, nblocks+1);
+  for (uint i=0; i <= nblocks; i++) {
+    blk_labels[i].init();
+  }
+
   // ------------------
   // Now fill in the code buffer
   Node *delay_slot = NULL;
 
-  for( i=0; i < _cfg->_num_blocks; i++ ) {
+  for (uint i=0; i < nblocks; i++) {
+    guarantee(blk_starts[i] >= (uint)cb->insts_size(),"should not increase size");
+
     Block *b = _cfg->_blocks[i];
 
     Node *head = b->head();
@@ -1211,23 +1238,38 @@
     // If this block needs to start aligned (i.e, can be reached other
     // than by falling-thru from the previous block), then force the
     // start of a new bundle.
-    if( Pipeline::requires_bundling() && starts_bundle(head) )
+    if (Pipeline::requires_bundling() && starts_bundle(head))
       cb->flush_bundle(true);
 
-    // Define the label at the beginning of the basic block
-    if (labels_not_set) {
-      MacroAssembler(cb).bind(blk_labels[b->_pre_order]);
-    } else {
-      assert(blk_labels[b->_pre_order].loc_pos() == cb->insts_size(),
-             err_msg("label position does not match code offset: %d != %d",
-                     blk_labels[b->_pre_order].loc_pos(), cb->insts_size()));
+#ifdef ASSERT
+    if (!b->is_connector()) {
+      stringStream st;
+      b->dump_head(&_cfg->_bbs, &st);
+      MacroAssembler(cb).block_comment(st.as_string());
     }
+    jmp_target[i] = 0;
+    jmp_offset[i] = 0;
+    jmp_size[i]   = 0;
+    jmp_rule[i]   = 0;
+
+    // Maximum alignment padding for loop block was used
+    // during first round of branches shortening, as result
+    // padding for nodes (sfpt after call) was not added.
+    // Take this into account for block's size change check
+    // and allow increase block's size by the difference
+    // of maximum and actual alignment paddings.
+    int orig_blk_size = blk_starts[i+1] - blk_starts[i] + block_alignment_padding;
+#endif
+    int blk_offset = current_offset;
+
+    // Define the label at the beginning of the basic block
+    MacroAssembler(cb).bind(blk_labels[b->_pre_order]);
 
     uint last_inst = b->_nodes.size();
 
     // Emit block normally, except for last instruction.
     // Emit means "dump code bits into code buffer".
-    for( uint j = 0; j<last_inst; j++ ) {
+    for (uint j = 0; j<last_inst; j++) {
 
       // Get the node
       Node* n = b->_nodes[j];
@@ -1244,7 +1286,7 @@
 
       // If this starts a new instruction group, then flush the current one
       // (but allow split bundles)
-      if( Pipeline::requires_bundling() && starts_bundle(n) )
+      if (Pipeline::requires_bundling() && starts_bundle(n))
         cb->flush_bundle(false);
 
       // The following logic is duplicated in the code ifdeffed for
@@ -1253,25 +1295,32 @@
 
       // Special handling for SafePoint/Call Nodes
       bool is_mcall = false;
-      if( n->is_Mach() ) {
+      if (n->is_Mach()) {
         MachNode *mach = n->as_Mach();
         is_mcall = n->is_MachCall();
         bool is_sfn = n->is_MachSafePoint();
 
         // If this requires all previous instructions be flushed, then do so
-        if( is_sfn || is_mcall || mach->alignment_required() != 1) {
+        if (is_sfn || is_mcall || mach->alignment_required() != 1) {
           cb->flush_bundle(true);
           current_offset = cb->insts_size();
         }
 
+        // A padding may be needed again since a previous instruction
+        // could be moved to delay slot.
+
         // align the instruction if necessary
         int padding = mach->compute_padding(current_offset);
         // Make sure safepoint node for polling is distinct from a call's
         // return by adding a nop if needed.
-        if (is_sfn && !is_mcall && padding == 0 && current_offset == last_call_offset ) {
+        if (is_sfn && !is_mcall && padding == 0 && current_offset == last_call_offset) {
           padding = nop_size;
         }
-        assert( labels_not_set || padding == 0, "instruction should already be aligned");
+        if (padding == 0 && mach->avoid_back_to_back() &&
+            current_offset == last_avoid_back_to_back_offset) {
+          // Avoid back to back some instructions.
+          padding = nop_size;
+        }
 
         if(padding > 0) {
           assert((padding % nop_size) == 0, "padding is not a multiple of NOP size");
@@ -1295,20 +1344,20 @@
           // Save the return address
           call_returns[b->_pre_order] = current_offset + mcall->ret_addr_offset();
 
-          if (!mcall->is_safepoint_node()) {
+          if (mcall->is_MachCallLeaf()) {
             is_mcall = false;
             is_sfn = false;
           }
         }
 
         // sfn will be valid whenever mcall is valid now because of inheritance
-        if( is_sfn || is_mcall ) {
+        if (is_sfn || is_mcall) {
 
           // Handle special safepoint nodes for synchronization
-          if( !is_mcall ) {
+          if (!is_mcall) {
             MachSafePointNode *sfn = mach->as_MachSafePoint();
             // !!!!! Stubs only need an oopmap right now, so bail out
-            if( sfn->jvms()->method() == NULL) {
+            if (sfn->jvms()->method() == NULL) {
               // Write the oopmap directly to the code blob??!!
 #             ifdef ENABLE_ZAP_DEAD_LOCALS
               assert( !is_node_getting_a_safepoint(sfn),  "logic does not match; false positive");
@@ -1328,31 +1377,78 @@
         }
 
         // If this is a branch, then fill in the label with the target BB's label
-        else if ( mach->is_Branch() ) {
+        else if (mach->is_MachBranch()) {
+          // This requires the TRUE branch target be in succs[0]
+          uint block_num = b->non_connector_successor(0)->_pre_order;
 
-          if ( mach->ideal_Opcode() == Op_Jump ) {
-            for (uint h = 0; h < b->_num_succs; h++ ) {
-              Block* succs_block = b->_succs[h];
-              for (uint j = 1; j < succs_block->num_preds(); j++) {
-                Node* jpn = succs_block->pred(j);
-                if ( jpn->is_JumpProj() && jpn->in(0) == mach ) {
-                  uint block_num = succs_block->non_connector()->_pre_order;
-                  Label *blkLabel = &blk_labels[block_num];
-                  mach->add_case_label(jpn->as_JumpProj()->proj_no(), blkLabel);
-                }
+          // Try to replace long branch if delay slot is not used,
+          // it is mostly for back branches since forward branch's
+          // distance is not updated yet.
+          bool delay_slot_is_used = valid_bundle_info(n) &&
+                                    node_bundling(n)->use_unconditional_delay();
+          if (!delay_slot_is_used && mach->may_be_short_branch()) {
+           assert(delay_slot == NULL, "not expecting delay slot node");
+           int br_size = n->size(_regalloc);
+            int offset = blk_starts[block_num] - current_offset;
+            if (block_num >= i) {
+              // Current and following block's offset are not
+              // finilized yet, adjust distance by the difference
+              // between calculated and final offsets of current block.
+              offset -= (blk_starts[i] - blk_offset);
+            }
+            // In the following code a nop could be inserted before
+            // the branch which will increase the backward distance.
+            bool needs_padding = (current_offset == last_avoid_back_to_back_offset);
+            if (needs_padding && offset <= 0)
+              offset -= nop_size;
+
+            if (_matcher->is_short_branch_offset(mach->rule(), br_size, offset)) {
+              // We've got a winner.  Replace this branch.
+              MachNode* replacement = mach->as_MachBranch()->short_branch_version(this);
+
+              // Update the jmp_size.
+              int new_size = replacement->size(_regalloc);
+              assert((br_size - new_size) >= (int)nop_size, "short_branch size should be smaller");
+              // Insert padding between avoid_back_to_back branches.
+              if (needs_padding && replacement->avoid_back_to_back()) {
+                MachNode *nop = new (this) MachNopNode();
+                b->_nodes.insert(j++, nop);
+                _cfg->_bbs.map(nop->_idx, b);
+                last_inst++;
+                nop->emit(*cb, _regalloc);
+                cb->flush_bundle(true);
+                current_offset = cb->insts_size();
+              }
+#ifdef ASSERT
+              jmp_target[i] = block_num;
+              jmp_offset[i] = current_offset - blk_offset;
+              jmp_size[i]   = new_size;
+              jmp_rule[i]   = mach->rule();
+#endif
+              b->_nodes.map(j, replacement);
+              mach->subsume_by(replacement);
+              n    = replacement;
+              mach = replacement;
+            }
+          }
+          mach->as_MachBranch()->label_set( &blk_labels[block_num], block_num );
+        } else if (mach->ideal_Opcode() == Op_Jump) {
+          for (uint h = 0; h < b->_num_succs; h++) {
+            Block* succs_block = b->_succs[h];
+            for (uint j = 1; j < succs_block->num_preds(); j++) {
+              Node* jpn = succs_block->pred(j);
+              if (jpn->is_JumpProj() && jpn->in(0) == mach) {
+                uint block_num = succs_block->non_connector()->_pre_order;
+                Label *blkLabel = &blk_labels[block_num];
+                mach->add_case_label(jpn->as_JumpProj()->proj_no(), blkLabel);
               }
             }
-          } else {
-            // For Branchs
-            // This requires the TRUE branch target be in succs[0]
-            uint block_num = b->non_connector_successor(0)->_pre_order;
-            mach->label_set( blk_labels[block_num], block_num );
           }
         }
 
 #ifdef ASSERT
         // Check that oop-store precedes the card-mark
-        else if( mach->ideal_Opcode() == Op_StoreCM ) {
+        else if (mach->ideal_Opcode() == Op_StoreCM) {
           uint storeCM_idx = j;
           int count = 0;
           for (uint prec = mach->req(); prec < mach->len(); prec++) {
@@ -1371,7 +1467,7 @@
         }
 #endif
 
-        else if( !n->is_Proj() ) {
+        else if (!n->is_Proj()) {
           // Remember the beginning of the previous instruction, in case
           // it's followed by a flag-kill and a null-check.  Happens on
           // Intel all the time, with add-to-memory kind of opcodes.
@@ -1388,13 +1484,21 @@
 
       // Save the offset for the listing
 #ifndef PRODUCT
-      if( node_offsets && n->_idx < node_offset_limit )
+      if (node_offsets && n->_idx < node_offset_limit)
         node_offsets[n->_idx] = cb->insts_size();
 #endif
 
       // "Normal" instruction case
+      DEBUG_ONLY( uint instr_offset = cb->insts_size(); )
       n->emit(*cb, _regalloc);
       current_offset  = cb->insts_size();
+
+#ifdef ASSERT
+      if (n->size(_regalloc) < (current_offset-instr_offset)) {
+        n->dump();
+        assert(false, "wrong size of mach node");
+      }
+#endif
       non_safepoints.observe_instruction(n, current_offset);
 
       // mcall is last "call" that can be a safepoint
@@ -1408,8 +1512,13 @@
         last_call_offset = current_offset;
       }
 
+      if (n->is_Mach() && n->as_Mach()->avoid_back_to_back()) {
+        // Avoid back to back some instructions.
+        last_avoid_back_to_back_offset = current_offset;
+      }
+
       // See if this instruction has a delay slot
-      if ( valid_bundle_info(n) && node_bundling(n)->use_unconditional_delay()) {
+      if (valid_bundle_info(n) && node_bundling(n)->use_unconditional_delay()) {
         assert(delay_slot != NULL, "expecting delay slot node");
 
         // Back up 1 instruction
@@ -1417,15 +1526,15 @@
 
         // Save the offset for the listing
 #ifndef PRODUCT
-        if( node_offsets && delay_slot->_idx < node_offset_limit )
+        if (node_offsets && delay_slot->_idx < node_offset_limit)
           node_offsets[delay_slot->_idx] = cb->insts_size();
 #endif
 
         // Support a SafePoint in the delay slot
-        if( delay_slot->is_MachSafePoint() ) {
+        if (delay_slot->is_MachSafePoint()) {
           MachNode *mach = delay_slot->as_Mach();
           // !!!!! Stubs only need an oopmap right now, so bail out
-          if( !mach->is_MachCall() && mach->as_MachSafePoint()->jvms()->method() == NULL ) {
+          if (!mach->is_MachCall() && mach->as_MachSafePoint()->jvms()->method() == NULL) {
             // Write the oopmap directly to the code blob??!!
 #           ifdef ENABLE_ZAP_DEAD_LOCALS
             assert( !is_node_getting_a_safepoint(mach),  "logic does not match; false positive");
@@ -1449,12 +1558,14 @@
       }
 
     } // End for all instructions in block
+    assert((uint)blk_offset <= blk_starts[i], "shouldn't increase distance");
+    blk_starts[i] = blk_offset;
 
     // If the next block is the top of a loop, pad this block out to align
     // the loop top a little. Helps prevent pipe stalls at loop back branches.
-    if( i<_cfg->_num_blocks-1 ) {
+    if (i < nblocks-1) {
       Block *nb = _cfg->_blocks[i+1];
-      uint padding = nb->alignment_padding(current_offset);
+      int padding = nb->alignment_padding(current_offset);
       if( padding > 0 ) {
         MachNode *nop = new (this) MachNopNode(padding / nop_size);
         b->_nodes.insert( b->_nodes.size(), nop );
@@ -1462,9 +1573,18 @@
         nop->emit(*cb, _regalloc);
         current_offset = cb->insts_size();
       }
+#ifdef ASSERT
+      int max_loop_pad = nb->code_alignment()-relocInfo::addr_unit();
+      block_alignment_padding = (max_loop_pad - padding);
+      assert(block_alignment_padding >= 0, "sanity");
+#endif
     }
+    // Verify that the distance for generated before forward
+    // short branches is still valid.
+    assert(orig_blk_size >= (current_offset - blk_offset), "shouldn't increase block size");
 
   } // End of for all blocks
+  blk_starts[nblocks] = current_offset;
 
   non_safepoints.flush_at_end();
 
@@ -1472,13 +1592,26 @@
   if (failing())  return;
 
   // Define a pseudo-label at the end of the code
-  MacroAssembler(cb).bind( blk_labels[_cfg->_num_blocks] );
+  MacroAssembler(cb).bind( blk_labels[nblocks] );
 
   // Compute the size of the first block
   _first_block_size = blk_labels[1].loc_pos() - blk_labels[0].loc_pos();
 
   assert(cb->insts_size() < 500000, "method is unreasonably large");
 
+#ifdef ASSERT
+  for (uint i = 0; i < nblocks; i++) { // For all blocks
+    if (jmp_target[i] != 0) {
+      int br_size = jmp_size[i];
+      int offset = blk_starts[jmp_target[i]]-(blk_starts[i] + jmp_offset[i]);
+      if (!_matcher->is_short_branch_offset(jmp_rule[i], br_size, offset)) {
+        tty->print_cr("target (%d) - jmp_offset(%d) = offset (%d), jump_size(%d), jmp_block B%d, target_block B%d", blk_starts[jmp_target[i]], blk_starts[i] + jmp_offset[i], offset, br_size, i, jmp_target[i]);
+        assert(false, "Displacement too large for short jmp");
+      }
+    }
+  }
+#endif
+
   // ------------------
 
 #ifndef PRODUCT
@@ -1565,8 +1698,8 @@
       uint call_return = call_returns[b->_pre_order];
 #ifdef ASSERT
       assert( call_return > 0, "no call seen for this basic block" );
-      while( b->_nodes[--j]->Opcode() == Op_MachProj ) ;
-      assert( b->_nodes[j]->is_Call(), "CatchProj must follow call" );
+      while( b->_nodes[--j]->is_MachProj() ) ;
+      assert( b->_nodes[j]->is_MachCall(), "CatchProj must follow call" );
 #endif
       // last instruction is a CatchNode, find it's CatchProjNodes
       int nof_succs = b->_num_succs;
@@ -1743,11 +1876,6 @@
   // Create a data structure for all the scheduling information
   Scheduling scheduling(Thread::current()->resource_area(), *this);
 
-  // Initialize the space for the BufferBlob used to find and verify
-  // instruction size in MachNode::emit_size()
-  init_scratch_buffer_blob(MAX_const_size);
-  if (failing())  return;  // Out of memory
-
   // Walk backwards over each basic block, computing the needed alignment
   // Walk over all the basic blocks
   scheduling.DoScheduling();
@@ -2028,7 +2156,7 @@
     // the first instruction at the branch target is
     // copied to the delay slot, and the branch goes to
     // the instruction after that at the branch target
-    if ( n->is_Mach() && n->is_Branch() ) {
+    if ( n->is_MachBranch() ) {
 
       assert( !n->is_MachNullCheck(), "should not look for delay slot for Null Check" );
       assert( !n->is_Catch(),         "should not look for delay slot for Catch" );
@@ -2346,12 +2474,18 @@
     // have their delay slots filled in the template expansions, so we don't
     // bother scheduling them.
     Node *last = bb->_nodes[_bb_end];
+    // Ignore trailing NOPs.
+    while (_bb_end > 0 && last->is_Mach() &&
+           last->as_Mach()->ideal_Opcode() == Op_Con) {
+      last = bb->_nodes[--_bb_end];
+    }
+    assert(!last->is_Mach() || last->as_Mach()->ideal_Opcode() != Op_Con, "");
     if( last->is_Catch() ||
        // Exclude unreachable path case when Halt node is in a separate block.
        (_bb_end > 1 && last->is_Mach() && last->as_Mach()->ideal_Opcode() == Op_Halt) ) {
       // There must be a prior call.  Skip it.
-      while( !bb->_nodes[--_bb_end]->is_Call() ) {
-        assert( bb->_nodes[_bb_end]->is_Proj(), "skipping projections after expected call" );
+      while( !bb->_nodes[--_bb_end]->is_MachCall() ) {
+        assert( bb->_nodes[_bb_end]->is_MachProj(), "skipping projections after expected call" );
       }
     } else if( last->is_MachNullCheck() ) {
       // Backup so the last null-checked memory instruction is
@@ -2663,7 +2797,7 @@
   for( uint i = _bb_end-1; i >= _bb_start; i-- ) {
     Node *n = b->_nodes[i];
     int is_def = n->outcnt();   // def if some uses prior to adding precedence edges
-    if( n->Opcode() == Op_MachProj && n->ideal_reg() == MachProjNode::fat_proj ) {
+    if( n->is_MachProj() && n->ideal_reg() == MachProjNode::fat_proj ) {
       // Fat-proj kills a slew of registers
       // This can add edges to 'n' and obscure whether or not it was a def,
       // hence the is_def flag.
@@ -2680,12 +2814,29 @@
       anti_do_def( b, n, _regalloc->get_reg_second(n), is_def );
     }
 
+    // Kill projections on a branch should appear to occur on the
+    // branch, not afterwards, so grab the masks from the projections
+    // and process them.
+    if (n->is_MachBranch() || n->is_Mach() && n->as_Mach()->ideal_Opcode() == Op_Jump) {
+      for (DUIterator_Fast imax, i = n->fast_outs(imax); i < imax; i++) {
+        Node* use = n->fast_out(i);
+        if (use->is_Proj()) {
+          RegMask rm = use->out_RegMask();// Make local copy
+          while( rm.is_NotEmpty() ) {
+            OptoReg::Name kill = rm.find_first_elem();
+            rm.Remove(kill);
+            anti_do_def( b, n, kill, false );
+          }
+        }
+      }
+    }
+
     // Check each register used by this instruction for a following DEF/KILL
     // that must occur afterward and requires an anti-dependence edge.
     for( uint j=0; j<n->req(); j++ ) {
       Node *def = n->in(j);
       if( def ) {
-        assert( def->Opcode() != Op_MachProj || def->ideal_reg() != MachProjNode::fat_proj, "" );
+        assert( !def->is_MachProj() || def->ideal_reg() != MachProjNode::fat_proj, "" );
         anti_do_use( b, n, _regalloc->get_reg_first(def) );
         anti_do_use( b, n, _regalloc->get_reg_second(def) );
       }
diff --git a/hotspot/src/share/vm/opto/parse3.cpp b/hotspot/src/share/vm/opto/parse3.cpp
index e1a319f..1f0335c 100644
--- a/hotspot/src/share/vm/opto/parse3.cpp
+++ b/hotspot/src/share/vm/opto/parse3.cpp
@@ -100,6 +100,14 @@
     }
   }
 
+  // Deoptimize on putfield writes to CallSite.target
+  if (!is_get && field->is_call_site_target()) {
+    uncommon_trap(Deoptimization::Reason_unhandled,
+                  Deoptimization::Action_reinterpret,
+                  NULL, "put to CallSite.target field");
+    return;
+  }
+
   assert(field->will_link(method()->holder(), bc()), "getfield: typeflow responsibility");
 
   // Note:  We do not check for an unloaded field type here any more.
diff --git a/hotspot/src/share/vm/opto/phaseX.hpp b/hotspot/src/share/vm/opto/phaseX.hpp
index 8f82d74..162716d 100644
--- a/hotspot/src/share/vm/opto/phaseX.hpp
+++ b/hotspot/src/share/vm/opto/phaseX.hpp
@@ -473,7 +473,6 @@
 
   // Clone loop predicates. Defined in loopTransform.cpp.
   Node* clone_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check);
-  Node*  move_loop_predicates(Node* old_entry, Node* new_entry, bool clone_limit_check);
   // Create a new if below new_entry for the predicate to be cloned
   ProjNode* create_new_if_for_predicate(ProjNode* cont_proj, Node* new_entry,
                                         Deoptimization::DeoptReason reason);
diff --git a/hotspot/src/share/vm/opto/reg_split.cpp b/hotspot/src/share/vm/opto/reg_split.cpp
index 537961f..63a11fe 100644
--- a/hotspot/src/share/vm/opto/reg_split.cpp
+++ b/hotspot/src/share/vm/opto/reg_split.cpp
@@ -984,7 +984,7 @@
               continue;
             }
 
-            if (UseFPUForSpilling && n->is_Call() && !uup && !dup ) {
+            if (UseFPUForSpilling && n->is_MachCall() && !uup && !dup ) {
               // The use at the call can force the def down so insert
               // a split before the use to allow the def more freedom.
               maxlrg = split_USE(def,b,n,inpidx,maxlrg,dup,false, splits,slidx);
diff --git a/hotspot/src/share/vm/opto/superword.cpp b/hotspot/src/share/vm/opto/superword.cpp
index 6e1be24..d1d1e1c 100644
--- a/hotspot/src/share/vm/opto/superword.cpp
+++ b/hotspot/src/share/vm/opto/superword.cpp
@@ -70,6 +70,8 @@
   assert(lpt->_head->is_CountedLoop(), "must be");
   CountedLoopNode *cl = lpt->_head->as_CountedLoop();
 
+  if (!cl->is_valid_counted_loop()) return; // skip malformed counted loop
+
   if (!cl->is_main_loop() ) return; // skip normal, pre, and post loops
 
   // Check for no control flow in body (other than exit)
@@ -1167,7 +1169,7 @@
 
       } else if (n->is_Store()) {
         // Promote value to be stored to vector
-        VectorNode* val = vector_opd(p, MemNode::ValueIn);
+        Node* val = vector_opd(p, MemNode::ValueIn);
 
         int   opc = n->Opcode();
         Node* ctl = n->in(MemNode::Control);
@@ -1199,7 +1201,7 @@
 
 //------------------------------vector_opd---------------------------
 // Create a vector operand for the nodes in pack p for operand: in(opd_idx)
-VectorNode* SuperWord::vector_opd(Node_List* p, int opd_idx) {
+Node* SuperWord::vector_opd(Node_List* p, int opd_idx) {
   Node* p0 = p->at(0);
   uint vlen = p->size();
   Node* opd = p0->in(opd_idx);
@@ -1215,9 +1217,10 @@
   }
 
   if (same_opd) {
-    if (opd->is_Vector()) {
-      return (VectorNode*)opd; // input is matching vector
+    if (opd->is_Vector() || opd->is_VectorLoad()) {
+      return opd; // input is matching vector
     }
+    assert(!opd->is_VectorStore(), "such vector is not expected here");
     // Convert scalar input to vector. Use p0's type because it's container
     // maybe smaller than the operand's container.
     const Type* opd_t = velt_type(!in_bb(opd) ? p0 : opd);
diff --git a/hotspot/src/share/vm/opto/superword.hpp b/hotspot/src/share/vm/opto/superword.hpp
index 50ab3d4..5093767 100644
--- a/hotspot/src/share/vm/opto/superword.hpp
+++ b/hotspot/src/share/vm/opto/superword.hpp
@@ -360,7 +360,7 @@
   // Convert packs into vector node operations
   void output();
   // Create a vector operand for the nodes in pack p for operand: in(opd_idx)
-  VectorNode* vector_opd(Node_List* p, int opd_idx);
+  Node* vector_opd(Node_List* p, int opd_idx);
   // Can code be generated for pack p?
   bool implemented(Node_List* p);
   // For pack p, are all operands and all uses (with in the block) vector?
diff --git a/hotspot/src/share/vm/opto/vectornode.cpp b/hotspot/src/share/vm/opto/vectornode.cpp
index 4d72b73..885a1c8 100644
--- a/hotspot/src/share/vm/opto/vectornode.cpp
+++ b/hotspot/src/share/vm/opto/vectornode.cpp
@@ -426,7 +426,7 @@
 
 // Return the vector version of a scalar store node.
 VectorStoreNode* VectorStoreNode::make(Compile* C, int opc, Node* ctl, Node* mem,
-                                       Node* adr, const TypePtr* atyp, VectorNode* val,
+                                       Node* adr, const TypePtr* atyp, Node* val,
                                        uint vlen) {
   int vopc = opcode(opc, vlen);
 
diff --git a/hotspot/src/share/vm/opto/vectornode.hpp b/hotspot/src/share/vm/opto/vectornode.hpp
index 4d28703..7d1905c 100644
--- a/hotspot/src/share/vm/opto/vectornode.hpp
+++ b/hotspot/src/share/vm/opto/vectornode.hpp
@@ -47,10 +47,10 @@
   friend class VectorStoreNode; // ditto.
 
   VectorNode(Node* n1, uint vlen) : Node(NULL, n1), _length(vlen) {
-    init_flags(Flag_is_Vector);
+    init_class_id(Class_Vector);
   }
   VectorNode(Node* n1, Node* n2, uint vlen) : Node(NULL, n1, n2), _length(vlen) {
-    init_flags(Flag_is_Vector);
+    init_class_id(Class_Vector);
   }
   virtual int Opcode() const;
 
@@ -389,7 +389,7 @@
  public:
   VectorLoadNode(Node* c, Node* mem, Node* adr, const TypePtr* at, const Type *rt)
     : LoadNode(c,mem,adr,at,rt) {
-      init_flags(Flag_is_Vector);
+    init_class_id(Class_VectorLoad);
   }
   virtual int Opcode() const;
 
@@ -617,7 +617,7 @@
  public:
   VectorStoreNode(Node* c, Node* mem, Node* adr, const TypePtr* at, Node* val)
     : StoreNode(c,mem,adr,at,val) {
-      init_flags(Flag_is_Vector);
+    init_class_id(Class_VectorStore);
   }
   virtual int Opcode() const;
 
@@ -635,7 +635,7 @@
   static int opcode(int sopc, uint vlen);
 
   static VectorStoreNode* make(Compile* C, int opc, Node* ctl, Node* mem,
-                               Node* adr, const TypePtr* atyp, VectorNode* val,
+                               Node* adr, const TypePtr* atyp, Node* val,
                                uint vlen);
 };
 
diff --git a/hotspot/src/share/vm/prims/jvmtiTagMap.cpp b/hotspot/src/share/vm/prims/jvmtiTagMap.cpp
index a7caebe..650db65 100644
--- a/hotspot/src/share/vm/prims/jvmtiTagMap.cpp
+++ b/hotspot/src/share/vm/prims/jvmtiTagMap.cpp
@@ -1647,6 +1647,7 @@
   // saved headers
   static GrowableArray<oop>* _saved_oop_stack;
   static GrowableArray<markOop>* _saved_mark_stack;
+  static bool _needs_reset;                  // do we need to reset mark bits?
 
  public:
   static void init();                       // initialize
@@ -1654,10 +1655,14 @@
 
   static inline void mark(oop o);           // mark an object
   static inline bool visited(oop o);        // check if object has been visited
+
+  static inline bool needs_reset()            { return _needs_reset; }
+  static inline void set_needs_reset(bool v)  { _needs_reset = v; }
 };
 
 GrowableArray<oop>* ObjectMarker::_saved_oop_stack = NULL;
 GrowableArray<markOop>* ObjectMarker::_saved_mark_stack = NULL;
+bool ObjectMarker::_needs_reset = true;  // need to reset mark bits by default
 
 // initialize ObjectMarker - prepares for object marking
 void ObjectMarker::init() {
@@ -1680,7 +1685,13 @@
   // iterate over all objects and restore the mark bits to
   // their initial value
   RestoreMarksClosure blk;
-  Universe::heap()->object_iterate(&blk);
+  if (needs_reset()) {
+    Universe::heap()->object_iterate(&blk);
+  } else {
+    // We don't need to reset mark bits on this call, but reset the
+    // flag to the default for the next call.
+    set_needs_reset(true);
+  }
 
   // When sharing is enabled we need to restore the headers of the objects
   // in the readwrite space too.
@@ -3023,7 +3034,8 @@
 }
 
 
-// collects all simple (non-stack) roots.
+// Collects all simple (non-stack) roots except for threads;
+// threads are handled in collect_stack_roots() as an optimization.
 // if there's a heap root callback provided then the callback is
 // invoked for each simple root.
 // if an object reference callback is provided then all simple
@@ -3054,16 +3066,7 @@
     return false;
   }
 
-  // Threads
-  for (JavaThread* thread = Threads::first(); thread != NULL ; thread = thread->next()) {
-    oop threadObj = thread->threadObj();
-    if (threadObj != NULL && !thread->is_exiting() && !thread->is_hidden_from_external_view()) {
-      bool cont = CallbackInvoker::report_simple_root(JVMTI_HEAP_REFERENCE_THREAD, threadObj);
-      if (!cont) {
-        return false;
-      }
-    }
-  }
+  // threads are now handled in collect_stack_roots()
 
   // Other kinds of roots maintained by HotSpot
   // Many of these won't be visible but others (such as instances of important
@@ -3175,13 +3178,20 @@
 }
 
 
-// collects all stack roots - for each thread it walks the execution
+// Collects the simple roots for all threads and collects all
+// stack roots - for each thread it walks the execution
 // stack to find all references and local JNI refs.
 inline bool VM_HeapWalkOperation::collect_stack_roots() {
   JNILocalRootsClosure blk;
   for (JavaThread* thread = Threads::first(); thread != NULL ; thread = thread->next()) {
     oop threadObj = thread->threadObj();
     if (threadObj != NULL && !thread->is_exiting() && !thread->is_hidden_from_external_view()) {
+      // Collect the simple root for this thread before we
+      // collect its stack roots
+      if (!CallbackInvoker::report_simple_root(JVMTI_HEAP_REFERENCE_THREAD,
+                                               threadObj)) {
+        return false;
+      }
       if (!collect_stack_roots(thread, &blk)) {
         return false;
       }
@@ -3235,8 +3245,20 @@
 
   // the heap walk starts with an initial object or the heap roots
   if (initial_object().is_null()) {
-    if (!collect_simple_roots()) return;
+    // If either collect_stack_roots() or collect_simple_roots()
+    // returns false at this point, then there are no mark bits
+    // to reset.
+    ObjectMarker::set_needs_reset(false);
+
+    // Calling collect_stack_roots() before collect_simple_roots()
+    // can result in a big performance boost for an agent that is
+    // focused on analyzing references in the thread stacks.
     if (!collect_stack_roots()) return;
+
+    if (!collect_simple_roots()) return;
+
+    // no early return so enable heap traversal to reset the mark bits
+    ObjectMarker::set_needs_reset(true);
   } else {
     visit_stack()->push(initial_object()());
   }
diff --git a/hotspot/src/share/vm/prims/methodHandles.cpp b/hotspot/src/share/vm/prims/methodHandles.cpp
index 6dc40a3..172e5ef 100644
--- a/hotspot/src/share/vm/prims/methodHandles.cpp
+++ b/hotspot/src/share/vm/prims/methodHandles.cpp
@@ -1016,7 +1016,7 @@
         && CompilationPolicy::can_be_compiled(m)) {
       // Force compilation
       CompileBroker::compile_method(m, InvocationEntryBci,
-                                    CompLevel_initial_compile,
+                                    CompilationPolicy::policy()->initial_compile_level(),
                                     methodHandle(), 0, "MethodHandleNatives.getTarget",
                                     CHECK_NULL);
     }
@@ -2713,7 +2713,7 @@
         && CompilationPolicy::can_be_compiled(m)) {
       // Force compilation
       CompileBroker::compile_method(m, InvocationEntryBci,
-                                    CompLevel_initial_compile,
+                                    CompilationPolicy::policy()->initial_compile_level(),
                                     methodHandle(), 0, "StressMethodHandleWalk",
                                     CHECK);
     }
diff --git a/hotspot/src/share/vm/runtime/advancedThresholdPolicy.cpp b/hotspot/src/share/vm/runtime/advancedThresholdPolicy.cpp
index 550d84d..758bf5c 100644
--- a/hotspot/src/share/vm/runtime/advancedThresholdPolicy.cpp
+++ b/hotspot/src/share/vm/runtime/advancedThresholdPolicy.cpp
@@ -189,7 +189,8 @@
     task = next_task;
   }
 
-  if (max_task->comp_level() == CompLevel_full_profile && is_method_profiled(max_method)) {
+  if (max_task->comp_level() == CompLevel_full_profile && TieredStopAtLevel > CompLevel_full_profile
+      && is_method_profiled(max_method)) {
     max_task->set_comp_level(CompLevel_limited_profile);
     if (PrintTieredEvents) {
       print_event(UPDATE_IN_QUEUE, max_method, max_method, max_task->osr_bci(), (CompLevel)max_task->comp_level());
@@ -321,77 +322,79 @@
  */
 
 // Common transition function. Given a predicate determines if a method should transition to another level.
-CompLevel AdvancedThresholdPolicy::common(Predicate p, methodOop method, CompLevel cur_level) {
-  if (is_trivial(method)) return CompLevel_simple;
-
+CompLevel AdvancedThresholdPolicy::common(Predicate p, methodOop method, CompLevel cur_level, bool disable_feedback) {
   CompLevel next_level = cur_level;
   int i = method->invocation_count();
   int b = method->backedge_count();
 
-  switch(cur_level) {
-  case CompLevel_none:
-    // If we were at full profile level, would we switch to full opt?
-    if (common(p, method, CompLevel_full_profile) == CompLevel_full_optimization) {
-      next_level = CompLevel_full_optimization;
-    } else if ((this->*p)(i, b, cur_level)) {
-      // C1-generated fully profiled code is about 30% slower than the limited profile
-      // code that has only invocation and backedge counters. The observation is that
-      // if C2 queue is large enough we can spend too much time in the fully profiled code
-      // while waiting for C2 to pick the method from the queue. To alleviate this problem
-      // we introduce a feedback on the C2 queue size. If the C2 queue is sufficiently long
-      // we choose to compile a limited profiled version and then recompile with full profiling
-      // when the load on C2 goes down.
-      if (CompileBroker::queue_size(CompLevel_full_optimization) >
-          Tier3DelayOn * compiler_count(CompLevel_full_optimization)) {
-        next_level = CompLevel_limited_profile;
-      } else {
-        next_level = CompLevel_full_profile;
-      }
-    }
-    break;
-  case CompLevel_limited_profile:
-    if (is_method_profiled(method)) {
-      // Special case: we got here because this method was fully profiled in the interpreter.
-      next_level = CompLevel_full_optimization;
-    } else {
-      methodDataOop mdo = method->method_data();
-      if (mdo != NULL) {
-        if (mdo->would_profile()) {
-          if (CompileBroker::queue_size(CompLevel_full_optimization) <=
-              Tier3DelayOff * compiler_count(CompLevel_full_optimization) &&
-              (this->*p)(i, b, cur_level)) {
-            next_level = CompLevel_full_profile;
-          }
+  if (is_trivial(method)) {
+    next_level = CompLevel_simple;
+  } else {
+    switch(cur_level) {
+    case CompLevel_none:
+      // If we were at full profile level, would we switch to full opt?
+      if (common(p, method, CompLevel_full_profile, disable_feedback) == CompLevel_full_optimization) {
+        next_level = CompLevel_full_optimization;
+      } else if ((this->*p)(i, b, cur_level)) {
+        // C1-generated fully profiled code is about 30% slower than the limited profile
+        // code that has only invocation and backedge counters. The observation is that
+        // if C2 queue is large enough we can spend too much time in the fully profiled code
+        // while waiting for C2 to pick the method from the queue. To alleviate this problem
+        // we introduce a feedback on the C2 queue size. If the C2 queue is sufficiently long
+        // we choose to compile a limited profiled version and then recompile with full profiling
+        // when the load on C2 goes down.
+        if (!disable_feedback && CompileBroker::queue_size(CompLevel_full_optimization) >
+                                 Tier3DelayOn * compiler_count(CompLevel_full_optimization)) {
+          next_level = CompLevel_limited_profile;
         } else {
-          next_level = CompLevel_full_optimization;
+          next_level = CompLevel_full_profile;
         }
       }
-    }
-    break;
-  case CompLevel_full_profile:
-    {
-      methodDataOop mdo = method->method_data();
-      if (mdo != NULL) {
-        if (mdo->would_profile()) {
-          int mdo_i = mdo->invocation_count_delta();
-          int mdo_b = mdo->backedge_count_delta();
-          if ((this->*p)(mdo_i, mdo_b, cur_level)) {
+      break;
+    case CompLevel_limited_profile:
+      if (is_method_profiled(method)) {
+        // Special case: we got here because this method was fully profiled in the interpreter.
+        next_level = CompLevel_full_optimization;
+      } else {
+        methodDataOop mdo = method->method_data();
+        if (mdo != NULL) {
+          if (mdo->would_profile()) {
+            if (disable_feedback || (CompileBroker::queue_size(CompLevel_full_optimization) <=
+                                     Tier3DelayOff * compiler_count(CompLevel_full_optimization) &&
+                                     (this->*p)(i, b, cur_level))) {
+              next_level = CompLevel_full_profile;
+            }
+          } else {
             next_level = CompLevel_full_optimization;
           }
-        } else {
-          next_level = CompLevel_full_optimization;
         }
       }
+      break;
+    case CompLevel_full_profile:
+      {
+        methodDataOop mdo = method->method_data();
+        if (mdo != NULL) {
+          if (mdo->would_profile()) {
+            int mdo_i = mdo->invocation_count_delta();
+            int mdo_b = mdo->backedge_count_delta();
+            if ((this->*p)(mdo_i, mdo_b, cur_level)) {
+              next_level = CompLevel_full_optimization;
+            }
+          } else {
+            next_level = CompLevel_full_optimization;
+          }
+        }
+      }
+      break;
     }
-    break;
   }
-  return next_level;
+  return MIN2(next_level, (CompLevel)TieredStopAtLevel);
 }
 
 // Determine if a method should be compiled with a normal entry point at a different level.
 CompLevel AdvancedThresholdPolicy::call_event(methodOop method, CompLevel cur_level) {
   CompLevel osr_level = MIN2((CompLevel) method->highest_osr_comp_level(),
-                             common(&AdvancedThresholdPolicy::loop_predicate, method, cur_level));
+                             common(&AdvancedThresholdPolicy::loop_predicate, method, cur_level, true));
   CompLevel next_level = common(&AdvancedThresholdPolicy::call_predicate, method, cur_level);
 
   // If OSR method level is greater than the regular method level, the levels should be
@@ -406,13 +409,12 @@
   } else {
     next_level = MAX2(osr_level, next_level);
   }
-
   return next_level;
 }
 
 // Determine if we should do an OSR compilation of a given method.
 CompLevel AdvancedThresholdPolicy::loop_event(methodOop method, CompLevel cur_level) {
-  CompLevel next_level = common(&AdvancedThresholdPolicy::loop_predicate, method, cur_level);
+  CompLevel next_level = common(&AdvancedThresholdPolicy::loop_predicate, method, cur_level, true);
   if (cur_level == CompLevel_none) {
     // If there is a live OSR method that means that we deopted to the interpreter
     // for the transition.
@@ -460,22 +462,9 @@
   if (is_compilation_enabled()) {
     CompLevel next_osr_level = loop_event(imh(), level);
     CompLevel max_osr_level = (CompLevel)imh->highest_osr_comp_level();
-    if (next_osr_level  == CompLevel_limited_profile) {
-      next_osr_level = CompLevel_full_profile; // OSRs are supposed to be for very hot methods.
-    }
-
     // At the very least compile the OSR version
-    if (!CompileBroker::compilation_is_in_queue(imh, bci)) {
-      // Check if there's a method like that already
-      nmethod* osr_nm = NULL;
-      if (max_osr_level >= next_osr_level) {
-        // There is an osr method already with the same
-        // or greater level, check if it has the bci we need
-        osr_nm = imh->lookup_osr_nmethod_for(bci, next_osr_level, false);
-      }
-      if (osr_nm == NULL) {
-        compile(imh, bci, next_osr_level, THREAD);
-      }
+    if (!CompileBroker::compilation_is_in_queue(imh, bci) && next_osr_level != level) {
+      compile(imh, bci, next_osr_level, THREAD);
     }
 
     // Use loop event as an opportunity to also check if there's been
diff --git a/hotspot/src/share/vm/runtime/advancedThresholdPolicy.hpp b/hotspot/src/share/vm/runtime/advancedThresholdPolicy.hpp
index 7f000b9..58be8b2 100644
--- a/hotspot/src/share/vm/runtime/advancedThresholdPolicy.hpp
+++ b/hotspot/src/share/vm/runtime/advancedThresholdPolicy.hpp
@@ -168,7 +168,7 @@
   bool call_predicate(int i, int b, CompLevel cur_level);
   bool loop_predicate(int i, int b, CompLevel cur_level);
   // Common transition function. Given a predicate determines if a method should transition to another level.
-  CompLevel common(Predicate p, methodOop method, CompLevel cur_level);
+  CompLevel common(Predicate p, methodOop method, CompLevel cur_level, bool disable_feedback = false);
   // Transition functions.
   // call_event determines if a method should be compiled at a different
   // level with a regular invocation entry.
diff --git a/hotspot/src/share/vm/runtime/compilationPolicy.hpp b/hotspot/src/share/vm/runtime/compilationPolicy.hpp
index 6282688..b9d7066 100644
--- a/hotspot/src/share/vm/runtime/compilationPolicy.hpp
+++ b/hotspot/src/share/vm/runtime/compilationPolicy.hpp
@@ -59,6 +59,8 @@
   // Profiling
   elapsedTimer* accumulated_time() { return &_accumulated_time; }
   void print_time() PRODUCT_RETURN;
+  // Return initial compile level that is used with Xcomp
+  virtual CompLevel initial_compile_level() = 0;
   virtual int compiler_count(CompLevel comp_level) = 0;
   // main notification entry, return a pointer to an nmethod if the OSR is required,
   // returns NULL otherwise.
@@ -94,6 +96,7 @@
   void reset_counter_for_back_branch_event(methodHandle method);
 public:
   NonTieredCompPolicy() : _compiler_count(0) { }
+  virtual CompLevel initial_compile_level() { return CompLevel_initial_compile; }
   virtual int compiler_count(CompLevel comp_level);
   virtual void do_safepoint_work();
   virtual void reprofile(ScopeDesc* trap_scope, bool is_osr);
diff --git a/hotspot/src/share/vm/runtime/globals.hpp b/hotspot/src/share/vm/runtime/globals.hpp
index 9c2a081..e044933 100644
--- a/hotspot/src/share/vm/runtime/globals.hpp
+++ b/hotspot/src/share/vm/runtime/globals.hpp
@@ -1205,6 +1205,9 @@
   product(bool, UseUnalignedLoadStores, false,                              \
           "Use SSE2 MOVDQU instruction for Arraycopy")                      \
                                                                             \
+  product(bool, UseCBCond, false,                                           \
+          "Use compare and branch instruction on SPARC")                    \
+                                                                            \
   product(intx, FieldsAllocationStyle, 1,                                   \
           "0 - type based with oops first, 1 - with oops last, "            \
           "2 - oops in super and sub classes are together")                 \
@@ -2894,8 +2897,11 @@
   product(intx,  AllocatePrefetchDistance, -1,                              \
           "Distance to prefetch ahead of allocation pointer")               \
                                                                             \
-  product(intx,  AllocatePrefetchLines, 1,                                  \
-          "Number of lines to prefetch ahead of allocation pointer")        \
+  product(intx,  AllocatePrefetchLines, 3,                                  \
+          "Number of lines to prefetch ahead of array allocation pointer")  \
+                                                                            \
+  product(intx,  AllocateInstancePrefetchLines, 1,                          \
+          "Number of lines to prefetch ahead of instance allocation pointer") \
                                                                             \
   product(intx,  AllocatePrefetchStepSize, 16,                              \
           "Step size in bytes of sequential prefetch instructions")         \
diff --git a/hotspot/src/share/vm/runtime/java.cpp b/hotspot/src/share/vm/runtime/java.cpp
index 73065fe..fa7c647 100644
--- a/hotspot/src/share/vm/runtime/java.cpp
+++ b/hotspot/src/share/vm/runtime/java.cpp
@@ -243,6 +243,7 @@
     FlagSetting fs(DisplayVMOutput, DisplayVMOutput && PrintC1Statistics);
     Runtime1::print_statistics();
     Deoptimization::print_statistics();
+    SharedRuntime::print_statistics();
     nmethod::print_statistics();
   }
 #endif /* COMPILER1 */
@@ -254,8 +255,8 @@
 #ifndef COMPILER1
     Deoptimization::print_statistics();
     nmethod::print_statistics();
-#endif //COMPILER1
     SharedRuntime::print_statistics();
+#endif //COMPILER1
     os::print_statistics();
   }
 
diff --git a/hotspot/src/share/vm/runtime/javaCalls.cpp b/hotspot/src/share/vm/runtime/javaCalls.cpp
index eca02a4..d422c6c 100644
--- a/hotspot/src/share/vm/runtime/javaCalls.cpp
+++ b/hotspot/src/share/vm/runtime/javaCalls.cpp
@@ -355,7 +355,7 @@
   assert(!thread->is_Compiler_thread(), "cannot compile from the compiler");
   if (CompilationPolicy::must_be_compiled(method)) {
     CompileBroker::compile_method(method, InvocationEntryBci,
-                                  CompLevel_initial_compile,
+                                  CompilationPolicy::policy()->initial_compile_level(),
                                   methodHandle(), 0, "must_be_compiled", CHECK);
   }
 
diff --git a/hotspot/src/share/vm/runtime/os.cpp b/hotspot/src/share/vm/runtime/os.cpp
index 5da1108..40ea175 100644
--- a/hotspot/src/share/vm/runtime/os.cpp
+++ b/hotspot/src/share/vm/runtime/os.cpp
@@ -1232,6 +1232,17 @@
 }
 
 #ifndef PRODUCT
+void os::trace_page_sizes(const char* str, const size_t* page_sizes, int count)
+{
+  if (TracePageSizes) {
+    tty->print("%s: ", str);
+    for (int i = 0; i < count; ++i) {
+      tty->print(" " SIZE_FORMAT, page_sizes[i]);
+    }
+    tty->cr();
+  }
+}
+
 void os::trace_page_sizes(const char* str, const size_t region_min_size,
                           const size_t region_max_size, const size_t page_size,
                           const char* base, const size_t size)
@@ -1299,7 +1310,7 @@
   size_t sz, i = 0;
 
   // read until EOF, EOL or buf is full
-  while ((sz = (int) read(fd, &buf[i], 1)) == 1 && i < (bsize-1) && buf[i] != '\n') {
+  while ((sz = (int) read(fd, &buf[i], 1)) == 1 && i < (bsize-2) && buf[i] != '\n') {
      ++i;
   }
 
@@ -1320,7 +1331,7 @@
   }
 
   // line is longer than size of buf, skip to EOL
-  int ch;
+  char ch;
   while (read(fd, &ch, 1) == 1 && ch != '\n') {
     // Do nothing
   }
diff --git a/hotspot/src/share/vm/runtime/os.hpp b/hotspot/src/share/vm/runtime/os.hpp
index 0b401b1..b43100d 100644
--- a/hotspot/src/share/vm/runtime/os.hpp
+++ b/hotspot/src/share/vm/runtime/os.hpp
@@ -208,11 +208,13 @@
                                      size_t region_max_size,
                                      uint min_pages);
 
-  // Method for tracing page sizes returned by the above method; enabled by
+  // Methods for tracing page sizes returned by the above method; enabled by
   // TracePageSizes.  The region_{min,max}_size parameters should be the values
   // passed to page_size_for_region() and page_size should be the result of that
   // call.  The (optional) base and size parameters should come from the
   // ReservedSpace base() and size() methods.
+  static void trace_page_sizes(const char* str, const size_t* page_sizes,
+                               int count) PRODUCT_RETURN;
   static void trace_page_sizes(const char* str, const size_t region_min_size,
                                const size_t region_max_size,
                                const size_t page_size,
diff --git a/hotspot/src/share/vm/runtime/sharedRuntime.cpp b/hotspot/src/share/vm/runtime/sharedRuntime.cpp
index fb08745..34369e8 100644
--- a/hotspot/src/share/vm/runtime/sharedRuntime.cpp
+++ b/hotspot/src/share/vm/runtime/sharedRuntime.cpp
@@ -2130,9 +2130,9 @@
  public:
   AdapterFingerPrint(int total_args_passed, BasicType* sig_bt) {
     // The fingerprint is based on the BasicType signature encoded
-    // into an array of ints with four entries per int.
+    // into an array of ints with eight entries per int.
     int* ptr;
-    int len = (total_args_passed + 3) >> 2;
+    int len = (total_args_passed + 7) >> 3;
     if (len <= (int)(sizeof(_value._compact) / sizeof(int))) {
       _value._compact[0] = _value._compact[1] = _value._compact[2] = 0;
       // Storing the signature encoded as signed chars hits about 98%
@@ -2145,11 +2145,11 @@
       ptr = _value._fingerprint;
     }
 
-    // Now pack the BasicTypes with 4 per int
+    // Now pack the BasicTypes with 8 per int
     int sig_index = 0;
     for (int index = 0; index < len; index++) {
       int value = 0;
-      for (int byte = 0; byte < 4; byte++) {
+      for (int byte = 0; byte < 8; byte++) {
         if (sig_index < total_args_passed) {
           value = (value << 4) | adapter_encoding(sig_bt[sig_index++]);
         }
@@ -2190,8 +2190,9 @@
 
   const char* as_string() {
     stringStream st;
+    st.print("0x");
     for (int i = 0; i < length(); i++) {
-      st.print(PTR_FORMAT, value(i));
+      st.print("%08x", value(i));
     }
     return st.as_string();
   }
diff --git a/hotspot/src/share/vm/runtime/simpleThresholdPolicy.cpp b/hotspot/src/share/vm/runtime/simpleThresholdPolicy.cpp
index 13e3b82..d132c0e 100644
--- a/hotspot/src/share/vm/runtime/simpleThresholdPolicy.cpp
+++ b/hotspot/src/share/vm/runtime/simpleThresholdPolicy.cpp
@@ -206,11 +206,7 @@
 
 // Check if the method can be compiled, change level if necessary
 void SimpleThresholdPolicy::compile(methodHandle mh, int bci, CompLevel level, TRAPS) {
-  // Take the given ceiling into the account.
-  // NOTE: You can set it to 1 to get a pure C1 version.
-  if ((CompLevel)TieredStopAtLevel < level) {
-    level = (CompLevel)TieredStopAtLevel;
-  }
+  assert(level <= TieredStopAtLevel, "Invalid compilation level");
   if (level == CompLevel_none) {
     return;
   }
@@ -227,10 +223,10 @@
   if (bci != InvocationEntryBci && mh->is_not_osr_compilable()) {
     return;
   }
-  if (PrintTieredEvents) {
-    print_event(COMPILE, mh, mh, bci, level);
-  }
   if (!CompileBroker::compilation_is_in_queue(mh, bci)) {
+    if (PrintTieredEvents) {
+      print_event(COMPILE, mh, mh, bci, level);
+    }
     submit_compile(mh, bci, level, THREAD);
   }
 }
@@ -288,40 +284,42 @@
 
 // Common transition function. Given a predicate determines if a method should transition to another level.
 CompLevel SimpleThresholdPolicy::common(Predicate p, methodOop method, CompLevel cur_level) {
-  if (is_trivial(method)) return CompLevel_simple;
-
   CompLevel next_level = cur_level;
   int i = method->invocation_count();
   int b = method->backedge_count();
 
-  switch(cur_level) {
-  case CompLevel_none:
-    // If we were at full profile level, would we switch to full opt?
-    if (common(p, method, CompLevel_full_profile) == CompLevel_full_optimization) {
-      next_level = CompLevel_full_optimization;
-    } else if ((this->*p)(i, b, cur_level)) {
-      next_level = CompLevel_full_profile;
-    }
-    break;
-  case CompLevel_limited_profile:
-  case CompLevel_full_profile:
-    {
-      methodDataOop mdo = method->method_data();
-      if (mdo != NULL) {
-        if (mdo->would_profile()) {
-          int mdo_i = mdo->invocation_count_delta();
-          int mdo_b = mdo->backedge_count_delta();
-          if ((this->*p)(mdo_i, mdo_b, cur_level)) {
+  if (is_trivial(method)) {
+    next_level = CompLevel_simple;
+  } else {
+    switch(cur_level) {
+    case CompLevel_none:
+      // If we were at full profile level, would we switch to full opt?
+      if (common(p, method, CompLevel_full_profile) == CompLevel_full_optimization) {
+        next_level = CompLevel_full_optimization;
+      } else if ((this->*p)(i, b, cur_level)) {
+        next_level = CompLevel_full_profile;
+      }
+      break;
+    case CompLevel_limited_profile:
+    case CompLevel_full_profile:
+      {
+        methodDataOop mdo = method->method_data();
+        if (mdo != NULL) {
+          if (mdo->would_profile()) {
+            int mdo_i = mdo->invocation_count_delta();
+            int mdo_b = mdo->backedge_count_delta();
+            if ((this->*p)(mdo_i, mdo_b, cur_level)) {
+              next_level = CompLevel_full_optimization;
+            }
+          } else {
             next_level = CompLevel_full_optimization;
           }
-        } else {
-          next_level = CompLevel_full_optimization;
         }
       }
+      break;
     }
-    break;
   }
-  return next_level;
+  return MIN2(next_level, (CompLevel)TieredStopAtLevel);
 }
 
 // Determine if a method should be compiled with a normal entry point at a different level.
diff --git a/hotspot/src/share/vm/runtime/simpleThresholdPolicy.hpp b/hotspot/src/share/vm/runtime/simpleThresholdPolicy.hpp
index a7bad85..5aad121 100644
--- a/hotspot/src/share/vm/runtime/simpleThresholdPolicy.hpp
+++ b/hotspot/src/share/vm/runtime/simpleThresholdPolicy.hpp
@@ -98,6 +98,7 @@
     if (is_c2_compile(comp_level)) return c2_count();
     return 0;
   }
+  virtual CompLevel initial_compile_level() { return MIN2((CompLevel)TieredStopAtLevel, CompLevel_initial_compile); }
   virtual void do_safepoint_work() { }
   virtual void delay_compilation(methodOop method) { }
   virtual void disable_compilation(methodOop method) { }
diff --git a/hotspot/src/share/vm/runtime/virtualspace.cpp b/hotspot/src/share/vm/runtime/virtualspace.cpp
index 97a00ca..f290cf3 100644
--- a/hotspot/src/share/vm/runtime/virtualspace.cpp
+++ b/hotspot/src/share/vm/runtime/virtualspace.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -68,7 +68,7 @@
   assert(len >= required_size, "len too small");
 
   const size_t s = size_t(addr);
-  const size_t beg_ofs = s + prefix_size & suffix_align - 1;
+  const size_t beg_ofs = (s + prefix_size) & (suffix_align - 1);
   const size_t beg_delta = beg_ofs == 0 ? 0 : suffix_align - beg_ofs;
 
   if (len < beg_delta + required_size) {
@@ -113,8 +113,8 @@
     assert(res >= raw, "alignment decreased start addr");
     assert(res + prefix_size + suffix_size <= raw + reserve_size,
            "alignment increased end addr");
-    assert((res & prefix_align - 1) == 0, "bad alignment of prefix");
-    assert((res + prefix_size & suffix_align - 1) == 0,
+    assert((res & (prefix_align - 1)) == 0, "bad alignment of prefix");
+    assert(((res + prefix_size) & (suffix_align - 1)) == 0,
            "bad alignment of suffix");
   }
 #endif
@@ -135,7 +135,7 @@
     assert(UseCompressedOops, "currently requested address used only for compressed oops");
     if (PrintCompressedOopsMode) {
       tty->cr();
-      tty->print_cr("Reserved memory at not requested address: " PTR_FORMAT " vs " PTR_FORMAT, base, requested_address);
+      tty->print_cr("Reserved memory not at requested address: " PTR_FORMAT " vs " PTR_FORMAT, base, requested_address);
     }
     // OS ignored requested address. Try different address.
     if (special) {
@@ -162,11 +162,11 @@
   assert(prefix_align != 0, "sanity");
   assert(suffix_size != 0, "sanity");
   assert(suffix_align != 0, "sanity");
-  assert((prefix_size & prefix_align - 1) == 0,
+  assert((prefix_size & (prefix_align - 1)) == 0,
     "prefix_size not divisible by prefix_align");
-  assert((suffix_size & suffix_align - 1) == 0,
+  assert((suffix_size & (suffix_align - 1)) == 0,
     "suffix_size not divisible by suffix_align");
-  assert((suffix_align & prefix_align - 1) == 0,
+  assert((suffix_align & (prefix_align - 1)) == 0,
     "suffix_align not divisible by prefix_align");
 
   // Assert that if noaccess_prefix is used, it is the same as prefix_align.
@@ -210,8 +210,8 @@
   if (addr == NULL) return;
 
   // Check whether the result has the needed alignment (unlikely unless
-  // prefix_align == suffix_align).
-  const size_t ofs = size_t(addr) + adjusted_prefix_size & suffix_align - 1;
+  // prefix_align < suffix_align).
+  const size_t ofs = (size_t(addr) + adjusted_prefix_size) & (suffix_align - 1);
   if (ofs != 0) {
     // Wrong alignment.  Release, allocate more space and do manual alignment.
     //
@@ -232,6 +232,15 @@
       addr = reserve_and_align(size + suffix_align, adjusted_prefix_size,
                                prefix_align, suffix_size, suffix_align);
     }
+
+    if (requested_address != 0 &&
+        failed_to_reserve_as_requested(addr, requested_address, size, false)) {
+      // As a result of the alignment constraints, the allocated addr differs
+      // from the requested address. Return back to the caller who can
+      // take remedial action (like try again without a requested address).
+      assert(_base == NULL, "should be");
+      return;
+    }
   }
 
   _base = addr;
@@ -245,13 +254,19 @@
                                const size_t noaccess_prefix,
                                bool executable) {
   const size_t granularity = os::vm_allocation_granularity();
-  assert((size & granularity - 1) == 0,
+  assert((size & (granularity - 1)) == 0,
          "size not aligned to os::vm_allocation_granularity()");
-  assert((alignment & granularity - 1) == 0,
+  assert((alignment & (granularity - 1)) == 0,
          "alignment not aligned to os::vm_allocation_granularity()");
   assert(alignment == 0 || is_power_of_2((intptr_t)alignment),
          "not a power of 2");
 
+  alignment = MAX2(alignment, (size_t)os::vm_page_size());
+
+  // Assert that if noaccess_prefix is used, it is the same as alignment.
+  assert(noaccess_prefix == 0 ||
+         noaccess_prefix == alignment, "noaccess prefix wrong");
+
   _base = NULL;
   _size = 0;
   _special = false;
@@ -282,10 +297,8 @@
         return;
       }
       // Check alignment constraints
-      if (alignment > 0) {
-        assert((uintptr_t) base % alignment == 0,
-               "Large pages returned a non-aligned address");
-      }
+      assert((uintptr_t) base % alignment == 0,
+             "Large pages returned a non-aligned address");
       _special = true;
     } else {
       // failed; try to reserve regular memory below
@@ -321,7 +334,7 @@
     if (base == NULL) return;
 
     // Check alignment constraints
-    if (alignment > 0 && ((size_t)base & alignment - 1) != 0) {
+    if ((((size_t)base + noaccess_prefix) & (alignment - 1)) != 0) {
       // Base not aligned, retry
       if (!os::release_memory(base, size)) fatal("os::release_memory failed");
       // Reserve size large enough to do manual alignment and
@@ -338,12 +351,21 @@
         os::release_memory(extra_base, extra_size);
         base = os::reserve_memory(size, base);
       } while (base == NULL);
+
+      if (requested_address != 0 &&
+          failed_to_reserve_as_requested(base, requested_address, size, false)) {
+        // As a result of the alignment constraints, the allocated base differs
+        // from the requested address. Return back to the caller who can
+        // take remedial action (like try again without a requested address).
+        assert(_base == NULL, "should be");
+        return;
+      }
     }
   }
   // Done
   _base = base;
   _size = size;
-  _alignment = MAX2(alignment, (size_t) os::vm_page_size());
+  _alignment = alignment;
   _noaccess_prefix = noaccess_prefix;
 
   // Assert that if noaccess_prefix is used, it is the same as alignment.
diff --git a/hotspot/src/share/vm/runtime/vmStructs.cpp b/hotspot/src/share/vm/runtime/vmStructs.cpp
index 6924e47..d1cb2cc 100644
--- a/hotspot/src/share/vm/runtime/vmStructs.cpp
+++ b/hotspot/src/share/vm/runtime/vmStructs.cpp
@@ -1281,7 +1281,6 @@
                                                                           \
   declare_toplevel_type(StubQueue)                                        \
   declare_toplevel_type(StubRoutines)                                     \
-  IA32_ONLY(declare_toplevel_type(StubRoutines::x86))                     \
   declare_toplevel_type(Stub)                                             \
            declare_type(InterpreterCodelet, Stub)                         \
                                                                           \
diff --git a/hotspot/src/share/vm/runtime/vm_version.cpp b/hotspot/src/share/vm/runtime/vm_version.cpp
index cd44c03..524ec49 100644
--- a/hotspot/src/share/vm/runtime/vm_version.cpp
+++ b/hotspot/src/share/vm/runtime/vm_version.cpp
@@ -46,6 +46,7 @@
 const char* Abstract_VM_Version::_s_internal_vm_info_string = Abstract_VM_Version::internal_vm_info_string();
 bool Abstract_VM_Version::_supports_cx8 = false;
 unsigned int Abstract_VM_Version::_logical_processors_per_package = 1U;
+int Abstract_VM_Version::_reserve_for_allocation_prefetch = 0;
 
 #ifndef HOTSPOT_RELEASE_VERSION
   #error HOTSPOT_RELEASE_VERSION must be defined
diff --git a/hotspot/src/share/vm/runtime/vm_version.hpp b/hotspot/src/share/vm/runtime/vm_version.hpp
index 6fcbb6a..60e7142 100644
--- a/hotspot/src/share/vm/runtime/vm_version.hpp
+++ b/hotspot/src/share/vm/runtime/vm_version.hpp
@@ -44,6 +44,7 @@
   static bool         _initialized;
   static int          _parallel_worker_threads;
   static bool         _parallel_worker_threads_initialized;
+  static int          _reserve_for_allocation_prefetch;
 
   static unsigned int nof_parallel_worker_threads(unsigned int num,
                                                   unsigned int dem,
@@ -77,6 +78,12 @@
     return _logical_processors_per_package;
   }
 
+  // Need a space at the end of TLAB for prefetch instructions
+  // which may fault when accessing memory outside of heap.
+  static int reserve_for_allocation_prefetch() {
+    return _reserve_for_allocation_prefetch;
+  }
+
   // ARCH specific policy for the BiasedLocking
   static bool use_biased_locking()  { return true; }
 
diff --git a/hotspot/src/share/vm/services/gcNotifier.cpp b/hotspot/src/share/vm/services/gcNotifier.cpp
index 3f07668..f746920 100644
--- a/hotspot/src/share/vm/services/gcNotifier.cpp
+++ b/hotspot/src/share/vm/services/gcNotifier.cpp
@@ -92,7 +92,6 @@
                           &args,
                           CHECK_NH);
   return Handle(THREAD,(oop)result.get_jobject());
-
 }
 
 static Handle createGcInfo(GCMemoryManager *gcManager, GCStatInfo *gcStatInfo,TRAPS) {
@@ -100,9 +99,16 @@
   // Fill the arrays of MemoryUsage objects with before and after GC
   // per pool memory usage
 
-  klassOop muKlass = Management::java_lang_management_MemoryUsage_klass(CHECK_NH);   objArrayOop bu = oopFactory::new_objArray( muKlass,MemoryService::num_memory_pools(), CHECK_NH);
+  klassOop mu_klass = Management::java_lang_management_MemoryUsage_klass(CHECK_NH);
+  instanceKlassHandle mu_kh(THREAD, mu_klass);
+
+  // The array allocations below should use a handle containing mu_klass
+  // as the first allocation could trigger a GC, causing the actual
+  // klass oop to move, and leaving mu_klass pointing to the old
+  // location.
+  objArrayOop bu = oopFactory::new_objArray(mu_kh(), MemoryService::num_memory_pools(), CHECK_NH);
   objArrayHandle usage_before_gc_ah(THREAD, bu);
-  objArrayOop au = oopFactory::new_objArray(muKlass,MemoryService::num_memory_pools(), CHECK_NH);
+  objArrayOop au = oopFactory::new_objArray(mu_kh(), MemoryService::num_memory_pools(), CHECK_NH);
   objArrayHandle usage_after_gc_ah(THREAD, au);
 
   for (int i = 0; i < MemoryService::num_memory_pools(); i++) {
@@ -126,7 +132,7 @@
   // The type is 'I'
   objArrayOop extra_args_array = oopFactory::new_objArray(SystemDictionary::Integer_klass(), 1, CHECK_NH);
   objArrayHandle extra_array (THREAD, extra_args_array);
-  klassOop itKlass= SystemDictionary::Integer_klass();
+  klassOop itKlass = SystemDictionary::Integer_klass();
   instanceKlassHandle intK(THREAD, itKlass);
 
   instanceHandle extra_arg_val = intK->allocate_instance_handle(CHECK_NH);
@@ -147,7 +153,7 @@
   extra_array->obj_at_put(0,extra_arg_val());
 
   klassOop gcInfoklass = Management::com_sun_management_GcInfo_klass(CHECK_NH);
-  instanceKlassHandle ik (THREAD,gcInfoklass);
+  instanceKlassHandle ik(THREAD, gcInfoklass);
 
   Handle gcInfo_instance = ik->allocate_instance_handle(CHECK_NH);
 
diff --git a/hotspot/src/share/vm/shark/sharkContext.hpp b/hotspot/src/share/vm/shark/sharkContext.hpp
index 5667b2b..2ca901e 100644
--- a/hotspot/src/share/vm/shark/sharkContext.hpp
+++ b/hotspot/src/share/vm/shark/sharkContext.hpp
@@ -171,7 +171,7 @@
                              BasicType                type) const {
     assert(type >= 0 && type < T_CONFLICT, "unhandled type");
     const llvm::Type* result = table[type];
-    assert(type != NULL, "unhandled type");
+    assert(result != NULL, "unhandled type");
     return result;
   }
 
diff --git a/hotspot/src/share/vm/utilities/yieldingWorkgroup.cpp b/hotspot/src/share/vm/utilities/yieldingWorkgroup.cpp
index a4d3c2f..075b4cb 100644
--- a/hotspot/src/share/vm/utilities/yieldingWorkgroup.cpp
+++ b/hotspot/src/share/vm/utilities/yieldingWorkgroup.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2010 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/test/compiler/5091921/Test7005594.sh b/hotspot/test/compiler/5091921/Test7005594.sh
index a75c1b9..858e38a 100644
--- a/hotspot/test/compiler/5091921/Test7005594.sh
+++ b/hotspot/test/compiler/5091921/Test7005594.sh
@@ -43,6 +43,45 @@
 echo "TESTCLASSES=${TESTCLASSES}"
 echo "CLASSPATH=${CLASSPATH}"
 
+# Amount of physical memory in megabytes
+MEM=0
+if [ -f "/proc/meminfo" ]; then
+  # Linux, Windows/Cygwin
+  MEM=`cat /proc/meminfo |grep ^MemTotal: | awk '{print $2}'`
+  MEM="$(($MEM / 1024))"
+elif [ -x "/usr/sbin/prtconf" ]; then
+  # Solaris
+  MEM=`/usr/sbin/prtconf | grep "^Memory size" | awk '{print $3}'`
+elif [ -x "/usr/sbin/system_profiler" ]; then
+  # MacOS
+  MEMo=`/usr/sbin/system_profiler SPHardwareDataType | grep Memory:`
+  MEM=`echo "$MEMo" | awk '{print $2}'`
+  MEMu=`echo "$MEMo" | awk '{print $3}'`
+  case $MEMu in
+  GB)
+    MEM="$(($MEM * 1024))"
+    ;;
+  MB)
+    ;;
+  *)
+    echo "Unknown memory unit in system_profile output: $MEMu"
+    ;;
+  esac
+elif [ -n "$ROOTDIR" -a -x "$ROOTDIR/mksnt/sysinf" ]; then
+  # Windows/MKS
+  MEM=`"$ROOTDIR/mksnt/sysinf" memory -v | grep "Total Physical Memory: " | sed 's/Total Physical Memory: *//g'`
+  MEM="$(($machine_memory / 1024))"
+else
+  echo "Unable to determine amount of physical memory on the machine"
+fi
+
+if [ $MEM -lt 2000 ]; then
+  echo "Test skipped due to low (or unknown) memory on the system: $MEM Mb"
+  exit 0
+fi
+
+echo "MEMORY=$MEM Mb"
+
 set -x
 
 cp ${TESTSRC}/Test7005594.java .
@@ -50,7 +89,7 @@
 
 ${TESTJAVA}/bin/javac -d . Test7005594.java
 
-${TESTJAVA}/bin/java ${TESTVMOPTS} -Xms1600m -Xcomp -XX:CompileOnly=Test7005594.test Test7005594 > test.out 2>&1
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Xms1600m -XX:+IgnoreUnrecognizedVMOptions -XX:-ZapUnusedHeapArea -Xcomp -XX:CompileOnly=Test7005594.test Test7005594 > test.out 2>&1
 
 result=$?
 
diff --git a/hotspot/test/compiler/7070134/Stemmer.java b/hotspot/test/compiler/7070134/Stemmer.java
new file mode 100644
index 0000000..c7edb75
--- /dev/null
+++ b/hotspot/test/compiler/7070134/Stemmer.java
@@ -0,0 +1,433 @@
+/**
+ * @test
+ * @bug 7070134
+ * @summary Hotspot crashes with sigsegv from PorterStemmer
+ *
+ * @run shell Test7070134.sh
+ */
+
+/*
+
+   Porter stemmer in Java. The original paper is in
+
+       Porter, 1980, An algorithm for suffix stripping, Program, Vol. 14,
+       no. 3, pp 130-137,
+
+   See also http://www.tartarus.org/~martin/PorterStemmer
+
+   History:
+
+   Release 1
+
+   Bug 1 (reported by Gonzalo Parra 16/10/99) fixed as marked below.
+   The words 'aed', 'eed', 'oed' leave k at 'a' for step 3, and b[k-1]
+   is then out outside the bounds of b.
+
+   Release 2
+
+   Similarly,
+
+   Bug 2 (reported by Steve Dyrdahl 22/2/00) fixed as marked below.
+   'ion' by itself leaves j = -1 in the test for 'ion' in step 5, and
+   b[j] is then outside the bounds of b.
+
+   Release 3
+
+   Considerably revised 4/9/00 in the light of many helpful suggestions
+   from Brian Goetz of Quiotix Corporation (brian@quiotix.com).
+
+   Release 4
+
+*/
+
+import java.io.*;
+
+/**
+  * Stemmer, implementing the Porter Stemming Algorithm
+  *
+  * The Stemmer class transforms a word into its root form.  The input
+  * word can be provided a character at time (by calling add()), or at once
+  * by calling one of the various stem(something) methods.
+  */
+
+class Stemmer
+{  private char[] b;
+   private int i,     /* offset into b */
+               i_end, /* offset to end of stemmed word */
+               j, k;
+   private static final int INC = 50;
+                     /* unit of size whereby b is increased */
+   public Stemmer()
+   {  b = new char[INC];
+      i = 0;
+      i_end = 0;
+   }
+
+   /**
+    * Add a character to the word being stemmed.  When you are finished
+    * adding characters, you can call stem(void) to stem the word.
+    */
+
+   public void add(char ch)
+   {  if (i == b.length)
+      {  char[] new_b = new char[i+INC];
+         for (int c = 0; c < i; c++) new_b[c] = b[c];
+         b = new_b;
+      }
+      b[i++] = ch;
+   }
+
+
+   /** Adds wLen characters to the word being stemmed contained in a portion
+    * of a char[] array. This is like repeated calls of add(char ch), but
+    * faster.
+    */
+
+   public void add(char[] w, int wLen)
+   {  if (i+wLen >= b.length)
+      {  char[] new_b = new char[i+wLen+INC];
+         for (int c = 0; c < i; c++) new_b[c] = b[c];
+         b = new_b;
+      }
+      for (int c = 0; c < wLen; c++) b[i++] = w[c];
+   }
+
+   /**
+    * After a word has been stemmed, it can be retrieved by toString(),
+    * or a reference to the internal buffer can be retrieved by getResultBuffer
+    * and getResultLength (which is generally more efficient.)
+    */
+   public String toString() { return new String(b,0,i_end); }
+
+   /**
+    * Returns the length of the word resulting from the stemming process.
+    */
+   public int getResultLength() { return i_end; }
+
+   /**
+    * Returns a reference to a character buffer containing the results of
+    * the stemming process.  You also need to consult getResultLength()
+    * to determine the length of the result.
+    */
+   public char[] getResultBuffer() { return b; }
+
+   /* cons(i) is true <=> b[i] is a consonant. */
+
+   private final boolean cons(int i)
+   {  switch (b[i])
+      {  case 'a': case 'e': case 'i': case 'o': case 'u': return false;
+         case 'y': return (i==0) ? true : !cons(i-1);
+         default: return true;
+      }
+   }
+
+   /* m() measures the number of consonant sequences between 0 and j. if c is
+      a consonant sequence and v a vowel sequence, and <..> indicates arbitrary
+      presence,
+
+         <c><v>       gives 0
+         <c>vc<v>     gives 1
+         <c>vcvc<v>   gives 2
+         <c>vcvcvc<v> gives 3
+         ....
+   */
+
+   private final int m()
+   {  int n = 0;
+      int i = 0;
+      while(true)
+      {  if (i > j) return n;
+         if (! cons(i)) break; i++;
+      }
+      i++;
+      while(true)
+      {  while(true)
+         {  if (i > j) return n;
+               if (cons(i)) break;
+               i++;
+         }
+         i++;
+         n++;
+         while(true)
+         {  if (i > j) return n;
+            if (! cons(i)) break;
+            i++;
+         }
+         i++;
+       }
+   }
+
+   /* vowelinstem() is true <=> 0,...j contains a vowel */
+
+   private final boolean vowelinstem()
+   {  int i; for (i = 0; i <= j; i++) if (! cons(i)) return true;
+      return false;
+   }
+
+   /* doublec(j) is true <=> j,(j-1) contain a double consonant. */
+
+   private final boolean doublec(int j)
+   {  if (j < 1) return false;
+      if (b[j] != b[j-1]) return false;
+      return cons(j);
+   }
+
+   /* cvc(i) is true <=> i-2,i-1,i has the form consonant - vowel - consonant
+      and also if the second c is not w,x or y. this is used when trying to
+      restore an e at the end of a short word. e.g.
+
+         cav(e), lov(e), hop(e), crim(e), but
+         snow, box, tray.
+
+   */
+
+   private final boolean cvc(int i)
+   {  if (i < 2 || !cons(i) || cons(i-1) || !cons(i-2)) return false;
+      {  int ch = b[i];
+         if (ch == 'w' || ch == 'x' || ch == 'y') return false;
+      }
+      return true;
+   }
+
+   private final boolean ends(String s)
+   {  int l = s.length();
+      int o = k-l+1;
+      if (o < 0) return false;
+      for (int i = 0; i < l; i++) if (b[o+i] != s.charAt(i)) return false;
+      j = k-l;
+      return true;
+   }
+
+   /* setto(s) sets (j+1),...k to the characters in the string s, readjusting
+      k. */
+
+   private final void setto(String s)
+   {  int l = s.length();
+      int o = j+1;
+      for (int i = 0; i < l; i++) b[o+i] = s.charAt(i);
+      k = j+l;
+   }
+
+   /* r(s) is used further down. */
+
+   private final void r(String s) { if (m() > 0) setto(s); }
+
+   /* step1() gets rid of plurals and -ed or -ing. e.g.
+
+          caresses  ->  caress
+          ponies    ->  poni
+          ties      ->  ti
+          caress    ->  caress
+          cats      ->  cat
+
+          feed      ->  feed
+          agreed    ->  agree
+          disabled  ->  disable
+
+          matting   ->  mat
+          mating    ->  mate
+          meeting   ->  meet
+          milling   ->  mill
+          messing   ->  mess
+
+          meetings  ->  meet
+
+   */
+
+   private final void step1()
+   {  if (b[k] == 's')
+      {  if (ends("sses")) k -= 2; else
+         if (ends("ies")) setto("i"); else
+         if (b[k-1] != 's') k--;
+      }
+      if (ends("eed")) { if (m() > 0) k--; } else
+      if ((ends("ed") || ends("ing")) && vowelinstem())
+      {  k = j;
+         if (ends("at")) setto("ate"); else
+         if (ends("bl")) setto("ble"); else
+         if (ends("iz")) setto("ize"); else
+         if (doublec(k))
+         {  k--;
+            {  int ch = b[k];
+               if (ch == 'l' || ch == 's' || ch == 'z') k++;
+            }
+         }
+         else if (m() == 1 && cvc(k)) setto("e");
+     }
+   }
+
+   /* step2() turns terminal y to i when there is another vowel in the stem. */
+
+   private final void step2() { if (ends("y") && vowelinstem()) b[k] = 'i'; }
+
+   /* step3() maps double suffices to single ones. so -ization ( = -ize plus
+      -ation) maps to -ize etc. note that the string before the suffix must give
+      m() > 0. */
+
+   private final void step3() { if (k == 0) return; /* For Bug 1 */ switch (b[k-1])
+   {
+       case 'a': if (ends("ational")) { r("ate"); break; }
+                 if (ends("tional")) { r("tion"); break; }
+                 break;
+       case 'c': if (ends("enci")) { r("ence"); break; }
+                 if (ends("anci")) { r("ance"); break; }
+                 break;
+       case 'e': if (ends("izer")) { r("ize"); break; }
+                 break;
+       case 'l': if (ends("bli")) { r("ble"); break; }
+                 if (ends("alli")) { r("al"); break; }
+                 if (ends("entli")) { r("ent"); break; }
+                 if (ends("eli")) { r("e"); break; }
+                 if (ends("ousli")) { r("ous"); break; }
+                 break;
+       case 'o': if (ends("ization")) { r("ize"); break; }
+                 if (ends("ation")) { r("ate"); break; }
+                 if (ends("ator")) { r("ate"); break; }
+                 break;
+       case 's': if (ends("alism")) { r("al"); break; }
+                 if (ends("iveness")) { r("ive"); break; }
+                 if (ends("fulness")) { r("ful"); break; }
+                 if (ends("ousness")) { r("ous"); break; }
+                 break;
+       case 't': if (ends("aliti")) { r("al"); break; }
+                 if (ends("iviti")) { r("ive"); break; }
+                 if (ends("biliti")) { r("ble"); break; }
+                 break;
+       case 'g': if (ends("logi")) { r("log"); break; }
+   } }
+
+   /* step4() deals with -ic-, -full, -ness etc. similar strategy to step3. */
+
+   private final void step4() { switch (b[k])
+   {
+       case 'e': if (ends("icate")) { r("ic"); break; }
+                 if (ends("ative")) { r(""); break; }
+                 if (ends("alize")) { r("al"); break; }
+                 break;
+       case 'i': if (ends("iciti")) { r("ic"); break; }
+                 break;
+       case 'l': if (ends("ical")) { r("ic"); break; }
+                 if (ends("ful")) { r(""); break; }
+                 break;
+       case 's': if (ends("ness")) { r(""); break; }
+                 break;
+   } }
+
+   /* step5() takes off -ant, -ence etc., in context <c>vcvc<v>. */
+
+   private final void step5()
+   {   if (k == 0) return; /* for Bug 1 */ switch (b[k-1])
+       {  case 'a': if (ends("al")) break; return;
+          case 'c': if (ends("ance")) break;
+                    if (ends("ence")) break; return;
+          case 'e': if (ends("er")) break; return;
+          case 'i': if (ends("ic")) break; return;
+          case 'l': if (ends("able")) break;
+                    if (ends("ible")) break; return;
+          case 'n': if (ends("ant")) break;
+                    if (ends("ement")) break;
+                    if (ends("ment")) break;
+                    /* element etc. not stripped before the m */
+                    if (ends("ent")) break; return;
+          case 'o': if (ends("ion") && j >= 0 && (b[j] == 's' || b[j] == 't')) break;
+                                    /* j >= 0 fixes Bug 2 */
+                    if (ends("ou")) break; return;
+                    /* takes care of -ous */
+          case 's': if (ends("ism")) break; return;
+          case 't': if (ends("ate")) break;
+                    if (ends("iti")) break; return;
+          case 'u': if (ends("ous")) break; return;
+          case 'v': if (ends("ive")) break; return;
+          case 'z': if (ends("ize")) break; return;
+          default: return;
+       }
+       if (m() > 1) k = j;
+   }
+
+   /* step6() removes a final -e if m() > 1. */
+
+   private final void step6()
+   {  j = k;
+      if (b[k] == 'e')
+      {  int a = m();
+         if (a > 1 || a == 1 && !cvc(k-1)) k--;
+      }
+      if (b[k] == 'l' && doublec(k) && m() > 1) k--;
+   }
+
+   /** Stem the word placed into the Stemmer buffer through calls to add().
+    * Returns true if the stemming process resulted in a word different
+    * from the input.  You can retrieve the result with
+    * getResultLength()/getResultBuffer() or toString().
+    */
+   public void stem()
+   {  k = i - 1;
+      if (k > 1) { step1(); step2(); step3(); step4(); step5(); step6(); }
+      i_end = k+1; i = 0;
+   }
+
+   /** Test program for demonstrating the Stemmer.  It reads text from a
+    * a list of files, stems each word, and writes the result to standard
+    * output. Note that the word stemmed is expected to be in lower case:
+    * forcing lower case must be done outside the Stemmer class.
+    * Usage: Stemmer file-name file-name ...
+    */
+   public static void main(String[] args)
+   {
+      char[] w = new char[501];
+      Stemmer s = new Stemmer();
+      for (int i = 0; i < args.length; i++)
+      try
+      {
+         FileInputStream in = new FileInputStream(args[i]);
+
+         try
+         { while(true)
+
+           {  int ch = in.read();
+              if (Character.isLetter((char) ch))
+              {
+                 int j = 0;
+                 while(true)
+                 {  ch = Character.toLowerCase((char) ch);
+                    w[j] = (char) ch;
+                    if (j < 500) j++;
+                    ch = in.read();
+                    if (!Character.isLetter((char) ch))
+                    {
+                       /* to test add(char ch) */
+                       for (int c = 0; c < j; c++) s.add(w[c]);
+
+                       /* or, to test add(char[] w, int j) */
+                       /* s.add(w, j); */
+
+                       s.stem();
+                       {  String u;
+
+                          /* and now, to test toString() : */
+                          u = s.toString();
+
+                          /* to test getResultBuffer(), getResultLength() : */
+                          /* u = new String(s.getResultBuffer(), 0, s.getResultLength()); */
+
+                          System.out.print(u);
+                       }
+                       break;
+                    }
+                 }
+              }
+              if (ch < 0) break;
+              System.out.print((char)ch);
+           }
+         }
+         catch (IOException e)
+         {  System.out.println("error reading " + args[i]);
+            break;
+         }
+      }
+      catch (FileNotFoundException e)
+      {  System.out.println("file " + args[i] + " not found");
+         break;
+      }
+   }
+}
diff --git a/hotspot/test/compiler/7070134/Test7070134.sh b/hotspot/test/compiler/7070134/Test7070134.sh
new file mode 100644
index 0000000..cbebfba
--- /dev/null
+++ b/hotspot/test/compiler/7070134/Test7070134.sh
@@ -0,0 +1,56 @@
+#!/bin/sh
+# 
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.
+# 
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+# 
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+# 
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+# 
+# 
+
+if [ "${TESTSRC}" = "" ]
+then
+  echo "TESTSRC not set.  Test cannot execute.  Failed."
+  exit 1
+fi
+echo "TESTSRC=${TESTSRC}"
+if [ "${TESTJAVA}" = "" ]
+then
+  echo "TESTJAVA not set.  Test cannot execute.  Failed."
+  exit 1
+fi
+echo "TESTJAVA=${TESTJAVA}"
+if [ "${TESTCLASSES}" = "" ]
+then
+  echo "TESTCLASSES not set.  Test cannot execute.  Failed."
+  exit 1
+fi
+echo "TESTCLASSES=${TESTCLASSES}"
+echo "CLASSPATH=${CLASSPATH}"
+
+set -x
+
+cp ${TESTSRC}/Stemmer.java .
+cp ${TESTSRC}/words .
+
+${TESTJAVA}/bin/javac -d . Stemmer.java
+
+${TESTJAVA}/bin/java ${TESTVMOPTS} -Xbatch Stemmer words > test.out 2>&1
+
+exit $?
+
diff --git a/hotspot/test/compiler/7070134/words b/hotspot/test/compiler/7070134/words
new file mode 100644
index 0000000..10776d2
--- /dev/null
+++ b/hotspot/test/compiler/7070134/words
@@ -0,0 +1,97161 @@
+1080
+10-point
+10th
+11-point
+12-point
+16-point
+18-point
+1st
+2
+20-point
+2,4,5-t
+2,4-d
+2D
+2nd
+30-30
+3-D
+3-d
+3D
+3M
+3rd
+48-point
+4-D
+4GL
+4H
+4th
+5-point
+5-T
+5th
+6-point
+6th
+7-point
+7th
+8-point
+8th
+9-point
+9th
+-a
+A
+A.
+a
+a'
+a-
+a.
+A-1
+A1
+a1
+A4
+A5
+AA
+aa
+A.A.A.
+AAA
+aaa
+AAAA
+AAAAAA
+AAAL
+AAAS
+Aaberg
+Aachen
+AAE
+AAEE
+AAF
+AAG
+aah
+aahed
+aahing
+aahs
+AAII
+aal
+Aalborg
+Aalesund
+aalii
+aaliis
+aals
+Aalst
+Aalto
+AAM
+aam
+AAMSI
+Aandahl
+A-and-R
+Aani
+AAO
+AAP
+AAPSS
+Aaqbiye
+Aar
+Aara
+Aarau
+AARC
+aardvark
+aardvarks
+aardwolf
+aardwolves
+Aaren
+Aargau
+aargh
+Aarhus
+Aarika
+Aaron
+aaron
+Aaronic
+aaronic
+Aaronical
+Aaronite
+Aaronitic
+Aaron's-beard
+Aaronsburg
+Aaronson
+AARP
+aarrgh
+aarrghh
+Aaru
+AAS
+aas
+A'asia
+aasvogel
+aasvogels
+AAU
+AAUP
+AAUW
+AAVSO
+AAX
+A-axes
+A-axis
+A.B.
+AB
+Ab
+ab
+ab-
+A.B.A.
+ABA
+Aba
+aba
+Ababa
+Ababdeh
+Ababua
+abac
+abaca
+abacas
+abacate
+abacaxi
+abacay
+abaci
+abacinate
+abacination
+abacisci
+abaciscus
+abacist
+aback
+abacli
+Abaco
+abacot
+abacterial
+abactinal
+abactinally
+abaction
+abactor
+abaculi
+abaculus
+abacus
+abacuses
+Abad
+abada
+Abadan
+Abaddon
+abaddon
+abadejo
+abadengo
+abadia
+Abadite
+abaff
+abaft
+Abagael
+Abagail
+Abagtha
+Abailard
+abaisance
+abaised
+abaiser
+abaisse
+abaissed
+abaka
+Abakan
+abakas
+Abakumov
+abalation
+abalienate
+abalienated
+abalienating
+abalienation
+abalone
+abalones
+Abama
+abamp
+abampere
+abamperes
+abamps
+Abana
+aband
+abandon
+abandonable
+abandoned
+abandonedly
+abandonee
+abandoner
+abandoners
+abandoning
+abandonment
+abandonments
+abandons
+abandum
+abanet
+abanga
+Abanic
+abannition
+Abantes
+abapical
+abaptiston
+abaptistum
+Abarambo
+Abarbarea
+Abaris
+abarthrosis
+abarticular
+abarticulation
+Abas
+abas
+abase
+abased
+abasedly
+abasedness
+abasement
+abasements
+abaser
+abasers
+abases
+Abasgi
+abash
+abashed
+abashedly
+abashedness
+abashes
+abashing
+abashless
+abashlessly
+abashment
+abashments
+abasia
+abasias
+abasic
+abasing
+abasio
+abask
+abassi
+Abassieh
+Abassin
+abastard
+abastardize
+abastral
+abatable
+abatage
+Abate
+abate
+abated
+abatement
+abatements
+abater
+abaters
+abates
+abatic
+abating
+abatis
+abatised
+abatises
+abatjour
+abatjours
+abaton
+abator
+abators
+ABATS
+abattage
+abattis
+abattised
+abattises
+abattoir
+abattoirs
+abattu
+abattue
+Abatua
+abature
+abaue
+abave
+abaxial
+abaxile
+abay
+abayah
+abaze
+abb
+Abba
+abba
+abbacies
+abbacomes
+abbacy
+Abbadide
+Abbai
+abbandono
+abbas
+abbasi
+Abbasid
+abbasid
+abbassi
+Abbassid
+Abbasside
+Abbate
+abbate
+abbatial
+abbatical
+abbatie
+abbaye
+Abbe
+abbe
+abbes
+abbess
+abbesses
+abbest
+Abbevilean
+Abbeville
+Abbevillian
+abbevillian
+Abbey
+abbey
+abbeys
+abbeystead
+abbeystede
+Abbi
+Abbie
+abboccato
+abbogada
+Abbot
+abbot
+abbotcies
+abbotcy
+abbotnullius
+abbotric
+abbots
+Abbotsen
+Abbotsford
+abbotship
+abbotships
+Abbotson
+Abbotsun
+Abbott
+abbott
+Abbottson
+Abbottstown
+Abboud
+abbozzo
+ABBR
+abbr
+abbrev
+abbreviatable
+abbreviate
+abbreviated
+abbreviately
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+abbreviator
+abbreviators
+abbreviatory
+abbreviature
+abbroachment
+Abby
+abby
+Abbye
+Abbyville
+ABC
+abc
+abcess
+abcissa
+abcoulomb
+ABCs
+abd
+abdal
+abdali
+abdaria
+abdat
+Abdel
+Abd-el-Kadir
+Abd-el-Krim
+Abdella
+Abderhalden
+Abderian
+Abderite
+Abderus
+abdest
+Abdias
+abdicable
+abdicant
+abdicate
+abdicated
+abdicates
+abdicating
+abdication
+abdications
+abdicative
+abdicator
+Abdiel
+abditive
+abditory
+abdom
+abdomen
+abdomens
+abdomina
+abdominal
+Abdominales
+abdominales
+abdominalia
+abdominalian
+abdominally
+abdominals
+abdominoanterior
+abdominocardiac
+abdominocentesis
+abdominocystic
+abdominogenital
+abdominohysterectomy
+abdominohysterotomy
+abdominoposterior
+abdominoscope
+abdominoscopy
+abdominothoracic
+abdominous
+abdomino-uterotomy
+abdominovaginal
+abdominovesical
+Abdon
+Abdu
+abduce
+abduced
+abducens
+abducent
+abducentes
+abduces
+abducing
+abduct
+abducted
+abducting
+abduction
+abductions
+abductor
+abductores
+abductors
+abducts
+Abdul
+Abdul-Aziz
+Abdul-baha
+Abdulla
+Abe
+a-be
+abeam
+abear
+abearance
+Abebi
+abecedaire
+abecedaria
+abecedarian
+abecedarians
+abecedaries
+abecedarium
+abecedarius
+abecedary
+abed
+abede
+abedge
+Abednego
+abegge
+abeigh
+ABEL
+Abel
+abel
+Abelard
+abele
+abeles
+Abelia
+Abelian
+abelian
+Abelicea
+Abelite
+abelite
+Abell
+Abelmoschus
+abelmosk
+abelmosks
+abelmusk
+Abelonian
+Abelson
+abeltree
+Abencerrages
+abend
+abends
+Abenezra
+abenteric
+Abeokuta
+abepithymia
+ABEPP
+Abercrombie
+Abercromby
+Aberdare
+aberdavine
+Aberdeen
+aberdeen
+Aberdeenshire
+aberdevine
+Aberdonian
+aberduvine
+Aberfan
+Aberglaube
+Aberia
+Abernant
+Abernathy
+abernethy
+Abernon
+aberr
+aberrance
+aberrancies
+aberrancy
+aberrant
+aberrantly
+aberrants
+aberrate
+aberrated
+aberrating
+aberration
+aberrational
+aberrations
+aberrative
+aberrator
+aberrometer
+aberroscope
+Abert
+aberuncate
+aberuncator
+Aberystwyth
+abesse
+abessive
+abet
+abetment
+abetments
+abets
+abettal
+abettals
+abetted
+abetter
+abetters
+abetting
+abettor
+abettors
+Abeu
+abevacuation
+Abey
+abey
+abeyance
+abeyances
+abeyancies
+abeyancy
+abeyant
+abfarad
+abfarads
+ABFM
+Abgatha
+ABHC
+abhenries
+abhenry
+abhenrys
+abhinaya
+abhiseka
+abhominable
+abhor
+abhorred
+abhorrence
+abhorrences
+abhorrency
+abhorrent
+abhorrently
+abhorrer
+abhorrers
+abhorrible
+abhorring
+abhors
+Abhorson
+ABI
+Abia
+Abiathar
+Abib
+abib
+abichite
+abidal
+abidance
+abidances
+abidden
+abide
+abided
+abider
+abiders
+abides
+abidi
+abiding
+abidingly
+abidingness
+Abidjan
+Abie
+abied
+abiegh
+abience
+abient
+Abies
+abies
+abietate
+abietene
+abietic
+abietin
+Abietineae
+abietineous
+abietinic
+abietite
+Abiezer
+Abigael
+Abigail
+abigail
+abigails
+abigailship
+Abigale
+abigeat
+abigei
+abigeus
+Abihu
+Abijah
+abilao
+Abilene
+abilene
+abiliment
+abilitable
+abilities
+-ability
+ability
+abilla
+abilo
+Abilyne
+abime
+Abimelech
+Abineri
+Abingdon
+Abinger
+Abington
+Abinoam
+Abinoem
+abintestate
+abiogeneses
+abiogenesis
+abiogenesist
+abiogenetic
+abiogenetical
+abiogenetically
+abiogenist
+abiogenous
+abiogeny
+abiological
+abiologically
+abiology
+abioses
+abiosis
+abiotic
+abiotical
+abiotically
+abiotrophic
+abiotrophy
+Abipon
+Abiquiu
+abir
+abirritant
+abirritate
+abirritated
+abirritating
+abirritation
+abirritative
+Abisag
+Abisha
+Abishag
+Abisia
+abiston
+abit
+Abitibi
+Abiu
+abiuret
+Abixah
+abject
+abjectedness
+abjection
+abjections
+abjective
+abjectly
+abjectness
+abjectnesses
+abjoint
+abjudge
+abjudged
+abjudging
+abjudicate
+abjudicated
+abjudicating
+abjudication
+abjudicator
+abjugate
+abjunct
+abjunction
+abjunctive
+abjuration
+abjurations
+abjuratory
+abjure
+abjured
+abjurement
+abjurer
+abjurers
+abjures
+abjuring
+abkar
+abkari
+abkary
+Abkhas
+Abkhasia
+Abkhasian
+Abkhaz
+Abkhazia
+Abkhazian
+abl
+abl.
+ablach
+ablactate
+ablactated
+ablactating
+ablactation
+ablaqueate
+ablare
+A-blast
+ablastemic
+ablastin
+ablastous
+ablate
+ablated
+ablates
+ablating
+ablation
+ablations
+ablatitious
+ablatival
+ablative
+ablatively
+ablatives
+ablator
+ablaut
+ablauts
+ablaze
+-able
+able
+able-bodied
+able-bodiedness
+ableeze
+ablegate
+ablegates
+ablegation
+able-minded
+able-mindedness
+ablend
+ableness
+ablepharia
+ablepharon
+ablepharous
+Ablepharus
+ablepsia
+ablepsy
+ableptical
+ableptically
+abler
+ables
+ablesse
+ablest
+ablet
+ablewhackets
+ablings
+ablins
+ablock
+abloom
+ablow
+ABLS
+ablude
+abluent
+abluents
+ablush
+ablute
+abluted
+ablution
+ablutionary
+ablutions
+abluvion
+-ably
+ably
+ABM
+abmho
+abmhos
+abmodalities
+abmodality
+abn
+Abnaki
+Abnakis
+abnegate
+abnegated
+abnegates
+abnegating
+abnegation
+abnegations
+abnegative
+abnegator
+abnegators
+Abner
+abner
+abnerval
+abnet
+abneural
+abnormal
+abnormalcies
+abnormalcy
+abnormalise
+abnormalised
+abnormalising
+abnormalism
+abnormalist
+abnormalities
+abnormality
+abnormalize
+abnormalized
+abnormalizing
+abnormally
+abnormalness
+abnormals
+abnormities
+abnormity
+abnormous
+abnumerable
+Abo
+abo
+aboard
+aboardage
+Abobra
+abococket
+abodah
+abode
+aboded
+abodement
+abodes
+aboding
+abody
+abogado
+abogados
+abohm
+abohms
+aboideau
+aboideaus
+aboideaux
+aboil
+aboiteau
+aboiteaus
+aboiteaux
+abolete
+abolish
+abolishable
+abolished
+abolisher
+abolishers
+abolishes
+abolishing
+abolishment
+abolishments
+abolition
+abolitionary
+abolitionise
+abolitionised
+abolitionising
+abolitionism
+abolitionist
+abolitionists
+abolitionize
+abolitionized
+abolitionizing
+abolitions
+abolla
+abollae
+aboma
+abomas
+abomasa
+abomasal
+abomasi
+abomasum
+abomasus
+abomasusi
+A-bomb
+a-bomb
+abominability
+abominable
+abominableness
+abominably
+abominate
+abominated
+abominates
+abominating
+abomination
+abominations
+abominator
+abominators
+abomine
+abondance
+Abongo
+abonne
+abonnement
+aboon
+aborad
+aboral
+aborally
+abord
+Aboriginal
+aboriginal
+aboriginality
+aboriginally
+aboriginals
+aboriginary
+Aborigine
+aborigine
+aborigines
+Abor-miri
+Aborn
+a-borning
+aborning
+aborsement
+aborsive
+abort
+aborted
+aborter
+aborters
+aborticide
+abortient
+abortifacient
+abortin
+aborting
+abortion
+abortional
+abortionist
+abortionists
+abortions
+abortive
+abortively
+abortiveness
+abortogenic
+aborts
+abortus
+abortuses
+abos
+abote
+Abott
+abouchement
+aboudikro
+abought
+Aboukir
+aboulia
+aboulias
+aboulic
+abound
+abounded
+abounder
+abounding
+aboundingly
+abounds
+Abourezk
+about
+about-face
+about-faced
+about-facing
+abouts
+about-ship
+about-shipped
+about-shipping
+about-sledge
+about-turn
+above
+above-board
+aboveboard
+above-cited
+abovedeck
+above-found
+above-given
+aboveground
+above-mentioned
+abovementioned
+above-named
+aboveproof
+above-quoted
+above-reported
+aboves
+above-said
+abovesaid
+abovestairs
+above-water
+above-written
+abow
+abox
+Abp
+abp
+ABPC
+Abqaiq
+abr
+abr.
+Abra
+abracadabra
+abrachia
+abrachias
+abradable
+abradant
+abradants
+abrade
+abraded
+abrader
+abraders
+abrades
+abrading
+Abraham
+abraham
+Abrahamic
+Abrahamidae
+Abrahamite
+Abrahamitic
+Abraham-man
+abraham-man
+Abrahams
+Abrahamsen
+Abrahan
+abraid
+Abram
+Abramis
+Abramo
+Abrams
+Abramson
+Abran
+abranchial
+abranchialism
+abranchian
+Abranchiata
+abranchiate
+abranchious
+abrasax
+abrase
+abrased
+abraser
+abrash
+abrasing
+abrasiometer
+abrasion
+abrasions
+abrasive
+abrasively
+abrasiveness
+abrasivenesses
+abrasives
+abrastol
+abraum
+abraxas
+abray
+abrazite
+abrazitic
+abrazo
+abrazos
+abreact
+abreacted
+abreacting
+abreaction
+abreactions
+abreacts
+abreast
+abreed
+abrege
+abreid
+abrenounce
+abrenunciate
+abrenunciation
+abreption
+abret
+abreuvoir
+abri
+abrico
+abricock
+abricot
+abridgable
+abridge
+abridgeable
+abridged
+abridgedly
+abridgement
+abridgements
+abridger
+abridgers
+abridges
+abridging
+abridgment
+abridgments
+abrim
+abrin
+abrine
+abris
+abristle
+abroach
+abroad
+Abrocoma
+abrocome
+abrogable
+abrogate
+abrogated
+abrogates
+abrogating
+abrogation
+abrogations
+abrogative
+abrogator
+abrogators
+Abroma
+Abroms
+Abronia
+abronia
+abrood
+abrook
+abrosia
+abrosias
+abrotanum
+abrotin
+abrotine
+abrupt
+abruptedly
+abrupter
+abruptest
+abruptio
+abruption
+abruptiones
+abruptly
+abruptness
+Abrus
+Abruzzi
+ABS
+abs
+abs-
+Absa
+Absalom
+absampere
+Absaraka
+Absaroka
+Absarokee
+absarokite
+ABSBH
+abscam
+abscess
+abscessed
+abscesses
+abscessing
+abscession
+abscessroot
+abscind
+abscise
+abscised
+abscises
+abscisin
+abscising
+abscisins
+abscision
+absciss
+abscissa
+abscissae
+abscissas
+abscisse
+abscissin
+abscission
+abscissions
+absconce
+abscond
+absconded
+abscondedly
+abscondence
+absconder
+absconders
+absconding
+absconds
+absconsa
+abscoulomb
+abscound
+Absecon
+absee
+abseil
+abseiled
+abseiling
+abseils
+absence
+absences
+absent
+absentation
+absented
+absentee
+absenteeism
+absentees
+absenteeship
+absenter
+absenters
+absentia
+absenting
+absently
+absentment
+absent-minded
+absentminded
+absent-mindedly
+absentmindedly
+absent-mindedness
+absentmindedness
+absentmindednesses
+absentness
+absents
+absey
+absfarad
+abshenry
+Abshier
+Absi
+absinth
+absinthe
+absinthes
+absinthial
+absinthian
+absinthiate
+absinthiated
+absinthiating
+absinthic
+absinthiin
+absinthin
+absinthine
+absinthism
+absinthismic
+absinthium
+absinthol
+absinthole
+absinths
+absis
+absist
+absistos
+absit
+absmho
+absohm
+absoil
+absolent
+Absolute
+absolute
+absolutely
+absoluteness
+absoluter
+absolutes
+absolutest
+absolution
+absolutions
+absolutism
+absolutist
+absolutista
+absolutistic
+absolutistically
+absolutists
+absolutive
+absolutization
+absolutize
+absolutory
+absolvable
+absolvatory
+absolve
+absolved
+absolvent
+absolver
+absolvers
+absolves
+absolving
+absolvitor
+absolvitory
+absonant
+absonous
+absorb
+absorbability
+absorbable
+absorbance
+absorbancy
+absorbant
+absorbed
+absorbedly
+absorbedness
+absorbefacient
+absorbencies
+absorbency
+absorbent
+absorbents
+absorber
+absorbers
+absorbing
+absorbingly
+absorbition
+absorbs
+absorbtion
+absorpt
+absorptance
+absorptiometer
+absorptiometric
+absorption
+absorptional
+absorptions
+absorptive
+absorptively
+absorptiveness
+absorptivity
+absquatulate
+absquatulation
+abstain
+abstained
+abstainer
+abstainers
+abstaining
+abstainment
+abstains
+abstemious
+abstemiously
+abstemiousness
+abstention
+abstentionism
+abstentionist
+abstentions
+abstentious
+absterge
+absterged
+abstergent
+absterges
+absterging
+absterse
+abstersion
+abstersive
+abstersiveness
+abstertion
+abstinence
+abstinences
+abstinency
+abstinent
+abstinential
+abstinently
+abstort
+abstr
+abstract
+abstractable
+abstracted
+abstractedly
+abstractedness
+abstracter
+abstracters
+abstractest
+abstracting
+abstraction
+abstractional
+abstractionism
+abstractionist
+abstractionists
+abstractions
+abstractitious
+abstractive
+abstractively
+abstractiveness
+abstractly
+abstractness
+abstractnesses
+abstractor
+abstractors
+abstracts
+abstrahent
+abstrict
+abstricted
+abstricting
+abstriction
+abstricts
+abstrude
+abstruse
+abstrusely
+abstruseness
+abstrusenesses
+abstruser
+abstrusest
+abstrusion
+abstrusities
+abstrusity
+absume
+absumption
+absurd
+absurder
+absurdest
+absurdism
+absurdist
+absurdities
+absurdity
+absurdly
+absurdness
+absurds
+absurdum
+absvolt
+Absyrtus
+abt
+abterminal
+abthain
+abthainrie
+abthainry
+abthanage
+abtruse
+Abu
+abu
+abubble
+Abu-Bekr
+Abucay
+abucco
+abuilding
+Abukir
+abuleia
+Abulfeda
+abulia
+abulias
+abulic
+abulomania
+abulyeit
+abumbral
+abumbrellar
+Abuna
+abuna
+abundance
+abundances
+abundancy
+abundant
+Abundantia
+abundantly
+abune
+abura
+aburabozu
+aburagiri
+aburban
+aburst
+aburton
+Abury
+abusable
+abusage
+abuse
+abused
+abusedly
+abusee
+abuseful
+abusefully
+abusefulness
+abuser
+abusers
+abuses
+abush
+abusing
+abusion
+abusious
+abusive
+abusively
+abusiveness
+abusivenesses
+abut
+Abuta
+Abutilon
+abutilon
+abutilons
+abutment
+abutments
+abuts
+abuttal
+abuttals
+abutted
+abutter
+abutters
+abutting
+abuzz
+abv
+abvolt
+abvolts
+abwab
+abwatt
+abwatts
+aby
+Abydos
+abye
+abyed
+abyes
+abying
+Abyla
+abys
+abysm
+abysmal
+abysmally
+abysms
+Abyss
+abyss
+abyssa
+abyssal
+abysses
+Abyssinia
+abyssinia
+Abyssinian
+abyssinian
+abyssinians
+abyssobenthonic
+abyssolith
+abyssopelagic
+abyssus
+-ac
+A.C.
+A/C
+AC
+Ac
+a-c
+a.c.
+a/c
+ac
+ac-
+ACAA
+Acacallis
+acacatechin
+acacatechol
+Acacea
+Acaceae
+acacetin
+Acacia
+acacia
+Acacian
+acacias
+acaciin
+acacin
+acacine
+acad
+academe
+academes
+academia
+academial
+academian
+academias
+Academic
+academic
+academical
+academically
+academicals
+academician
+academicians
+academicianship
+academicism
+academics
+academie
+academies
+academise
+academised
+academising
+academism
+academist
+academite
+academization
+academize
+academized
+academizing
+Academus
+Academy
+academy
+Acadia
+acadia
+acadialite
+Acadian
+acadian
+Acadie
+Acaena
+acaena
+acajou
+acajous
+-acal
+acalculia
+acale
+acaleph
+Acalepha
+acalepha
+Acalephae
+acalephae
+acalephan
+acalephe
+acalephes
+acalephoid
+acalephs
+Acalia
+acalycal
+acalycine
+acalycinous
+acalyculate
+Acalypha
+Acalypterae
+Acalyptrata
+Acalyptratae
+acalyptrate
+Acamar
+Acamas
+Acampo
+acampsia
+acana
+acanaceous
+acanonical
+acanth
+acanth-
+acantha
+Acanthaceae
+acanthaceous
+acanthad
+Acantharia
+acanthi
+Acanthia
+acanthial
+acanthin
+acanthine
+acanthion
+acanthite
+acantho-
+acanthocarpous
+Acanthocephala
+acanthocephalan
+Acanthocephali
+acanthocephalous
+Acanthocereus
+acanthocladous
+Acanthodea
+acanthodean
+Acanthodei
+Acanthodes
+acanthodian
+Acanthodidae
+Acanthodii
+Acanthodini
+acanthoid
+Acantholimon
+acanthological
+acanthology
+acantholysis
+acanthoma
+acanthomas
+Acanthomeridae
+acanthon
+Acanthopanax
+Acanthophis
+acanthophorous
+acanthopod
+acanthopodous
+acanthopomatous
+acanthopore
+acanthopteran
+Acanthopteri
+acanthopterous
+acanthopterygian
+Acanthopterygii
+acanthoses
+acanthosis
+acanthotic
+acanthous
+Acanthuridae
+Acanthurus
+acanthus
+acanthuses
+acanthuthi
+acapnia
+acapnial
+acapnias
+acappella
+acapsular
+acapu
+Acapulco
+acapulco
+acara
+Acarapis
+acarari
+acardia
+acardiac
+acardite
+acari
+acarian
+acariasis
+acariatre
+acaricidal
+acaricide
+acarid
+Acarida
+acaridae
+acaridan
+acaridans
+Acaridea
+acaridean
+acaridomatia
+acaridomatium
+acarids
+acariform
+Acarina
+acarine
+acarines
+acarinosis
+Acarnan
+acarocecidia
+acarocecidium
+acarodermatitis
+acaroid
+acarol
+acarologist
+acarology
+acarophilous
+acarophobia
+acarotoxic
+acarpellous
+acarpelous
+acarpous
+Acarus
+acarus
+ACAS
+acast
+Acastus
+acatalectic
+acatalepsia
+acatalepsy
+acataleptic
+acatallactic
+acatamathesia
+acataphasia
+acataposis
+acatastasia
+acatastatic
+acate
+acategorical
+acater
+acatery
+acates
+acatharsia
+acatharsy
+acatholic
+acaudal
+acaudate
+acaudelescent
+acaulescence
+acaulescent
+acauline
+acaulose
+acaulous
+ACAWS
+ACB
+ACBL
+ACC
+acc
+acc.
+acca
+accable
+Accad
+accademia
+Accadian
+accadian
+Accalia
+acce
+accede
+acceded
+accedence
+acceder
+acceders
+accedes
+acceding
+accel
+accel.
+accelerable
+accelerando
+accelerant
+accelerate
+accelerated
+acceleratedly
+accelerates
+accelerating
+acceleratingly
+acceleration
+accelerations
+accelerative
+accelerator
+acceleratorh
+accelerators
+acceleratory
+accelerograph
+accelerometer
+accelerometers
+accend
+accendibility
+accendible
+accensed
+accension
+accensor
+accent
+accented
+accenting
+accentless
+accentor
+accentors
+accents
+accentuable
+accentual
+accentuality
+accentually
+accentuate
+accentuated
+accentuates
+accentuating
+accentuation
+accentuations
+accentuator
+accentus
+accept
+acceptabilities
+acceptability
+acceptable
+acceptableness
+acceptably
+acceptance
+acceptances
+acceptancies
+acceptancy
+acceptant
+acceptation
+acceptavit
+accepted
+acceptedly
+acceptee
+acceptees
+accepter
+accepters
+acceptilate
+acceptilated
+acceptilating
+acceptilation
+accepting
+acceptingly
+acceptingness
+acception
+acceptive
+acceptor
+acceptors
+acceptress
+accepts
+accerse
+accersition
+accersitor
+access
+accessability
+accessable
+accessaries
+accessarily
+accessariness
+accessary
+accessaryship
+accessed
+accesses
+accessibilities
+accessibility
+accessible
+accessibleness
+accessibly
+accessing
+accession
+accessional
+accessioned
+accessioner
+accessioning
+accessions
+accessit
+accessive
+accessively
+accessless
+accessor
+accessorial
+accessories
+accessorii
+accessorily
+accessoriness
+accessorius
+accessoriusorii
+accessorize
+accessorized
+accessorizing
+accessors
+accessory
+acciaccatura
+acciaccaturas
+acciaccature
+accidence
+accidencies
+accidency
+accident
+accidental
+accidentalism
+accidentalist
+accidentality
+accidentally
+accidentalness
+accidentals
+accidentarily
+accidentary
+accidented
+accidential
+accidentiality
+accidently
+accident-prone
+accidents
+accidia
+accidias
+accidie
+accidies
+accinge
+accinged
+accinging
+accipenser
+accipient
+Accipiter
+accipiter
+accipitral
+accipitrary
+Accipitres
+accipitrine
+accipter
+accise
+accismus
+accite
+Accius
+acclaim
+acclaimable
+acclaimed
+acclaimer
+acclaimers
+acclaiming
+acclaims
+acclamation
+acclamations
+acclamator
+acclamatory
+acclimatable
+acclimatation
+acclimate
+acclimated
+acclimatement
+acclimates
+acclimating
+acclimation
+acclimations
+acclimatisable
+acclimatisation
+acclimatise
+acclimatised
+acclimatiser
+acclimatising
+acclimatizable
+acclimatization
+acclimatizations
+acclimatize
+acclimatized
+acclimatizer
+acclimatizes
+acclimatizing
+acclimature
+acclinal
+acclinate
+acclivities
+acclivitous
+acclivity
+acclivous
+accloy
+accoast
+accoil
+Accokeek
+accolade
+accoladed
+accolades
+accolated
+accolent
+accoll
+accolle
+accolled
+accollee
+Accomac
+accombination
+accommodable
+accommodableness
+accommodate
+accommodated
+accommodately
+accommodateness
+accommodates
+accommodating
+accommodatingly
+accommodatingness
+accommodation
+accommodational
+accommodationist
+accommodations
+accommodative
+accommodatively
+accommodativeness
+accommodator
+accommodators
+accomodate
+accompanable
+accompanied
+accompanier
+accompanies
+accompaniment
+accompanimental
+accompaniments
+accompanist
+accompanists
+accompany
+accompanying
+accompanyist
+accomplement
+accompletive
+accompli
+accomplice
+accomplices
+accompliceship
+accomplicity
+accomplis
+accomplish
+accomplishable
+accomplished
+accomplisher
+accomplishers
+accomplishes
+accomplishing
+accomplishment
+accomplishments
+accomplisht
+accompt
+accord
+accordable
+accordance
+accordances
+accordancy
+accordant
+accordantly
+accordatura
+accordaturas
+accordature
+accorded
+accorder
+accorders
+according
+accordingly
+accordion
+accordionist
+accordionists
+accordions
+accords
+accorporate
+accorporation
+accost
+accostable
+accosted
+accosting
+accosts
+accouche
+accouchement
+accouchements
+accoucheur
+accoucheurs
+accoucheuse
+accoucheuses
+accounsel
+account
+accountabilities
+accountability
+accountable
+accountableness
+accountably
+accountancies
+accountancy
+accountant
+accountants
+accountantship
+accounted
+accounter
+accounters
+accounting
+accountings
+accountment
+accountrement
+accounts
+accouple
+accouplement
+accourage
+accourt
+accouter
+accoutered
+accoutering
+accouterment
+accouterments
+accouters
+accoutre
+accoutred
+accoutrement
+accoutrements
+accoutres
+accoutring
+Accoville
+accoy
+accoyed
+accoying
+ACCRA
+Accra
+accra
+accrease
+accredit
+accreditable
+accreditate
+accreditation
+accreditations
+accredited
+accreditee
+accrediting
+accreditment
+accredits
+accrementitial
+accrementition
+accresce
+accrescence
+accrescendi
+accrescendo
+accrescent
+accretal
+accrete
+accreted
+accretes
+accreting
+accretion
+accretionary
+accretions
+accretive
+accriminate
+Accrington
+accroach
+accroached
+accroaching
+accroachment
+accroides
+accruable
+accrual
+accruals
+accrue
+accrued
+accruement
+accruer
+accrues
+accruing
+ACCS
+ACCT
+acct
+acct.
+accts
+accubation
+accubita
+accubitum
+accubitus
+accueil
+accultural
+acculturate
+acculturated
+acculturates
+acculturating
+acculturation
+acculturational
+acculturationist
+acculturative
+acculturize
+acculturized
+acculturizing
+accum
+accumb
+accumbency
+accumbent
+accumber
+accumulable
+accumulate
+accumulated
+accumulates
+accumulating
+accumulation
+accumulations
+accumulativ
+accumulative
+accumulatively
+accumulativeness
+accumulator
+accumulators
+accupy
+accur
+accuracies
+accuracy
+accurate
+accurately
+accurateness
+accuratenesses
+accurre
+accurse
+accursed
+accursedly
+accursedness
+accursing
+accurst
+accurtation
+accus
+accusable
+accusably
+accusal
+accusals
+accusant
+accusants
+accusation
+accusations
+accusatival
+accusative
+accusative-dative
+accusatively
+accusativeness
+accusatives
+accusator
+accusatorial
+accusatorially
+accusatory
+accusatrix
+accusatrixes
+accuse
+accused
+accuser
+accusers
+accuses
+accusing
+accusingly
+accusive
+accusor
+accustom
+accustomation
+accustomed
+accustomedly
+accustomedness
+accustoming
+accustomize
+accustomized
+accustomizing
+accustoms
+Accutron
+ACD
+ACDA
+AC-DC
+AC/DC
+ACE
+Ace
+ace
+-acea
+aceacenaphthene
+-aceae
+-acean
+aceanthrene
+aceanthrenequinone
+acecaffin
+acecaffine
+aceconitic
+aced
+acedia
+acediamin
+acediamine
+acedias
+acediast
+acedy
+ace-high
+aceite
+aceituna
+Aceldama
+aceldama
+aceldamas
+acellular
+Acemetae
+Acemetic
+acemila
+acenaphthene
+acenaphthenyl
+acenaphthylene
+acenesthesia
+acensuada
+acensuador
+acentric
+acentrous
+aceologic
+aceology
+-aceous
+acephal
+Acephala
+acephala
+acephalan
+Acephali
+acephali
+acephalia
+Acephalina
+acephaline
+acephalism
+acephalist
+Acephalite
+acephalocyst
+acephalous
+acephalus
+acepots
+acequia
+acequiador
+acequias
+Acer
+Aceraceae
+aceraceous
+Acerae
+Acerata
+acerate
+acerated
+Acerates
+acerathere
+Aceratherium
+aceratosis
+acerb
+Acerbas
+acerbate
+acerbated
+acerbates
+acerbating
+acerber
+acerbest
+acerbic
+acerbically
+acerbities
+acerbitude
+acerbity
+acerbityacerose
+acerbly
+acerbophobia
+acerdol
+aceric
+acerin
+acerli
+acerola
+acerolas
+acerose
+acerous
+acerra
+acers
+acertannin
+acerval
+acervate
+acervately
+acervatim
+acervation
+acervative
+acervose
+acervuli
+acervuline
+acervulus
+aces
+acescence
+acescency
+acescent
+acescents
+aceship
+Acesius
+acesodyne
+acesodynous
+Acessamenus
+Acestes
+acestoma
+acet-
+aceta
+acetable
+acetabula
+acetabular
+Acetabularia
+acetabularia
+acetabuliferous
+acetabuliform
+acetabulous
+acetabulum
+acetabulums
+acetacetic
+acetal
+acetaldehydase
+acetaldehyde
+acetaldehydrase
+acetaldol
+acetalization
+acetalize
+acetals
+acetamid
+acetamide
+acetamidin
+acetamidine
+acetamido
+acetamids
+acetaminol
+Acetaminophen
+acetaminophen
+acetanilid
+acetanilide
+acetanion
+acetaniside
+acetanisidide
+acetanisidine
+acetannin
+acetarious
+acetars
+acetarsone
+acetary
+acetate
+acetated
+acetates
+acetation
+acetazolamide
+acetbromamide
+acetenyl
+Acetes
+acethydrazide
+acetiam
+acetic
+acetification
+acetified
+acetifier
+acetifies
+acetify
+acetifying
+acetimeter
+acetimetric
+acetimetry
+acetin
+acetine
+acetins
+acetite
+acetize
+acetla
+acetmethylanilide
+acetnaphthalide
+aceto-
+acetoacetanilide
+acetoacetate
+acetoacetic
+acetoamidophenol
+acetoarsenite
+Acetobacter
+acetobacter
+acetobenzoic
+acetobromanilide
+acetochloral
+acetocinnamene
+acetoin
+acetol
+acetolysis
+acetolytic
+acetometer
+acetometric
+acetometrical
+acetometrically
+acetometry
+acetomorphin
+acetomorphine
+acetonaemia
+acetonaemic
+acetonaphthone
+acetonate
+acetonation
+acetone
+acetonemia
+acetonemic
+acetones
+acetonic
+acetonitrile
+acetonization
+acetonize
+acetonuria
+acetonurometer
+acetonyl
+acetonylacetone
+acetonylidene
+acetophenetide
+acetophenetidin
+acetophenetidine
+acetophenin
+acetophenine
+acetophenone
+acetopiperone
+acetopyrin
+acetopyrine
+acetosalicylic
+acetose
+acetosity
+acetosoluble
+acetostearin
+acetothienone
+acetotoluid
+acetotoluide
+acetotoluidine
+acetous
+acetoveratrone
+acetoxim
+acetoxime
+acetoxyl
+acetoxyls
+acetoxyphthalide
+acetphenetid
+acetphenetidin
+acetract
+acettoluide
+acetum
+aceturic
+acetyl
+acetylacetonates
+acetylacetone
+acetylamine
+acetylaminobenzene
+acetylaniline
+acetylasalicylic
+acetylate
+acetylated
+acetylating
+acetylation
+acetylative
+acetylator
+acetylbenzene
+acetylbenzoate
+acetylbenzoic
+acetylbiuret
+acetylcarbazole
+acetylcellulose
+acetylcholine
+acetylcholinesterase
+acetylcholinic
+acetylcyanide
+acetylenation
+acetylene
+acetylenediurein
+acetylenes
+acetylenic
+acetylenogen
+acetylenyl
+acetylfluoride
+acetylglycin
+acetylglycine
+acetylhydrazine
+acetylic
+acetylid
+acetylide
+acetyliodide
+acetylizable
+acetylization
+acetylize
+acetylized
+acetylizer
+acetylizing
+acetylmethylcarbinol
+acetylperoxide
+acetylphenol
+acetylphenylhydrazine
+acetylrosaniline
+acetyls
+acetylsalicylate
+acetylsalicylic
+acetylsalol
+acetyltannin
+acetylthymol
+acetyltropeine
+acetylurea
+Acey
+acey-deucy
+ACF
+ACGI
+ac-globulin
+ACH
+ach
+Achab
+Achad
+Achaea
+Achaean
+Achaemenes
+Achaemenian
+Achaemenid
+Achaemenidae
+Achaemenides
+Achaemenidian
+Achaemenids
+achaenocarp
+Achaenodon
+Achaeta
+achaetous
+Achaeus
+achafe
+achage
+Achagua
+Achaia
+Achaian
+Achakzai
+achalasia
+Achamoth
+Achan
+Achango
+achape
+achaque
+achar
+Achariaceae
+Achariaceous
+acharne
+acharnement
+Acharnians
+acharya
+achate
+Achates
+achates
+Achatina
+Achatinella
+Achatinidae
+achatour
+Achaz
+ache
+acheat
+achech
+acheck
+ached
+acheer
+ACHEFT
+acheilary
+acheilia
+acheilous
+acheiria
+acheirous
+acheirus
+Achelous
+Achen
+achene
+achenes
+achenia
+achenial
+achenium
+achenocarp
+achenodia
+achenodium
+acher
+Acherman
+Achernar
+Acheron
+acheron
+Acheronian
+acheronian
+Acherontic
+acherontic
+Acherontical
+aches
+Acheson
+achesoun
+achete
+Achetidae
+Acheulean
+acheulean
+Acheulian
+acheweed
+achier
+achiest
+achievability
+achievable
+achieve
+achieved
+achievement
+achievements
+achiever
+achievers
+achieves
+achieving
+achigan
+achilary
+Achill
+achill
+Achille
+Achillea
+achillea
+Achillean
+achillean
+achilleas
+Achilleid
+achillein
+achilleine
+Achilles
+achilles
+Achillize
+achillize
+achillobursitis
+achillodynia
+achilous
+Achimaas
+achime
+Achimelech
+Achimenes
+achimenes
+Achinese
+achiness
+achinesses
+aching
+achingly
+achiote
+achiotes
+achira
+achirite
+Achish
+Achitophel
+achkan
+achlamydate
+Achlamydeae
+achlamydeous
+achlorhydria
+achlorhydric
+achlorophyllous
+achloropsia
+achluophobia
+Achmed
+Achmetha
+achoke
+acholia
+acholias
+acholic
+Acholoe
+acholous
+acholuria
+acholuric
+Achomawi
+achondrite
+achondritic
+achondroplasia
+achondroplastic
+achoo
+achor
+achordal
+Achordata
+achordate
+Achorion
+Achorn
+Achras
+achras
+achree
+achroacyte
+Achroanthes
+achrodextrin
+achrodextrinase
+achroglobin
+achroiocythaemia
+achroiocythemia
+achroite
+achroma
+achromacyte
+achromasia
+achromat
+achromat-
+achromate
+Achromatiaceae
+achromatic
+achromatically
+achromaticity
+achromatin
+achromatinic
+achromatisation
+achromatise
+achromatised
+achromatising
+achromatism
+Achromatium
+achromatizable
+achromatization
+achromatize
+achromatized
+achromatizing
+achromatocyte
+achromatolysis
+achromatope
+achromatophil
+achromatophile
+achromatophilia
+achromatophilic
+achromatopia
+achromatopsia
+achromatopsy
+achromatosis
+achromatous
+achromats
+achromaturia
+achromia
+achromic
+Achromobacter
+achromobacter
+Achromobacterieae
+achromoderma
+achromophilous
+achromotrichia
+achromous
+Achromycin
+achronical
+achronism
+achronychous
+achroo-
+achroodextrin
+achroodextrinase
+achroous
+achropsia
+Achsah
+achtehalber
+achtel
+achtelthaler
+achter
+achterveld
+Achuas
+achuete
+achy
+ach-y-fi
+achylia
+achylous
+achymia
+achymous
+Achyranthes
+Achyrodes
+acichlorid
+acichloride
+acicula
+aciculae
+acicular
+acicularity
+acicularly
+aciculas
+aciculate
+aciculated
+aciculum
+aciculums
+acid
+acidaemia
+Acidalium
+Acidanthera
+acidanthera
+Acidaspis
+acid-binding
+acidemia
+acidemias
+acider
+acid-fast
+acid-fastness
+acid-forming
+acid-head
+acidhead
+acidheads
+acidic
+acidiferous
+acidifiable
+acidifiant
+acidific
+acidification
+acidified
+acidifier
+acidifiers
+acidifies
+acidify
+acidifying
+acidimeter
+acidimetric
+acidimetrical
+acidimetrically
+acidimetry
+acidite
+acidities
+acidity
+acidize
+acidized
+acidizing
+acidly
+acidness
+acidnesses
+acidogenic
+acidoid
+acidology
+acidolysis
+acidometer
+acidometry
+acidophil
+acidophile
+acidophilic
+acidophilous
+acidophilus
+acidoproteolytic
+acidoses
+acidosis
+acidosteophyte
+acidotic
+acidproof
+acids
+acid-treat
+acidulant
+acidulate
+acidulated
+acidulates
+acidulating
+acidulation
+acidulent
+acidulous
+acidulously
+acidulousness
+aciduria
+acidurias
+aciduric
+acidy
+acidyl
+Acie
+acier
+acierage
+Acieral
+acierate
+acierated
+acierates
+acierating
+acieration
+acies
+aciform
+aciliate
+aciliated
+Acilius
+Acima
+acinaceous
+acinaces
+acinacifoliate
+acinacifolious
+acinaciform
+acinacious
+acinacity
+acinar
+acinarious
+acinary
+Acineta
+Acinetae
+acinetae
+acinetan
+Acinetaria
+acinetarian
+acinetic
+acinetiform
+Acinetina
+acinetinan
+acing
+acini
+acinic
+aciniform
+acinose
+acinotubular
+acinous
+acinuni
+acinus
+-acious
+Acipenser
+acipenser
+Acipenseres
+acipenserid
+Acipenseridae
+acipenserine
+acipenseroid
+Acipenseroidei
+Acis
+-acitate
+-acity
+aciurgy
+ACK
+ack
+ack-ack
+ackee
+ackees
+Acker
+acker
+Ackerley
+Ackerly
+Ackerman
+Ackermanville
+ackey
+ackeys
+Ackler
+Ackley
+ackman
+ackmen
+acknew
+acknow
+acknowing
+acknowledge
+acknowledgeable
+acknowledged
+acknowledgedly
+acknowledgement
+acknowledgements
+acknowledger
+acknowledgers
+acknowledges
+acknowledging
+acknowledgment
+acknowledgments
+acknown
+ack-pirate
+ackton
+Ackworth
+ACL
+aclastic
+acle
+acleidian
+acleistocardia
+acleistous
+Aclemon
+aclidian
+aclinal
+aclinic
+a-clock
+acloud
+ACLS
+ACLU
+aclu
+aclydes
+aclys
+ACM
+Acmaea
+Acmaeidae
+acmaesthesia
+acmatic
+acme
+acmes
+acmesthesia
+acmic
+Acmispon
+acmite
+Acmon
+acne
+acned
+acneform
+acneiform
+acnemia
+acnes
+Acnida
+acnodal
+acnode
+acnodes
+ACO
+acoasm
+acoasma
+a-coast
+Acocanthera
+acocantherin
+acock
+a-cock-bill
+acockbill
+a-cock-horse
+acocotl
+Acoela
+Acoelomata
+acoelomate
+acoelomatous
+Acoelomi
+acoelomous
+acoelous
+Acoemetae
+Acoemeti
+Acoemetic
+acoenaesthesia
+ACOF
+acoin
+acoine
+Acol
+Acolapissa
+acold
+Acolhua
+Acolhuan
+acologic
+acology
+acolous
+acoluthic
+acolyctine
+acolyte
+acolytes
+acolyth
+acolythate
+acolytus
+Acoma
+acoma
+acomia
+acomous
+a-compass
+aconative
+Aconcagua
+acondylose
+acondylous
+acone
+aconelline
+aconic
+aconin
+aconine
+aconital
+aconite
+aconites
+aconitia
+aconitic
+aconitin
+aconitine
+Aconitum
+aconitum
+aconitums
+acontia
+Acontias
+acontium
+Acontius
+aconuresis
+acool
+acop
+acopic
+acopon
+acopyrin
+acopyrine
+acor
+acorea
+acoria
+acorn
+acorned
+acorns
+acorn-shell
+Acorus
+acorus
+acosmic
+acosmism
+acosmist
+acosmistic
+acost
+Acosta
+acotyledon
+acotyledonous
+acouasm
+acouchi
+acouchy
+acoumeter
+acoumetry
+acounter
+acouometer
+acouophonia
+acoup
+acoupa
+acoupe
+acousma
+acousmas
+acousmata
+acousmatic
+acoustic
+acoustical
+acoustically
+acoustician
+acoustico-
+acousticolateral
+Acousticon
+acousticophobia
+acoustics
+acoustoelectric
+ACP
+acpt
+acpt.
+Acquah
+acquaint
+acquaintance
+acquaintances
+acquaintanceship
+acquaintanceships
+acquaintancy
+acquaintant
+acquainted
+acquaintedness
+acquainting
+acquaints
+Acquaviva
+acquent
+acquereur
+acquest
+acquests
+acquiesce
+acquiesced
+acquiescement
+acquiescence
+acquiescences
+acquiescency
+acquiescent
+acquiescently
+acquiescer
+acquiesces
+acquiescing
+acquiescingly
+acquiesence
+acquiet
+acquirability
+acquirable
+acquire
+acquired
+acquirement
+acquirements
+acquirenda
+acquirer
+acquirers
+acquires
+acquiring
+acquisible
+acquisita
+acquisite
+acquisited
+acquisition
+acquisitional
+acquisitions
+acquisitive
+acquisitively
+acquisitiveness
+acquisitor
+acquisitum
+acquist
+acquit
+acquital
+acquitment
+acquits
+acquittal
+acquittals
+acquittance
+acquitted
+acquitter
+acquitting
+acquophonia
+acr-
+Acra
+Acrab
+acracy
+Acraea
+acraein
+Acraeinae
+acraldehyde
+Acrania
+acrania
+acranial
+acraniate
+acrasia
+Acrasiaceae
+Acrasiales
+acrasias
+Acrasida
+Acrasieae
+acrasin
+acrasins
+Acraspeda
+acraspedote
+acrasy
+acratia
+acraturesis
+acrawl
+acraze
+Acre
+acre
+acreable
+acreage
+acreages
+acreak
+acream
+acred
+acre-dale
+Acredula
+acre-foot
+acre-inch
+acreman
+acremen
+Acres
+acres
+acrestaff
+acrid
+acridan
+acridane
+acrider
+acridest
+acridian
+acridic
+acridid
+Acrididae
+Acridiidae
+acridin
+acridine
+acridines
+acridinic
+acridinium
+acridities
+acridity
+Acridium
+acridly
+acridness
+acridnesses
+acridone
+acridonium
+acridophagus
+acridyl
+acriflavin
+acriflavine
+Acrilan
+acrimonies
+acrimonious
+acrimoniously
+acrimoniousness
+acrimony
+acrindolin
+acrindoline
+acrinyl
+acrisia
+Acrisius
+acrisy
+Acrita
+acrita
+acritan
+acrite
+acritical
+acritochromacy
+acritol
+acritude
+acrity
+ACRNEMA
+acro-
+Acroa
+acroaesthesia
+acroama
+acroamata
+acroamatic
+acroamatical
+acroamatics
+acroanesthesia
+acroarthritis
+acroasis
+acroasphyxia
+acroataxia
+acroatic
+acrobacies
+acrobacy
+acrobat
+Acrobates
+acrobatholithic
+acrobatic
+acrobatical
+acrobatically
+acrobatics
+acrobatism
+acrobats
+acroblast
+acrobryous
+acrobystitis
+Acrocarpi
+acrocarpous
+acrocentric
+acrocephalia
+acrocephalic
+acrocephalous
+acrocephaly
+Acrocera
+Acroceratidae
+Acroceraunian
+Acroceridae
+Acrochordidae
+Acrochordinae
+acrochordon
+acrock
+Acroclinium
+Acrocomia
+acroconidium
+acrocontracture
+acrocoracoid
+Acrocorinth
+acrocyanosis
+acrocyst
+acrodactyla
+acrodactylum
+acrodermatitis
+acrodont
+acrodontism
+acrodonts
+acrodrome
+acrodromous
+Acrodus
+acrodynia
+acroesthesia
+acrogamous
+acrogamy
+acrogen
+acrogenic
+acrogenous
+acrogenously
+acrogens
+acrography
+Acrogynae
+acrogynae
+acrogynous
+acrolein
+acroleins
+acrolith
+acrolithan
+acrolithic
+acroliths
+acrologic
+acrologically
+acrologies
+acrologism
+acrologue
+acrology
+acromania
+acromastitis
+acromegalia
+acromegalic
+acromegalies
+acromegaly
+acromelalgia
+acrometer
+acromia
+acromial
+acromicria
+acromimia
+acromioclavicular
+acromiocoracoid
+acromiodeltoid
+acromiohumeral
+acromiohyoid
+acromion
+acromioscapular
+acromiosternal
+acromiothoracic
+acromonogrammatic
+acromphalus
+Acromyodi
+acromyodian
+acromyodic
+acromyodous
+acromyotonia
+acromyotonus
+acron
+acronal
+acronarcotic
+acroneurosis
+acronic
+acronical
+acronically
+acronichal
+acronichally
+acronomy
+acronyc
+acronycal
+acronycally
+acronych
+acronychal
+acronychally
+acronychous
+Acronycta
+acronyctous
+acronym
+acronymic
+acronymically
+acronymize
+acronymized
+acronymizing
+acronymous
+acronyms
+acronyx
+acrook
+acroparalysis
+acroparesthesia
+acropathology
+acropathy
+acropetal
+acropetally
+acrophobia
+acrophonetic
+acrophonic
+acrophonically
+acrophonies
+acrophony
+acropodia
+acropodium
+acropoleis
+Acropolis
+acropolis
+acropolises
+acropolitan
+Acropora
+acropore
+acrorhagus
+acrorrheuma
+acrosarc
+acrosarca
+acrosarcum
+acroscleriasis
+acroscleroderma
+acroscopic
+acrose
+acrosome
+acrosomes
+acrosphacelus
+acrospire
+acrospired
+acrospiring
+acrospore
+acrosporous
+across
+across-the-board
+acrostic
+acrostical
+acrostically
+acrostichal
+Acrosticheae
+acrostichic
+acrostichoid
+Acrostichum
+acrosticism
+acrostics
+acrostolia
+acrostolion
+acrostolium
+acrotarsial
+acrotarsium
+acroteleutic
+acroter
+acroteral
+acroteria
+acroterial
+acroteric
+acroterion
+acroterium
+acroterteria
+Acrothoracica
+acrotic
+acrotism
+acrotisms
+acrotomous
+Acrotreta
+Acrotretidae
+acrotrophic
+acrotrophoneurosis
+Acrux
+ACRV
+a-cry
+Acrydium
+acryl
+acrylaldehyde
+acrylate
+acrylates
+acrylic
+acrylics
+acrylonitrile
+acrylyl
+ACS
+ACSE
+ACSNET
+ACSU
+ACT
+act
+Acta
+acta
+actability
+actable
+Actaea
+Actaeaceae
+Actaeon
+actaeon
+Actaeonidae
+acted
+actg
+actg.
+ACTH
+Actiad
+Actian
+actification
+actifier
+actify
+actin
+actin-
+actinal
+actinally
+actinautographic
+actinautography
+actine
+actinenchyma
+acting
+acting-out
+actings
+Actinia
+actinia
+actiniae
+actinian
+actinians
+Actiniaria
+actiniarian
+actinias
+actinic
+actinical
+actinically
+actinide
+actinides
+Actinidia
+Actinidiaceae
+actiniferous
+actiniform
+actinine
+actiniochrome
+actiniohematin
+Actiniomorpha
+actinism
+actinisms
+Actinistia
+actinium
+actiniums
+actino-
+actinobaccilli
+actinobacilli
+actinobacillosis
+actinobacillotic
+Actinobacillus
+actinobacillus
+actinoblast
+actinobranch
+actinobranchia
+actinocarp
+actinocarpic
+actinocarpous
+actinochemical
+actinochemistry
+actinocrinid
+Actinocrinidae
+actinocrinite
+Actinocrinus
+actinocutitis
+actinodermatitis
+actinodielectric
+actinodrome
+actinodromous
+actinoelectric
+actinoelectrically
+actinoelectricity
+actinogonidiate
+actinogram
+actinograph
+actinographic
+actinography
+actinoid
+Actinoida
+Actinoidea
+actinoids
+actinolite
+actinolitic
+actinologous
+actinologue
+actinology
+actinomere
+actinomeric
+actinometer
+actinometers
+actinometric
+actinometrical
+actinometricy
+actinometry
+actinomorphic
+actinomorphous
+actinomorphy
+Actinomyces
+actinomyces
+actinomycese
+actinomycesous
+actinomycestal
+Actinomycetaceae
+actinomycetal
+Actinomycetales
+actinomycete
+actinomycetous
+actinomycin
+actinomycoma
+actinomycosis
+actinomycosistic
+actinomycotic
+Actinomyxidia
+Actinomyxidiida
+actinon
+Actinonema
+actinoneuritis
+actinons
+actinophone
+actinophonic
+actinophore
+actinophorous
+actinophryan
+Actinophrys
+actinopod
+Actinopoda
+actinopraxis
+actinopteran
+Actinopteri
+actinopterous
+actinopterygian
+Actinopterygii
+actinopterygious
+actinoscopy
+actinosoma
+actinosome
+Actinosphaerium
+actinost
+actinostereoscopy
+actinostomal
+actinostome
+actinotherapeutic
+actinotherapeutics
+actinotherapy
+actinotoxemia
+actinotrichium
+actinotrocha
+actinouranium
+Actinozoa
+actinozoal
+actinozoan
+actinozoon
+actins
+actinula
+actinulae
+action
+actionability
+actionable
+actionably
+actional
+actionary
+actioner
+actiones
+actionist
+actionize
+actionized
+actionizing
+actionless
+actions
+action-taking
+actious
+Actipylea
+Actis
+Actium
+activable
+activate
+activated
+activates
+activating
+activation
+activations
+activator
+activators
+active
+active-bodied
+active-limbed
+actively
+active-minded
+activeness
+actives
+activin
+activism
+activisms
+activist
+activistic
+activists
+activital
+activities
+activity
+activize
+activized
+activizing
+actless
+actomyosin
+Acton
+acton
+Actor
+actor
+Actoridae
+actorish
+actor-manager
+actor-proof
+actors
+actorship
+actory
+actos
+ACTPU
+actress
+actresses
+actressy
+ACTS
+Acts
+acts
+ACTU
+actu
+actual
+actualisation
+actualise
+actualised
+actualising
+actualism
+actualist
+actualistic
+actualities
+actuality
+actualization
+actualizations
+actualize
+actualized
+actualizes
+actualizing
+actually
+actualness
+actuals
+actuarial
+actuarially
+actuarian
+actuaries
+actuary
+actuaryship
+actuate
+actuated
+actuates
+actuating
+actuation
+actuator
+actuators
+actuose
+ACTUP
+acture
+acturience
+actus
+actutate
+act-wait
+ACU
+acuaesthesia
+Acuan
+acuate
+acuating
+acuation
+Acubens
+acuchi
+acuclosure
+acuductor
+acuerdo
+acuerdos
+acuesthesia
+acuities
+acuity
+aculea
+aculeae
+Aculeata
+aculeate
+aculeated
+aculei
+aculeiform
+aculeolate
+aculeolus
+aculeus
+acumble
+acumen
+acumens
+acuminate
+acuminated
+acuminating
+acumination
+acuminose
+acuminous
+acuminulate
+acupress
+acupressure
+acupunctuate
+acupunctuation
+acupuncturation
+acupuncturator
+acupuncture
+acupunctured
+acupunctures
+acupuncturing
+acupuncturist
+acupuncturists
+acurative
+Acus
+acus
+acusection
+acusector
+acushla
+Acushnet
+acustom
+acutance
+acutances
+acutangular
+acutate
+acute
+acute-angled
+acutely
+acutenaculum
+acuteness
+acutenesses
+acuter
+acutes
+acutest
+acuti-
+acutiator
+acutifoliate
+Acutilinguae
+acutilingual
+acutilobate
+acutiplantar
+acutish
+acuto-
+acutograve
+acutonodose
+acutorsion
+ACV
+ACW
+ACWA
+Acworth
+ACWP
+acxoyatl
+-acy
+acy
+acyanoblepsia
+acyanopsia
+acyclic
+acyclically
+acyesis
+acyetic
+acyl
+acylal
+acylamido
+acylamidobenzene
+acylamino
+acylase
+acylate
+acylated
+acylates
+acylating
+acylation
+acylogen
+acyloin
+acyloins
+acyloxy
+acyloxymethane
+acyls
+acyrological
+acyrology
+acystia
+-ad
+A.D.
+AD
+Ad
+ad
+ad-
+ADA
+Ada
+Adabel
+Adabelle
+Adachi
+adactyl
+adactylia
+adactylism
+adactylous
+Adad
+adad
+adage
+adages
+adagial
+adagietto
+adagiettos
+adagio
+adagios
+adagissimo
+adagy
+Adah
+Adaha
+Adai
+Adaiha
+Adair
+Adairsville
+Adairville
+Adaize
+Adal
+Adala
+Adalai
+Adalard
+adalat
+Adalbert
+Adalheid
+Adali
+Adalia
+Adaliah
+adalid
+Adalie
+Adaline
+Adall
+Adallard
+Adam
+adam
+Adama
+adamance
+adamances
+adamancies
+adamancy
+Adam-and-Eve
+Adam-and-eve
+adam-and-eve
+adamant
+adamantean
+adamantine
+adamantinoma
+adamantlies
+adamantly
+adamantness
+adamantoblast
+adamantoblastoma
+adamantoid
+adamantoma
+adamants
+Adamas
+adamas
+Adamastor
+Adamawa
+Adamawa-Eastern
+adambulacral
+Adamec
+Adamek
+adamellite
+Adamello
+Adamhood
+Adamic
+Adamical
+Adamically
+Adamik
+Adamina
+Adaminah
+adamine
+Adamis
+Adamite
+adamite
+Adamitic
+Adamitical
+Adamitism
+Adamo
+Adamok
+Adams
+adams
+Adamsbasin
+Adamsburg
+Adamsen
+Adamsia
+adamsite
+adamsites
+Adamski
+Adam's-needle
+Adamson
+Adamstown
+Adamsun
+Adamsville
+Adan
+Adana
+a-dance
+adance
+a-dangle
+adangle
+Adansonia
+adansonia
+Adao
+Adapa
+adapid
+Adapis
+adapt
+adaptabilities
+adaptability
+adaptable
+adaptableness
+adaptably
+adaptation
+adaptational
+adaptationally
+adaptations
+adaptative
+adapted
+adaptedness
+adapter
+adapters
+adapting
+adaption
+adaptional
+adaptionism
+adaptions
+adaptitude
+adaptive
+adaptively
+adaptiveness
+adaptivity
+adaptometer
+adaptor
+adaptorial
+adaptors
+adapts
+Adar
+adar
+Adara
+adarbitrium
+adarme
+adarticulation
+adat
+adati
+adatis
+adatom
+adaty
+adaunt
+Adaurd
+adaw
+adawe
+adawlut
+adawn
+adaxial
+A-day
+Aday
+aday
+adays
+adazzle
+ADB
+A.D.C.
+ADC
+adc
+ADCCP
+ADCI
+adcon
+adcons
+adcraft
+ADD
+add
+add.
+Adda
+adda
+addability
+addable
+add-add
+Addam
+Addams
+addax
+addaxes
+ADDCP
+addda
+addebted
+added
+addedly
+addeem
+addend
+addenda
+addends
+addendum
+addendums
+adder
+adderbolt
+adderfish
+adders
+adder's-grass
+adder's-meat
+adder's-mouth
+adder's-mouths
+adderspit
+adder's-tongue
+adders-tongue
+adderwort
+Addi
+Addia
+addibility
+addible
+addice
+addicent
+addict
+addicted
+addictedness
+addicting
+addiction
+addictions
+addictive
+addictively
+addictiveness
+addictives
+addicts
+Addie
+Addiego
+Addiel
+Addieville
+addiment
+adding
+Addington
+addio
+Addis
+addis
+Addison
+addison
+Addisonian
+Addisoniana
+addita
+additament
+additamentary
+additiment
+addition
+additional
+additionally
+additionary
+additionist
+additions
+addititious
+additive
+additively
+additives
+additivity
+additory
+additum
+additur
+addle
+addlebrain
+addlebrained
+addled
+addlehead
+addleheaded
+addleheadedly
+addleheadedness
+addlement
+addleness
+addlepate
+addlepated
+addlepatedness
+addleplot
+addles
+addling
+addlings
+addlins
+addn
+addnl
+addoom
+addorsed
+addossed
+addr
+address
+addressability
+addressable
+addressed
+addressee
+addressees
+addresser
+addressers
+addresses
+addressful
+addressing
+Addressograph
+addressor
+addrest
+adds
+Addu
+adduce
+adduceable
+adduced
+adducent
+adducer
+adducers
+adduces
+adducible
+adducing
+adduct
+adducted
+adducting
+adduction
+adductive
+adductor
+adductors
+adducts
+addulce
+Addy
+Addyston
+-ade
+Ade
+ade
+a-dead
+adead
+Adebayo
+Adee
+adeem
+adeemed
+adeeming
+adeems
+a-deep
+adeep
+Adel
+Adela
+Adelaida
+Adelaide
+Adelaja
+adelantado
+adelantados
+adelante
+Adelanto
+Adelarthra
+Adelarthrosomata
+adelarthrosomatous
+adelaster
+Adelbert
+Adele
+Adelea
+Adeleidae
+Adelges
+Adelheid
+Adelia
+Adelice
+Adelina
+Adelind
+Adeline
+adeling
+adelite
+Adeliza
+Adell
+Adella
+Adelle
+adelocerous
+Adelochorda
+adelocodonic
+adelomorphic
+adelomorphous
+adelopod
+Adelops
+Adelphe
+Adelphi
+-adelphia
+Adelphia
+Adelphian
+adelphic
+Adelpho
+adelphogamy
+Adelphoi
+adelpholite
+adelphophagy
+-adelphous
+adelphous
+Adelric
+ademonist
+adempt
+adempted
+ademption
+Aden
+aden
+aden-
+Adena
+adenalgia
+adenalgy
+Adenanthera
+adenase
+adenasthenia
+Adenauer
+adendric
+adendritic
+adenectomies
+adenectomy
+adenectopia
+adenectopic
+adenemphractic
+adenemphraxis
+adenia
+adeniform
+adenin
+adenine
+adenines
+adenitis
+adenitises
+adenization
+adeno-
+adenoacanthoma
+adenoblast
+adenocancroid
+adenocarcinoma
+adenocarcinomas
+adenocarcinomata
+adenocarcinomatous
+adenocele
+adenocellulitis
+adenochondroma
+adenochondrosarcoma
+adenochrome
+adenocyst
+adenocystoma
+adenocystomatous
+adenodermia
+adenodiastasis
+adenodynia
+adenofibroma
+adenofibrosis
+adenogenesis
+adenogenous
+adenographer
+adenographic
+adenographical
+adenography
+adenohypersthenia
+adenohypophyseal
+adenohypophysial
+adenohypophysis
+adenoid
+adenoidal
+adenoidectomies
+adenoidectomy
+adenoidism
+adenoiditis
+adenoids
+adenoliomyofibroma
+adenolipoma
+adenolipomatosis
+adenologaditis
+adenological
+adenology
+adenolymphocele
+adenolymphoma
+adenoma
+adenomalacia
+adenomas
+adenomata
+adenomatome
+adenomatous
+adenomeningeal
+adenometritis
+adenomycosis
+adenomyofibroma
+adenomyoma
+adenomyxoma
+adenomyxosarcoma
+adenoncus
+adenoneural
+adenoneure
+adenopathy
+adenopharyngeal
+adenopharyngitis
+adenophlegmon
+Adenophora
+adenophore
+adenophoreus
+adenophorous
+adenophthalmia
+adenophyllous
+adenophyma
+adenopodous
+adenosarcoma
+adenosarcomas
+adenosarcomata
+adenosclerosis
+adenose
+adenoses
+adenosine
+adenosis
+adenostemonous
+Adenostoma
+adenotome
+adenotomic
+adenotomy
+adenotyphoid
+adenotyphus
+adenous
+adenoviral
+adenovirus
+adenoviruses
+adenyl
+adenylic
+adenylpyrophosphate
+adenyls
+Adeodatus
+Adeona
+Adephaga
+adephaga
+adephagan
+adephagia
+adephagous
+adeps
+adept
+adepter
+adeptest
+adeption
+adeptly
+adeptness
+adeptnesses
+adepts
+adeptship
+adequacies
+adequacy
+adequate
+adequately
+adequateness
+adequation
+adequative
+Ader
+adermia
+adermin
+adermine
+adesmy
+adespota
+adespoton
+Adessenarian
+adessenarian
+adessive
+Adest
+adeste
+adet
+adeuism
+adevism
+ADEW
+Adey
+ADF
+adfected
+adffroze
+adffrozen
+adfiliate
+adfix
+adfluxion
+adfreeze
+adfreezing
+ADFRF
+adfroze
+adfrozen
+Adger
+adglutinate
+Adhafera
+adhaka
+Adham
+adhamant
+Adhamh
+Adhara
+adharma
+adherant
+adhere
+adhered
+adherence
+adherences
+adherency
+adherend
+adherends
+adherent
+adherently
+adherents
+adherer
+adherers
+adheres
+adherescence
+adherescent
+adhering
+Adhern
+adhesion
+adhesional
+adhesions
+adhesive
+adhesively
+adhesivemeter
+adhesiveness
+adhesives
+adhibit
+adhibited
+adhibiting
+adhibition
+adhibits
+adhocracy
+adhort
+ADI
+Adi
+adiabat
+adiabatic
+adiabatically
+adiabolist
+adiactinic
+adiadochokinesia
+adiadochokinesis
+adiadokokinesi
+adiadokokinesia
+adiagnostic
+adiamorphic
+adiamorphism
+Adiana
+adiantiform
+Adiantum
+adiantum
+adiaphanous
+adiaphanousness
+adiaphon
+adiaphonon
+adiaphora
+adiaphoral
+adiaphoresis
+adiaphoretic
+adiaphorism
+adiaphorist
+adiaphoristic
+adiaphorite
+adiaphoron
+adiaphorous
+adiaphory
+adiapneustia
+adiate
+adiated
+adiathermal
+adiathermancy
+adiathermanous
+adiathermic
+adiathetic
+adiating
+adiation
+Adib
+adibasi
+Adi-buddha
+Adicea
+adicity
+Adie
+Adiel
+Adiell
+adience
+adient
+adieu
+adieus
+adieux
+Adige
+Adigei
+Adighe
+adighe
+adight
+Adigranth
+adigranth
+Adigun
+Adila
+Adim
+Adin
+Adina
+Adine
+Adinida
+adinidan
+adinole
+adinvention
+adion
+adios
+adipate
+adipescent
+adiphenine
+adipic
+adipinic
+adipocele
+adipocellulose
+adipocere
+adipoceriform
+adipocerite
+adipocerous
+adipocyte
+adipofibroma
+adipogenic
+adipogenous
+adipoid
+adipolysis
+adipolytic
+adipoma
+adipomata
+adipomatous
+adipometer
+adiponitrile
+adipopectic
+adipopexia
+adipopexic
+adipopexis
+adipose
+adiposeness
+adiposes
+adiposis
+adiposities
+adiposity
+adiposogenital
+adiposuria
+adipous
+adipsia
+adipsic
+adipsous
+adipsy
+adipyl
+Adirondack
+Adirondacks
+Adis
+adit
+adital
+aditio
+adits
+aditus
+Aditya
+Adivasi
+ADIZ
+adj
+adj.
+adjacence
+adjacencies
+adjacency
+adjacent
+adjacently
+adjag
+adject
+adjection
+adjectional
+adjectitious
+adjectival
+adjectivally
+adjective
+adjectively
+adjectives
+adjectivism
+adjectivitis
+adjiga
+adjiger
+adjoin
+adjoinant
+adjoined
+adjoinedly
+adjoiner
+adjoining
+adjoiningness
+adjoins
+adjoint
+adjoints
+adjourn
+adjournal
+adjourned
+adjourning
+adjournment
+adjournments
+adjourns
+adjoust
+adjt
+adjt.
+adjudge
+adjudgeable
+adjudged
+adjudger
+adjudges
+adjudging
+adjudgment
+adjudicata
+adjudicate
+adjudicated
+adjudicates
+adjudicating
+adjudication
+adjudications
+adjudicative
+adjudicator
+adjudicators
+adjudicatory
+adjudicature
+adjugate
+adjument
+adjunct
+adjunction
+adjunctive
+adjunctively
+adjunctly
+adjuncts
+Adjuntas
+adjuration
+adjurations
+adjuratory
+adjure
+adjured
+adjurer
+adjurers
+adjures
+adjuring
+adjuror
+adjurors
+adjust
+adjustability
+adjustable
+adjustable-pitch
+adjustably
+adjustage
+adjustation
+adjusted
+adjuster
+adjusters
+adjusting
+adjustive
+adjustment
+adjustmental
+adjustments
+adjustor
+adjustores
+adjustoring
+adjustors
+adjusts
+adjutage
+adjutancies
+adjutancy
+adjutant
+adjutant-general
+adjutants
+adjutantship
+adjutator
+adjute
+adjutor
+adjutorious
+adjutory
+adjutrice
+adjutrix
+adjuvant
+adjuvants
+adjuvate
+Adkins
+Adlai
+Adlar
+Adlare
+Adlay
+adlay
+Adlee
+adlegation
+adlegiare
+Adlei
+Adler
+Adlerian
+adlerian
+adless
+adlet
+Adley
+ad-lib
+ad-libbed
+ad-libber
+ad-libbing
+Adlumia
+adlumidin
+adlumidine
+adlumin
+adlumine
+ADM
+Adm
+Adm.
+adm
+Admah
+adman
+admarginate
+admass
+admaxillary
+ADMD
+admeasure
+admeasured
+admeasurement
+admeasurer
+admeasuring
+admedial
+admedian
+admen
+admensuration
+admerveylle
+Admete
+Admetus
+admetus
+admi
+admin
+adminicle
+adminicula
+adminicular
+adminiculary
+adminiculate
+adminiculation
+adminiculum
+administer
+administerd
+administered
+administerial
+administering
+administerings
+administers
+administrable
+administrant
+administrants
+administrate
+administrated
+administrates
+administrating
+administration
+administrational
+administrationist
+administrations
+administrative
+administratively
+administrator
+administrators
+administratorship
+administratress
+administratrices
+administratrix
+adminstration
+adminstrations
+admirability
+admirable
+admirableness
+admirably
+Admiral
+admiral
+admirals
+admiralship
+admiralships
+Admiralties
+admiralties
+admiralty
+admirance
+admiration
+admirations
+admirative
+admiratively
+admirator
+admire
+admired
+admiredly
+admirer
+admirers
+admires
+admiring
+admiringly
+admissability
+admissable
+admissibilities
+admissibility
+admissible
+admissibleness
+admissibly
+admission
+admissions
+admissive
+admissively
+admissory
+admit
+admits
+admittable
+admittance
+admittances
+admittatur
+admitted
+admittedly
+admittee
+admitter
+admitters
+admittible
+admitting
+admitty
+admix
+admixed
+admixes
+admixing
+admixt
+admixtion
+admixture
+admixtures
+admonish
+admonished
+admonisher
+admonishes
+admonishing
+admonishingly
+admonishment
+admonishments
+admonition
+admonitioner
+admonitionist
+admonitions
+admonitive
+admonitively
+admonitor
+admonitorial
+admonitorily
+admonitory
+admonitrix
+admortization
+admov
+admove
+admrx
+ADN
+Adna
+Adnah
+Adnan
+adnascence
+adnascent
+adnate
+adnation
+adnations
+Adne
+adnephrine
+adnerval
+adnescent
+adneural
+adnex
+adnexa
+adnexal
+adnexed
+adnexitis
+adnexopexy
+adnominal
+adnominally
+adnomination
+Adnopoz
+adnoun
+adnouns
+adnumber
+-ado
+Ado
+ado
+adobe
+adobes
+adobo
+adobos
+adod
+adolesce
+adolesced
+adolescence
+adolescences
+adolescency
+adolescent
+adolescently
+adolescents
+adolescing
+Adolf
+adolf
+Adolfo
+Adolph
+adolph
+Adolphe
+Adolpho
+Adolphus
+Adon
+adon
+Adona
+Adonai
+adonai
+Adonais
+Adonean
+Adonia
+Adoniad
+Adonian
+Adonias
+Adonic
+adonic
+Adonica
+adonidin
+Adonijah
+adonin
+Adoniram
+Adonis
+adonis
+adonises
+adonist
+adonite
+adonitol
+adonize
+adonized
+adonizing
+Adonoy
+a-doors
+adoors
+adoperate
+adoperation
+adopt
+adoptabilities
+adoptability
+adoptable
+adoptant
+adoptative
+adopted
+adoptedly
+adoptee
+adoptees
+adopter
+adopters
+adoptian
+adoptianism
+adoptianist
+adopting
+adoption
+adoptional
+adoptionism
+adoptionist
+adoptions
+adoptious
+adoptive
+adoptively
+adopts
+ador
+Adora
+adorability
+adorable
+adorableness
+adorably
+adoral
+adorally
+adorant
+Adorantes
+adoration
+adorations
+adoratory
+Adore
+adore
+adored
+Adoree
+adorer
+adorers
+adores
+Adoretus
+adoring
+adoringly
+Adorl
+adorn
+adornation
+Adorne
+adorned
+adorner
+adorners
+adorning
+adorningly
+adornment
+adornments
+adorno
+adornos
+adorns
+adorsed
+ados
+adosculation
+adossed
+adossee
+Adoula
+adoulie
+Adowa
+adown
+Adoxa
+Adoxaceae
+adoxaceous
+adoxies
+adoxography
+adoxy
+adoze
+ADP
+adp
+adp-
+adpao
+ADPCM
+adposition
+adpress
+adpromission
+adpromissor
+adq-
+adrad
+adradial
+adradially
+adradius
+Adramelech
+Adrammelech
+Adrastea
+Adrastos
+Adrastus
+Adrea
+adread
+adream
+adreamed
+adreamt
+adrectal
+Adrell
+adren-
+adrenal
+adrenalcortical
+adrenalectomies
+adrenalectomize
+adrenalectomized
+adrenalectomizing
+adrenalectomy
+Adrenalin
+adrenalin
+adrenaline
+adrenalize
+adrenally
+adrenalone
+adrenals
+adrench
+adrenergic
+adrenin
+adrenine
+adrenitis
+adreno
+adrenochrome
+adrenocortical
+adrenocorticosteroid
+adrenocorticotrophic
+adrenocorticotrophin
+adrenocorticotropic
+adrenolysis
+adrenolytic
+adrenomedullary
+adrenosterone
+adrenotrophin
+adrenotropic
+adrent
+Adrestus
+adret
+Adria
+Adriaen
+Adriaens
+Adrial
+adriamycin
+Adrian
+Adriana
+Adriane
+Adrianna
+Adrianne
+Adriano
+Adrianople
+Adrianopolis
+Adriatic
+adriatic
+Adriel
+Adriell
+Adrien
+Adriena
+Adriene
+Adrienne
+adrift
+adrip
+adrogate
+adroit
+adroiter
+adroitest
+adroitly
+adroitness
+adroitnesses
+Adron
+adroop
+adrop
+adrostal
+adrostral
+adrowse
+adrue
+adry
+ADS
+ads
+adsbud
+adscendent
+adscititious
+adscititiously
+adscript
+adscripted
+adscription
+adscriptitious
+adscriptitius
+adscriptive
+adscripts
+adsessor
+adsheart
+adsignification
+adsignify
+adsmith
+adsmithing
+adsorb
+adsorbability
+adsorbable
+adsorbate
+adsorbates
+adsorbed
+adsorbent
+adsorbents
+adsorbing
+adsorbs
+adsorption
+adsorptive
+adsorptively
+adsorptiveness
+ADSP
+adspiration
+ADSR
+adstipulate
+adstipulated
+adstipulating
+adstipulation
+adstipulator
+adstrict
+adstringe
+adsum
+ADT
+adterminal
+adtevac
+aduana
+adular
+adularescence
+adularescent
+adularia
+adularias
+adulate
+adulated
+adulates
+adulating
+adulation
+adulator
+adulators
+adulatory
+adulatress
+adulce
+Adullam
+Adullamite
+adullamite
+adult
+adulter
+adulterant
+adulterants
+adulterate
+adulterated
+adulterately
+adulterateness
+adulterates
+adulterating
+adulteration
+adulterations
+adulterator
+adulterators
+adulterer
+adulterers
+adulteress
+adulteresses
+adulteries
+adulterine
+adulterize
+adulterous
+adulterously
+adulterousness
+adultery
+adulthood
+adulthoods
+adulticidal
+adulticide
+adultlike
+adultly
+adultness
+adultoid
+adultress
+adults
+adumbral
+adumbrant
+adumbrate
+adumbrated
+adumbrates
+adumbrating
+adumbration
+adumbrations
+adumbrative
+adumbratively
+adumbrellar
+adunation
+adunc
+aduncate
+aduncated
+aduncity
+aduncous
+Adur
+adure
+adurent
+Adurol
+adusk
+adust
+adustion
+adustiosis
+adustive
+Aduwa
+adv
+adv.
+Advaita
+advance
+advanceable
+advanced
+advancedness
+advancement
+advancements
+advancer
+advancers
+advances
+advancing
+advancingly
+advancive
+advantage
+advantaged
+advantageous
+advantageously
+advantageousness
+advantages
+advantaging
+advect
+advected
+advecting
+advection
+advectitious
+advective
+advects
+advehent
+advena
+advenae
+advene
+advenience
+advenient
+Advent
+advent
+advential
+Adventism
+adventism
+Adventist
+adventist
+adventists
+adventitia
+adventitial
+adventitious
+adventitiously
+adventitiousness
+adventitiousnesses
+adventive
+adventively
+adventry
+advents
+adventual
+adventure
+adventured
+adventureful
+adventurement
+adventurer
+adventurers
+adventures
+adventureship
+adventuresome
+adventuresomely
+adventuresomeness
+adventuresomes
+adventuress
+adventuresses
+adventuring
+adventurish
+adventurism
+adventurist
+adventuristic
+adventurous
+adventurously
+adventurousness
+adverb
+adverbial
+adverbiality
+adverbialize
+adverbially
+adverbiation
+adverbless
+adverbs
+adversa
+adversant
+adversaria
+adversarial
+adversaries
+adversariness
+adversarious
+adversary
+adversative
+adversatively
+adverse
+adversed
+adversely
+adverseness
+adversifoliate
+adversifolious
+adversing
+adversion
+adversities
+adversity
+adversive
+adversus
+advert
+adverted
+advertence
+advertency
+advertent
+advertently
+adverting
+advertisable
+advertise
+advertised
+advertisee
+advertisement
+advertisements
+advertiser
+advertisers
+advertises
+advertising
+advertisings
+advertizable
+advertize
+advertized
+advertizement
+advertizer
+advertizes
+advertizing
+adverts
+advice
+adviceful
+advices
+advisabilities
+advisability
+advisable
+advisableness
+advisably
+advisal
+advisatory
+advise
+advised
+advisedly
+advisedness
+advisee
+advisees
+advisement
+advisements
+adviser
+advisers
+advisership
+advises
+advising
+advisive
+advisiveness
+adviso
+advisor
+advisories
+advisorily
+advisors
+advisory
+advisy
+advitant
+advocaat
+advocacies
+advocacy
+advocate
+advocated
+advocates
+advocateship
+advocatess
+advocating
+advocation
+advocative
+advocator
+advocatory
+advocatress
+advocatrice
+advocatrix
+advoke
+advolution
+advoteresse
+advowee
+advowry
+advowsance
+advowson
+advowsons
+advoyer
+advt
+advt.
+adward
+adwesch
+ady
+Adyge
+Adygei
+Adyghe
+adynamia
+adynamias
+adynamic
+adynamy
+adyta
+adyton
+adytta
+adytum
+adz
+adze
+adzer
+adzes
+Adzharia
+Adzharistan
+adzooks
+-ae
+AE
+ae
+ae-
+ae.
+AEA
+Aeacidae
+Aeacides
+Aeacus
+Aeaea
+Aeaean
+AEC
+Aechmagoras
+Aechmophorus
+aecia
+aecial
+aecidia
+Aecidiaceae
+aecidial
+aecidioform
+Aecidiomycetes
+aecidiospore
+aecidiostage
+aecidium
+aeciospore
+aeciostage
+aeciotelia
+aecioteliospore
+aeciotelium
+aecium
+aedeagal
+aedeagi
+aedeagus
+aedegi
+Aedes
+aedes
+aedicula
+aediculae
+aedicule
+Aedilberct
+aedile
+aediles
+aedileship
+aedilian
+aedilic
+aedilitian
+aedilities
+aedility
+aedine
+aedoeagi
+aedoeagus
+aedoeology
+Aedon
+Aeetes
+AEF
+aefald
+aefaldness
+aefaldy
+aefauld
+Aegaeon
+aegagri
+aegagropila
+aegagropilae
+aegagropile
+aegagropiles
+aegagrus
+Aegates
+Aegean
+aegean
+aegemony
+aeger
+Aegeria
+aegerian
+aegeriid
+Aegeriidae
+Aegesta
+Aegeus
+Aegia
+Aegiale
+Aegialeus
+Aegialia
+Aegialitis
+Aegicores
+aegicrania
+aegilops
+Aegimius
+Aegina
+Aeginaea
+Aeginetan
+Aeginetic
+Aegiochus
+Aegipan
+Aegir
+aegir
+aegirine
+aegirinolite
+aegirite
+AEGIS
+aegis
+aegises
+Aegisthus
+aegisthus
+Aegithalos
+Aegithognathae
+aegithognathism
+aegithognathous
+Aegium
+Aegle
+aegophony
+Aegopodium
+Aegospotami
+aegritude
+aegrotant
+aegrotat
+aegyptilla
+Aegyptus
+aegyrite
+aeipathy
+Aekerly
+Aelber
+Aelbert
+Aella
+Aello
+aelodicon
+aeluroid
+Aeluroidea
+aelurophobe
+aelurophobia
+aeluropodous
+-aemia
+aenach
+Aenea
+aenean
+Aeneas
+aeneas
+Aeneid
+aeneid
+Aeneolithic
+aeneolithic
+aeneous
+Aeneus
+aeneus
+Aeniah
+aenigma
+aenigmatite
+Aenius
+Aenneea
+aeolharmonica
+Aeolia
+Aeolian
+aeolian
+Aeolic
+aeolic
+Aeolicism
+aeolid
+Aeolidae
+Aeolides
+Aeolididae
+aeolight
+aeolina
+aeoline
+aeolipile
+aeolipyle
+Aeolis
+Aeolism
+Aeolist
+aeolist
+aeolistic
+aeolo-
+aeolodicon
+aeolodion
+aeolomelodicon
+aeolopantalon
+aeolotropic
+aeolotropism
+aeolotropy
+aeolsklavier
+Aeolus
+aeolus
+aeon
+aeonial
+aeonian
+aeonic
+aeonicaeonist
+aeonist
+aeons
+Aepyceros
+Aepyornis
+aepyornis
+Aepyornithidae
+Aepyornithiformes
+Aepytus
+aeq
+Aequi
+Aequian
+Aequiculi
+Aequipalpia
+aequor
+aequoreal
+aequorin
+aequorins
+aer
+aer-
+aerage
+aeraria
+aerarian
+aerarium
+aerate
+aerated
+aerates
+aerating
+aeration
+aerations
+aerator
+aerators
+aerenchyma
+aerenterectasia
+aeri-
+Aeria
+aerial
+aerialist
+aerialists
+aeriality
+aerially
+aerialness
+aerials
+aeric
+aerical
+Aerides
+aerides
+aerie
+aeried
+Aeriel
+Aeriela
+Aeriell
+aerier
+aeries
+aeriest
+aerifaction
+aeriferous
+aerification
+aerified
+aerifies
+aeriform
+aerify
+aerifying
+aerily
+aeriness
+aero
+aero-
+aeroacoustic
+Aerobacter
+aerobacter
+aerobacteriological
+aerobacteriologically
+aerobacteriologist
+aerobacteriology
+aerobacters
+aeroballistic
+aeroballistics
+aerobate
+aerobated
+aerobatic
+aerobatics
+aerobating
+aerobe
+aerobee
+aerobes
+aerobia
+aerobian
+aerobic
+aerobically
+aerobics
+aerobiologic
+aerobiological
+aerobiologically
+aerobiologist
+aerobiology
+aerobion
+aerobiont
+aerobioscope
+aerobiosis
+aerobiotic
+aerobiotically
+aerobious
+aerobium
+aeroboat
+Aerobranchia
+aerobranchiate
+aerobus
+aerocamera
+aerocar
+aerocartograph
+aerocartography
+Aerocharidae
+aerocolpos
+aerocraft
+aerocurve
+aerocyst
+aerodermectasia
+aerodone
+aerodonetic
+aerodonetics
+aerodontalgia
+aerodontia
+aerodontic
+aerodrome
+aerodromes
+aerodromics
+aeroduct
+aeroducts
+aerodynamic
+aerodynamical
+aerodynamically
+aerodynamicist
+aerodynamics
+aerodyne
+aerodynes
+aeroelastic
+aeroelasticity
+aeroelastics
+aeroembolism
+aeroenterectasia
+Aeroflot
+aerofoil
+aerofoils
+aerogel
+aerogels
+aerogen
+aerogene
+aerogenes
+aerogenesis
+aerogenic
+aerogenically
+aerogenous
+aerogeography
+aerogeologist
+aerogeology
+aerognosy
+aerogram
+aerogramme
+aerograms
+aerograph
+aerographer
+aerographic
+aerographical
+aerographics
+aerographies
+aerography
+aerogun
+aerohydrodynamic
+aerohydropathy
+aerohydroplane
+aerohydrotherapy
+aerohydrous
+aeroides
+Aerojet
+Aerol
+aerolite
+aerolites
+aerolith
+aerolithology
+aeroliths
+aerolitic
+aerolitics
+aerologic
+aerological
+aerologies
+aerologist
+aerologists
+aerology
+aeromaechanic
+aeromagnetic
+aeromancer
+aeromancy
+aeromantic
+aeromarine
+aeromechanic
+aeromechanical
+aeromechanics
+aeromedical
+aeromedicine
+aerometeorograph
+aerometer
+aerometric
+aerometry
+aeromotor
+aeron
+aeron.
+aeronat
+aeronaut
+aeronautic
+aeronautical
+aeronautically
+aeronautics
+aeronautism
+aeronauts
+aeronef
+aeroneurosis
+aeronomer
+aeronomic
+aeronomical
+aeronomics
+aeronomies
+aeronomist
+aeronomy
+aero-otitis
+aeropathy
+aeropause
+Aerope
+aeroperitoneum
+aeroperitonia
+aerophagia
+aerophagist
+aerophagy
+aerophane
+aerophilatelic
+aerophilatelist
+aerophilately
+aerophile
+aerophilia
+aerophilic
+aerophilous
+aerophobia
+aerophobic
+aerophone
+aerophor
+aerophore
+aerophoto
+aerophotography
+aerophotos
+aerophysical
+aerophysicist
+aerophysics
+aerophyte
+aeroplane
+aeroplaner
+aeroplanes
+aeroplanist
+aeroplankton
+aeropleustic
+aeroporotomy
+aeropulse
+aerosat
+aerosats
+aeroscepsis
+aeroscepsy
+aeroscope
+aeroscopic
+aeroscopically
+aeroscopy
+aerose
+aerosiderite
+aerosiderolite
+aerosinusitis
+Aerosol
+aerosol
+aerosolization
+aerosolize
+aerosolized
+aerosolizing
+aerosols
+aerospace
+aerosphere
+aerosporin
+aerostat
+aerostatic
+aerostatical
+aerostatics
+aerostation
+aerostats
+aerosteam
+aerotactic
+aerotaxis
+aerotechnical
+aerotechnics
+aerotherapeutics
+aerotherapy
+aerothermodynamic
+aerothermodynamics
+aerotonometer
+aerotonometric
+aerotonometry
+aerotow
+aerotropic
+aerotropism
+aeroview
+aeroyacht
+aeruginous
+aerugo
+aerugos
+aery
+AES
+aes
+Aesacus
+aesc
+Aeschines
+Aeschylean
+aeschylean
+Aeschylus
+aeschylus
+Aeschynanthus
+aeschynite
+Aeschynomene
+aeschynomenous
+Aesculaceae
+aesculaceous
+Aesculapian
+aesculapian
+Aesculapius
+aesculapius
+aesculetin
+aesculin
+Aesculus
+Aesepus
+Aeshma
+Aesir
+aesir
+Aesop
+aesop
+Aesopian
+aesopian
+Aesopic
+Aestatis
+aestethic
+aesthesia
+aesthesics
+aesthesio-
+aesthesis
+aesthesodic
+aesthete
+aesthetes
+aesthetic
+aesthetical
+aesthetically
+aesthetician
+aestheticism
+aestheticist
+aestheticize
+aesthetics
+aesthiology
+aestho-physiology
+aesthophysiology
+Aestii
+aestival
+aestivate
+aestivated
+aestivates
+aestivating
+aestivation
+aestivator
+aestive
+aestuary
+aestuate
+aestuation
+aestuous
+aesture
+aestus
+Aesyetes
+AET
+aet
+aet.
+aetat
+aethalia
+Aethalides
+aethalioid
+aethalium
+Aethelbert
+aetheling
+aetheogam
+aetheogamic
+aetheogamous
+aether
+aethereal
+aethered
+Aetheria
+aetheric
+aethers
+Aethionema
+aethogen
+aethon
+Aethra
+aethrioscope
+Aethusa
+Aethylla
+Aetian
+aetiogenic
+aetiological
+aetiologically
+aetiologies
+aetiologist
+aetiologue
+aetiology
+aetiophyllin
+aetiotropic
+aetiotropically
+aetites
+Aetna
+Aetobatidae
+Aetobatus
+Aetolia
+Aetolian
+Aetolus
+Aetomorphae
+aetosaur
+aetosaurian
+Aetosaurus
+aettekees
+AEU
+aevia
+aeviternal
+aevum
+A.F.
+A/F
+AF
+Af
+Af.
+a.f.
+af
+af-
+AFA
+aface
+afaced
+afacing
+AFACTS
+AFADS
+afaint
+A.F.A.M.
+AFAM
+Afar
+afar
+afara
+afars
+AFATDS
+AFB
+afb
+AFC
+AFCAC
+AFCC
+afd
+afdecho
+afear
+afeard
+afeared
+afebrile
+Afenil
+afer
+afernan
+afetal
+aff
+affa
+affabilities
+affability
+affable
+affableness
+affably
+affabrous
+affair
+affaire
+affaires
+affairs
+affaite
+affamish
+affatuate
+affect
+affectability
+affectable
+affectate
+affectation
+affectationist
+affectations
+affected
+affectedly
+affectedness
+affecter
+affecters
+affectibility
+affectible
+affecting
+affectingly
+affection
+affectional
+affectionally
+affectionate
+affectionately
+affectionateness
+affectioned
+affectionless
+affections
+affectious
+affective
+affectively
+affectivity
+affectless
+affectlessness
+affector
+affects
+affectual
+affectum
+affectuous
+affectus
+affeeble
+affeer
+affeerer
+affeerment
+affeeror
+affeir
+affenpinscher
+affenspalte
+Affer
+affere
+afferent
+afferently
+affettuoso
+affettuosos
+affiance
+affianced
+affiancer
+affiances
+affiancing
+affiant
+affiants
+affich
+affiche
+affiches
+afficionado
+affidare
+affidation
+affidavit
+affidavits
+affidavy
+affied
+affies
+affile
+affiliable
+affiliate
+affiliated
+affiliates
+affiliating
+affiliation
+affiliations
+affinage
+affinal
+affination
+affine
+affined
+affinely
+affines
+affing
+affinitative
+affinitatively
+affinite
+affinities
+affinition
+affinitive
+affinity
+affirm
+affirmable
+affirmably
+affirmance
+affirmant
+affirmation
+affirmations
+affirmative
+affirmative-action
+affirmatively
+affirmativeness
+affirmatives
+affirmatory
+affirmed
+affirmer
+affirmers
+affirming
+affirmingly
+affirmly
+affirms
+affix
+affixable
+affixal
+affixation
+affixed
+affixer
+affixers
+affixes
+affixial
+affixing
+affixion
+affixment
+affixt
+affixture
+afflate
+afflated
+afflation
+afflatus
+afflatuses
+afflict
+afflicted
+afflictedness
+afflicter
+afflicting
+afflictingly
+affliction
+afflictionless
+afflictions
+afflictive
+afflictively
+afflicts
+affloof
+afflue
+affluence
+affluences
+affluency
+affluent
+affluently
+affluentness
+affluents
+afflux
+affluxes
+affluxion
+affodill
+afforce
+afforced
+afforcement
+afforcing
+afford
+affordable
+afforded
+affording
+affords
+afforest
+afforestable
+afforestation
+afforestational
+afforested
+afforesting
+afforestment
+afforests
+afformative
+Affra
+affranchise
+affranchised
+affranchisement
+affranchising
+affrap
+affray
+affrayed
+affrayer
+affrayers
+affraying
+affrays
+affreight
+affreighter
+affreightment
+affret
+affrettando
+affreux
+Affrica
+affricate
+affricated
+affricates
+affrication
+affricative
+affriended
+affright
+affrighted
+affrightedly
+affrighter
+affrightful
+affrightfully
+affrighting
+affrightingly
+affrightment
+affrights
+affront
+affronted
+affrontedly
+affrontedness
+affrontee
+affronter
+affronting
+affrontingly
+affrontingness
+affrontive
+affrontiveness
+affrontment
+affronts
+affronty
+afft
+affuse
+affusedaffusing
+affusion
+affusions
+affy
+affydavy
+affying
+Afg
+AFGE
+Afgh
+Afghan
+afghan
+afghanets
+Afghani
+afghani
+afghanis
+Afghanistan
+afghanistan
+afghans
+afgod
+AFI
+afibrinogenemia
+aficionada
+aficionadas
+aficionado
+aficionados
+afield
+Afifi
+afikomen
+AFIPS
+afire
+AFL
+aflagellar
+aflame
+aflare
+A-flat
+aflat
+aflatoxin
+aflatus
+aflaunt
+AFL-CIO
+AFLCIO
+Aflex
+afley
+a-flicker
+aflicker
+aflight
+afloat
+aflow
+aflower
+afluking
+aflush
+aflutter
+AFM
+AFNOR
+afoam
+afocal
+afoot
+afore
+afore-acted
+afore-cited
+afore-coming
+afore-decried
+afore-given
+afore-going
+aforegoing
+afore-granted
+aforehand
+afore-heard
+afore-known
+afore-mentioned
+aforementioned
+aforenamed
+afore-planned
+afore-quoted
+afore-running
+aforesaid
+afore-seeing
+afore-seen
+afore-spoken
+afore-stated
+aforethought
+aforetime
+aforetimes
+afore-told
+aforeward
+afortiori
+afoul
+afounde
+AFP
+Afr
+afr-
+Afra
+afraid
+afraidness
+A-frame
+Aframerican
+Afrasia
+Afrasian
+afray
+afreet
+afreets
+afresca
+afresh
+afret
+afrete
+Afric
+Africa
+africa
+Africah
+African
+african
+Africana
+Africander
+africander
+Africanderism
+Africanism
+Africanist
+africanist
+Africanization
+Africanize
+Africanized
+Africanizing
+Africanoid
+africans
+Africanthropus
+Afridi
+afright
+Afrika
+Afrikaans
+afrikaans
+Afrikah
+Afrikander
+Afrikanderdom
+Afrikanderism
+Afrikaner
+afrikaner
+Afrikanerdom
+Afrikanerize
+afrit
+afrite
+afrits
+Afro
+Afro-
+afro
+Afro-American
+Afro-american
+afro-american
+Afro-Asian
+Afro-Asiatic
+Afro-asiatic
+Afroasiatic
+Afro-chain
+Afro-comb
+Afro-Cuban
+Afro-european
+Afrogaea
+Afrogaean
+afront
+afrormosia
+afros
+Afro-semitic
+afrown
+AFS
+AFSC
+AFSCME
+Afshah
+Afshar
+AFSK
+AFT
+aft
+aftaba
+after
+after-
+after-acquired
+afteract
+afterage
+afterattack
+afterband
+afterbay
+afterbeat
+afterbirth
+afterbirths
+afterblow
+afterbodies
+afterbody
+after-born
+afterbrain
+afterbreach
+afterbreast
+afterburner
+afterburners
+afterburning
+aftercare
+aftercareer
+aftercast
+aftercataract
+aftercause
+afterchance
+afterchrome
+afterchurch
+afterclap
+afterclause
+aftercome
+aftercomer
+aftercoming
+aftercooler
+aftercost
+after-course
+aftercourse
+aftercrop
+aftercure
+afterdamp
+afterdate
+afterdated
+afterdays
+afterdeal
+afterdeath
+afterdeck
+afterdecks
+after-described
+after-designed
+after-dinner
+afterdinner
+afterdischarge
+afterdrain
+afterdrops
+aftereffect
+aftereffects
+afterend
+aftereye
+afterfall
+afterfame
+afterfeed
+afterfermentation
+afterform
+afterfriend
+afterfruits
+afterfuture
+after-game
+aftergame
+aftergas
+afterglide
+afterglow
+afterglows
+aftergo
+aftergood
+after-grass
+aftergrass
+aftergrave
+aftergrief
+aftergrind
+aftergrowth
+after-guard
+afterguard
+afterguns
+afterhand
+afterharm
+afterhatch
+afterheat
+afterhelp
+afterhend
+afterhold
+afterhope
+afterhours
+after-image
+afterimage
+afterimages
+afterimpression
+afterings
+afterking
+afterknowledge
+after-life
+afterlife
+afterlifes
+afterlifetime
+afterlight
+afterlives
+afterloss
+afterlove
+aftermark
+aftermarket
+aftermarriage
+aftermass
+aftermast
+aftermath
+aftermaths
+aftermatter
+aftermeal
+after-mentioned
+aftermilk
+aftermost
+after-named
+afternight
+afternoon
+afternoons
+afternose
+afternote
+afteroar
+after-pain
+afterpain
+afterpains
+afterpart
+afterpast
+afterpeak
+afterpiece
+afterplanting
+afterplay
+afterpotential
+afterpressure
+afterproof
+afterrake
+afterreckoning
+afterrider
+afterripening
+afterroll
+afters
+afterschool
+aftersend
+aftersensation
+aftershaft
+aftershafted
+aftershave
+aftershaves
+aftershine
+aftership
+aftershock
+aftershocks
+aftersong
+aftersound
+after-specified
+afterspeech
+afterspring
+afterstain
+after-stampable
+afterstate
+afterstorm
+afterstrain
+afterstretch
+afterstudy
+after-supper
+aftersupper
+afterswarm
+afterswarming
+afterswell
+aftertan
+aftertask
+aftertaste
+aftertastes
+aftertax
+after-theater
+after-theatre
+afterthinker
+afterthought
+afterthoughted
+afterthoughts
+afterthrift
+aftertime
+aftertimes
+aftertouch
+aftertreatment
+aftertrial
+afterturn
+aftervision
+afterwale
+afterwar
+afterward
+afterwards
+afterwash
+afterwhile
+afterwisdom
+afterwise
+after-wit
+afterwit
+afterwitted
+afterword
+afterwork
+afterworking
+afterworld
+afterwort
+afterwrath
+afterwrist
+after-written
+afteryears
+aftmost
+Afton
+Aftonian
+aftosa
+aftosas
+AFTRA
+aftward
+aftwards
+afunction
+afunctional
+AFUU
+afwillite
+Afyon
+Afzelia
+A.G.
+AG
+Ag
+ag
+ag-
+aga
+agabanee
+Agabus
+agacant
+agacante
+Agace
+agacella
+agacerie
+Agaces
+Agacles
+agad
+agada
+Agade
+agadic
+Agadir
+Agag
+Agagianian
+again
+again-
+againbuy
+againsay
+against
+againstand
+againward
+agal
+agalactia
+agalactic
+agalactous
+agal-agal
+agalawood
+agalaxia
+agalaxy
+Agalena
+Agalenidae
+Agalinis
+agalite
+agalloch
+agallochs
+agallochum
+agallop
+agalma
+agalmatolite
+agalwood
+agalwoods
+Agama
+agama
+Agamae
+agamas
+a-game
+Agamede
+Agamedes
+Agamemnon
+agamemnon
+agamete
+agametes
+agami
+agamian
+agamic
+agamically
+agamid
+Agamidae
+agamis
+agamist
+agammaglobulinemia
+agammaglobulinemic
+agamobia
+agamobium
+agamogenesis
+agamogenetic
+agamogenetically
+agamogony
+agamoid
+agamont
+agamospermy
+agamospore
+agamous
+agamy
+Agan
+Agana
+aganglionic
+Aganice
+Aganippe
+aganippe
+Aganus
+Agao
+Agaonidae
+agapae
+agapai
+Agapanthus
+agapanthus
+agapanthuses
+Agape
+agape
+agapeic
+agapeically
+Agapemone
+Agapemonian
+Agapemonist
+Agapemonite
+agapetae
+agapeti
+agapetid
+Agapetidae
+agaphite
+Agapornis
+Agar
+agar
+agar-agar
+agaric
+agaricaceae
+agaricaceous
+Agaricales
+agaricic
+agariciform
+agaricin
+agaricine
+agaricinic
+agaricoid
+agarics
+Agaricus
+Agaristidae
+agarita
+agaroid
+agarose
+agaroses
+agars
+Agartala
+Agarum
+agarwal
+agas
+agasp
+Agassiz
+agast
+Agastache
+Agastreae
+agastric
+agastroneuria
+Agastrophus
+Agastya
+Agata
+agata
+Agate
+agate
+agatelike
+agates
+agateware
+Agatha
+Agathaea
+Agatharchides
+Agathaumas
+Agathe
+agathin
+Agathis
+agathism
+agathist
+Agatho
+agatho-
+Agathocles
+agathodaemon
+agathodaemonic
+agathodemon
+agathokakological
+agathology
+Agathon
+Agathosma
+Agathy
+Agathyrsus
+agatiferous
+agatiform
+agatine
+agatize
+agatized
+agatizes
+agatizing
+agatoid
+agaty
+Agau
+Agave
+agave
+agaves
+agavose
+Agawam
+Agaz
+agaze
+agazed
+agba
+Agbogla
+AGC
+AGCA
+AGCT
+agcy
+agcy.
+AGD
+Agdistis
+-age
+AGE
+AgE
+age
+ageable
+age-adorning
+age-bent
+age-coeval
+age-cracked
+aged
+age-despoiled
+age-dispelling
+agedly
+agedness
+agednesses
+Agee
+agee
+agee-jawed
+age-encrusted
+age-enfeebled
+age-group
+age-harden
+age-honored
+ageing
+ageings
+ageism
+ageisms
+ageist
+ageists
+Agelacrinites
+Agelacrinitidae
+Agelaius
+agelast
+age-lasting
+Agelaus
+ageless
+agelessly
+agelessness
+age-long
+agelong
+Agen
+agen
+Agena
+Agenais
+agencies
+agency
+agend
+agenda
+agendaless
+agendas
+agendum
+agendums
+agene
+agenes
+ageneses
+agenesia
+agenesias
+agenesic
+agenesis
+agenetic
+agenize
+agenized
+agenizes
+agenizing
+agennesis
+agennetic
+Agenois
+Agenor
+agent
+agentess
+agent-general
+agential
+agenting
+agentival
+agentive
+agentives
+agentries
+agentry
+agents
+agentship
+age-old
+ageometrical
+age-peeled
+ager
+agerasia
+Ageratum
+ageratum
+ageratums
+agers
+ages
+age-struck
+aget
+agete
+ageusia
+ageusic
+ageustia
+age-weary
+age-weathered
+age-worn
+Aggada
+Aggadah
+Aggadic
+aggadic
+Aggadoth
+Aggappe
+Aggappera
+Aggappora
+Aggarwal
+aggelation
+aggenerate
+agger
+aggerate
+aggeration
+aggerose
+aggers
+aggest
+Aggeus
+Aggi
+Aggie
+aggie
+aggies
+aggiornamenti
+aggiornamento
+agglomerant
+agglomerate
+agglomerated
+agglomerates
+agglomeratic
+agglomerating
+agglomeration
+agglomerations
+agglomerative
+agglomerator
+agglutinability
+agglutinable
+agglutinant
+agglutinate
+agglutinated
+agglutinates
+agglutinating
+agglutination
+agglutinationist
+agglutinations
+agglutinative
+agglutinatively
+agglutinator
+agglutinin
+agglutinins
+agglutinize
+agglutinogen
+agglutinogenic
+agglutinoid
+agglutinoscope
+agglutogenic
+aggrace
+aggradation
+aggradational
+aggrade
+aggraded
+aggrades
+aggrading
+aggrammatism
+aggrandise
+aggrandised
+aggrandisement
+aggrandiser
+aggrandising
+aggrandizable
+aggrandize
+aggrandized
+aggrandizement
+aggrandizements
+aggrandizer
+aggrandizers
+aggrandizes
+aggrandizing
+aggrate
+aggravable
+aggravate
+aggravated
+aggravates
+aggravating
+aggravatingly
+aggravation
+aggravations
+aggravative
+aggravator
+aggregable
+aggregant
+Aggregata
+Aggregatae
+aggregate
+aggregated
+aggregately
+aggregateness
+aggregates
+aggregating
+aggregation
+aggregational
+aggregations
+aggregative
+aggregatively
+aggregato-
+aggregator
+aggregatory
+aggrege
+aggress
+aggressed
+aggresses
+aggressing
+aggression
+aggressionist
+aggressions
+aggressive
+aggressively
+aggressiveness
+aggressivenesses
+aggressivity
+aggressor
+aggressors
+Aggri
+aggrievance
+aggrieve
+aggrieved
+aggrievedly
+aggrievedness
+aggrievement
+aggrieves
+aggrieving
+aggro
+aggros
+aggroup
+aggroupment
+aggry
+aggur
+Aggy
+Agh
+agha
+Aghan
+aghanee
+aghas
+aghast
+aghastness
+Aghlabite
+Aghorapanthi
+Aghori
+Agialid
+Agib
+agible
+Agiel
+agilawood
+agile
+agilely
+agileness
+agilities
+agility
+agillawood
+agilmente
+agin
+Agincourt
+aging
+agings
+aginner
+aginners
+agio
+agios
+agiotage
+agiotages
+agism
+agisms
+agist
+agistator
+agisted
+agister
+agisting
+agistment
+agistor
+agists
+agit
+agitability
+agitable
+agitant
+agitate
+agitated
+agitatedly
+agitates
+agitating
+agitation
+agitational
+agitationist
+agitations
+agitative
+agitato
+agitator
+agitatorial
+agitators
+agitatrix
+agitprop
+agitpropist
+agitprops
+agitpunkt
+Agkistrodon
+agkistrodon
+AGL
+agla
+Aglaia
+aglaia
+aglance
+Aglaonema
+Aglaos
+aglaozonia
+aglare
+Aglaspis
+Aglauros
+Aglaus
+Agle
+agleaf
+agleam
+aglee
+Agler
+aglet
+aglethead
+aglets
+agley
+a-glimmer
+aglimmer
+aglint
+Aglipayan
+Aglipayano
+aglisten
+aglitter
+aglobulia
+aglobulism
+Aglossa
+aglossal
+aglossate
+aglossia
+aglow
+aglucon
+aglucone
+a-glucosidase
+aglutition
+agly
+aglycon
+aglycone
+aglycones
+aglycons
+aglycosuric
+Aglypha
+aglyphodont
+Aglyphodonta
+Aglyphodontia
+aglyphous
+AGM
+AGMA
+agma
+agmas
+agmatine
+agmatology
+agminate
+agminated
+AGN
+Agna
+agnail
+agnails
+agname
+agnamed
+agnat
+agnate
+agnates
+Agnatha
+agnathia
+agnathic
+Agnathostomata
+agnathostomatous
+agnathous
+agnatic
+agnatical
+agnatically
+agnation
+agnations
+agnean
+agneau
+agneaux
+agnel
+Agnella
+Agnes
+Agnese
+Agness
+Agnesse
+Agneta
+Agnew
+Agni
+agnification
+agnition
+agnize
+agnized
+agnizes
+agnizing
+Agnoetae
+Agnoete
+Agnoetism
+agnoiology
+Agnoite
+agnoites
+Agnola
+agnomen
+agnomens
+agnomical
+agnomina
+agnominal
+agnomination
+agnosia
+agnosias
+agnosis
+agnostic
+agnostical
+agnostically
+agnosticism
+agnostics
+Agnostus
+agnosy
+Agnotozoic
+agnus
+agnuses
+ago
+agog
+agoge
+agogic
+agogics
+-agogue
+agoho
+agoing
+agomensin
+agomphiasis
+agomphious
+agomphosis
+Agon
+agon
+agonal
+agone
+agones
+agonia
+agoniada
+agoniadin
+agoniatite
+Agoniatites
+agonic
+agonied
+agonies
+agonise
+agonised
+agonises
+agonising
+agonisingly
+agonist
+Agonista
+agonistarch
+agonistic
+agonistical
+agonistically
+agonistics
+agonists
+agonium
+agonize
+agonized
+agonizedly
+agonizer
+agonizes
+agonizing
+agonizingly
+agonizingness
+Agonostomus
+agonothet
+agonothete
+agonothetic
+agons
+agony
+a-good
+agora
+agorae
+Agoraea
+Agoraeus
+agoramania
+agoranome
+agoranomus
+agoraphobia
+agoraphobiac
+agoraphobic
+agoras
+a-gore-blood
+agorot
+agoroth
+agos
+agostadero
+Agostini
+Agostino
+Agosto
+agouara
+agouta
+agouti
+agouties
+agoutis
+agouty
+agpaite
+agpaitic
+AGR
+agr
+agr.
+Agra
+agrace
+Agraeus
+agrafe
+agrafes
+agraffe
+agraffee
+agraffes
+agrah
+agral
+Agram
+agramed
+agrammaphasia
+agrammatica
+agrammatical
+agrammatism
+agrammatologia
+Agrania
+agranulocyte
+agranulocytosis
+agranuloplastic
+Agrapha
+agrapha
+agraphia
+agraphias
+agraphic
+agraria
+agrarian
+agrarianism
+agrarianisms
+agrarianize
+agrarianly
+agrarians
+Agrauleum
+Agraulos
+agravic
+agre
+agreat
+agreation
+agreations
+agree
+agreeability
+agreeable
+agreeableness
+agreeablenesses
+agreeable-sounding
+agreeably
+agreed
+agreeing
+agreeingly
+agreement
+agreements
+agreer
+agreers
+agrees
+agregation
+agrege
+agreges
+agreing
+agremens
+agrement
+agrements
+agrest
+agrestal
+agrestial
+agrestian
+agrestic
+agrestical
+agrestis
+Agretha
+agria
+agrias
+agribusiness
+agribusinesses
+agric
+agric.
+agricere
+Agricola
+agricole
+agricolist
+agricolite
+agricolous
+agricultor
+agricultural
+agriculturalist
+agriculturalists
+agriculturally
+agriculture
+agriculturer
+agricultures
+agriculturist
+agriculturists
+agrief
+Agrigento
+Agrilus
+Agrimonia
+agrimonies
+agrimony
+agrimotor
+agrin
+Agrinion
+Agriochoeridae
+Agriochoerus
+agriological
+agriologist
+agriology
+Agrionia
+agrionid
+Agrionidae
+Agriope
+agriot
+Agriotes
+agriotype
+Agriotypidae
+Agriotypus
+Agripina
+Agrippa
+Agrippina
+agrise
+agrised
+agrising
+agrito
+agritos
+Agrius
+agro-
+agroan
+agrobacterium
+agrobiologic
+agrobiological
+agrobiologically
+agrobiologist
+agrobiology
+agrodolce
+agrogeological
+agrogeologically
+agrogeology
+agrologic
+agrological
+agrologically
+agrologies
+agrologist
+agrology
+agrom
+agromania
+Agromyza
+agromyzid
+Agromyzidae
+agron
+agron.
+agronome
+agronomial
+agronomic
+agronomical
+agronomically
+agronomics
+agronomies
+agronomist
+agronomists
+agronomy
+agroof
+agrope
+Agropyron
+Agrostemma
+agrosteral
+agrosterol
+Agrostis
+agrostis
+agrostographer
+agrostographic
+agrostographical
+agrostographies
+agrostography
+agrostologic
+agrostological
+agrostologist
+agrostology
+agrote
+agrotechny
+Agrotera
+Agrotis
+agrotype
+aground
+agrufe
+agruif
+agrypnia
+agrypniai
+agrypnias
+agrypnode
+agrypnotic
+AGS
+agsam
+agst
+Agt
+agt
+agtbasic
+AGU
+agua
+aguacate
+Aguacateca
+Aguada
+aguada
+Aguadilla
+aguador
+Aguadulce
+aguaji
+aguamas
+aguamiel
+Aguanga
+aguara
+aguardiente
+Aguascalientes
+aguavina
+Aguayo
+Agudist
+ague
+Agueda
+ague-faced
+aguelike
+ague-plagued
+agueproof
+ague-rid
+agues
+ague-sore
+ague-struck
+agueweed
+agueweeds
+aguey
+aguglia
+Aguie
+Aguijan
+Aguila
+Aguilar
+aguilarite
+aguilawood
+aguilt
+Aguinaldo
+aguinaldo
+aguinaldos
+aguirage
+Aguirre
+aguise
+aguish
+aguishly
+aguishness
+Aguistin
+agujon
+Agulhas
+agunah
+Agung
+agura
+aguroth
+agush
+agust
+Aguste
+Agustin
+Agway
+agy
+Agyieus
+agyiomania
+agynarious
+agynary
+agynic
+agynous
+agyrate
+agyria
+agyrophobia
+A.H.
+AH
+Ah
+ah
+AHA
+aha
+ahaaina
+Ahab
+ahab
+ahamkara
+ahankara
+Ahantchuyuk
+Aharon
+ahartalav
+Ahasuerus
+ahaunch
+Ahaz
+Ahaziah
+ahchoo
+Ahders
+AHE
+ahead
+aheap
+Ahearn
+a-height
+aheight
+ahem
+ahems
+Ahepatokla
+Ahern
+Ahet
+a-hey
+ahey
+Ahgwahching
+Ahhiyawa
+ahi
+Ahidjo
+Ahiezer
+a-high
+a-high-lone
+Ahimaaz
+Ahimelech
+ahimsa
+ahimsas
+ahind
+ahint
+Ahir
+Ahira
+Ahisar
+Ahishar
+ahistoric
+ahistorical
+Ahithophel
+AHL
+Ahl
+Ahlgren
+ahluwalia
+Ahmad
+Ahmadabad
+Ahmadi
+ahmadi
+Ahmadiya
+Ahmadnagar
+Ahmadou
+Ahmadpur
+Ahmar
+Ahmed
+Ahmedabad
+ahmedi
+Ahmednagar
+Ahmeek
+Ahnfeltia
+aho
+Ahola
+Aholah
+a-hold
+ahold
+aholds
+Aholla
+aholt
+Ahom
+ahong
+a-horizon
+ahorse
+a-horseback
+ahorseback
+Ahoskie
+Ahoufe
+Ahouh
+Ahousaht
+ahoy
+ahoys
+AHQ
+Ahrendahronon
+Ahrendt
+Ahrens
+Ahriman
+Ahrimanian
+Ahron
+ahs
+AHSA
+Ahsahka
+ahsan
+Aht
+Ahtena
+ahu
+ahuaca
+ahuatle
+ahuehuete
+ahull
+ahum
+ahungered
+ahungry
+a-hunt
+ahunt
+ahura
+Ahura-mazda
+ahurewa
+ahush
+ahuula
+Ahuzzath
+Ahvaz
+Ahvenanmaa
+Ahwahnee
+ahwal
+Ahwaz
+ahypnia
+A.I.
+AI
+ai
+A.I.A.
+AIA
+Aia
+AIAA
+Aias
+Aiawong
+aiblins
+Aibonito
+AIC
+AICC
+aichmophobia
+A.I.D.
+AID
+aid
+Aida
+aidable
+Aidan
+aidance
+aidant
+AIDDE
+aid-de-camp
+aide
+aided
+aide-de-camp
+aide-de-campship
+aide-memoire
+aide-mmoire
+Aiden
+Aidenn
+aider
+aiders
+Aides
+aides
+aides-de-camp
+aidful
+Aidin
+aiding
+Aidit
+aidless
+aidman
+aidmanmen
+aidmen
+Aidoneus
+Aidos
+AIDS
+aids
+aids-de-camp
+Aiea
+AIEEE
+aiel
+Aiello
+aiery
+AIF
+aiger
+aigialosaur
+Aigialosauridae
+Aigialosaurus
+aiglet
+aiglets
+aiglette
+Aigneis
+aigre
+aigre-doux
+aigremore
+aigret
+aigrets
+aigrette
+aigrettes
+aiguelle
+aiguellette
+aigue-marine
+aiguiere
+aiguille
+aiguilles
+aiguillesque
+aiguillette
+aiguilletted
+AIH
+aik
+aikane
+Aiken
+aikido
+aikidos
+aikinite
+aikona
+aikuchi
+ail
+Aila
+ailantery
+ailanthic
+Ailanthus
+ailanthus
+ailanthuses
+ailantine
+ailanto
+Ailbert
+Aile
+aile
+ailed
+Ailee
+Aileen
+Ailene
+aileron
+ailerons
+ailette
+Ailey
+Aili
+Ailie
+Ailin
+Ailina
+ailing
+Ailis
+Ailleret
+aillt
+ailment
+ailments
+ails
+Ailsa
+Ailssa
+Ailsun
+ailsyte
+Ailuridae
+ailuro
+ailuroid
+Ailuroidea
+ailuromania
+ailurophile
+ailurophilia
+ailurophilic
+ailurophobe
+ailurophobia
+ailurophobic
+Ailuropoda
+Ailuropus
+Ailurus
+ailweed
+Ailyn
+AIM
+aim
+aimable
+Aimak
+aimak
+aimara
+AIME
+Aime
+aimed
+Aimee
+aimer
+aimers
+aimful
+aimfully
+Aimil
+aiming
+aimless
+aimlessly
+aimlessness
+aimlessnesses
+Aimo
+Aimore
+AIMS
+aims
+Aimwell
+aimworthiness
+Ain
+ain
+ainaleh
+AInd
+Aindrea
+aine
+ainee
+ainhum
+ainoi
+ains
+ainsell
+ainsells
+Ainslee
+Ainsley
+Ainslie
+Ainsworth
+ain't
+aint
+Aintab
+Ainu
+ainu
+Ainus
+ainus
+AIOD
+aioli
+aiolis
+aion
+aionial
+AIPS
+AIR
+Air
+air
+Aira
+airable
+airampo
+airan
+airbag
+airbags
+air-balloon
+airbill
+airbills
+air-bind
+air-blasted
+air-blown
+airboat
+airboats
+air-born
+airborn
+air-borne
+airborne
+air-bound
+airbound
+airbrained
+air-braked
+airbrasive
+air-braving
+air-breathe
+air-breathed
+air-breather
+air-breathing
+air-bred
+airbrick
+airbrush
+airbrushed
+airbrushes
+airbrushing
+air-built
+airburst
+airbursts
+airbus
+airbuses
+airbusses
+air-chambered
+aircheck
+airchecks
+air-cheeked
+air-clear
+aircoach
+aircoaches
+air-condition
+aircondition
+air-conditioned
+airconditioned
+air-conditioning
+airconditioning
+airconditions
+air-conscious
+air-conveying
+air-cool
+air-cooled
+air-core
+aircraft
+aircraftman
+aircraftmen
+aircrafts
+aircraftsman
+aircraftsmen
+aircraftswoman
+aircraftswomen
+aircraftwoman
+aircrew
+aircrewman
+aircrewmen
+aircrews
+air-cure
+air-cured
+airdate
+airdates
+air-defiling
+airdock
+air-drawn
+Airdrie
+air-dried
+air-driven
+airdrome
+airdromes
+airdrop
+airdropped
+airdropping
+airdrops
+air-dry
+air-drying
+Aire
+aire
+aired
+Airedale
+airedale
+airedales
+Airel
+air-embraced
+airer
+airers
+Aires
+airest
+air-express
+airfare
+airfares
+air-faring
+airfield
+airfields
+air-filled
+air-floated
+airflow
+airflows
+airfoil
+airfoils
+air-formed
+airframe
+airframes
+airfreight
+airfreighter
+airglow
+airglows
+airgraph
+airgraphics
+air-hardening
+airhead
+airheads
+air-heating
+airier
+airiest
+airiferous
+airified
+airify
+airily
+airiness
+airinesses
+airing
+airings
+air-insulated
+air-intake
+airish
+Airla
+air-lance
+air-lanced
+air-lancing
+Airlee
+airle-penny
+airless
+airlessly
+airlessness
+Airlia
+Airliah
+Airlie
+airlift
+airlifted
+airlifting
+airlifts
+airlight
+airlike
+air-line
+airline
+airliner
+airliners
+airlines
+airling
+airlock
+airlocks
+air-logged
+air-mail
+airmail
+airmailed
+airmailing
+airmails
+airman
+airmanship
+airmark
+airmarker
+airmass
+airmen
+air-minded
+air-mindedness
+airmobile
+airmonger
+airn
+airns
+airohydrogen
+airometer
+airpark
+airparks
+air-pervious
+airphobia
+airplane
+airplaned
+airplaner
+airplanes
+airplaning
+airplanist
+airplay
+airplays
+airplot
+airport
+airports
+airpost
+airposts
+airproof
+airproofed
+airproofing
+airproofs
+air-raid
+airs
+airscape
+airscapes
+airscrew
+airscrews
+air-season
+air-seasoned
+airshed
+airsheds
+airsheet
+airship
+airships
+air-shy
+airsick
+airsickness
+air-slake
+air-slaked
+air-slaking
+airsome
+airspace
+airspaces
+airspeed
+airspeeds
+air-spray
+air-sprayed
+air-spun
+air-stirring
+airstream
+airstrip
+airstrips
+air-swallowing
+airt
+airted
+airth
+airthed
+airthing
+air-threatening
+airths
+airtight
+airtightly
+airtightness
+airtime
+airtimes
+airting
+air-to-air
+air-to-ground
+air-to-surface
+air-trampling
+airts
+air-twisted
+air-vessel
+airview
+Airville
+airward
+airwards
+airwash
+airwave
+airwaves
+airway
+airwaybill
+airwayman
+airways
+air-wise
+airwise
+air-wiseness
+airwoman
+airwomen
+airworthier
+airworthiest
+airworthiness
+airworthy
+Airy
+airy
+airy-fairy
+AIS
+ais
+aischrolatreia
+aiseweed
+Aisha
+AISI
+aisle
+aisled
+aisleless
+aisles
+aisling
+Aisne
+Aisne-Marne
+Aissaoua
+Aissor
+aisteoir
+aistopod
+Aistopoda
+Aistopodes
+ait
+aitch
+aitch-bone
+aitchbone
+aitches
+aitchless
+aitchpiece
+aitesis
+aith
+aithochroi
+aitiology
+aition
+aitiotropic
+aitis
+Aitken
+Aitkenite
+Aitkin
+aits
+Aitutakian
+aiver
+aivers
+aivr
+aiwain
+aiwan
+AIX
+Aix
+Aix-en-Provence
+Aix-la-Chapelle
+Aix-la-chapelle
+Aix-les-Bains
+aizle
+Aizoaceae
+aizoaceous
+Aizoon
+AJ
+AJA
+Ajaccio
+Ajaja
+ajaja
+ajangle
+Ajani
+Ajanta
+ajar
+ajari
+Ajatasatru
+ajava
+Ajax
+ajax
+Ajay
+AJC
+ajee
+ajenjo
+ajhar
+ajimez
+Ajit
+ajitter
+ajiva
+ajivas
+Ajivika
+ajivika
+Ajmer
+Ajo
+Ajodhya
+ajog
+ajoint
+ajonjoli
+ajoure
+ajourise
+ajowan
+ajowans
+Ajuga
+ajuga
+ajugas
+ajutment
+AK
+ak
+AKA
+Aka
+aka
+akaakai
+Akaba
+Akademi
+Akal
+akala
+Akali
+akalimba
+akamai
+akamatsu
+Akamnik
+Akan
+akan
+Akanekunik
+Akania
+Akaniaceae
+Akanke
+akaroa
+akasa
+akasha
+Akaska
+Akas-mukhi
+Akawai
+akazga
+akazgin
+akazgine
+Akbar
+AKC
+akcheh
+ake
+akeake
+akebi
+Akebia
+aked
+akee
+akees
+akehorne
+akeki
+Akel
+Akela
+akela
+akelas
+Akeldama
+Akeley
+akeley
+akemboll
+akenbold
+akene
+akenes
+akenobeite
+akepiro
+akepiros
+Aker
+aker
+Akerboom
+akerite
+Akerley
+Akers
+aketon
+akey
+Akeyla
+Akeylah
+Akh
+Akha
+Akhaia
+akhara
+Akhenaten
+Akhetaton
+Akhisar
+Akhissar
+Akhlame
+Akhmatova
+Akhmimic
+Akhnaton
+akhoond
+akhrot
+akhund
+akhundzada
+akhyana
+Akhziv
+akia
+Akiachak
+Akiak
+Akiba
+Akihito
+Akili
+Akim
+akimbo
+Akimovsky
+Akin
+akin
+akindle
+akinesia
+akinesic
+akinesis
+akinete
+akinetic
+aking
+Akins
+Akira
+Akiskemikinik
+Akita
+Akiyenik
+Akka
+Akkad
+Akkadian
+akkadian
+Akkadist
+Akkerman
+Akkra
+Aklog
+akmite
+Akmolinsk
+akmudar
+akmuddar
+aknee
+aknow
+ako
+akoasm
+akoasma
+akolouthia
+akoluthia
+akonge
+Akontae
+Akoulalion
+akov
+akpek
+Akra
+akra
+Akrabattine
+akre
+akroasis
+akrochordite
+Akron
+akron
+akroter
+akroteria
+akroterial
+akroterion
+akrteria
+Aksel
+Aksoyn
+Aksum
+aktiebolag
+Aktiengesellschaft
+Aktistetae
+Aktistete
+Aktivismus
+Aktivist
+Aktyubinsk
+aku
+akuammin
+akuammine
+akule
+akund
+Akure
+Akutagawa
+Akutan
+akvavit
+akvavits
+Akwapim
+Akyab
+-al
+A.L.
+AL
+Al
+al
+al-
+al.
+ALA
+Ala
+Ala.
+ala
+Alabama
+alabama
+Alabaman
+Alabamian
+alabamian
+alabamians
+alabamide
+alabamine
+alabandine
+alabandite
+alabarch
+Alabaster
+alabaster
+alabasters
+alabastoi
+alabastos
+alabastra
+alabastrian
+alabastrine
+alabastrites
+alabastron
+alabastrons
+alabastrum
+alabastrums
+alablaster
+alacha
+alachah
+Alachua
+alack
+alackaday
+alacran
+alacreatine
+alacreatinin
+alacreatinine
+alacrify
+alacrious
+alacriously
+alacrities
+alacritous
+alacrity
+Alactaga
+alada
+Aladdin
+aladdin
+Aladdinize
+Aladfar
+Aladinist
+alae
+alagao
+alagarto
+alagau
+Alage
+Alagez
+Alagoas
+Alagoz
+alahee
+Alai
+alai
+alaihi
+Alain
+Alaine
+Alain-Fournier
+Alair
+alaite
+Alakanuk
+Alake
+Alaki
+Alala
+alala
+Alalcomeneus
+alalia
+alalite
+alaloi
+alalonga
+alalunga
+alalus
+Alamance
+Alamanni
+Alamannian
+Alamannic
+alambique
+Alameda
+alameda
+alamedas
+Alamein
+Alaminos
+alamiqui
+alamire
+Alamo
+alamo
+alamodality
+alamode
+alamodes
+Alamogordo
+alamonti
+alamort
+alamos
+Alamosa
+alamosite
+Alamota
+alamoth
+Alan
+alan
+Alana
+Alan-a-dale
+Alanah
+Alanbrooke
+Aland
+aland
+alands
+Alane
+alane
+alang
+alang-alang
+alange
+Alangiaceae
+alangin
+alangine
+Alangium
+alani
+alanin
+alanine
+alanines
+alanins
+Alanna
+alannah
+Alano
+Alanreed
+Alans
+alans
+Alansen
+Alanson
+alant
+alantic
+alantin
+alantol
+alantolactone
+alantolic
+alants
+alanyl
+alanyls
+ALAP
+alap
+alapa
+Alapaha
+Alar
+alar
+Alarbus
+Alarcon
+Alard
+alares
+alarge
+Alaria
+Alaric
+Alarice
+Alarick
+Alarise
+alarm
+alarmable
+alarmclock
+alarmed
+alarmedly
+alarming
+alarmingly
+alarmingness
+alarmism
+alarmisms
+alarmist
+alarmists
+alarms
+Alarodian
+alarum
+alarumed
+alaruming
+alarums
+alary
+Alas
+Alas.
+alas
+alasas
+Alascan
+Alasdair
+Alaska
+alaska
+alaskaite
+Alaskan
+alaskan
+alaskans
+alaskas
+alaskite
+Alastair
+Alasteir
+Alaster
+Alastor
+alastor
+alastors
+alastrim
+alate
+Alatea
+alated
+alatern
+alaternus
+alates
+Alathia
+alation
+alations
+Alauda
+Alaudidae
+alaudine
+alaund
+Alaunian
+alaunt
+Alawi
+alay
+Alayne
+alazor
+Alb
+Alb.
+alb
+Alba
+alba
+albacea
+Albacete
+albacora
+albacore
+albacores
+albahaca
+Albainn
+Albamycin
+Alban
+alban
+Albana
+Albanenses
+Albanensian
+Albanese
+Albania
+albania
+Albanian
+albanian
+albanians
+albanite
+Albany
+albany
+albarco
+albardine
+albarelli
+albarello
+albarellos
+albarium
+Albarran
+albas
+albaspidin
+albata
+albatas
+Albategnius
+albation
+Albatros
+albatross
+albatrosses
+Albay
+albe
+albedo
+albedoes
+albedograph
+albedometer
+albedos
+Albee
+albee
+albeit
+Albemarle
+Alben
+Albeniz
+Alber
+alberca
+Alberene
+albergatrice
+alberge
+alberghi
+albergo
+Alberic
+Alberich
+alberich
+Alberik
+Alberoni
+Albers
+Albert
+albert
+Alberta
+alberta
+Alberti
+albertin
+Albertina
+Albertine
+Albertinian
+Albertist
+albertite
+Albertlea
+Alberto
+Alberton
+Albertson
+albert-type
+alberttype
+albertustaler
+Albertville
+albertype
+albescence
+albescent
+albespine
+albespyne
+albeston
+albetad
+Albi
+Albia
+Albian
+albicans
+albicant
+albication
+albicore
+albicores
+albiculi
+Albie
+albification
+albificative
+albified
+albiflorous
+albify
+albifying
+Albigenses
+albigenses
+Albigensian
+Albigensianism
+Albin
+albin
+Albina
+albinal
+albines
+albiness
+albinic
+albinism
+albinisms
+albinistic
+albino
+albinoism
+Albinoni
+albinos
+albinotic
+albinuria
+Albinus
+Albion
+albion
+Albireo
+albite
+albites
+albitic
+albitical
+albitite
+albitization
+albitophyre
+albizia
+albizias
+Albizzia
+albizzia
+albizzias
+ALBM
+Albniz
+ALBO
+albocarbon
+albocinereous
+Albococcus
+albocracy
+Alboin
+albolite
+albolith
+albopannin
+albopruinose
+alborada
+alborak
+Alboran
+alboranite
+Alborn
+Albrecht
+Albric
+albricias
+Albright
+Albrightsville
+albronze
+Albruna
+albs
+Albuca
+Albuginaceae
+albuginea
+albugineous
+albugines
+albuginitis
+albugo
+album
+albumean
+albumen
+albumeniizer
+albumenisation
+albumenise
+albumenised
+albumeniser
+albumenising
+albumenization
+albumenize
+albumenized
+albumenizer
+albumenizing
+albumenoid
+albumens
+albumimeter
+albumin
+albuminate
+albuminaturia
+albuminiferous
+albuminiform
+albuminimeter
+albuminimetry
+albuminiparous
+albuminise
+albuminised
+albuminising
+albuminization
+albuminize
+albuminized
+albuminizing
+albumino-
+albuminocholia
+albuminofibrin
+albuminogenous
+albuminoid
+albuminoidal
+albuminolysis
+albuminometer
+albuminometry
+albuminone
+albuminorrhea
+albuminoscope
+albuminose
+albuminosis
+albuminous
+albuminousness
+albumins
+albuminuria
+albuminuric
+albuminurophobia
+albumoid
+albumoscope
+albumose
+albumoses
+albumosuria
+albums
+Albuna
+Albunea
+Albuquerque
+albuquerque
+Albur
+Alburg
+Alburga
+alburn
+Alburnett
+alburnous
+alburnum
+alburnums
+Alburtis
+Albury
+albus
+albutannin
+Alby
+Albyn
+ALC
+alc
+Alca
+Alcaaba
+alcabala
+alcade
+alcades
+Alcae
+Alcaeus
+alcahest
+alcahests
+Alcaic
+alcaic
+alcaiceria
+Alcaics
+alcaics
+alcaid
+alcaide
+alcaides
+Alcaids
+Alcalde
+alcalde
+alcaldes
+alcaldeship
+alcaldia
+alcali
+Alcaligenes
+alcaligenes
+alcalizate
+Alcalzar
+alcamine
+Alcandre
+alcanna
+Alcantara
+alcantara
+Alcantarines
+alcapton
+alcaptonuria
+alcargen
+alcarraza
+Alcathous
+alcatras
+Alcatraz
+alcavala
+alcayde
+alcaydes
+alcazaba
+Alcazar
+alcazar
+alcazars
+alcazava
+alce
+Alcedines
+Alcedinidae
+Alcedininae
+Alcedo
+alcelaphine
+Alcelaphus
+Alces
+Alceste
+Alcester
+Alcestis
+alcestis
+alchem
+alchemic
+alchemical
+alchemically
+alchemies
+Alchemilla
+alchemise
+alchemised
+alchemising
+alchemist
+alchemister
+alchemistic
+alchemistical
+alchemistry
+alchemists
+alchemize
+alchemized
+alchemizing
+alchemy
+alchera
+alcheringa
+alchim-
+alchimy
+alchitran
+alchochoden
+Alchornea
+alchornea
+Alchuine
+alchym-
+alchymies
+alchymy
+Alcibiadean
+Alcibiades
+alcibiades
+Alcicornium
+alcid
+Alcidae
+Alcide
+Alcides
+Alcidice
+alcidine
+alcids
+Alcimede
+Alcimedes
+Alcimedon
+Alcina
+Alcine
+alcine
+Alcinia
+Alcinous
+Alcippe
+Alcis
+Alcithoe
+alclad
+Alcmaeon
+Alcman
+Alcmaon
+Alcmena
+Alcmene
+alcmene
+Alco
+alco
+Alcoa
+alcoate
+Alcock
+alcogel
+alcogene
+alcohate
+alcohol
+alcoholate
+alcoholature
+alcoholdom
+alcoholemia
+alcoholic
+alcoholically
+alcoholicity
+alcoholics
+alcoholimeter
+alcoholisation
+alcoholise
+alcoholised
+alcoholising
+alcoholism
+alcoholisms
+alcoholist
+alcoholizable
+alcoholization
+alcoholize
+alcoholized
+alcoholizing
+alcoholmeter
+alcoholmetric
+alcoholomania
+alcoholometer
+alcoholometric
+alcoholometrical
+alcoholometry
+alcoholophilia
+alcohols
+alcoholuria
+alcoholysis
+alcoholytic
+Alcolu
+Alcon
+alconde
+alco-ometer
+alco-ometric
+alco-ometrical
+alco-ometry
+alcoothionic
+Alcor
+Alcoran
+alcoran
+Alcoranic
+Alcoranist
+alcornoco
+alcornoque
+alcosol
+Alcot
+Alcotate
+Alcott
+Alcova
+alcove
+alcoved
+alcoves
+alcovinometer
+Alcuin
+Alcuinian
+alcumy
+Alcus
+alcyon
+Alcyonacea
+alcyonacean
+Alcyonaria
+alcyonarian
+Alcyone
+alcyone
+Alcyones
+Alcyoneus
+Alcyoniaceae
+alcyonic
+alcyoniform
+Alcyonium
+alcyonium
+alcyonoid
+Ald
+Ald.
+ald
+Alda
+Aldabra
+aldamin
+aldamine
+Aldan
+aldane
+Aldarcie
+Aldarcy
+Aldas
+alday
+aldazin
+aldazine
+aldea
+aldeament
+Aldebaran
+aldebaran
+aldebaranium
+Alded
+aldehol
+aldehydase
+aldehyde
+aldehydes
+aldehydic
+aldehydine
+aldehydrol
+aldeia
+Alden
+alden
+Aldenville
+Alder
+alder
+alder-
+Alderamin
+Aldercy
+alderflies
+alderfly
+alder-leaved
+alderliefest
+alderling
+Alderman
+alderman
+aldermanate
+aldermancy
+aldermaness
+aldermanic
+aldermanical
+aldermanity
+aldermanlike
+aldermanly
+aldermanries
+aldermanry
+aldermanship
+Aldermaston
+aldermen
+aldern
+Alderney
+alders
+Aldershot
+Alderson
+alderwoman
+alderwomen
+Aldhafara
+Aldhafera
+aldide
+Aldie
+aldim
+aldime
+aldimin
+aldimine
+Aldin
+Aldine
+aldine
+Aldington
+Aldis
+alditol
+Aldm
+aldm
+Aldo
+aldoheptose
+aldohexose
+aldoketene
+aldol
+aldolase
+aldolases
+aldolization
+aldolize
+aldolized
+aldolizing
+aldols
+Aldon
+aldononose
+aldopentose
+Aldora
+Aldos
+aldose
+aldoses
+aldoside
+aldosterone
+aldosteronism
+Aldous
+aldovandi
+aldoxime
+Aldred
+Aldredge
+Aldric
+Aldrich
+Aldridge
+Aldridge-Brownhills
+Aldrin
+aldrin
+aldrins
+Aldrovanda
+Alduino
+Aldus
+Aldwin
+Aldwon
+ale
+Alea
+aleak
+Aleardi
+aleatoric
+aleatory
+alebench
+aleberry
+Alebion
+ale-blown
+ale-born
+alebush
+Alec
+alec
+Alecia
+alecithal
+alecithic
+alecize
+Aleck
+aleconner
+alecost
+alecs
+Alecto
+Alectoria
+alectoria
+alectoriae
+Alectorides
+alectoridine
+alectorioid
+Alectoris
+alectoromachy
+alectoromancy
+Alectoromorphae
+alectoromorphous
+Alectoropodes
+alectoropodous
+Alectrion
+Alectrionidae
+alectryomachy
+alectryomancy
+Alectryon
+alectryon
+alecup
+Aleda
+Aledo
+alee
+Aleece
+Aleedis
+Aleen
+Aleetha
+alef
+ale-fed
+alefnull
+alefs
+aleft
+alefzero
+alegar
+alegars
+aleger
+Alegre
+Alegrete
+alehoof
+alehouse
+alehouses
+Aleichem
+aleikoum
+aleikum
+aleiptes
+aleiptic
+Aleixandre
+Alejandra
+Alejandrina
+Alejandro
+Alejo
+Alejoa
+Alek
+Alekhine
+Aleknagik
+aleknight
+Aleksandr
+Aleksandropol
+Aleksandrov
+Aleksandrovac
+Aleksandrovsk
+Alekseyevska
+Aleksin
+Alem
+alem
+Aleman
+alemana
+Alemanni
+Alemannian
+Alemannic
+alemannic
+Alemannish
+Alembert
+alembic
+alembicate
+alembicated
+alembics
+alembroth
+Alemite
+alemite
+alemmal
+alemonger
+alen
+Alena
+Alencon
+alencon
+alencons
+Alene
+alenge
+alength
+Alenson
+Alentejo
+alentours
+alenu
+Aleochara
+Alep
+aleph
+aleph-null
+alephs
+aleph-zero
+alephzero
+alepidote
+alepine
+alepole
+alepot
+Aleppine
+Aleppo
+Aleras
+alerce
+alerion
+Aleris
+Aleron
+alerse
+alert
+alerta
+alerted
+alertedly
+alerter
+alerters
+alertest
+alerting
+alertly
+alertness
+alertnesses
+alerts
+-ales
+Ales
+ales
+alesan
+Alesandrini
+aleshot
+Alesia
+Alessandra
+Alessandri
+Alessandria
+Alessandro
+alestake
+ale-swilling
+Aleta
+aletap
+aletaster
+Aletes
+Aletha
+Alethea
+Alethia
+alethic
+alethiologic
+alethiological
+alethiologist
+alethiology
+alethopteis
+alethopteroid
+alethoscope
+aletocyte
+Aletris
+Aletta
+Alette
+alette
+aleucaemic
+aleucemic
+aleukaemic
+aleukemic
+Aleurites
+aleuritic
+Aleurobius
+Aleurodes
+Aleurodidae
+aleuromancy
+aleurometer
+aleuron
+aleuronat
+aleurone
+aleurones
+aleuronic
+aleurons
+aleuroscope
+Aleus
+Aleut
+aleut
+Aleutian
+aleutian
+Aleutians
+aleutians
+Aleutic
+aleutite
+alevin
+alevins
+Alevitsa
+alew
+ale-washed
+alewhap
+ale-wife
+alewife
+alewives
+Alex
+Alexa
+Alexander
+alexander
+alexanders
+Alexanderson
+Alexandr
+Alexandra
+Alexandre
+Alexandreid
+Alexandretta
+Alexandria
+alexandria
+Alexandrian
+alexandrian
+Alexandrianism
+Alexandrina
+Alexandrine
+alexandrine
+alexandrines
+Alexandrinus
+alexandrite
+Alexandro
+Alexandropolis
+Alexandros
+Alexandroupolis
+Alexas
+Alexei
+Alexi
+Alexia
+alexia
+Alexian
+Alexiares
+alexias
+alexic
+Alexicacus
+alexin
+Alexina
+Alexine
+alexine
+alexines
+alexinic
+alexins
+Alexio
+alexipharmacon
+alexipharmacum
+alexipharmic
+alexipharmical
+alexipyretic
+ALEXIS
+Alexis
+Alexishafen
+alexiteric
+alexiterical
+Alexius
+Aley
+aleyard
+Aleydis
+Aleyrodes
+aleyrodid
+Aleyrodidae
+alezan
+Alf
+alf
+ALFA
+alfa
+Alfadir
+alfaje
+alfaki
+alfakis
+alfalfa
+alfalfas
+alfaqui
+alfaquin
+alfaquins
+alfaquis
+Alfarabius
+alfarga
+alfas
+ALFE
+Alfedena
+alfenide
+Alfeo
+alferes
+alferez
+alfet
+Alfeus
+Alfheim
+Alfi
+Alfie
+Alfieri
+alfilaria
+alfileria
+alfilerilla
+alfilerillo
+alfin
+alfiona
+alfione
+Alfirk
+alfoncino
+Alfons
+Alfonse
+alfonsin
+Alfonso
+alfonso
+Alfonson
+Alfonzo
+Alford
+alforge
+alforja
+alforjas
+Alfraganus
+Alfred
+alfred
+Alfreda
+Alfredo
+alfresco
+Alfric
+alfridaric
+alfridary
+Alfur
+Alfurese
+Alfuro
+al-Fustat
+Alfy
+Alg
+Alg.
+alg
+alg-
+alg.
+alga
+algae
+algaecide
+algaeological
+algaeologist
+algaeology
+algaesthesia
+algaesthesis
+algal
+algal-algal
+Algalene
+algalia
+Algar
+algarad
+algarde
+algaroba
+algarobas
+algarot
+Algaroth
+algarroba
+algarrobilla
+algarrobin
+Algarsife
+Algarsyf
+Algarve
+algas
+algate
+algates
+Al-Gazel
+algazel
+Algebar
+algebra
+algebraic
+algebraical
+algebraically
+algebraist
+algebraists
+algebraization
+algebraize
+algebraized
+algebraizing
+algebras
+algebrization
+Algeciras
+Algedi
+algedo
+algedonic
+algedonics
+algefacient
+Algenib
+Alger
+Algeria
+algeria
+Algerian
+algerian
+algerians
+algerienne
+Algerine
+algerine
+algerines
+algerita
+algerite
+Algernon
+algesia
+algesic
+algesimeter
+algesiometer
+algesireceptor
+algesis
+algesthesis
+algetic
+Alghero
+-algia
+Algic
+algic
+algicidal
+algicide
+algicides
+algid
+algidities
+algidity
+algidness
+Algie
+Algieba
+Algiers
+algiers
+algific
+algin
+alginate
+alginates
+algine
+alginic
+algins
+alginuresis
+algiomuscular
+algist
+algivorous
+algo-
+algocyan
+algodon
+algodoncillo
+algodonite
+algoesthesiometer
+algogenic
+algoid
+ALGOL
+Algol
+algol
+algolagnia
+algolagnic
+algolagnist
+algolagny
+algological
+algologically
+algologies
+algologist
+algology
+Algoma
+Algoman
+algometer
+algometric
+algometrical
+algometrically
+algometry
+Algomian
+Algomic
+Algona
+Algonac
+Algonkian
+algonkian
+Algonkin
+Algonkins
+Algonquian
+algonquian
+Algonquians
+algonquians
+Algonquin
+algonquin
+Algonquins
+algonquins
+algophagous
+algophilia
+algophilist
+algophobia
+algor
+Algorab
+Algores
+algorism
+algorismic
+algorisms
+algorist
+algoristic
+algorithm
+algorithmic
+algorithmically
+algorithms
+algors
+algosis
+algous
+algovite
+algraphic
+algraphy
+Algren
+alguacil
+alguazil
+alguifou
+Alguire
+algum
+algums
+Algy
+alhacena
+Alhagi
+alhagi
+Alhambra
+alhambra
+Alhambraic
+Alhambresque
+alhambresque
+alhandal
+Alhazen
+Alhena
+alhenna
+alhet
+ALI
+Ali
+ali-
+Alia
+alia
+Aliacensis
+aliamenta
+alias
+aliased
+aliases
+aliasing
+Alibamu
+alibangbang
+Aliber
+alibi
+alibied
+alibies
+alibiing
+alibility
+alibis
+alible
+Alic
+Alica
+Alicant
+alicant
+Alicante
+Alice
+alice
+Alicea
+Alice-in-Wonderland
+Aliceville
+alichel
+Alichino
+Alicia
+Alick
+alicoche
+alictisal
+alicula
+aliculae
+alicyclic
+Alida
+alidad
+alidada
+alidade
+alidades
+alidads
+Alidia
+Alidis
+Alids
+Alidus
+Alie
+Alief
+alien
+alienabilities
+alienability
+alienable
+alienage
+alienages
+alienate
+alienated
+alienates
+alienating
+alienation
+alienations
+alienator
+aliency
+aliene
+aliened
+alienee
+alienees
+aliener
+alieners
+alienicola
+alienicolae
+alienigenate
+aliening
+alienism
+alienisms
+alienist
+alienists
+alienize
+alienly
+alienness
+alienor
+alienors
+aliens
+alienship
+aliesterase
+aliet
+aliethmoid
+aliethmoidal
+alif
+Alifanfaron
+alife
+aliferous
+aliform
+alifs
+Aligarh
+aligerous
+alight
+alighted
+alighten
+alighting
+alightment
+alights
+align
+aligned
+aligner
+aligners
+aligning
+alignment
+alignments
+aligns
+aligreek
+alii
+aliipoe
+Alika
+alike
+Alikee
+alikeness
+alikewise
+Alikuluf
+Alikulufan
+alilonghi
+alima
+alimenation
+aliment
+alimental
+alimentally
+alimentariness
+alimentary
+alimentation
+alimentative
+alimentatively
+alimentativeness
+alimented
+alimenter
+alimentic
+alimenting
+alimentive
+alimentiveness
+alimentotherapy
+aliments
+alimentum
+alimonied
+alimonies
+alimony
+alin
+Alina
+alinasal
+A-line
+Aline
+aline
+alineation
+alined
+alinement
+aliner
+aliners
+alines
+alingual
+alining
+alinit
+Alinna
+alinota
+alinotum
+alintatao
+aliofar
+Alioth
+alioth
+alipata
+aliped
+alipeds
+aliphatic
+alipin
+aliptae
+alipteria
+alipterion
+aliptes
+aliptic
+aliptteria
+aliquant
+aliquid
+Aliquippa
+aliquot
+aliquots
+Alis
+Alisa
+Alisan
+Alisander
+alisanders
+Alisen
+aliseptal
+alish
+Alisha
+Alisia
+alisier
+Al-Iskandariyah
+Alisma
+alisma
+Alismaceae
+alismaceous
+alismad
+alismal
+Alismales
+Alismataceae
+alismoid
+aliso
+Alison
+alison
+alisonite
+alisos
+alisp
+alispheno
+alisphenoid
+alisphenoidal
+Alissa
+alist
+Alistair
+Alister
+Alisun
+ALIT
+alit
+Alita
+Alitalia
+alite
+aliter
+Alitha
+Alithea
+Alithia
+alitrunk
+Alitta
+aliturgic
+aliturgical
+ality
+aliunde
+Alius
+alive
+aliveness
+alives
+alivincular
+Alix
+aliya
+aliyah
+aliyahaliyahs
+aliyahs
+aliyas
+aliyos
+aliyot
+aliyoth
+Aliza
+alizarate
+alizari
+alizarin
+alizarine
+alizarins
+aljama
+aljamado
+aljamia
+aljamiado
+aljamiah
+aljoba
+aljofaina
+alk
+alk.
+Alkabo
+alkahest
+alkahestic
+alkahestica
+alkahestical
+alkahests
+Alkaid
+alkalamide
+alkalemia
+alkalescence
+alkalescency
+alkalescent
+alkali
+alkalic
+alkalies
+alkaliferous
+alkalifiable
+alkalified
+alkalifies
+alkalify
+alkalifying
+alkaligen
+alkaligenous
+alkalimeter
+alkalimetric
+alkalimetrical
+alkalimetrically
+alkalimetry
+alkalin
+alkaline
+alkalinisation
+alkalinise
+alkalinised
+alkalinising
+alkalinities
+alkalinity
+alkalinization
+alkalinize
+alkalinized
+alkalinizes
+alkalinizing
+alkalinuria
+alkalis
+alkalisable
+alkalisation
+alkalise
+alkalised
+alkaliser
+alkalises
+alkalising
+alkalizable
+alkalizate
+alkalization
+alkalize
+alkalized
+alkalizer
+alkalizes
+alkalizing
+alkaloid
+alkaloidal
+alkaloids
+alkalometry
+alkalosis
+alkalous
+Alkalurops
+alkamin
+alkamine
+alkanal
+alkane
+alkanes
+alkanet
+alkanethiol
+alkanets
+Alkanna
+alkanna
+alkannin
+alkanol
+Alkaphrah
+alkapton
+alkaptone
+alkaptonuria
+alkaptonuric
+alkargen
+alkarsin
+alkarsine
+Alka-Seltzer
+alkatively
+alkedavy
+alkekengi
+alkene
+alkenes
+alkenna
+alkenyl
+alkermes
+Alkes
+Alkhimovo
+alkide
+alkies
+alkin
+alkine
+alkines
+alkitran
+Alkmaar
+Alkol
+alkool
+Alkoran
+Alkoranic
+alkoxid
+alkoxide
+alkoxy
+alkoxyl
+alky
+alkyd
+alkyds
+alkyl
+alkylamine
+alkylamino
+alkylarylsulfonate
+alkylate
+alkylated
+alkylates
+alkylating
+alkylation
+alkylbenzenesulfonate
+alkylbenzenesulfonates
+alkylene
+alkylic
+alkylidene
+alkylize
+alkylogen
+alkylol
+alkyloxy
+alkyls
+alkyne
+alkynes
+all
+all-
+Alla
+all-abhorred
+all-able
+all-absorbing
+allabuta
+all-accomplished
+allachesthesia
+all-acting
+allactite
+all-admired
+all-admiring
+all-advised
+allaeanthus
+all-affecting
+all-afflicting
+all-aged
+allagite
+allagophyllous
+allagostemonous
+Allah
+allah
+Allahabad
+Allain
+all-air
+allalinite
+Allamanda
+all-amazed
+All-american
+all-American
+all-american
+allamonti
+all-a-mort
+allamoth
+allamotti
+Allamuchy
+Allan
+allan
+Allana
+Allan-a-Dale
+allanite
+allanites
+allanitic
+Allanson
+allantiasis
+all'antica
+allantochorion
+allantoic
+allantoid
+allantoidal
+Allantoidea
+allantoidean
+allantoides
+allantoidian
+allantoin
+allantoinase
+allantoinuria
+allantois
+allantoxaidin
+allanturic
+all-appaled
+all-appointing
+all-approved
+all-approving
+Allard
+Allardt
+Allare
+allargando
+all-armed
+all-around
+all-arraigning
+all-arranging
+Allasch
+all-assistless
+allassotonic
+al-Lat
+allative
+all-atoning
+allatrate
+all-attempting
+all-availing
+allay
+allayed
+allayer
+allayers
+allaying
+allayment
+Allayne
+allays
+all-bearing
+all-beauteous
+all-beautiful
+Allbee
+all-beholding
+all-bestowing
+all-binding
+all-bitter
+all-black
+all-blasting
+all-blessing
+allbone
+all-bounteous
+all-bountiful
+all-bright
+all-brilliant
+All-british
+All-caucasian
+all-changing
+all-cheering
+all-collected
+all-colored
+all-comfortless
+all-commander
+all-commanding
+all-compelling
+all-complying
+all-composing
+all-comprehending
+all-comprehensive
+all-comprehensiveness
+all-concealing
+all-conceiving
+all-concerning
+all-confounding
+all-conquering
+all-conscious
+all-considering
+all-constant
+all-constraining
+all-consuming
+all-content
+all-controlling
+all-convincing
+all-convincingly
+Allcot
+all-covering
+all-creating
+all-creator
+all-curing
+all-daring
+all-day
+all-dazzling
+all-deciding
+all-defiance
+all-defying
+all-depending
+all-designing
+all-desired
+all-despising
+all-destroyer
+all-destroying
+all-devastating
+all-devouring
+all-dimming
+all-directing
+all-discerning
+all-discovering
+all-disgraced
+all-dispensing
+all-disposer
+all-disposing
+all-divine
+all-divining
+all-dreaded
+all-dreadful
+all-drowsy
+Alle
+all-earnest
+all-eating
+allecret
+allect
+allectory
+Alledonia
+Alleen
+Alleene
+all-efficacious
+all-efficient
+Allegan
+Allegany
+allegata
+allegate
+allegation
+allegations
+allegator
+allegatum
+allege
+allegeable
+alleged
+allegedly
+allegement
+alleger
+allegers
+alleges
+Alleghanian
+Alleghany
+Alleghenian
+Alleghenies
+Allegheny
+allegheny
+allegiance
+allegiances
+allegiancy
+allegiant
+allegiantly
+allegiare
+alleging
+allegoric
+allegorical
+allegorically
+allegoricalness
+allegories
+allegorisation
+allegorise
+allegorised
+allegoriser
+allegorising
+allegorism
+allegorist
+allegorister
+allegoristic
+allegorists
+allegorization
+allegorize
+allegorized
+allegorizer
+allegorizing
+allegory
+Allegra
+Allegre
+allegresse
+allegretto
+allegrettos
+allegro
+allegros
+allele
+alleles
+alleleu
+allelic
+allelism
+allelisms
+allelocatalytic
+allelomorph
+allelomorphic
+allelomorphism
+allelopathy
+all-eloquent
+allelotropic
+allelotropism
+allelotropy
+Alleluia
+alleluia
+alleluiah
+alleluias
+alleluiatic
+alleluja
+allelvia
+Alleman
+allemand
+allemande
+allemandes
+allemands
+all-embracing
+all-embracingness
+allemontite
+Allen
+allen
+allenarly
+Allenby
+all-encompasser
+all-encompassing
+Allendale
+Allende
+all-ending
+Allendorf
+all-enduring
+Allene
+allene
+all-engrossing
+all-engulfing
+Allenhurst
+alleniate
+all-enlightened
+all-enlightening
+Allenport
+all-enraged
+Allensville
+allentando
+allentato
+Allentiac
+Allentiacan
+Allenton
+Allentown
+all-envied
+Allenwood
+Alleppey
+aller
+Alleras
+allergen
+allergenic
+allergenicity
+allergens
+allergia
+allergic
+allergies
+allergin
+allergins
+allergist
+allergists
+allergology
+allergy
+Allerie
+allerion
+Alleris
+aller-retour
+Allerton
+Allerus
+all-essential
+allesthesia
+allethrin
+alleve
+alleviant
+alleviate
+alleviated
+alleviater
+alleviaters
+alleviates
+alleviating
+alleviatingly
+alleviation
+alleviations
+alleviative
+alleviator
+alleviators
+alleviatory
+all-evil
+all-excellent
+all-expense
+all-expenses-paid
+Alley
+alley
+all-eyed
+alleyed
+alleyite
+Alleyn
+Alleyne
+alley-oop
+alleys
+alleyway
+alleyways
+allez
+allez-vous-en
+all-fair
+All-father
+All-fatherhood
+All-fatherly
+all-filling
+all-fired
+all-firedest
+all-firedly
+all-flaming
+all-flotation
+all-flower-water
+all-foreseeing
+all-forgetful
+all-forgetting
+all-forgiving
+all-forgotten
+all-fullness
+all-gas
+all-giver
+all-glorious
+all-golden
+Allgood
+allgood
+all-governing
+allgovite
+all-gracious
+all-grasping
+all-great
+all-guiding
+Allhallow
+all-hallow
+all-hallowed
+Allhallowmas
+Allhallows
+allhallows
+Allhallowtide
+all-happy
+allheal
+all-healing
+allheals
+all-hearing
+all-heeding
+all-helping
+all-hiding
+all-holy
+all-honored
+all-hoping
+all-hurting
+Alli
+alliable
+alliably
+Alliaceae
+alliaceous
+alliage
+Alliance
+alliance
+allianced
+alliancer
+alliances
+alliancing
+Allianora
+alliant
+Alliaria
+Alliber
+allicampane
+allice
+allicholly
+alliciency
+allicient
+allicin
+allicins
+allicit
+all-idolizing
+Allie
+Allied
+allied
+Allier
+Allies
+allies
+alligate
+alligated
+alligating
+alligation
+alligations
+alligator
+alligatored
+alligatorfish
+alligatorfishes
+alligatoring
+alligators
+all-illuminating
+all-imitating
+all-important
+all-impressive
+Allin
+all-in
+Allina
+all-including
+all-inclusive
+all-inclusiveness
+All-india
+allineate
+allineation
+all-infolding
+all-informing
+all-in-one
+all-interesting
+all-interpreting
+all-invading
+all-involving
+Allionia
+Allioniaceae
+Allis
+allis
+Allisan
+allision
+Allison
+Allissa
+Allista
+Allister
+Allistir
+all'italiana
+alliteral
+alliterate
+alliterated
+alliterates
+alliterating
+alliteration
+alliterational
+alliterationist
+alliterations
+alliterative
+alliteratively
+alliterativeness
+alliterator
+allituric
+Allium
+allium
+alliums
+allivalite
+Allix
+all-jarred
+all-judging
+all-just
+all-justifying
+all-kind
+all-knavish
+all-knowing
+all-knowingness
+all-land
+all-lavish
+all-licensed
+all-lovely
+all-loving
+all-maintaining
+all-maker
+all-making
+all-maturing
+all-meaningness
+all-merciful
+all-metal
+all-might
+all-miscreative
+Allmon
+allmouth
+allmouths
+all-murdering
+allness
+all-night
+all-noble
+all-nourishing
+allo
+allo-
+Alloa
+alloantibody
+allobar
+allobaric
+allobars
+all-obedient
+all-obeying
+all-oblivious
+Allobroges
+allobrogical
+all-obscuring
+allocability
+allocable
+allocaffeine
+allocatable
+allocate
+allocated
+allocatee
+allocates
+allocating
+allocation
+allocations
+allocator
+allocators
+allocatur
+allocheiria
+allochetia
+allochetite
+allochezia
+allochiral
+allochirally
+allochiria
+allochlorophyll
+allochroic
+allochroite
+allochromatic
+allochroous
+allochthon
+allochthonous
+allocinnamic
+Allock
+alloclase
+alloclasite
+allocochick
+allocrotonic
+allocryptic
+allocthonous
+allocute
+allocution
+allocutive
+allocyanine
+allod
+allodelphite
+allodesmism
+allodge
+allodia
+allodial
+allodialism
+allodialist
+allodiality
+allodially
+allodian
+allodiaries
+allodiary
+allodies
+allodification
+allodium
+allods
+allody
+alloeosis
+alloeostropha
+alloeotic
+alloerotic
+alloerotism
+allogamies
+allogamous
+allogamy
+allogene
+allogeneic
+allogeneity
+allogeneous
+allogenic
+allogenically
+allograft
+allograph
+allographic
+all-oil
+alloimmune
+alloiogenesis
+alloiometric
+alloiometry
+alloisomer
+alloisomeric
+alloisomerism
+allokinesis
+allokinetic
+allokurtic
+allolalia
+allolalic
+allomerism
+allomerization
+allomerize
+allomerized
+allomerizing
+allomerous
+allometric
+allometry
+allomorph
+allomorphic
+allomorphism
+allomorphite
+allomucic
+allonge
+allonges
+allonomous
+Allons
+allonym
+allonymous
+allonymously
+allonyms
+alloo
+allo-octaploid
+allopalladium
+allopath
+allopathetic
+allopathetically
+allopathic
+allopathically
+allopathies
+allopathist
+allopaths
+allopathy
+allopatric
+allopatrically
+allopatry
+allopelagic
+allophanamid
+allophanamide
+allophanate
+allophanates
+allophane
+allophanic
+allophite
+allophone
+allophones
+allophonic
+allophonically
+allophore
+allophyle
+allophylian
+allophylic
+Allophylus
+allophytoid
+alloplasm
+alloplasmatic
+alloplasmic
+alloplast
+alloplastic
+alloplasty
+alloploidy
+allopolyploid
+allopolyploidy
+allopsychic
+allopurinol
+alloquial
+alloquialism
+alloquy
+all-ordering
+allorhythmia
+all-or-none
+allorrhyhmia
+allorrhythmic
+allosaur
+Allosaurus
+allose
+allosematic
+allosome
+allosteric
+allosterically
+allosyndesis
+allosyndetic
+allot
+alloted
+allotee
+allotelluric
+allotheism
+allotheist
+allotheistic
+Allotheria
+allothigene
+allothigenetic
+allothigenetically
+allothigenic
+allothigenous
+allothimorph
+allothimorphic
+allothogenic
+allothogenous
+allotment
+allotments
+allotransplant
+allotransplantation
+allotriodontia
+Allotriognathi
+allotriomorphic
+allotriophagia
+allotriophagy
+allotriuria
+allotrope
+allotropes
+allotrophic
+allotropic
+allotropical
+allotropically
+allotropicity
+allotropies
+allotropism
+allotropize
+allotropous
+allotropy
+allotrylic
+allots
+allottable
+all'ottava
+allotted
+allottee
+allottees
+allotter
+allotters
+allottery
+allotting
+allotype
+allotypes
+allotypic
+allotypical
+allotypically
+allotypies
+allotypy
+Allouez
+all-out
+all-over
+allover
+all-overish
+all-overishness
+all-overpowering
+all-overs
+allovers
+all-overtopping
+allow
+allowable
+allowableness
+allowably
+allowance
+allowanced
+allowances
+allowancing
+Alloway
+allowed
+allowedly
+allower
+allowing
+allows
+alloxan
+alloxanate
+alloxanic
+alloxans
+alloxantin
+alloxuraemia
+alloxuremia
+alloxuric
+alloxy
+alloxyproteic
+alloy
+alloyage
+alloyed
+alloying
+alloys
+allozooid
+all-panting
+all-parent
+all-pass
+all-patient
+all-peaceful
+all-penetrating
+all-peopled
+all-perceptive
+all-perfect
+all-perfection
+all-perfectness
+all-perficient
+all-persuasive
+all-pervading
+all-pervadingness
+all-pervasive
+all-pervasiveness
+all-piercing
+all-pitiless
+all-pitying
+all-pondering
+Allport
+all-possessed
+all-potency
+all-potent
+all-potential
+all-power
+all-powerful
+all-powerfully
+all-powerfulness
+all-praised
+all-praiseworthy
+all-presence
+all-present
+all-prevailing
+all-prevailingness
+all-prevalency
+all-prevalent
+all-preventing
+all-prolific
+all-protecting
+all-provident
+all-providing
+all-puissant
+all-pure
+all-purpose
+all-quickening
+all-rail
+all-rapacious
+all-reaching
+Allred
+all-red
+all-redeeming
+all-relieving
+all-rending
+all-righteous
+all-round
+allround
+all-roundedness
+all-rounder
+all-rubber
+Allrud
+all-ruling
+All-russia
+All-russian
+alls
+all-sacred
+all-sanctifying
+all-satiating
+all-satisfying
+all-saving
+all-sayer
+all-sea
+all-searching
+allseed
+allseeds
+all-seeing
+all-seeingly
+all-seeingness
+all-seer
+all-shaking
+all-shamed
+all-shaped
+all-shrouding
+all-shunned
+all-sided
+all-silent
+all-sized
+all-sliming
+all-soothing
+Allsopp
+all-sorts
+all-soul
+All-southern
+allspice
+allspices
+all-spreading
+all-star
+all-stars
+Allstate
+all-steel
+Allston
+all-strangling
+all-subduing
+all-submissive
+all-substantial
+all-sufficiency
+all-sufficient
+all-sufficiently
+all-sufficing
+Allsun
+all-surpassing
+all-surrounding
+all-surveying
+all-sustainer
+all-sustaining
+all-swallowing
+all-swaying
+all-telling
+all-terrible
+allthing
+allthorn
+all-thorny
+all-time
+all-tolerating
+all-transcending
+all-triumphing
+all-truth
+alltud
+all-turned
+all-turning
+allude
+alluded
+alludes
+alluding
+allumette
+allumine
+alluminor
+all-understanding
+all-unwilling
+all-upholder
+all-upholding
+allurance
+allure
+allured
+allurement
+allurements
+allurer
+allurers
+allures
+alluring
+alluringly
+alluringness
+allusion
+allusions
+allusive
+allusively
+allusiveness
+allusivenesses
+allusory
+allutterly
+alluvia
+alluvial
+alluvials
+alluviate
+alluviation
+alluvio
+alluvion
+alluvions
+alluvious
+alluvium
+alluviums
+alluvivia
+alluviviums
+Allvar
+all-various
+all-vast
+Allveta
+all-watched
+all-water
+all-weak
+all-weather
+all-weight
+Allwein
+allwhere
+allwhither
+all-whole
+all-wisdom
+all-wise
+all-wisely
+all-wiseness
+all-wondrous
+all-wood
+all-wool
+allwork
+all-working
+all-worshiped
+Allworthy
+all-worthy
+all-wrongness
+Allx
+-ally
+Ally
+ally
+Allyce
+all-year
+allyic
+allying
+allyl
+allylamine
+allylate
+allylation
+allylene
+allylic
+allyls
+allylthiourea
+Allyn
+Allyne
+allyou
+Allys
+Allyson
+ALM
+Alma
+alma
+Alma-Ata
+almacantar
+almacen
+almacenista
+Almach
+almaciga
+almacigo
+Almad
+Almada
+Almaden
+almadia
+almadie
+Almagest
+almagest
+almagests
+almagra
+almah
+almahs
+Almain
+almain
+almaine
+almain-rivets
+Almallah
+alma-materism
+al-Mamoun
+Alman
+almanac
+almanacs
+almander
+almandine
+almandines
+almandite
+almanner
+Almanon
+almas
+Alma-Tadema
+alme
+Almeda
+Almeeta
+almeh
+almehs
+Almeida
+almeidina
+Almelo
+almemar
+almemars
+almemor
+Almena
+almendro
+almendron
+Almera
+Almeria
+Almerian
+Almeric
+almeries
+almeriite
+almery
+almes
+Almeta
+almice
+almicore
+Almida
+almight
+almightily
+almightiness
+Almighty
+almighty
+almique
+Almira
+almirah
+Almire
+almistry
+Almita
+almner
+almners
+Almo
+almochoden
+almocrebe
+almogavar
+Almohad
+almohad
+Almohade
+Almohades
+almoign
+almoin
+Almon
+almon
+almonage
+Almond
+almond
+almond-eyed
+almond-furnace
+almond-leaved
+almondlike
+almonds
+almond-shaped
+almondy
+almoner
+almoners
+almonership
+almoning
+almonries
+almonry
+Almont
+Almoravid
+Almoravide
+Almoravides
+almose
+almost
+almous
+alms
+alms-dealing
+almsdeed
+alms-fed
+almsfolk
+almsful
+almsgiver
+almsgiving
+alms-house
+almshouse
+almshouses
+almsman
+almsmen
+almsmoney
+almswoman
+almswomen
+almucantar
+almuce
+almuces
+almud
+almude
+almudes
+almuds
+almuerzo
+almug
+almugs
+Almund
+Almuredin
+almury
+almuten
+Almyra
+aln
+Alna
+alnage
+alnager
+alnagership
+Alnaschar
+Alnascharism
+alnath
+alnein
+Alnico
+alnico
+alnicoes
+Alnilam
+alniresinol
+Alnitak
+Alnitham
+alniviridol
+alnoite
+alnuin
+Alnus
+alnus
+Alo
+alo
+Aloadae
+Alocasia
+alocasia
+alochia
+alod
+aloddia
+Alodee
+Alodi
+alodia
+alodial
+alodialism
+alodialist
+alodiality
+alodially
+alodialty
+alodian
+alodiaries
+alodiary
+Alodie
+alodies
+alodification
+alodium
+alody
+aloe
+aloed
+aloedary
+aloe-emodin
+aloelike
+aloemodin
+aloeroot
+aloes
+aloesol
+aloeswood
+aloetic
+aloetical
+Aloeus
+aloewood
+aloft
+Alogi
+alogia
+Alogian
+alogian
+alogical
+alogically
+alogism
+alogotrophy
+alogy
+Aloha
+aloha
+alohas
+aloid
+Aloidae
+Aloin
+aloin
+aloins
+Alois
+Aloise
+Aloisia
+aloisiite
+Aloisius
+Aloke
+aloma
+alomancy
+Alon
+alone
+alonely
+aloneness
+along
+alongships
+alongshore
+alongshoreman
+alongside
+alongst
+Alonso
+Alonsoa
+Alonzo
+aloof
+aloofe
+aloofly
+aloofness
+aloose
+alop
+alopathic
+Alope
+alopecia
+Alopecias
+alopecias
+alopecic
+alopecist
+alopecoid
+Alopecurus
+Alopecus
+alopekai
+alopeke
+alophas
+Alopias
+Alopiidae
+alorcinic
+Alorton
+Alosa
+alose
+Alost
+Alouatta
+alouatte
+aloud
+Alouette
+alouette
+alouettes
+alout
+alow
+alowe
+Aloxe-Corton
+Aloxite
+aloyau
+Aloys
+Aloysia
+aloysia
+Aloysius
+A.L.P.
+ALP
+alp
+alpaca
+alpacas
+alpargata
+alpasotes
+Alpaugh
+Alpax
+alpax
+alpeen
+Alpen
+alpen
+Alpena
+alpenglow
+alpenhorn
+alpenhorns
+alpenstock
+alpenstocker
+alpenstocks
+Alper
+Alpers
+Alpert
+Alpes-de-Haute-Provence
+Alpes-Maritimes
+alpestral
+alpestrian
+alpestrine
+Alpetragius
+Alpha
+alpha
+alpha-amylase
+alphabet
+alphabetarian
+alphabetary
+alphabeted
+alphabetic
+alphabetical
+alphabetically
+alphabetics
+alphabetiform
+alphabeting
+alphabetisation
+alphabetise
+alphabetised
+alphabetiser
+alphabetising
+alphabetism
+alphabetist
+alphabetization
+alphabetize
+alphabetized
+alphabetizer
+alphabetizers
+alphabetizes
+alphabetizing
+alphabetology
+alphabets
+alpha-cellulose
+Alphaea
+alpha-eucaine
+alpha-hypophamine
+alphameric
+alphamerical
+alphamerically
+alpha-naphthol
+alpha-naphthylamine
+alpha-naphthylthiourea
+alphanumeric
+alphanumerical
+alphanumerically
+alphanumerics
+Alphard
+Alpharetta
+alphas
+alpha-tocopherol
+alphatoluic
+alpha-truxilline
+Alphatype
+Alphean
+Alphecca
+alphenic
+Alpheratz
+Alphesiboea
+Alpheus
+alpheus
+alphin
+alphitomancy
+alphitomorphous
+alphol
+Alphonist
+Alphons
+Alphonsa
+Alphonse
+alphonsin
+Alphonsine
+alphonsine
+Alphonsism
+Alphonso
+Alphonsus
+alphorn
+alphorns
+alphos
+alphosis
+alphosises
+alphyl
+alphyls
+alphyn
+Alpian
+Alpid
+alpieu
+alpigene
+Alpine
+alpine
+alpinely
+alpinery
+alpines
+alpinesque
+Alpinia
+alpinia
+Alpiniaceae
+Alpinism
+alpinism
+alpinisms
+Alpinist
+alpinist
+alpinists
+alpist
+alpiste
+ALPO
+Alpoca
+Alps
+alps
+Alpujarra
+alqueire
+alquier
+alquifou
+alraun
+alreadiness
+already
+Alric
+Alrich
+Alrick
+alright
+alrighty
+Alroi
+alroot
+Alroy
+ALRU
+alruna
+alrune
+AlrZc
+ALS
+als
+Alsace
+Alsace-Lorraine
+Alsace-lorrainer
+al-Sahih
+Alsatia
+alsatia
+Alsatian
+alsatian
+alsbachite
+Alsea
+Alsen
+Alsey
+Alshain
+alsifilm
+alsike
+alsikes
+Alsinaceae
+alsinaceous
+Alsine
+Alsip
+alsmekill
+Also
+also
+Alson
+alsoon
+Alsop
+Alsophila
+also-ran
+Alstead
+Alston
+Alstonia
+alstonidine
+alstonine
+alstonite
+Alstroemeria
+alsweill
+alswith
+Alsworth
+alt
+alt.
+Alta
+Alta.
+Altadena
+Altaf
+Altai
+Altaian
+altaian
+Altaic
+altaic
+Altaid
+Altair
+altair
+altaite
+Altaloma
+altaltissimo
+Altamahaw
+Altamira
+Altamont
+altar
+altarage
+altared
+altarist
+altarlet
+altarpiece
+altarpieces
+altars
+altarwise
+Altavista
+Altay
+altazimuth
+Altdorf
+Altdorfer
+Alten
+Altenburg
+alter
+alterability
+alterable
+alterableness
+alterably
+alterant
+alterants
+alterate
+alteration
+alterations
+alterative
+alteratively
+altercate
+altercated
+altercating
+altercation
+altercations
+altercative
+altered
+alteregoism
+alteregoistic
+alterer
+alterers
+altering
+alterity
+alterius
+alterman
+altern
+alternacy
+alternamente
+alternance
+alternant
+Alternanthera
+Alternaria
+alternariose
+alternat
+alternate
+alternated
+alternate-leaved
+alternately
+alternateness
+alternater
+alternates
+alternating
+alternatingly
+alternation
+alternationist
+alternations
+alternative
+alternatively
+alternativeness
+alternatives
+alternativity
+alternativo
+alternator
+alternators
+alterne
+alterni-
+alternifoliate
+alternipetalous
+alternipinnate
+alternisepalous
+alternity
+alternize
+alterocentric
+alters
+alterum
+Altes
+altesse
+alteza
+altezza
+Altgeld
+Altha
+Althaea
+althaea
+althaeas
+althaein
+Althaemenes
+Althea
+althea
+altheas
+Althee
+Altheimer
+althein
+altheine
+Altheta
+Althing
+althing
+althionic
+altho
+althorn
+althorns
+although
+alti-
+Altica
+Alticamelus
+altify
+altigraph
+altilik
+altiloquence
+altiloquent
+altimeter
+altimeters
+altimetrical
+altimetrically
+altimetry
+altimettrically
+altin
+altincar
+Altingiaceae
+altingiaceous
+altininck
+altiplanicie
+Altiplano
+altiplano
+alti-rilievi
+Altis
+altiscope
+altisonant
+altisonous
+altissimo
+altitonant
+altitude
+altitudes
+altitudinal
+altitudinarian
+altitudinous
+Altman
+Altmar
+alto
+alto-
+alto-cumulus
+altocumulus
+alto-cumulus-castellatus
+altogether
+altogetherness
+altoist
+altoists
+altometer
+Alton
+Altona
+Altoona
+alto-relievo
+alto-relievos
+alto-rilievo
+altos
+alto-stratus
+altostratus
+altoun
+altrices
+altricial
+Altrincham
+Altro
+altropathy
+altrose
+altruism
+altruisms
+altruist
+altruistic
+altruistically
+altruists
+alts
+altschin
+altumal
+altun
+Altura
+Alturas
+alture
+Altus
+altus
+ALU
+Aluco
+Aluconidae
+Aluconinae
+aludel
+aludels
+Aludra
+Aluin
+Aluino
+alula
+alulae
+alular
+alulet
+Alulim
+alum
+alum.
+Alumbank
+alumbloom
+alumbrado
+Alumel
+alumen
+alumetize
+alumian
+alumic
+alumiferous
+alumin
+alumina
+aluminaphone
+aluminas
+aluminate
+alumine
+alumines
+aluminic
+aluminide
+aluminiferous
+aluminiform
+aluminio-
+aluminise
+aluminised
+aluminish
+aluminising
+aluminite
+aluminium
+aluminize
+aluminized
+aluminizes
+aluminizing
+alumino-
+aluminoferric
+aluminographic
+aluminography
+aluminose
+aluminosilicate
+aluminosis
+aluminosity
+aluminothermic
+aluminothermics
+aluminothermy
+aluminotype
+aluminous
+alumins
+aluminum
+aluminums
+aluminyl
+alumish
+alumite
+alumium
+alumna
+alumnae
+alumnal
+alumni
+alumniate
+Alumnol
+alumnus
+alumohydrocalcite
+alumroot
+alumroots
+alums
+alumstone
+alun-alun
+Alundum
+alundum
+aluniferous
+alunite
+alunites
+alunogen
+alupag
+Alur
+Alurd
+alure
+alurgite
+Alurta
+alushtite
+aluta
+alutaceous
+al-Uzza
+Alva
+Alvada
+Alvadore
+Alvah
+Alvan
+Alvar
+alvar
+Alvarado
+Alvarez
+Alvaro
+Alvaton
+alvearies
+alvearium
+alveary
+alveated
+alvelos
+alveloz
+alveola
+alveolae
+alveolar
+alveolariform
+alveolarly
+alveolars
+alveolary
+alveolate
+alveolated
+alveolation
+alveole
+alveolectomy
+alveoli
+alveoliform
+alveolite
+Alveolites
+alveolitis
+alveolo-
+alveoloclasia
+alveolocondylean
+alveolodental
+alveololabial
+alveololingual
+alveolonasal
+alveolosubnasal
+alveolotomy
+alveolus
+Alver
+Alvera
+Alverda
+Alverson
+Alverta
+Alverton
+Alves
+Alveta
+alveus
+alvia
+Alviani
+alviducous
+Alvie
+Alvin
+Alvina
+alvine
+Alvinia
+Alvino
+Alvira
+Alvis
+Alviso
+Alviss
+Alvissmal
+Alvita
+alvite
+Alvito
+Alvo
+Alvord
+Alvordton
+alvus
+Alvy
+alw
+alway
+always
+Alwin
+alwise
+alwite
+Alwitt
+Alwyn
+aly
+Alya
+Alyattes
+Alyce
+alycompaine
+Alyda
+Alydar
+Alyeska
+alymphia
+alymphopotent
+Alyose
+Alyosha
+alypin
+alypine
+alypum
+Alys
+Alysa
+Alyse
+Alysia
+Alyson
+Alysoun
+Alyss
+Alyssa
+alysson
+Alyssum
+alyssum
+alyssums
+alytarch
+Alytes
+Alyworth
+Alzada
+alzheimer
+A&M
+A.M.
+AM
+Am
+Am.
+a.m.
+am
+A.M.A.
+AMA
+Ama
+ama
+amaas
+Amabel
+Amabella
+Amabelle
+Amabil
+amabile
+amability
+amable
+amacratic
+amacrinal
+amacrine
+AMACS
+amadan
+Amadas
+amadavat
+amadavats
+amadelphous
+Amadeo
+Amadeus
+Amadi
+Amadis
+Amado
+Amador
+amadou
+amadous
+Amadus
+Amaethon
+Amafingo
+amaga
+Amagansett
+Amagasaki
+Amagon
+amah
+amahs
+Amahuaca
+Amaigbo
+amain
+amaine
+amaist
+amaister
+amakebe
+Amakosa
+Amal
+amal
+amala
+amalaita
+amalaka
+Amalbena
+Amalberga
+Amalbergas
+Amalburga
+Amalea
+Amalee
+Amalek
+Amalekite
+amalekite
+Amaleta
+amalett
+Amalfian
+Amalfitan
+amalg
+amalgam
+amalgamable
+amalgamate
+amalgamated
+amalgamater
+amalgamates
+amalgamating
+amalgamation
+amalgamationist
+amalgamations
+amalgamative
+amalgamatize
+amalgamator
+amalgamators
+amalgamist
+amalgamization
+amalgamize
+amalgams
+Amalia
+amalic
+Amalie
+Amalings
+Amalita
+Amalle
+Amalrician
+amaltas
+Amalthaea
+Amalthea
+Amaltheia
+amamau
+Amampondo
+Aman
+Amana
+Amand
+Amanda
+amande
+Amandi
+Amandie
+amandin
+amandine
+Amando
+Amandus
+Amandy
+amang
+amani
+amania
+Amanist
+Amanita
+amanita
+amanitas
+amanitin
+amanitine
+amanitins
+Amanitopsis
+Amann
+amanori
+amanous
+amant
+amantadine
+amante
+amantillo
+amanuenses
+amanuensis
+Amap
+Amapa
+amapa
+Amapondo
+Amar
+amar
+Amara
+amaracus
+Amara-kosha
+Amaral
+Amarant
+amarant
+Amarantaceae
+amarantaceous
+amaranth
+Amaranthaceae
+amaranthaceous
+amaranthine
+amaranthoid
+amaranth-purple
+amaranths
+Amaranthus
+amarantine
+amarantite
+Amarantus
+Amaras
+AMARC
+amarelle
+amarelles
+Amarette
+amaretto
+amarettos
+amarevole
+Amargo
+amargosa
+amargoso
+amargosos
+Amari
+Amarillas
+Amarillis
+Amarillo
+amarillo
+amarillos
+amarin
+amarine
+Amaris
+amaritude
+amarity
+Amarna
+amarna
+amaroid
+amaroidal
+amarthritis
+amarvel
+Amary
+Amaryl
+amaryllid
+Amaryllidaceae
+amaryllidaceous
+amaryllideous
+Amaryllis
+amaryllis
+amaryllises
+Amarynceus
+amas
+Amasa
+AMASE
+amasesis
+Amasias
+amass
+amassable
+amassed
+amasser
+amassers
+amasses
+amassette
+amassing
+amassment
+amassments
+Amasta
+amasthenic
+amastia
+amasty
+AMAT
+Amata
+amate
+amated
+Amatembu
+Amaterasu
+amaterialistic
+amateur
+amateurish
+amateurishly
+amateurishness
+amateurism
+amateurisms
+amateurs
+amateurship
+Amathi
+Amathist
+Amathiste
+amathophobia
+Amati
+amati
+amating
+amatito
+amative
+amatively
+amativeness
+Amato
+amatol
+amatols
+amatorial
+amatorially
+amatorian
+amatories
+amatorio
+amatorious
+amatory
+AMATPS
+amatrice
+Amatruda
+Amatsumara
+amatungula
+Amaty
+amaurosis
+amaurotic
+amaut
+Amawalk
+amaxomania
+amay
+Amaya
+amaze
+amazed
+amazedly
+amazedness
+amazeful
+amazement
+amazements
+amazer
+amazers
+amazes
+amazia
+Amaziah
+Amazilia
+amazing
+amazingly
+Amazon
+amazon
+Amazona
+Amazonas
+Amazonia
+Amazonian
+amazonian
+Amazonis
+Amazonism
+amazonite
+Amazonomachia
+amazons
+amazonstone
+Amazulu
+Amb
+amb
+AMBA
+amba
+ambach
+ambage
+ambages
+ambagiosity
+ambagious
+ambagiously
+ambagiousness
+ambagitory
+Ambala
+ambalam
+amban
+ambar
+ambaree
+ambarella
+ambari
+ambaries
+ambaris
+ambary
+ambas
+ambash
+ambassade
+Ambassadeur
+ambassador
+ambassador-at-large
+ambassadorial
+ambassadorially
+ambassadors
+ambassadors-at-large
+ambassadorship
+ambassadorships
+ambassadress
+ambassage
+ambassiate
+ambassy
+ambatch
+ambatoarinite
+ambay
+ambe
+Ambedkar
+ambeer
+ambeers
+Amber
+amber
+amber-clear
+amber-colored
+amber-days
+amber-dropping
+amberfish
+amberfishes
+Amberg
+ambergrease
+ambergris
+ambergrises
+amber-headed
+amber-hued
+amberies
+amberiferous
+amberina
+amberite
+amberjack
+amberjacks
+Amberley
+amberlike
+amber-locked
+Amberly
+amberoid
+amberoids
+amberous
+ambers
+Amberson
+Ambert
+amber-tinted
+amber-tipped
+amber-weeping
+amber-white
+ambery
+amber-yielding
+ambi-
+Ambia
+ambiance
+ambiances
+ambicolorate
+ambicoloration
+ambidexter
+ambidexterities
+ambidexterity
+ambidexterous
+ambidextral
+ambidextrous
+ambidextrously
+ambidextrousness
+Ambie
+ambience
+ambiences
+ambiency
+ambiens
+ambient
+ambients
+ambier
+ambigenal
+ambigenous
+ambigu
+ambiguities
+ambiguity
+ambiguous
+ambiguously
+ambiguousness
+ambilaevous
+ambil-anak
+ambilateral
+ambilateralaterally
+ambilaterality
+ambilaterally
+ambilevous
+ambilian
+ambilogy
+ambiopia
+ambiparous
+ambisextrous
+ambisexual
+ambisexualities
+ambisexuality
+ambisinister
+ambisinistrous
+ambisporangiate
+ambisyllabic
+ambit
+ambital
+ambitendencies
+ambitendency
+ambitendent
+ambition
+ambitioned
+ambitioning
+ambitionist
+ambitionless
+ambitionlessly
+ambitions
+ambitious
+ambitiously
+ambitiousness
+ambits
+ambitty
+ambitus
+ambivalence
+ambivalences
+ambivalency
+ambivalent
+ambivalently
+ambiversion
+ambiversive
+ambivert
+ambiverts
+Amble
+amble
+ambled
+ambleocarpus
+Ambler
+ambler
+amblers
+ambles
+ambling
+amblingly
+amblosis
+amblotic
+amblyacousia
+amblyaphia
+Amblycephalidae
+Amblycephalus
+amblychromatic
+Amblydactyla
+amblygeusia
+amblygon
+amblygonal
+amblygonite
+amblyocarpous
+Amblyomma
+amblyope
+amblyopia
+amblyopic
+Amblyopsidae
+Amblyopsis
+amblyoscope
+amblypod
+Amblypoda
+amblypodous
+Amblyrhynchus
+amblystegite
+Amblystoma
+ambo
+amboceptoid
+amboceptor
+Ambocoelia
+ambodexter
+Amboina
+amboina
+amboinas
+Amboinese
+Amboise
+ambolic
+ambomalleal
+Ambon
+ambon
+ambones
+ambonite
+Ambonnay
+ambos
+ambosexous
+ambosexual
+Amboy
+amboyna
+amboynas
+ambracan
+ambrain
+ambreate
+ambreic
+ambrein
+ambrette
+ambrettolide
+Ambrica
+ambries
+ambrite
+Ambrogino
+Ambrogio
+ambroid
+ambroids
+Ambroise
+ambrology
+Ambros
+Ambrosane
+Ambrose
+ambrose
+Ambrosi
+Ambrosia
+ambrosia
+ambrosiac
+Ambrosiaceae
+ambrosiaceous
+ambrosial
+ambrosially
+Ambrosian
+ambrosian
+ambrosias
+ambrosiate
+ambrosin
+Ambrosine
+ambrosine
+Ambrosio
+Ambrosius
+ambrosterol
+ambrotype
+ambry
+ambs-ace
+ambsace
+ambsaces
+ambulacra
+ambulacral
+ambulacriform
+ambulacrum
+ambulance
+ambulanced
+ambulancer
+ambulances
+ambulancing
+ambulant
+ambulante
+ambulantes
+ambulate
+ambulated
+ambulates
+ambulating
+ambulatio
+ambulation
+ambulative
+ambulator
+Ambulatoria
+ambulatoria
+ambulatorial
+ambulatories
+ambulatorily
+ambulatorium
+ambulatoriums
+ambulators
+ambulatory
+ambulia
+ambuling
+ambulomancy
+Ambur
+amburbial
+Amburgey
+ambury
+ambuscade
+ambuscaded
+ambuscader
+ambuscades
+ambuscading
+ambuscado
+ambuscadoed
+ambuscados
+ambush
+ambushed
+ambusher
+ambushers
+ambushes
+ambushing
+ambushlike
+ambushment
+ambustion
+Amby
+Ambystoma
+Ambystomidae
+AMC
+Amchitka
+amchoor
+AMD
+amdahl
+A.M.D.G.
+AMDG
+amdt
+AME
+Ame
+ame
+Ameagle
+ameba
+amebae
+ameban
+amebas
+amebean
+amebian
+amebiasis
+amebic
+amebicidal
+amebicide
+amebid
+amebiform
+amebobacter
+amebocyte
+ameboid
+ameboidism
+amebous
+amebula
+Amedeo
+AMEDS
+ameed
+ameen
+ameer
+ameerate
+ameerates
+ameers
+ameiosis
+ameiotic
+Ameiuridae
+Ameiurus
+Ameiva
+Ameizoeira
+amel
+Amelanchier
+amelanchier
+ameland
+amelcorn
+amelcorns
+amelet
+Amelia
+amelia
+Amelie
+amelification
+Amelina
+Ameline
+ameliorable
+ameliorableness
+ameliorant
+ameliorate
+ameliorated
+ameliorates
+ameliorating
+amelioration
+ameliorations
+ameliorativ
+ameliorative
+amelioratively
+ameliorator
+amelioratory
+Amelita
+amellus
+ameloblast
+ameloblastic
+amelu
+amelus
+Amen
+amen
+Amena
+amenability
+amenable
+amenableness
+amenably
+amenage
+amenance
+Amend
+amend
+amendable
+amendableness
+amendatory
+amende
+amended
+amende-honorable
+amender
+amenders
+amending
+amendment
+amendments
+amends
+amene
+Amenia
+amenia
+Amenism
+Amenite
+amenities
+amenity
+amenorrhea
+amenorrheal
+amenorrheic
+amenorrho
+amenorrhoea
+amenorrhoeal
+amenorrhoeic
+Amen-Ra
+Amen-ra
+amens
+ament
+amenta
+amentaceous
+amental
+Amenti
+amentia
+amentias
+Amentiferae
+amentiferous
+amentiform
+aments
+amentula
+amentulum
+amentum
+amenty
+amenuse
+Amer
+Amer.
+Amerada
+amerce
+amerceable
+amerced
+amercement
+amercements
+amercer
+amercers
+amerces
+amerciable
+amerciament
+amercing
+America
+america
+American
+american
+Americana
+americana
+Americanese
+Americanisation
+Americanise
+Americanised
+Americaniser
+Americanising
+Americanism
+americanism
+americanisms
+Americanist
+americanist
+Americanistic
+Americanitis
+Americanization
+americanization
+Americanize
+americanize
+Americanized
+americanized
+Americanizer
+americanizes
+Americanizing
+americanizing
+Americanly
+Americano
+Americano-european
+Americanoid
+Americanos
+americans
+americanum
+americanumancestors
+americas
+Americaward
+Americawards
+americium
+americo-
+Americomania
+Americophobe
+Americus
+Amerigo
+Amerika
+amerikani
+Amerimnon
+AmerInd
+Amerind
+amerind
+Amerindian
+amerindian
+amerindians
+Amerindic
+amerinds
+amerism
+ameristic
+AMERITECH
+Amero
+Amersfoort
+Amersham
+AmerSp
+amerveil
+Amery
+Ames
+ames-ace
+amesace
+amesaces
+Amesbury
+amesite
+Ameslan
+amess
+Amesville
+Ametabola
+ametabola
+ametabole
+ametabolia
+ametabolian
+ametabolic
+ametabolism
+ametabolous
+ametaboly
+ametallous
+Amethi
+Amethist
+amethodical
+amethodically
+Amethyst
+amethyst
+amethystine
+amethystlike
+amethysts
+ametoecious
+ametria
+ametrometer
+ametrope
+ametropia
+ametropic
+ametrous
+AMEX
+Amex
+amex
+Amfortas
+amgarn
+amhar
+Amhara
+Amharic
+amharic
+Amherst
+Amherstdale
+amherstite
+amhran
+AMI
+Ami
+ami
+Amia
+amia
+amiabilities
+amiability
+amiable
+amiableness
+amiably
+amiant
+amianth
+amianthiform
+amianthine
+Amianthium
+amianthoid
+amianthoidal
+amianthus
+amiantus
+amiantuses
+Amias
+amias
+amic
+amicabilities
+amicability
+amicable
+amicableness
+amicably
+amical
+AMICE
+Amice
+amice
+amiced
+amices
+AMIChemE
+amici
+amicicide
+Amick
+amicous
+amicrobic
+amicron
+amicronucleate
+amictus
+amicus
+amid
+amid-
+Amida
+Amidah
+amidase
+amidases
+amidate
+amidated
+amidating
+amidation
+amide
+amides
+amidic
+amidid
+amidide
+amidin
+amidine
+amidines
+amidins
+Amidism
+Amidist
+amidmost
+amido
+amido-
+amidoacetal
+amidoacetic
+amidoacetophenone
+amidoaldehyde
+amidoazo
+amidoazobenzene
+amidoazobenzol
+amidocaffeine
+amidocapric
+amidocyanogen
+amidofluorid
+amidofluoride
+amidogen
+amidogens
+amidoguaiacol
+amidohexose
+amidoketone
+Amidol
+amidol
+amidols
+amidomyelin
+Amidon
+amidon
+amidone
+amidones
+amidophenol
+amidophosphoric
+amidoplast
+amidoplastid
+amidopyrine
+amidosuccinamic
+amidosulphonal
+amidothiazole
+amido-urea
+amidoxime
+amidoxy
+amidoxyl
+amidrazone
+amids
+amidship
+amidships
+amidst
+amidstream
+amidulin
+amidward
+Amie
+amie
+Amiel
+Amiens
+amies
+Amieva
+amiga
+amigas
+Amigen
+amigo
+amigos
+Amii
+Amiidae
+Amil
+amil
+Amilcare
+amildar
+Amiles
+Amiloun
+AMIMechE
+amimia
+amimide
+Amin
+amin
+amin-
+aminase
+aminate
+aminated
+aminating
+amination
+aminded
+-amine
+amine
+amines
+amini
+aminic
+aminish
+aminities
+aminity
+aminization
+aminize
+amino
+amino-
+aminoacetal
+aminoacetanilide
+aminoacetic
+aminoacetone
+aminoacetophenetidine
+aminoacetophenone
+aminoacidemia
+aminoaciduria
+aminoanthraquinone
+aminoazo
+aminoazobenzene
+aminobarbituric
+aminobenzaldehyde
+aminobenzamide
+aminobenzene
+aminobenzine
+aminobenzoic
+aminocaproic
+aminodiphenyl
+aminoethionic
+aminoformic
+aminogen
+aminoglutaric
+aminoguanidine
+aminoid
+aminoketone
+aminolipin
+aminolysis
+aminolytic
+aminomalonic
+aminomyelin
+amino-oxypurin
+aminopeptidase
+aminophenol
+aminopherase
+aminophylline
+aminoplast
+aminoplastic
+aminopolypeptidase
+aminopropionic
+aminopurine
+aminopyrine
+aminoquin
+aminoquinoline
+aminosis
+aminosuccinamic
+aminosulphonic
+aminothiophen
+aminotransferase
+aminotriazole
+aminovaleric
+aminoxylol
+amins
+Aminta
+Amintor
+Amintore
+Amioidei
+Amir
+amir
+amiral
+Amiranha
+amirate
+amirates
+amiray
+amire
+Amiret
+amirs
+amirship
+Amis
+amis
+Amish
+amish
+Amishgo
+amiss
+amissibility
+amissible
+amissing
+amission
+amissness
+Amissville
+Amistad
+amit
+Amita
+Amitabha
+amitate
+Amite
+Amitie
+amitie
+amities
+amitoses
+amitosis
+amitotic
+amitotically
+amitriptyline
+amitrole
+amitroles
+Amittai
+amitular
+Amity
+amity
+Amityville
+amixia
+Amizilis
+amla
+amlacra
+amlet
+amli
+amlikar
+Amlin
+Amling
+amlong
+AMLS
+Amma
+amma
+Ammadas
+Ammadis
+Ammamaria
+Amman
+amman
+Ammanati
+Ammanite
+Ammann
+ammelide
+ammelin
+ammeline
+ammeos
+ammer
+Ammerman
+ammeter
+ammeters
+Ammi
+ammi
+Ammiaceae
+ammiaceous
+Ammianus
+AmMIEE
+ammine
+ammines
+ammino
+amminochloride
+amminolysis
+amminolytic
+ammiolite
+ammiral
+Ammisaddai
+Ammishaddai
+ammites
+ammo
+ammo-
+Ammobium
+ammobium
+ammocete
+ammocetes
+ammochaeta
+ammochaetae
+ammochryse
+ammocoete
+ammocoetes
+ammocoetid
+Ammocoetidae
+ammocoetiform
+ammocoetoid
+ammodyte
+Ammodytes
+Ammodytidae
+ammodytoid
+Ammon
+ammonal
+ammonals
+ammonate
+ammonation
+Ammonea
+ammonia
+ammoniac
+ammoniacal
+ammoniaco-
+ammoniacs
+ammoniacum
+ammoniaemia
+ammonias
+ammoniate
+ammoniated
+ammoniating
+ammoniation
+ammonic
+ammonical
+ammoniemia
+ammonification
+ammonified
+ammonifier
+ammonifies
+ammonify
+ammonifying
+ammonio-
+ammoniojarosite
+ammonion
+ammonionitrate
+Ammonite
+ammonite
+Ammonites
+ammonites
+Ammonitess
+ammonitic
+ammoniticone
+ammonitiferous
+Ammonitish
+ammonitoid
+Ammonitoidea
+ammonium
+ammoniums
+ammoniuret
+ammoniureted
+ammoniuria
+ammonization
+ammono
+ammonobasic
+ammonocarbonic
+ammonocarbonous
+ammonoid
+Ammonoidea
+ammonoidean
+ammonoids
+ammonolitic
+ammonolyses
+ammonolysis
+ammonolytic
+ammonolyze
+ammonolyzed
+ammonolyzing
+Ammophila
+ammophilous
+ammoresinol
+ammoreslinol
+ammos
+ammotherapy
+ammu
+ammunition
+ammunitions
+amnemonic
+amnesia
+amnesiac
+amnesiacs
+amnesias
+amnesic
+amnesics
+amnestic
+amnestied
+amnesties
+amnesty
+amnestying
+amnia
+amniac
+amniatic
+amnic
+Amnigenia
+amninia
+amninions
+amnioallantoic
+amniocentesis
+amniochorial
+amnioclepsis
+amniomancy
+amnion
+Amnionata
+amnionate
+amnionia
+amnionic
+amnions
+amniorrhea
+amnios
+Amniota
+amniota
+amniote
+amniotes
+amniotic
+amniotin
+amniotitis
+amniotome
+amn't
+Amo
+Amoakuh
+amobarbital
+amober
+amobyr
+Amoco
+amoeba
+amoebae
+Amoebaea
+amoebaea
+amoebaean
+amoebaeum
+amoebalike
+amoeban
+amoebas
+amoebean
+amoebeum
+amoebian
+amoebiasis
+amoebic
+amoebicidal
+amoebicide
+amoebid
+Amoebida
+Amoebidae
+amoebiform
+Amoebobacter
+Amoebobacterieae
+amoebocyte
+Amoebogeniae
+amoeboid
+amoeboidism
+amoebous
+amoebula
+amoibite
+amoinder
+amok
+amoke
+amoks
+amole
+amoles
+amolilla
+amolish
+amollish
+amomal
+Amomales
+Amomis
+amomum
+Amon
+Amonate
+among
+amongst
+Amon-Ra
+amontillado
+amontillados
+Amopaon
+Amor
+amor
+Amora
+amora
+amorado
+amoraic
+amoraim
+amoral
+amoralism
+amoralist
+amorality
+amoralize
+amorally
+AMORC
+Amores
+Amoret
+amoret
+Amoreta
+Amorete
+Amorette
+Amoretti
+amoretti
+amoretto
+amorettos
+Amoreuxia
+Amorgos
+amorini
+amorino
+amorism
+amorist
+amoristic
+amorists
+Amorita
+Amorite
+amorite
+Amoritic
+Amoritish
+Amoritta
+amornings
+amorosa
+amorosity
+amoroso
+amorous
+amorously
+amorousness
+amorousnesses
+amorph
+Amorpha
+amorpha
+amorphi
+amorphia
+amorphic
+amorphinism
+amorphism
+amorpho-
+Amorphophallus
+amorphophyte
+amorphotae
+amorphous
+amorphously
+amorphousness
+amorphozoa
+amorphus
+amorphy
+a-morrow
+amort
+amortisable
+amortise
+amortised
+amortises
+amortising
+amortissement
+amortisseur
+amortizable
+amortization
+amortizations
+amortize
+amortized
+amortizement
+amortizes
+amortizing
+Amorua
+Amory
+Amos
+amos
+amosite
+Amoskeag
+amotion
+amotions
+amotus
+Amou
+amouli
+amount
+amounted
+amounter
+amounters
+amounting
+amounts
+amour
+amouret
+amourette
+amourist
+amour-propre
+amours
+amovability
+amovable
+amove
+amoved
+amoving
+amowt
+Amoy
+Amoyan
+Amoyese
+AMP
+Amp
+amp
+amp.
+ampalaya
+ampalea
+ampangabeite
+amparo
+AMPAS
+ampasimenite
+ampassy
+Ampelidaceae
+ampelidaceous
+Ampelidae
+ampelideous
+Ampelis
+ampelite
+ampelitic
+ampelographist
+ampelography
+ampelograpny
+ampelopsidin
+ampelopsin
+Ampelopsis
+ampelopsis
+Ampelos
+Ampelosicyos
+ampelotherapy
+amper
+amperage
+amperages
+Ampere
+ampere
+ampere-foot
+ampere-hour
+amperemeter
+ampere-minute
+amperes
+ampere-second
+ampere-turn
+Amperian
+amperometer
+amperometric
+ampersand
+ampersands
+ampery
+Ampex
+amphanthia
+amphanthium
+ampheclexis
+ampherotokous
+ampherotoky
+amphetamine
+amphetamines
+amphi
+amphi-
+Amphiaraus
+amphiarthrodial
+amphiarthroses
+amphiarthrosis
+amphiaster
+amphib
+amphibali
+amphibalus
+Amphibia
+amphibia
+amphibial
+amphibian
+amphibians
+amphibichnite
+amphibiety
+amphibiological
+amphibiology
+amphibion
+amphibiontic
+amphibiotic
+Amphibiotica
+amphibious
+amphibiously
+amphibiousness
+amphibium
+amphiblastic
+amphiblastula
+amphiblestritis
+Amphibola
+amphibole
+amphiboles
+amphibolia
+amphibolic
+amphibolies
+amphiboliferous
+amphiboline
+amphibolite
+amphibolitic
+amphibological
+amphibologically
+amphibologies
+amphibologism
+amphibology
+amphibolostylous
+amphibolous
+amphiboly
+amphibrach
+amphibrachic
+amphibryous
+Amphicarpa
+Amphicarpaea
+amphicarpia
+amphicarpic
+amphicarpium
+amphicarpogenous
+amphicarpous
+amphicarpus
+amphicentric
+amphichroic
+amphichrom
+amphichromatic
+amphichrome
+amphichromy
+amphicoelian
+amphicoelous
+amphicome
+Amphicondyla
+amphicondylous
+amphicrania
+amphicreatinine
+amphicribral
+Amphictyon
+amphictyon
+amphictyonian
+amphictyonic
+amphictyonies
+amphictyons
+amphictyony
+Amphicyon
+Amphicyonidae
+amphicyrtic
+amphicyrtous
+amphicytula
+amphid
+Amphidamas
+amphide
+amphidesmous
+amphidetic
+amphidiarthrosis
+amphidiploid
+amphidiploidy
+amphidisc
+Amphidiscophora
+amphidiscophoran
+amphidisk
+amphidromia
+amphidromic
+amphierotic
+amphierotism
+Amphigaea
+amphigaean
+amphigam
+Amphigamae
+amphigamous
+amphigastria
+amphigastrium
+amphigastrula
+amphigean
+amphigen
+amphigene
+amphigenesis
+amphigenetic
+amphigenous
+amphigenously
+amphigonia
+amphigonic
+amphigonium
+amphigonous
+amphigony
+amphigoric
+amphigories
+amphigory
+amphigouri
+amphigouris
+amphikaryon
+amphikaryotic
+Amphilochus
+amphilogism
+amphilogy
+amphimacer
+Amphimachus
+Amphimarus
+amphimictic
+amphimictical
+amphimictically
+amphimixes
+amphimixis
+amphimorula
+amphimorulae
+Amphinesian
+Amphineura
+amphineurous
+Amphinome
+Amphinomus
+amphinucleus
+Amphion
+amphion
+Amphionic
+Amphioxi
+amphioxi
+Amphioxidae
+Amphioxides
+Amphioxididae
+amphioxis
+amphioxus
+amphioxuses
+amphipeptone
+amphiphithyra
+amphiphloic
+amphiplatyan
+Amphipleura
+amphiploid
+amphiploidy
+amphipneust
+Amphipneusta
+amphipneustic
+Amphipnous
+amphipod
+Amphipoda
+amphipoda
+amphipodal
+amphipodan
+amphipodiform
+amphipodous
+amphipods
+amphiprostylar
+amphiprostyle
+amphiprotic
+amphipyrenin
+Amphirhina
+amphirhinal
+amphirhine
+amphisarca
+amphisbaena
+amphisbaenae
+amphisbaenas
+amphisbaenian
+amphisbaenic
+amphisbaenid
+Amphisbaenidae
+amphisbaenoid
+amphisbaenous
+amphiscians
+amphiscii
+Amphisile
+Amphisilidae
+amphispermous
+amphisporangiate
+amphispore
+Amphissa
+Amphissus
+Amphistoma
+amphistomatic
+amphistome
+amphistomoid
+amphistomous
+Amphistomum
+amphistylar
+amphistylic
+amphistyly
+amphitene
+amphithalami
+amphithalamus
+amphithalmi
+amphitheater
+amphitheatered
+amphitheaters
+amphitheatral
+amphitheatre
+amphitheatric
+amphitheatrical
+amphitheatrically
+amphitheccia
+amphithecia
+amphithecial
+amphithecium
+amphithect
+Amphithemis
+amphithere
+amphithura
+amphithuron
+amphithurons
+amphithurthura
+amphithyra
+amphithyron
+amphithyrons
+amphitokal
+amphitokous
+amphitoky
+amphitriaene
+amphitricha
+amphitrichate
+amphitrichous
+Amphitrite
+amphitrite
+amphitron
+amphitropal
+amphitropous
+Amphitruo
+Amphitryon
+amphitryon
+Amphiuma
+amphiuma
+Amphiumidae
+Amphius
+amphivasal
+amphivorous
+Amphizoidae
+amphodarch
+amphodelite
+amphodiplopia
+amphogenic
+amphogenous
+amphogeny
+ampholyte
+ampholytic
+amphopeptone
+amphophil
+amphophile
+amphophilic
+amphophilous
+amphora
+amphorae
+amphoral
+amphoras
+amphore
+amphorette
+amphoric
+amphoricity
+amphoriloquy
+amphoriskoi
+amphoriskos
+amphorophony
+amphorous
+amphoteric
+amphotericin
+Amphoterus
+Amphrysian
+ampicillin
+ampitheater
+ample
+amplect
+amplectant
+ampleness
+ampler
+amplest
+amplex
+amplexation
+amplexicaudate
+amplexicaul
+amplexicauline
+amplexifoliate
+amplexus
+amplexuses
+ampliate
+ampliation
+ampliative
+amplication
+amplicative
+amplidyne
+amplifiable
+amplificate
+amplification
+amplifications
+amplificative
+amplificator
+amplificatory
+amplified
+amplifier
+amplifiers
+amplifies
+amplify
+amplifying
+amplitude
+amplitudes
+amplitudinous
+amply
+ampollosity
+ampongue
+ampoule
+ampoules
+AMPS
+amps
+ampul
+ampulate
+ampulated
+ampulating
+ampule
+ampules
+ampulla
+ampullaceous
+ampullae
+ampullar
+Ampullaria
+Ampullariidae
+ampullary
+ampullate
+ampullated
+ampulliform
+ampullitis
+ampullosity
+ampullula
+ampullulae
+ampuls
+ampus-and
+amputate
+amputated
+amputates
+amputating
+amputation
+amputational
+amputations
+amputative
+amputator
+amputee
+amputees
+ampyces
+Ampycides
+Ampycus
+Ampyx
+ampyx
+ampyxes
+Amr
+amra
+AMRAAM
+Amram
+Amratian
+Amravati
+amreeta
+amreetas
+amrelle
+Amri
+amrit
+Amrita
+amrita
+amritas
+Amritsar
+Amroati
+AMROC
+AMS
+AMSAT
+amsath
+Amschel
+Amsden
+amsel
+Amsha-spand
+Amsha-spend
+Amsonia
+amsonia
+Amsterdam
+amsterdam
+Amsterdamer
+Amston
+AMSW
+AMT
+amt
+amt.
+amtman
+amtmen
+Amtorg
+amtrac
+amtrack
+amtracks
+amtracs
+Amtrak
+amtrak
+AMU
+amu
+Amuchco
+amuck
+amucks
+Amueixa
+amugis
+amuguis
+amula
+amulae
+amulas
+amulet
+amuletic
+amulets
+Amulius
+amulla
+amunam
+Amund
+Amundsen
+Amur
+amurca
+amurcosity
+amurcous
+Amurru
+amus
+amusable
+amuse
+amused
+amusedly
+amusee
+amusement
+amusements
+amuser
+amusers
+amuses
+amusette
+Amusgo
+amusia
+amusias
+amusing
+amusingly
+amusingness
+amusive
+amusively
+amusiveness
+amutter
+amuyon
+amuyong
+amuze
+amuzzle
+AMVET
+amvis
+Amvrakikos
+Amy
+amy
+Amyas
+amyatonic
+Amyclaean
+Amyclas
+amyctic
+Amycus
+amydon
+Amye
+amyelencephalia
+amyelencephalic
+amyelencephalous
+amyelia
+amyelic
+amyelinic
+amyelonic
+amyelotrophy
+amyelous
+amygdal
+amygdala
+Amygdalaceae
+amygdalaceous
+amygdalae
+amygdalase
+amygdalate
+amygdale
+amygdalectomy
+amygdales
+amygdalic
+amygdaliferous
+amygdaliform
+amygdalin
+amygdaline
+amygdalinic
+amygdalitis
+amygdaloid
+amygdaloidal
+amygdalolith
+amygdaloncus
+amygdalopathy
+amygdalothripsis
+amygdalotome
+amygdalotomy
+amygdalo-uvular
+Amygdalus
+amygdonitrile
+amygdophenin
+amygdule
+amygdules
+amyl
+amyl-
+amylaceous
+amylamine
+amylan
+amylase
+amylases
+amylate
+amylemia
+amylene
+amylenes
+amylenol
+amylic
+amylidene
+amyliferous
+amylin
+amylo
+amylo-
+amylocellulose
+amyloclastic
+amylocoagulase
+amylodextrin
+amylodyspepsia
+amylogen
+amylogenesis
+amylogenic
+amylogens
+amylohydrolysis
+amylohydrolytic
+amyloid
+amyloidal
+amyloidoses
+amyloidosis
+amyloids
+amyloleucite
+amylolysis
+amylolytic
+amylom
+amylome
+amylometer
+amylon
+amylopectin
+amylophagia
+amylophosphate
+amylophosphoric
+amyloplast
+amyloplastic
+amyloplastid
+amylopsase
+amylopsin
+amylose
+amyloses
+amylosis
+amylosynthesis
+amyls
+amylum
+amylums
+amyluria
+Amymone
+Amynodon
+amynodont
+Amyntor
+amyosthenia
+amyosthenic
+amyotaxia
+amyotonia
+amyotrophia
+amyotrophic
+amyotrophy
+amyous
+Amyraldism
+Amyraldist
+Amyridaceae
+amyrin
+Amyris
+amyris
+amyrol
+amyroot
+Amytal
+Amythaon
+amyxorrhea
+amyxorrhoea
+amzel
+-an
+A.N.
+AN
+An
+an
+an-
+an.
+-ana
+ANA
+Ana
+an'a
+ana
+ana-
+Anabaena
+anabaena
+anabaenas
+Anabal
+anabantid
+Anabantidae
+Anabaptism
+anabaptism
+Anabaptist
+anabaptist
+Anabaptistic
+Anabaptistical
+Anabaptistically
+Anabaptistry
+anabaptists
+anabaptize
+anabaptized
+anabaptizing
+Anabas
+anabas
+Anabase
+anabases
+anabasin
+anabasine
+anabasis
+anabasse
+anabata
+anabathmoi
+anabathmos
+anabathrum
+anabatic
+Anabel
+Anabella
+Anabelle
+anaberoga
+anabia
+anabibazon
+anabiosis
+anabiotic
+Anablepidae
+Anableps
+anableps
+anablepses
+anabo
+anabohitsite
+anabolic
+anabolin
+anabolism
+anabolite
+anabolitic
+anabolize
+anaboly
+anabong
+anabranch
+anabrosis
+anabrotic
+ANAC
+anacahuita
+anacahuite
+anacalypsis
+anacampsis
+anacamptic
+anacamptically
+anacamptics
+anacamptometer
+anacanth
+anacanthine
+Anacanthini
+anacanthous
+anacara
+anacard
+Anacardiaceae
+anacardiaceous
+anacardic
+Anacardium
+anacatadidymus
+anacatharsis
+anacathartic
+anacephalaeosis
+anacephalize
+Anaces
+Anacharis
+anacharis
+anachoret
+anachorism
+anachromasis
+anachronic
+anachronical
+anachronically
+anachronism
+anachronismatical
+anachronisms
+anachronist
+anachronistic
+anachronistical
+anachronistically
+anachronize
+anachronous
+anachronously
+anachueta
+anacid
+anacidity
+Anacin
+anack
+anaclasis
+anaclastic
+anaclastics
+Anaclete
+anaclete
+anacletica
+anacleticum
+Anacletus
+anaclinal
+anaclisis
+anaclitic
+Anacoco
+anacoenoses
+anacoenosis
+anacolutha
+anacoluthia
+anacoluthic
+anacoluthically
+anacoluthon
+anacoluthons
+anacoluttha
+Anaconda
+anaconda
+anacondas
+Anacortes
+Anacostia
+anacoustic
+Anacreon
+Anacreontic
+anacreontic
+Anacreontically
+anacrisis
+Anacrogynae
+anacrogynae
+anacrogynous
+anacromyodian
+anacrotic
+anacrotism
+anacruses
+anacrusis
+anacrustic
+anacrustically
+anaculture
+anacusia
+anacusic
+anacusis
+Anacyclus
+Anadarko
+anadem
+anadems
+anadenia
+anadesm
+anadicrotic
+anadicrotism
+anadidymus
+anadiplosis
+anadipsia
+anadipsic
+anadrom
+anadromous
+Anadyomene
+Anadyr
+anaematosis
+anaemia
+anaemias
+anaemic
+anaemotropy
+anaeretic
+anaerobation
+anaerobe
+anaerobes
+anaerobia
+anaerobian
+anaerobic
+anaerobically
+anaerobies
+anaerobion
+anaerobiont
+anaerobiosis
+anaerobiotic
+anaerobiotically
+anaerobious
+anaerobism
+anaerobium
+anaerophyte
+anaeroplastic
+anaeroplasty
+anaesthatic
+anaesthesia
+anaesthesiant
+anaesthesiologist
+anaesthesiology
+anaesthesis
+anaesthetic
+anaesthetically
+anaesthetics
+anaesthetist
+anaesthetization
+anaesthetize
+anaesthetized
+anaesthetizer
+anaesthetizing
+anaesthyl
+anaetiological
+anagalactic
+Anagallis
+anagap
+anagenesis
+anagenetic
+anagenetical
+anagennesis
+anagep
+anagignoskomena
+anaglyph
+anaglyphic
+anaglyphical
+anaglyphics
+anaglyphoscope
+anaglyphs
+anaglyphy
+anaglypta
+anaglyptic
+anaglyptical
+anaglyptics
+anaglyptograph
+anaglyptographic
+anaglyptography
+anaglypton
+Anagni
+anagnorises
+anagnorisis
+Anagnos
+anagnost
+anagnostes
+anagoge
+anagoges
+anagogic
+anagogical
+anagogically
+anagogics
+anagogies
+anagogy
+anagram
+anagrammatic
+anagrammatical
+anagrammatically
+anagrammatise
+anagrammatised
+anagrammatising
+anagrammatism
+anagrammatist
+anagrammatization
+anagrammatize
+anagrammatized
+anagrammatizing
+anagrammed
+anagramming
+anagrams
+anagraph
+anagua
+anagyrin
+anagyrine
+Anagyris
+anahao
+anahau
+Anaheim
+anaheim
+Anahita
+Anahola
+Anahuac
+Anaitis
+Anakes
+Anakim
+anakinesis
+anakinetic
+anakinetomer
+anakinetomeric
+anakoluthia
+anakrousis
+anaktoron
+anal
+anal.
+analabos
+analagous
+analav
+analcime
+analcimes
+analcimic
+analcimite
+analcite
+analcites
+analcitite
+analecta
+analectic
+analects
+analemma
+analemmas
+analemmata
+analemmatic
+analepses
+analepsis
+analepsy
+analeptic
+analeptical
+analgen
+analgene
+analgesia
+analgesic
+analgesics
+Analgesidae
+analgesis
+analgesist
+analgetic
+analgia
+analgias
+analgic
+analgize
+Analiese
+Analise
+analities
+anality
+analkalinity
+anallagmatic
+anallagmatis
+anallantoic
+Anallantoidea
+anallantoidean
+anallergic
+Anallese
+Anallise
+anally
+analog
+analoga
+analogal
+analogia
+analogic
+analogical
+analogically
+analogicalness
+analogice
+analogies
+analogion
+analogions
+analogise
+analogised
+analogising
+analogism
+analogist
+analogistic
+analogize
+analogized
+analogizing
+analogon
+analogous
+analogously
+analogousness
+analogs
+analogue
+analogues
+analogy
+Analomink
+analphabet
+analphabete
+analphabetic
+analphabetical
+analphabetism
+analysability
+analysable
+analysand
+analysands
+analysation
+analyse
+analysed
+analyser
+analysers
+analyses
+analysing
+analysis
+analyst
+analysts
+analyt
+analytic
+analytical
+analytically
+analyticities
+analyticity
+analytico-architectural
+analytics
+analytique
+analyzability
+analyzable
+analyzation
+analyze
+analyzed
+analyzer
+analyzers
+analyzes
+analyzing
+Anam
+anam
+anama
+Anambra
+Anamelech
+anamesite
+anametadromous
+Anamirta
+anamirtin
+Anamite
+anamite
+Anammelech
+anammonid
+anammonide
+anamneses
+Anamnesis
+anamnesis
+anamnestic
+anamnestically
+Anamnia
+Anamniata
+Anamnionata
+anamnionic
+Anamniota
+anamniote
+anamniotic
+Anamoose
+anamorphic
+anamorphism
+anamorphoscope
+anamorphose
+anamorphoses
+anamorphosis
+anamorphote
+anamorphous
+Anamosa
+anan
+Anana
+anana
+ananaplas
+ananaples
+ananas
+Anand
+Ananda
+ananda
+anandrarious
+anandria
+anandrious
+anandrous
+ananepionic
+anangioid
+anangular
+Ananias
+ananias
+Ananism
+Ananite
+anankastic
+ananke
+anankes
+Ananna
+Anansi
+Ananta
+ananter
+anantherate
+anantherous
+ananthous
+ananthropism
+ananym
+anapaest
+anapaestic
+anapaestical
+anapaestically
+anapaests
+anapaganize
+anapaite
+anapanapa
+anapeiratic
+anapes
+anapest
+anapestic
+anapestically
+anapests
+anaphalantiasis
+Anaphalis
+anaphase
+anaphases
+anaphasic
+Anaphe
+anaphia
+anaphora
+anaphoral
+anaphoras
+anaphoria
+anaphoric
+anaphorical
+anaphorically
+anaphrodisia
+anaphrodisiac
+anaphroditic
+anaphroditous
+anaphylactic
+anaphylactically
+anaphylactin
+anaphylactogen
+anaphylactogenic
+anaphylactoid
+anaphylatoxin
+anaphylaxis
+anaphyte
+anaplasia
+anaplasis
+anaplasm
+Anaplasma
+anaplasmoses
+anaplasmosis
+anaplastic
+anaplasty
+anapleroses
+anaplerosis
+anaplerotic
+anapnea
+anapneic
+anapnoeic
+anapnograph
+anapnoic
+anapnometer
+anapodeictic
+Anapolis
+anapophyses
+anapophysial
+anapophysis
+anapsid
+Anapsida
+anapsidan
+Anapterygota
+anapterygote
+anapterygotism
+anapterygotous
+Anaptomorphidae
+Anaptomorphus
+anaptotic
+anaptychi
+anaptychus
+anaptyctic
+anaptyctical
+anaptyxes
+anaptyxis
+Anapurna
+anaqua
+anarcestean
+Anarcestes
+anarch
+anarchal
+anarchial
+anarchic
+anarchical
+anarchically
+anarchies
+anarchism
+anarchisms
+anarchist
+anarchistic
+anarchists
+anarchize
+anarcho
+anarchoindividualist
+anarchosocialist
+anarcho-syndicalism
+anarchosyndicalism
+anarcho-syndicalist
+anarchosyndicalist
+anarchs
+anarchy
+anarcotin
+anareta
+anaretic
+anaretical
+anargyroi
+anargyros
+anarithia
+anarithmia
+anarthria
+anarthric
+anarthropod
+Anarthropoda
+anarthropodous
+anarthrosis
+anarthrous
+anarthrously
+anarthrousness
+anartismos
+anarya
+Anaryan
+Anas
+anas
+Anasa
+anasarca
+anasarcas
+anasarcous
+Anasazi
+Anasazis
+anaschistic
+Anasco
+anaseismic
+Anasitch
+anaspadias
+anaspalin
+anaspid
+Anaspida
+Anaspidacea
+Anaspides
+anastalsis
+anastaltic
+Anastas
+Anastase
+anastases
+Anastasia
+Anastasian
+Anastasie
+anastasimon
+anastasimos
+Anastasio
+anastasis
+Anastasius
+Anastassia
+anastate
+anastatic
+Anastatica
+Anastatius
+Anastatus
+Anastice
+anastigmat
+anastigmatic
+anastomos
+anastomose
+anastomosed
+anastomoses
+anastomosing
+anastomosis
+anastomotic
+Anastomus
+Anastos
+anastrophe
+Anastrophia
+anastrophy
+Anat
+anat
+anat.
+anatabine
+anatase
+anatases
+anatexes
+anatexis
+anathem
+anathema
+anathemas
+anathemata
+anathematic
+anathematical
+anathematically
+anathematisation
+anathematise
+anathematised
+anathematiser
+anathematising
+anathematism
+anathematization
+anathematize
+anathematized
+anathematizer
+anathematizes
+anathematizing
+anatheme
+anathemize
+Anatherum
+Anatidae
+anatifa
+Anatifae
+anatifae
+anatifer
+anatiferous
+Anatinacea
+Anatinae
+anatine
+anatira
+anatman
+anatocism
+Anatol
+Anatola
+Anatole
+Anatolia
+Anatolian
+anatolian
+Anatolic
+Anatolio
+Anatollo
+anatomic
+anatomical
+anatomically
+anatomicals
+anatomico-
+anatomicobiological
+anatomicochirurgical
+anatomicomedical
+anatomicopathologic
+anatomicopathological
+anatomicophysiologic
+anatomicophysiological
+anatomicosurgical
+anatomies
+anatomiless
+anatomisable
+anatomisation
+anatomise
+anatomised
+anatomiser
+anatomising
+anatomism
+anatomist
+anatomists
+anatomizable
+anatomization
+anatomize
+anatomized
+anatomizer
+anatomizes
+anatomizing
+anatomopathologic
+anatomopathological
+anatomy
+Anatone
+anatopism
+anatosaurus
+anatox
+anatoxin
+anatoxins
+anatreptic
+anatripsis
+anatripsology
+anatriptic
+anatron
+anatropal
+anatropia
+anatropous
+anatta
+anatto
+anattos
+Anatum
+anaudia
+anaudic
+anaunter
+anaunters
+anauxite
+Anawalt
+Anax
+Anaxagoras
+Anaxagorean
+anaxagorean
+Anaxagorize
+anaxagorize
+Anaxarete
+anaxial
+Anaxibia
+Anaximander
+Anaximandrian
+anaximandrian
+Anaximenes
+Anaxo
+anaxon
+anaxone
+Anaxonia
+anay
+anazoturia
+anba
+anbury
+ANC
+anc
+Ancaeus
+Ancalin
+-ance
+Ancel
+Ancelin
+Anceline
+Ancell
+Ancerata
+ancestor
+ancestorial
+ancestorially
+ancestors
+ancestral
+ancestrally
+ancestress
+ancestresses
+ancestrial
+ancestrian
+ancestries
+ancestry
+Ancha
+Anchat
+Anchesmius
+Anchiale
+Anchie
+Anchietea
+anchietin
+anchietine
+anchieutectic
+anchimonomineral
+Anchinoe
+Anchisaurus
+Anchises
+anchises
+Anchistea
+Anchistopoda
+anchithere
+anchitherioid
+anchoic
+Anchong-Ni
+anchor
+anchorable
+Anchorage
+anchorage
+anchorages
+anchorate
+anchored
+anchorer
+anchoress
+anchoresses
+anchoret
+anchoretic
+anchoretical
+anchoretish
+anchoretism
+anchorets
+anchorhold
+anchoring
+anchorite
+anchorites
+anchoritess
+anchoritic
+anchoritical
+anchoritically
+anchoritish
+anchoritism
+anchorless
+anchorlike
+anchorman
+anchormen
+anchors
+anchor-shaped
+Anchorville
+anchorwise
+anchory
+anchoveta
+anchovies
+anchovy
+Anchtherium
+Anchusa
+anchusa
+anchusas
+anchusin
+anchusine
+anchusins
+anchylose
+anchylosed
+anchylosing
+anchylosis
+anchylotic
+ancien
+ancience
+anciency
+anciennete
+anciens
+ancient
+ancienter
+ancientest
+ancientism
+anciently
+ancientness
+ancientry
+ancients
+ancienty
+Ancier
+ancile
+ancilia
+Ancilin
+ancilla
+ancillae
+ancillaries
+ancillary
+ancillas
+ancille
+ancipital
+ancipitous
+Ancistrocladaceae
+ancistrocladaceous
+Ancistrocladus
+ancistrodon
+ancistroid
+Ancius
+ancle
+Anco
+ancodont
+Ancohuma
+ancoly
+ancome
+Ancon
+ancon
+Ancona
+ancona
+anconad
+anconagra
+anconal
+anconas
+ancone
+anconeal
+anconei
+anconeous
+ancones
+anconeus
+anconitis
+anconoid
+ancony
+ancor
+ancora
+ancoral
+Ancram
+Ancramdale
+ancraophobia
+ancre
+ancress
+ancresses
+-ancy
+Ancyloceras
+Ancylocladus
+Ancylodactyla
+ancylopod
+Ancylopoda
+ancylose
+Ancylostoma
+ancylostome
+ancylostomiasis
+Ancylostomum
+Ancylus
+Ancyrean
+Ancyrene
+ancyroid
+-and
+And
+and
+and-
+anda
+anda-assu
+andabata
+andabatarian
+andabatism
+Andale
+Andalusia
+Andalusian
+andalusite
+Andaman
+Andamanese
+andamenta
+andamento
+andamentos
+andante
+andantes
+andantini
+andantino
+andantinos
+Andaqui
+Andaquian
+Andarko
+Andaste
+Ande
+Andean
+andean
+anded
+Andee
+Andeee
+Andel
+Andelee
+Ander
+Anderea
+Anderegg
+Anderer
+Anderlecht
+Anders
+anders
+Andersen
+Anderson
+anderson
+Andersonville
+Anderssen
+Anderstorp
+Andert
+anderun
+Andes
+andes
+Andesic
+andesine
+andesinite
+andesite
+andesites
+andesitic
+andesyte
+andesytes
+Andevo
+ANDF
+Andhra
+Andi
+andia
+Andian
+Andie
+Andikithira
+Andine
+anding
+Andira
+andirin
+andirine
+andiroba
+andiron
+andirons
+Andizhan
+Ando
+Andoche
+Andoke
+Andonis
+and/or
+andor
+andorite
+andoroba
+Andorobo
+Andorra
+andorra
+Andorran
+Andorre
+andouille
+andouillet
+andouillette
+Andover
+Andr
+andr-
+Andra
+Andrade
+andradite
+andragogy
+andranatomy
+andrarchy
+Andras
+Andrassy
+Andre
+andre
+Andrea
+Andreaea
+Andreaeaceae
+Andreaeales
+Andreana
+Andreas
+Andree
+Andrei
+Andrej
+Andrel
+Andrena
+andrena
+andrenid
+Andrenidae
+Andreotti
+Andres
+Andrew
+andrew
+andrewartha
+Andrewes
+Andrews
+andrewsite
+Andrey
+Andreyev
+Andreyevka
+Andri
+Andria
+Andriana
+Andrias
+Andric
+andric
+Andrien
+Andriette
+Andrija
+Andris
+andrite
+andro-
+androcentric
+androcephalous
+androcephalum
+androclclinia
+Androclea
+Androcles
+androcles
+androclinia
+androclinium
+Androclus
+androclus
+androconia
+androconium
+androcracy
+Androcrates
+androcratic
+androcyte
+androdioecious
+androdioecism
+androdynamous
+androeccia
+androecia
+androecial
+androecium
+androgametangium
+androgametophore
+androgamone
+androgen
+androgenesis
+androgenetic
+androgenic
+androgenous
+androgens
+Androgeus
+androginous
+androgone
+androgonia
+androgonial
+androgonidium
+androgonium
+Andrographis
+andrographolide
+androgyn
+androgynal
+androgynary
+androgyne
+androgyneity
+androgynia
+androgynic
+androgynies
+androgynism
+androgynous
+androgynus
+androgyny
+android
+androidal
+androides
+androids
+androkinin
+androl
+androlepsia
+androlepsy
+Andromache
+andromache
+Andromada
+andromania
+Andromaque
+andromed
+Andromeda
+andromeda
+Andromede
+andromedotoxin
+andromonoecious
+andromonoecism
+andromorphous
+Andron
+andron
+Andronicus
+andronitis
+andropetalar
+andropetalous
+androphagous
+androphobia
+androphonomania
+Androphonos
+androphore
+androphorous
+androphorum
+androphyll
+Andropogon
+Andros
+Androsace
+Androscoggin
+androseme
+androsin
+androsphinges
+androsphinx
+androsphinxes
+androsporangium
+androspore
+androsterone
+androtauric
+androtomy
+Androuet
+-androus
+Androw
+Andrsy
+Andrus
+-andry
+Andryc
+ands
+Andvar
+Andvare
+Andvari
+andvari
+Andy
+Andy-over
+-ane
+ane
+Aneale
+anear
+aneared
+anearing
+anears
+aneath
+anecdota
+anecdotage
+anecdotal
+anecdotalism
+anecdotalist
+anecdotally
+anecdote
+anecdotes
+anecdotic
+anecdotical
+anecdotically
+anecdotist
+anecdotists
+anecdysis
+anechoic
+anelace
+anelastic
+anelasticity
+anele
+anelectric
+anelectrode
+anelectrotonic
+anelectrotonus
+aneled
+aneles
+aneling
+anelytrous
+anem-
+anematize
+anematized
+anematizing
+anematosis
+Anemia
+anemia
+anemias
+anemic
+anemically
+anemious
+anemo-
+anemobiagraph
+anemochord
+anemochore
+anemochoric
+anemochorous
+anemoclastic
+anemogram
+anemograph
+anemographic
+anemographically
+anemography
+anemologic
+anemological
+anemology
+anemometer
+anemometers
+anemometric
+anemometrical
+anemometrically
+anemometrograph
+anemometrographic
+anemometrographically
+anemometry
+anemonal
+anemone
+Anemonella
+anemones
+anemonin
+anemonol
+anemony
+anemopathy
+anemophile
+anemophilous
+anemophily
+Anemopsis
+anemoscope
+anemoses
+anemosis
+anemotactic
+anemotaxis
+Anemotis
+anemotropic
+anemotropism
+anencephalia
+anencephalic
+anencephalotrophia
+anencephalous
+anencephalus
+anencephaly
+an-end
+anend
+anenergia
+anenst
+anent
+anenterous
+anepia
+anepigraphic
+anepigraphous
+anepiploic
+anepithymia
+anerethisia
+aneretic
+anergia
+anergias
+anergic
+anergies
+anergy
+anerly
+aneroid
+aneroidograph
+aneroids
+anerotic
+anerythroplasia
+anerythroplastic
+anes
+Anesidora
+anesis
+anesone
+Anestassia
+anesthesia
+anesthesiant
+anesthesias
+anesthesimeter
+anesthesiologies
+anesthesiologist
+anesthesiologists
+anesthesiology
+anesthesiometer
+anesthesis
+anesthetic
+anesthetically
+anesthetics
+anesthetist
+anesthetists
+anesthetization
+anesthetize
+anesthetized
+anesthetizer
+anesthetizes
+anesthetizing
+anesthyl
+anestri
+anestrous
+anestrus
+Anet
+anet
+Aneta
+Aneth
+anethene
+anethol
+anethole
+anetholes
+anethols
+Anethum
+anetic
+anetiological
+Aneto
+Anett
+Anetta
+Anette
+aneuch
+aneuploid
+aneuploidy
+aneuria
+aneuric
+aneurilemmic
+Aneurin
+aneurin
+aneurine
+aneurins
+aneurism
+aneurismal
+aneurismally
+aneurismatic
+aneurisms
+aneurysm
+aneurysmal
+aneurysmally
+aneurysmatic
+aneurysms
+anew
+Aney
+Anezeh
+ANF
+anfeeld
+anfract
+anfractuose
+anfractuosity
+anfractuous
+anfractuousness
+anfracture
+Anfuso
+ANG
+anga
+Angadreme
+Angadresma
+angakok
+angakoks
+angakut
+Angami
+Angami-naga
+Angang
+Angara
+angaralite
+angareb
+angareeb
+angarep
+angaria
+angarias
+angariation
+angaries
+Angarsk
+Angarstroi
+angary
+angas
+Angdistis
+Ange
+angekkok
+angekok
+angekut
+Angel
+angel
+Angela
+angelate
+angel-borne
+angel-bright
+angel-builded
+angeldom
+Angele
+angeled
+angeleen
+Angeleno
+Angelenos
+Angeles
+angeles
+angelet
+angel-eyed
+angeleyes
+angel-faced
+angelfish
+angelfishes
+angel-guarded
+angel-heralded
+angelhood
+Angeli
+Angelia
+Angelic
+angelic
+Angelica
+angelica
+Angelical
+angelical
+angelically
+angelicalness
+Angelican
+angelica-root
+angelicas
+angelicic
+angelicize
+angelicness
+Angelico
+angelico
+Angelika
+angelim
+angelin
+Angelina
+angelina
+Angeline
+angeline
+angelinformal
+angeling
+Angelique
+angelique
+Angelis
+Angelita
+angelito
+angelize
+angelized
+angelizing
+Angell
+Angelle
+angellike
+angel-noble
+Angelo
+angelocracy
+angelographer
+angelolater
+angelolatry
+angelologic
+angelological
+angelology
+angelomachy
+angelon
+Angelonia
+angelophanic
+angelophany
+angelot
+angels
+angel-seeming
+angelship
+angels-on-horseback
+angel's-trumpet
+Angelus
+angelus
+angeluses
+angel-warned
+Angelyn
+anger
+Angerboda
+angered
+angering
+angerless
+angerly
+Angerona
+Angeronalia
+Angeronia
+Angers
+angers
+Angetenar
+Angevin
+angevin
+Angevine
+angeyok
+Angi
+angi-
+angia
+angiasthenia
+angico
+Angie
+angiectasis
+angiectopia
+angiemphraxis
+Angier
+angiitis
+Angil
+angild
+angili
+angilo
+angina
+anginal
+anginas
+anginiform
+anginoid
+anginophobia
+anginose
+anginous
+angio-
+angioasthenia
+angioataxia
+angioblast
+angioblastic
+angiocardiographic
+angiocardiographies
+angiocardiography
+angiocarditis
+angiocarp
+angiocarpian
+angiocarpic
+angiocarpous
+angiocarpy
+angiocavernous
+angiocholecystitis
+angiocholitis
+angiochondroma
+angioclast
+angiocyst
+angiodermatitis
+angiodiascopy
+angioelephantiasis
+angiofibroma
+angiogenesis
+angiogenic
+angiogeny
+angioglioma
+angiogram
+angiograph
+angiographic
+angiography
+angiohemophilia
+angiohyalinosis
+angiohydrotomy
+angiohypertonia
+angiohypotonia
+angioid
+angiokeratoma
+angiokinesis
+angiokinetic
+angioleucitis
+angiolipoma
+angiolith
+angiology
+angiolymphitis
+angiolymphoma
+angioma
+angiomalacia
+angiomas
+angiomata
+angiomatosis
+angiomatous
+angiomegaly
+angiometer
+angiomyocardiac
+angiomyoma
+angiomyosarcoma
+angioneoplasm
+angioneurosis
+angioneurotic
+angionoma
+angionosis
+angioparalysis
+angioparalytic
+angioparesis
+angiopathy
+angiophorous
+angioplany
+angioplasty
+angioplerosis
+angiopoietic
+angiopressure
+angiorrhagia
+angiorrhaphy
+angiorrhea
+angiorrhexis
+angiosarcoma
+angiosclerosis
+angiosclerotic
+angioscope
+angiosis
+angiospasm
+angiospastic
+angiosperm
+Angiospermae
+angiospermal
+angiospermatous
+angiospermic
+angiospermous
+angiosperms
+angiosporous
+angiostegnosis
+angiostenosis
+angiosteosis
+angiostomize
+angiostomy
+angiostrophy
+angiosymphysis
+angiotasis
+angiotelectasia
+angiotenosis
+angiotensin
+angiotensinase
+angiothlipsis
+angiotome
+angiotomy
+angiotonase
+angiotonic
+angiotonin
+angiotribe
+angiotripsy
+angiotrophic
+angiport
+Angka
+ang-khak
+angkhak
+Angkor
+Angl
+Angl.
+anglaise
+Angle
+angle
+angleberry
+angled
+angledog
+Angledozer
+angledozer
+angled-toothed
+anglehook
+Angleinlet
+anglemeter
+angle-off
+anglepod
+anglepods
+angler
+anglers
+Angles
+angles
+Anglesey
+anglesite
+anglesmith
+Angleton
+angletouch
+angletwitch
+anglewing
+anglewise
+angleworm
+angleworms
+Anglia
+angliae
+Anglian
+anglian
+anglians
+Anglic
+Anglican
+anglican
+Anglicanism
+anglicanism
+anglicanisms
+Anglicanize
+Anglicanly
+anglicans
+Anglicanum
+Anglice
+anglice
+Anglicisation
+anglicisation
+Anglicise
+Anglicised
+Anglicising
+Anglicism
+anglicism
+anglicisms
+Anglicist
+anglicist
+Anglicization
+anglicization
+Anglicize
+anglicize
+Anglicized
+anglicized
+anglicizes
+Anglicizing
+anglicizing
+Anglification
+Anglified
+Anglify
+anglify
+Anglifying
+Anglim
+anglimaniac
+angling
+anglings
+Anglish
+anglish
+Anglist
+Anglistics
+Anglo
+Anglo-
+anglo
+anglo-
+Anglo-abyssinian
+Anglo-afghan
+Anglo-african
+Anglo-america
+Anglo-American
+Anglo-american
+Anglo-Americanism
+Anglo-americanism
+Anglo-asian
+Anglo-asiatic
+Anglo-australian
+Anglo-austrian
+Anglo-belgian
+Anglo-boer
+Anglo-brazilian
+Anglo-canadian
+Anglo-Catholic
+Anglo-catholic
+anglo-catholic
+Anglo-Catholicism
+Anglo-catholicism
+AngloCatholicism
+Anglo-chinese
+Anglo-danish
+Anglo-dutch
+Anglo-dutchman
+Anglo-ecclesiastical
+Anglo-ecuadorian
+Anglo-egyptian
+Anglo-French
+Anglo-french
+anglo-french
+Anglogaea
+Anglogaean
+Anglo-Gallic
+Anglo-german
+Anglo-greek
+Anglo-hibernian
+angloid
+Anglo-Indian
+Anglo-indian
+anglo-indian
+Anglo-Irish
+Anglo-irish
+Anglo-irishism
+Anglo-israel
+Anglo-israelism
+Anglo-israelite
+Anglo-italian
+Anglo-japanese
+Anglo-jewish
+Anglo-judaic
+Anglo-latin
+Anglo-maltese
+Angloman
+angloman
+Anglomane
+Anglomania
+anglomania
+Anglomaniac
+Anglomaniacal
+Anglo-manx
+Anglo-mexican
+Anglo-mohammedan
+Anglo-Norman
+Anglo-norman
+anglo-norman
+Anglo-norwegian
+Anglo-nubian
+Anglo-persian
+Anglophil
+anglophil
+Anglophile
+anglophile
+anglophiles
+Anglophilia
+anglophilia
+Anglophiliac
+anglophiliac
+Anglophilic
+anglophilic
+anglophilism
+anglophily
+Anglophobe
+anglophobe
+anglophobes
+Anglophobia
+anglophobia
+Anglophobiac
+Anglophobic
+anglophobic
+Anglophobist
+Anglophone
+Anglo-portuguese
+Anglo-russian
+Anglos
+anglos
+Anglo-Saxon
+Anglo-saxon
+anglo-saxon
+Anglo-saxondom
+Anglo-saxonic
+Anglo-saxonism
+Anglo-scottish
+Anglo-serbian
+Anglo-soviet
+Anglo-spanish
+Anglo-swedish
+Anglo-swiss
+Anglo-teutonic
+Anglo-turkish
+Anglo-venetian
+ango
+angoise
+Angola
+angola
+angolan
+angolans
+angolar
+Angolese
+angor
+Angora
+angora
+angoras
+Angostura
+angostura
+Angouleme
+Angoumian
+Angoumois
+Angraecum
+Angrbodha
+angrier
+angriest
+angrily
+angriness
+Angrist
+angrite
+angry
+angry-eyed
+angry-looking
+angst
+angster
+Angstrom
+angstrom
+angstroms
+angsts
+anguid
+Anguidae
+Anguier
+anguiform
+Anguilla
+Anguillaria
+anguille
+Anguillidae
+anguilliform
+anguilloid
+Anguillula
+anguillule
+Anguillulidae
+Anguimorpha
+anguine
+anguineal
+anguineous
+Anguinidae
+anguiped
+Anguis
+anguis
+anguish
+anguished
+anguishes
+anguishful
+anguishing
+anguishous
+anguishously
+angula
+angular
+angulare
+angularia
+angularities
+angularity
+angularization
+angularize
+angularly
+angularness
+angular-toothed
+angulate
+angulated
+angulately
+angulateness
+angulates
+angulating
+angulation
+angulato-
+angulatogibbous
+angulatosinuous
+angule
+anguliferous
+angulinerved
+angulo-
+Anguloa
+angulodentate
+angulometer
+angulose
+angulosity
+anguloso-
+angulosplenial
+angulous
+angulus
+Angurboda
+anguria
+Angus
+angus
+anguses
+angust
+angustate
+angusti-
+angustia
+angusticlave
+angustifoliate
+angustifolious
+angustirostrate
+angustisellate
+angustiseptal
+angustiseptate
+angustura
+angwantibo
+angwich
+Angwin
+Angy
+Anh
+anhaematopoiesis
+anhaematosis
+anhaemolytic
+anhalamine
+anhaline
+anhalonidine
+anhalonin
+anhalonine
+Anhalonium
+anhalouidine
+Anhalt
+anhang
+Anhanga
+anharmonic
+anhedonia
+anhedonic
+anhedral
+anhedron
+anhelation
+anhele
+anhelose
+anhelous
+anhematopoiesis
+anhematosis
+anhemitonic
+anhemolytic
+Anheuser
+anhidrosis
+anhidrotic
+anhima
+Anhimae
+Anhimidae
+anhinga
+anhingas
+anhistic
+anhistous
+anhungered
+anhungry
+Anhwei
+anhyd
+anhydraemia
+anhydraemic
+anhydrate
+anhydrated
+anhydrating
+anhydration
+anhydremia
+anhydremic
+anhydric
+anhydride
+anhydrides
+anhydridization
+anhydridize
+anhydrite
+anhydrization
+anhydrize
+anhydro-
+anhydroglocose
+anhydromyelia
+anhydrosis
+anhydrotic
+anhydrous
+anhydrously
+anhydroxime
+anhysteretic
+ANI
+ani
+Ania
+Aniak
+Aniakchak
+Aniakudo
+Aniba
+Anica
+anicca
+Anice
+Anicetus
+aniconic
+aniconism
+anicular
+anicut
+anidian
+anidiomatic
+anidiomatical
+anidrosis
+Aniela
+Aniellidae
+aniente
+anientise
+ANIF
+anigh
+anight
+anights
+Anil
+anil
+anilao
+anilau
+anile
+anileness
+anilic
+anilid
+anilide
+anilidic
+anilidoxime
+aniliid
+anilin
+anilinctus
+aniline
+anilines
+anilingus
+anilinism
+anilino
+anilinophile
+anilinophilous
+anilins
+anilities
+anility
+anilla
+anilopyrin
+anilopyrine
+anils
+anim
+anim.
+anima
+animability
+animable
+animableness
+animacule
+animadversal
+animadversion
+animadversional
+animadversions
+animadversive
+animadversiveness
+animadvert
+animadverted
+animadverter
+animadverting
+animadverts
+animal
+animala
+animalcula
+animalculae
+animalcular
+animalcule
+animalcules
+animalculine
+animalculism
+animalculist
+animalculous
+animalculum
+animalhood
+Animalia
+animalian
+animalic
+animalier
+animalillio
+animalisation
+animalise
+animalised
+animalish
+animalising
+animalism
+animalist
+animalistic
+animalities
+animality
+Animalivora
+animalivore
+animalivorous
+animalization
+animalize
+animalized
+animalizing
+animallike
+animally
+animalness
+animals
+animal-sized
+animando
+animant
+Animas
+animas
+animastic
+animastical
+animate
+animated
+animatedly
+animately
+animateness
+animater
+animaters
+animates
+animating
+animatingly
+animation
+animations
+animatism
+animatist
+animatistic
+animative
+animato
+animatograph
+animator
+animators
+anime
+animes
+animetta
+animi
+Animikean
+animikite
+animine
+animis
+animism
+animisms
+animist
+animistic
+animists
+animize
+animized
+animo
+animose
+animoseness
+animosities
+animosity
+animoso
+animotheism
+animous
+animus
+animuses
+anion
+anionic
+anionically
+anionics
+anions
+aniridia
+Anis
+anis
+anis-
+anisado
+anisal
+anisalcohol
+anisaldehyde
+anisaldoxime
+anisamide
+anisandrous
+anisanilide
+anisanthous
+anisate
+anisated
+anischuria
+anise
+aniseed
+aniseeds
+aniseikonia
+aniseikonic
+aniselike
+aniseroot
+anises
+anisette
+anisettes
+anisic
+anisidin
+anisidine
+anisidino
+anisil
+anisilic
+aniso-
+anisobranchiate
+anisocarpic
+anisocarpous
+anisocercal
+anisochromatic
+anisochromia
+anisocoria
+anisocotyledonous
+anisocotyly
+anisocratic
+anisocycle
+anisocytosis
+anisodactyl
+Anisodactyla
+anisodactyle
+Anisodactyli
+anisodactylic
+anisodactylous
+anisodont
+anisogamete
+anisogametes
+anisogametic
+anisogamic
+anisogamous
+anisogamy
+anisogenous
+anisogeny
+anisognathism
+anisognathous
+anisogynous
+anisoiconia
+anisoin
+anisokonia
+anisol
+anisole
+anisoles
+anisoleucocytosis
+Anisomeles
+anisomelia
+anisomelus
+anisomeric
+anisomerous
+anisometric
+anisometrope
+anisometropia
+anisometropic
+anisomyarian
+Anisomyodi
+anisomyodian
+anisomyodous
+anisopetalous
+anisophyllous
+anisophylly
+anisopia
+anisopleural
+anisopleurous
+anisopod
+Anisopoda
+anisopodal
+anisopodous
+anisopogonous
+Anisoptera
+anisopteran
+anisopterous
+anisosepalous
+anisospore
+anisostaminous
+anisostemonous
+anisosthenic
+anisostichous
+Anisostichus
+anisostomous
+anisotonic
+anisotropal
+anisotrope
+anisotropic
+anisotropical
+anisotropically
+anisotropies
+anisotropism
+anisotropous
+anisotropy
+anisoyl
+Anissa
+anisum
+anisuria
+anisyl
+anisylidene
+Anita
+anither
+anitinstitutionalism
+anitos
+Anitra
+anitrogenous
+Anius
+Aniwa
+Aniweta
+Anjali
+anjan
+Anjanette
+Anjela
+Anjou
+Ankara
+ankara
+ankaramite
+ankaratrite
+ankee
+Ankeny
+anker
+ankerhold
+ankerite
+ankerites
+ankh
+ankhs
+Anking
+ankle
+anklebone
+anklebones
+ankled
+ankle-deep
+anklejack
+ankle-jacked
+ankles
+anklet
+anklets
+ankling
+anklong
+anklung
+Ankney
+Ankoli
+Ankou
+ankus
+ankuses
+ankush
+ankusha
+ankushes
+ankylenteron
+ankyloblepharon
+ankylocheilia
+ankylodactylia
+ankylodontia
+ankyloglossia
+ankylomele
+ankylomerism
+ankylophobia
+ankylopodia
+ankylopoietic
+ankyloproctia
+ankylorrhinia
+ankylos
+ankylosaur
+Ankylosaurus
+ankylosaurus
+ankylose
+ankylosed
+ankyloses
+ankylosing
+ankylosis
+ankylostoma
+ankylostomiasis
+ankylotia
+ankylotic
+ankylotome
+ankylotomy
+ankylurethria
+ankyroid
+ANL
+anlace
+anlaces
+Anlage
+anlage
+anlagen
+anlages
+anlas
+anlases
+anlaut
+anlaute
+anlet
+anlia
+anmia
+Anmoore
+Ann
+ann
+ann.
+Anna
+anna
+Annaba
+Annabal
+Annabel
+Annabela
+Annabell
+Annabella
+Annabelle
+annabergite
+Annada
+Anna-Diana
+Annadiana
+Anna-Diane
+Annadiane
+annal
+Annale
+annale
+Annalee
+Annalen
+annalia
+Annaliese
+annaline
+Annalise
+annalism
+annalist
+annalistic
+annalistically
+annalists
+annalize
+annals
+annaly
+Annam
+Anna-Maria
+Annamaria
+Annamarie
+Annamese
+annamese
+Annamite
+Annamitic
+Annam-Muong
+Annam-muong
+Annandale
+Annapolis
+annapolis
+Annapurna
+Annarbor
+annary
+annas
+annat
+annates
+Annatol
+annats
+annatto
+annattos
+Annawan
+Anne
+anne
+anneal
+annealed
+annealer
+annealers
+annealing
+anneals
+Anne-Corinne
+Annecorinne
+annect
+annectant
+annectent
+annection
+Annecy
+annelid
+Annelida
+annelida
+annelidan
+Annelides
+annelidian
+annelidous
+annelids
+Anneliese
+Annelise
+annelism
+Annellata
+anneloid
+Annemanie
+Anne-Marie
+Annemarie
+Annenski
+Annensky
+annerodite
+annerre
+Anneslia
+annet
+Annetta
+Annette
+annex
+annexa
+annexable
+annexal
+annexation
+annexational
+annexationism
+annexationist
+annexations
+annexe
+annexed
+annexer
+annexes
+annexing
+annexion
+annexionist
+annexitis
+annexive
+annexment
+annexure
+Annfwn
+Anni
+anni
+Annia
+Annibale
+Annice
+annicut
+annidalin
+Annie
+annie
+Anniellidae
+annihil
+annihilability
+annihilable
+annihilate
+annihilated
+annihilates
+annihilating
+annihilation
+annihilationism
+annihilationist
+annihilationistic
+annihilationistical
+annihilations
+annihilative
+annihilator
+annihilators
+annihilatory
+Anniken
+Annis
+Annissa
+Annist
+annist
+Anniston
+annite
+anniv
+anniversalily
+anniversaries
+anniversarily
+anniversariness
+anniversary
+anniverse
+Annmaria
+Ann-Marie
+Annmarie
+Annnora
+anno
+annodated
+annominate
+annomination
+Annona
+annona
+Annonaceae
+annonaceous
+annonce
+Annora
+Annorah
+annot
+annotate
+annotated
+annotater
+annotates
+annotating
+annotation
+annotations
+annotative
+annotatively
+annotativeness
+annotator
+annotators
+annotatory
+annotine
+annotinous
+annotto
+announce
+announceable
+announced
+announcement
+announcements
+announcer
+announcers
+announces
+announcing
+annoy
+annoyance
+annoyancer
+annoyances
+annoyed
+annoyer
+annoyers
+annoyful
+annoying
+annoyingly
+annoyingness
+annoyment
+annoyous
+annoyously
+annoys
+annual
+annualist
+annualize
+annualized
+annually
+annuals
+annuary
+annuation
+annueler
+annueller
+annuent
+annuisance
+annuitant
+annuitants
+annuities
+annuity
+annul
+annular
+Annularia
+annularity
+annularly
+annulary
+Annulata
+annulata
+annulate
+annulated
+annulately
+annulation
+annulations
+annule
+annuler
+annulet
+annulets
+annulettee
+annuli
+annulism
+annullable
+annullate
+annullation
+annulled
+annuller
+annulli
+annulling
+annulment
+annulments
+annuloid
+Annuloida
+annuloida
+Annulosa
+annulosa
+annulosan
+annulose
+annuls
+annulus
+annuluses
+annum
+annumerate
+annunciable
+annunciade
+Annunciata
+annunciate
+annunciated
+annunciates
+annunciating
+Annunciation
+annunciation
+annunciations
+annunciative
+annunciator
+annunciators
+annunciatory
+Annunziata
+annus
+Annville
+Annwfn
+Annwn
+Anny
+ano-
+anoa
+anoas
+Anobiidae
+anobing
+anocarpous
+anocathartic
+anociassociation
+anociation
+anocithesia
+anococcygeal
+anodal
+anodally
+anode
+anodendron
+anodes
+anodic
+anodically
+anodine
+anodization
+anodize
+anodized
+anodizes
+anodizing
+Anodon
+anodon
+Anodonta
+anodontia
+anodos
+anodyne
+anodynes
+anodynia
+anodynic
+anodynous
+anoegenetic
+anoesia
+anoesis
+anoestrous
+anoestrum
+anoestrus
+anoetic
+anogenic
+anogenital
+Anogra
+anoia
+anoil
+anoine
+anoint
+anointed
+anointer
+anointers
+anointing
+anointment
+anointments
+anoints
+Anoka
+anole
+anoles
+anoli
+anolian
+Anolis
+Anolympiad
+anolyte
+anolytes
+anomal
+Anomala
+anomalies
+anomaliflorous
+anomaliped
+anomalipod
+anomalism
+anomalist
+anomalistic
+anomalistical
+anomalistically
+anomalo-
+anomalocephalus
+anomaloflorous
+Anomalogonatae
+anomalogonatous
+Anomalon
+anomalonomy
+Anomalopteryx
+anomaloscope
+anomalotrophy
+anomalous
+anomalously
+anomalousness
+anomalure
+Anomaluridae
+Anomalurus
+anomaly
+Anomatheca
+anomer
+Anomia
+anomia
+Anomiacea
+anomic
+anomie
+anomies
+Anomiidae
+anomite
+anomo-
+anomocarpous
+anomodont
+Anomodontia
+Anomoean
+Anomoeanism
+anomoeomery
+anomophyllous
+anomorhomboid
+anomorhomboidal
+anomouran
+anomphalous
+Anomura
+anomural
+anomuran
+anomurous
+anomy
+anon
+anon.
+anonaceous
+anonad
+anonang
+anoncillo
+anonol
+anonychia
+anonym
+anonyma
+anonyme
+anonymities
+anonymity
+anonymous
+anonymously
+anonymousness
+anonyms
+anonymuncule
+anoopsia
+anoopsias
+anoperineal
+anophele
+Anopheles
+anopheles
+Anophelinae
+anopheline
+anophoria
+anophthalmia
+anophthalmos
+Anophthalmus
+anophyte
+anopia
+anopias
+anopisthograph
+anopisthographic
+anopisthographically
+Anopla
+Anoplanthus
+anoplocephalic
+anoplonemertean
+Anoplonemertini
+anoplothere
+Anoplotheriidae
+anoplotherioid
+Anoplotherium
+anoplotheroid
+Anoplura
+anopluriform
+anopsia
+anopsias
+anopsy
+anopubic
+Anora
+anorak
+anoraks
+anorchi
+anorchia
+anorchism
+anorchous
+anorchus
+anorectal
+anorectic
+anorectous
+anoretic
+anorexia
+anorexiant
+anorexias
+anorexic
+anorexics
+anorexies
+anorexigenic
+anorexy
+anorgana
+anorganic
+anorganism
+anorganology
+anormal
+anormality
+anorn
+anorogenic
+anorth
+anorthic
+anorthite
+anorthite-basalt
+anorthitic
+anorthitite
+anorthoclase
+anorthographic
+anorthographical
+anorthographically
+anorthography
+anorthophyre
+anorthopia
+anorthoscope
+anorthose
+anorthosite
+anoscope
+anoscopy
+Anosia
+anosmatic
+anosmia
+anosmias
+anosmic
+anosognosia
+anosphrasia
+anosphresia
+anospinal
+anostosis
+Anostraca
+anoterite
+Another
+another
+another-gates
+another-guess
+anotherguess
+another-guise
+anotherkins
+anotia
+anotropia
+anotta
+anotto
+anotus
+Anouilh
+anounou
+anour
+anoura
+anoure
+anourous
+Anous
+ANOVA
+anova
+anovesical
+anovulant
+anovular
+anovulatory
+anoxaemia
+anoxaemic
+anoxemia
+anoxemias
+anoxemic
+anoxia
+anoxias
+anoxic
+anoxidative
+anoxybiosis
+anoxybiotic
+anoxyscope
+anp-
+ANPA
+anquera
+anre
+ans
+ansa
+ansae
+Ansar
+ansar
+Ansarian
+ansarian
+Ansarie
+ansate
+ansated
+ansation
+Anschauung
+anschauung
+Anschluss
+anschluss
+Anse
+Anseis
+Ansel
+Ansela
+Ansell
+Anselm
+Anselma
+Anselme
+Anselmi
+Anselmian
+Anselmo
+Anser
+anserated
+Anseres
+Anseriformes
+anserin
+Anserinae
+anserine
+anserines
+Ansermet
+anserous
+Ansgarius
+Anshan
+Anshar
+ANSI
+ansi
+Ansilma
+Ansilme
+Ansley
+Anson
+Ansonia
+Ansonville
+anspessade
+Ansted
+Anstice
+anstoss
+anstosse
+Anstus
+ansu
+ansulate
+answer
+answerability
+answerable
+answerableness
+answerably
+answer-back
+answered
+answerer
+answerers
+answering
+answeringly
+answerless
+answerlessly
+answers
+-ant
+an't
+ant
+ant-
+ant.
+ANTA
+Anta
+anta
+Antabus
+Antabuse
+antacid
+antacids
+antacrid
+antadiform
+antae
+Antaea
+Antaean
+antaean
+Antaeus
+antaeus
+antagonisable
+antagonisation
+antagonise
+antagonised
+antagonising
+antagonism
+antagonisms
+antagonist
+antagonistic
+antagonistical
+antagonistically
+antagonists
+antagonizable
+antagonization
+antagonize
+antagonized
+antagonizer
+antagonizes
+antagonizing
+antagony
+Antagoras
+Antaimerina
+Antaios
+Antaiva
+Antakiya
+Antakya
+Antal
+antal
+antalgesic
+antalgic
+antalgics
+antalgol
+antalkali
+antalkalies
+antalkaline
+antalkalis
+Antalya
+antambulacral
+antanacathartic
+antanaclasis
+antanagoge
+Antananarivo
+Antanandro
+antanemic
+antapex
+antapexes
+antaphrodisiac
+antaphroditic
+antapices
+antapocha
+antapodosis
+antapology
+antapoplectic
+Antar
+Antara
+antarala
+antaranga
+antarchism
+antarchist
+antarchistic
+antarchistical
+antarchy
+Antarctalia
+Antarctalian
+Antarctic
+antarctic
+Antarctica
+antarctica
+antarctical
+antarctically
+Antarctogaea
+Antarctogaean
+Antares
+antares
+antarthritic
+antas
+antasphyctic
+antasthenic
+antasthmatic
+antatrophic
+antbird
+antdom
+ante
+ante-
+anteact
+ante-acted
+anteal
+anteambulate
+anteambulation
+ante-ambulo
+ant-eater
+anteater
+anteaters
+Ante-babylonish
+antebaptismal
+antebath
+ante-bellum
+antebellum
+Antebi
+antebrachia
+antebrachial
+antebrachium
+antebridal
+antecabinet
+antecaecal
+antecardium
+antecavern
+antecedal
+antecedaneous
+antecedaneously
+antecede
+anteceded
+antecedence
+antecedency
+antecedent
+antecedental
+antecedently
+antecedents
+antecedes
+anteceding
+antecell
+antecessor
+antechamber
+antechambers
+ante-chapel
+antechapel
+Antechinomys
+antechoir
+antechoirs
+Ante-christian
+ante-Christum
+antechurch
+anteclassical
+antecloset
+antecolic
+antecommunion
+anteconsonantal
+antecornu
+antecourt
+antecoxal
+antecubital
+antecurvature
+Ante-cuvierian
+anted
+antedate
+antedated
+antedates
+antedating
+antedawn
+antediluvial
+antediluvially
+antediluvian
+Antedon
+antedonin
+antedorsal
+ante-ecclesiastical
+anteed
+ante-eternity
+antefact
+antefebrile
+antefix
+antefixa
+antefixal
+antefixes
+anteflected
+anteflexed
+anteflexion
+antefurca
+antefurcae
+antefurcal
+antefuture
+antegarden
+Ante-gothic
+antegrade
+antehall
+Ante-hieronymian
+antehistoric
+antehuman
+antehypophysis
+anteing
+anteinitial
+antejentacular
+antejudiciary
+antejuramentum
+Ante-justinian
+antelabium
+antelation
+antelegal
+antelocation
+antelope
+antelopes
+antelopian
+antelopine
+antelucan
+antelude
+anteluminary
+antemarginal
+antemarital
+antemask
+antemedial
+antemeridian
+antemetallic
+antemetic
+antemillennial
+antemingent
+antemortal
+ante-mortem
+antemortem
+Ante-mosaic
+Ante-mosaical
+antemundane
+antemural
+antenarial
+antenatal
+antenatalitial
+antenati
+antenatus
+antenave
+ante-Nicaean
+Ante-nicene
+ante-Nicene
+antenna
+antennae
+antennal
+Antennaria
+antennariid
+Antennariidae
+Antennarius
+antennary
+antennas
+Antennata
+antennate
+antennifer
+antenniferous
+antenniform
+antennula
+antennular
+antennulary
+antennule
+antenodal
+antenoon
+Antenor
+Ante-norman
+antenumber
+antenuptial
+anteoccupation
+anteocular
+anteopercle
+anteoperculum
+ante-orbital
+anteorbital
+Antep
+antepagment
+antepagmenta
+antepagments
+antepalatal
+ante-partum
+antepartum
+antepaschal
+antepaschel
+antepast
+antepasts
+antepatriarchal
+antepectoral
+antepectus
+antependia
+antependium
+antependiums
+antepenuit
+antepenult
+antepenultima
+antepenultimate
+antepenults
+antephialtic
+antepileptic
+antepirrhema
+antepone
+anteporch
+anteport
+anteportico
+anteporticoes
+anteporticos
+anteposition
+anteposthumous
+anteprandial
+antepredicament
+antepredicamental
+antepreterit
+antepretonic
+anteprohibition
+anteprostate
+anteprostatic
+antepyretic
+antequalm
+antereformation
+antereformational
+anteresurrection
+anterethic
+anterevolutional
+anterevolutionary
+antergic
+anteri
+anteriad
+anterin
+anterior
+anteriority
+anteriorly
+anteriorness
+anteriors
+anterioyancer
+antero-
+anteroclusion
+anterodorsal
+anteroexternal
+anterofixation
+anteroflexion
+anterofrontal
+anterograde
+anteroinferior
+anterointerior
+anterointernal
+anterolateral
+anterolaterally
+anteromedial
+anteromedian
+ante-room
+anteroom
+anterooms
+anteroparietal
+anteroposterior
+anteroposteriorly
+anteropygal
+Anteros
+anterospinal
+anterosuperior
+anteroventral
+anteroventrally
+Anterus
+antes
+antescript
+Antesfort
+antesignani
+antesignanus
+antespring
+antestature
+antesternal
+antesternum
+antesunrise
+antesuperior
+ante-temple
+antetemple
+antethem
+antetype
+antetypes
+Anteva
+antevenient
+anteversion
+antevert
+anteverted
+anteverting
+anteverts
+Ante-victorian
+antevocalic
+Antevorta
+antewar
+anth-
+Anthas
+anthdia
+Anthe
+Anthea
+anthecological
+anthecologist
+anthecology
+Antheia
+Antheil
+anthela
+anthelae
+anthelia
+anthelices
+anthelion
+anthelions
+anthelix
+Anthelme
+anthelminthic
+anthelmintic
+anthem
+anthema
+anthemas
+anthemata
+anthemed
+anthemene
+anthemia
+Anthemideae
+antheming
+anthemion
+Anthemis
+anthemis
+anthems
+anthemwise
+anthemy
+anther
+Antheraea
+antheral
+Anthericum
+antherid
+antheridia
+antheridial
+antheridiophore
+antheridium
+antherids
+antheriferous
+antheriform
+antherine
+antherless
+antherogenous
+antheroid
+antherozoid
+antherozoidal
+antherozooid
+antherozooidal
+anthers
+antheses
+anthesis
+Anthesteria
+Anthesteriac
+anthesterin
+Anthesterion
+anthesterol
+Antheus
+antheximeter
+Anthia
+Anthiathia
+Anthicidae
+Anthidium
+anthill
+anthills
+Anthinae
+anthine
+antho-
+anthobian
+anthobiology
+anthocarp
+anthocarpous
+anthocephalous
+Anthoceros
+Anthocerotaceae
+Anthocerotales
+anthocerote
+anthochlor
+anthochlorine
+anthoclinium
+anthocyan
+anthocyanidin
+anthocyanin
+anthodia
+anthodium
+anthoecological
+anthoecologist
+anthoecology
+anthogenesis
+anthogenetic
+anthogenous
+anthography
+anthoid
+anthokyan
+anthol
+antholite
+anthological
+anthologically
+anthologies
+anthologion
+anthologise
+anthologised
+anthologising
+anthologist
+anthologists
+anthologize
+anthologized
+anthologizer
+anthologizes
+anthologizing
+anthology
+antholysis
+Antholyza
+anthomania
+anthomaniac
+Anthomedusae
+anthomedusan
+Anthomyia
+anthomyiid
+Anthomyiidae
+Anthon
+Anthonin
+Anthonomus
+Anthony
+anthony
+anthood
+anthophagous
+anthophagy
+Anthophila
+anthophile
+anthophilian
+anthophilous
+anthophobia
+Anthophora
+anthophore
+Anthophoridae
+anthophorous
+anthophyllite
+anthophyllitic
+Anthophyta
+anthophyte
+anthorine
+anthos
+anthosiderite
+Anthospermum
+anthotaxis
+anthotaxy
+anthotropic
+anthotropism
+anthoxanthin
+Anthoxanthum
+Anthozoa
+anthozoa
+anthozoan
+anthozoic
+anthozooid
+anthozoon
+anthra-
+anthracaemia
+anthracemia
+anthracene
+anthraceniferous
+anthraces
+anthrachrysone
+anthracia
+anthracic
+anthraciferous
+anthracin
+anthracite
+anthracites
+anthracitic
+anthracitiferous
+anthracitious
+anthracitism
+anthracitization
+anthracitous
+anthracnose
+anthracnosis
+anthracocide
+anthracoid
+anthracolithic
+anthracomancy
+Anthracomarti
+anthracomartian
+Anthracomartus
+anthracometer
+anthracometric
+anthraconecrosis
+anthraconite
+Anthracosaurus
+anthracosilicosis
+anthracosis
+anthracothere
+Anthracotheriidae
+Anthracotherium
+anthracotic
+anthracoxen
+anthracyl
+anthradiol
+anthradiquinone
+anthraflavic
+anthragallol
+anthrahydroquinone
+anthralin
+anthramin
+anthramine
+anthranil
+anthranilate
+anthranilic
+anthranol
+anthranone
+anthranoyl
+anthranyl
+anthraphenone
+anthrapurpurin
+anthrapyridine
+anthraquinol
+anthraquinone
+anthraquinonyl
+anthrarufin
+anthrasilicosis
+anthratetrol
+anthrathiophene
+anthratriol
+anthrax
+anthraxolite
+anthraxylon
+Anthrenus
+anthribid
+Anthribidae
+Anthriscus
+anthrohopobiological
+anthroic
+anthrol
+anthrone
+anthrop
+anthrop-
+anthrop.
+anthrophore
+anthropic
+anthropical
+Anthropidae
+anthropo-
+anthropobiologist
+anthropobiology
+anthropocentric
+anthropocentrically
+anthropocentricity
+anthropocentrism
+anthropoclimatologist
+anthropoclimatology
+anthropocosmic
+anthropodeoxycholic
+Anthropodus
+anthropogenesis
+anthropogenetic
+anthropogenic
+anthropogenist
+anthropogenous
+anthropogeny
+anthropogeographer
+anthropogeographic
+anthropogeographical
+anthropogeography
+anthropoglot
+anthropogony
+anthropographic
+anthropography
+anthropoid
+anthropoidal
+Anthropoidea
+anthropoidea
+anthropoidean
+anthropoids
+anthropol
+anthropol.
+anthropolater
+anthropolatric
+anthropolatry
+anthropolite
+anthropolith
+anthropolithic
+anthropolitic
+anthropologic
+anthropological
+anthropologically
+anthropologies
+anthropologist
+anthropologists
+anthropology
+anthropomancy
+anthropomantic
+anthropomantist
+anthropometer
+anthropometric
+anthropometrical
+anthropometrically
+anthropometrist
+anthropometry
+anthropomophitism
+anthropomorph
+Anthropomorpha
+anthropomorphic
+anthropomorphical
+anthropomorphically
+Anthropomorphidae
+anthropomorphisation
+anthropomorphise
+anthropomorphised
+anthropomorphising
+anthropomorphism
+anthropomorphisms
+anthropomorphist
+anthropomorphite
+anthropomorphitic
+anthropomorphitical
+anthropomorphitism
+anthropomorphization
+anthropomorphize
+anthropomorphized
+anthropomorphizing
+anthropomorphological
+anthropomorphologically
+anthropomorphology
+anthropomorphosis
+anthropomorphotheist
+anthropomorphous
+anthropomorphously
+anthroponomical
+anthroponomics
+anthroponomist
+anthroponomy
+anthroponym
+anthropopathia
+anthropopathic
+anthropopathically
+anthropopathism
+anthropopathite
+anthropopathy
+anthropophagi
+anthropophagic
+anthropophagical
+anthropophaginian
+anthropophagism
+anthropophagist
+anthropophagistic
+anthropophagit
+anthropophagite
+anthropophagize
+anthropophagous
+anthropophagously
+anthropophagus
+anthropophagy
+anthropophilous
+anthropophobia
+anthropophuism
+anthropophuistic
+anthropophysiography
+anthropophysite
+Anthropopithecus
+anthropopsychic
+anthropopsychism
+Anthropos
+anthroposcopy
+anthroposociologist
+anthroposociology
+anthroposomatology
+anthroposophic
+anthroposophical
+anthroposophist
+anthroposophy
+anthropoteleoclogy
+anthropoteleological
+anthropotheism
+anthropotheist
+anthropotheistic
+anthropotomical
+anthropotomist
+anthropotomy
+anthropotoxin
+Anthropozoic
+anthropozoic
+anthropurgic
+anthroropolith
+anthroxan
+anthroxanic
+anthryl
+anthrylene
+anththeridia
+Anthurium
+anthurium
+Anthus
+Anthyllis
+anthypnotic
+anthypophora
+anthypophoretic
+Anti
+anti
+anti-
+Antia
+antiabolitionist
+antiabortion
+antiabrasion
+antiabrin
+antiabsolutist
+antiacademic
+anti-acid
+antiacid
+antiadiaphorist
+antiaditis
+antiadministration
+antiae
+antiaesthetic
+antiager
+antiagglutinant
+antiagglutinating
+antiagglutination
+antiagglutinative
+antiagglutinin
+antiaggression
+antiaggressionist
+antiaggressive
+antiaggressively
+antiaggressiveness
+anti-aircraft
+antiaircraft
+antialbumid
+antialbumin
+antialbumose
+antialcoholic
+antialcoholism
+antialcoholist
+antialdoxime
+antialexin
+antialien
+Anti-allied
+Anti-ally
+antiamboceptor
+Anti-american
+anti-American
+Anti-americanism
+antiamusement
+antiamylase
+antianaphylactogen
+antianaphylaxis
+antianarchic
+antianarchist
+Anti-anglican
+antiangular
+antiannexation
+antiannexationist
+antianopheline
+antianthrax
+antianthropocentric
+antianthropomorphism
+antiantibody
+antiantidote
+antiantienzyme
+antiantitoxin
+antianxiety
+antiapartheid
+antiaphrodisiac
+antiaphthic
+antiapoplectic
+antiapostle
+antiaquatic
+antiar
+Anti-arab
+anti-Arab
+Antiarcha
+Antiarchi
+Anti-arian
+antiarin
+antiarins
+Antiaris
+antiaristocracies
+antiaristocracy
+antiaristocrat
+antiaristocratic
+antiaristocratical
+antiaristocratically
+Anti-aristotelian
+anti-Aristotelian
+anti-Aristotelianism
+Anti-armenian
+Anti-arminian
+Anti-arminianism
+antiarrhythmic
+antiars
+antiarthritic
+antiascetic
+antiasthmatic
+antiastronomical
+Anti-athanasian
+antiatheism
+antiatheist
+antiatheistic
+antiatheistical
+antiatheistically
+Anti-athenian
+antiatom
+antiatoms
+antiatonement
+anti-attrition
+antiattrition
+anti-Australian
+anti-Austria
+Anti-austrian
+anti-Austrian
+antiauthoritarian
+antiauthoritarianism
+antiautolysin
+antiauxin
+Anti-babylonianism
+antibacchic
+antibacchii
+antibacchius
+antibacterial
+antibacteriolytic
+antiballistic
+antiballooner
+antibalm
+antibank
+Anti-bartholomew
+antibaryon
+antibasilican
+antibenzaldoxime
+antiberiberin
+Antibes
+antibias
+anti-Bible
+Anti-biblic
+Anti-biblical
+anti-Biblical
+anti-Biblically
+antibibliolatry
+antibigotry
+antibilious
+antibiont
+antibiosis
+antibiotic
+antibiotically
+antibiotics
+Anti-birmingham
+anti-birmingham
+antibishop
+antiblack
+antiblackism
+antiblastic
+antiblennorrhagic
+antiblock
+antiblue
+antibodies
+antibody
+Anti-bohemian
+Anti-bolshevik
+anti-Bolshevik
+anti-Bolshevism
+Anti-bolshevist
+anti-Bolshevist
+anti-Bolshevistic
+Anti-bonapartist
+antiboss
+antibourgeois
+antiboxing
+antiboycott
+antibrachial
+antibreakage
+antibridal
+Anti-british
+anti-British
+Anti-britishism
+antibromic
+antibubonic
+antibug
+antibureaucratic
+Antiburgher
+antiburgher
+antiburglar
+antiburglary
+antibusiness
+antibusing
+antic
+antica
+anticachectic
+Anti-caesar
+antical
+anticalcimine
+anticalculous
+anticalligraphic
+antically
+Anti-calvinism
+anti-Calvinism
+Anti-calvinist
+anti-Calvinist
+Anti-calvinistic
+anti-Calvinistic
+anti-Calvinistical
+Anti-calvinistically
+anticamera
+anticancer
+anticancerous
+anticapital
+anticapitalism
+anticapitalist
+anticapitalistic
+anticapitalistically
+anticapitalists
+anticar
+anticardiac
+anticardium
+anticarious
+anticarnivorous
+anticaste
+anticatalase
+anticatalyst
+anticatalytic
+anticatalytically
+anticatalyzer
+anticatarrhal
+Anti-cathedralist
+anticathexis
+anticathode
+Anti-catholic
+anti-Catholic
+anticatholic
+anti-Catholicism
+anticausotic
+anticaustic
+anticensorial
+anticensorious
+anticensoriously
+anticensoriousness
+anticensorship
+anticentralism
+anticentralist
+anticentralization
+anticephalalgic
+anticeremonial
+anticeremonialism
+anticeremonialist
+anticeremonially
+anticeremonious
+anticeremoniously
+anticeremoniousness
+antichamber
+antichance
+anticheater
+antichlor
+antichlorine
+antichloristic
+antichlorotic
+anticholagogue
+anticholinergic
+anticholinesterase
+antichoromanic
+antichorus
+antichreses
+antichresis
+antichretic
+Antichrist
+antichrist
+Anti-christian
+anti-christian
+antichristian
+Anti-christianism
+antichristianism
+Anti-christianity
+antichristianity
+Anti-christianize
+Anti-christianly
+antichristianly
+antichrists
+antichrome
+antichronical
+antichronically
+antichronism
+antichthon
+antichthones
+antichurch
+antichurchian
+antichymosin
+anticigarette
+anticipant
+anticipatable
+anticipate
+anticipated
+anticipates
+anticipating
+anticipatingly
+anticipation
+anticipations
+anticipative
+anticipatively
+anticipator
+anticipatorily
+anticipators
+anticipatory
+anticity
+anticivic
+anticivil
+anticivilian
+anticivism
+anticize
+antick
+anticked
+anticker
+anticking
+anticks
+antickt
+anticlactic
+anticlassical
+anticlassicalism
+anticlassicalist
+anticlassically
+anticlassicalness
+anticlassicism
+anticlassicist
+anticlastic
+Anticlea
+anticlergy
+anticlerical
+anticlericalism
+anticlericalist
+anticlimactic
+anticlimactical
+anticlimactically
+anticlimax
+anticlimaxes
+anticlinal
+anticline
+anticlines
+anticlinoria
+anticlinorium
+anticlnoria
+anticlockwise
+anticlogging
+anticly
+anticnemion
+anticness
+anticoagulan
+anticoagulant
+anticoagulants
+anticoagulate
+anticoagulating
+anticoagulation
+anticoagulative
+anticoagulator
+anticoagulin
+anticodon
+anticogitative
+anticoincidence
+anticold
+anticolic
+anticollision
+anticolonial
+anticombination
+anticomet
+anticomment
+anticommercial
+anticommercialism
+anticommercialist
+anticommercialistic
+anticommerciality
+anticommercially
+anticommercialness
+anticommunism
+anticommunist
+anticommunistic
+anticommunistical
+anticommunistically
+anticommunists
+anticommutative
+anticompetitive
+anticomplement
+anticomplementary
+anticomplex
+anticonceptionist
+anticonductor
+anticonfederationism
+anticonfederationist
+anticonfederative
+anticonformist
+anticonformities
+anticonformity
+anticonscience
+anticonscription
+anticonscriptive
+anticonservation
+anticonservationist
+anticonservatism
+anticonservative
+anticonservatively
+anticonservativeness
+anticonstitution
+anticonstitutional
+anticonstitutionalism
+anticonstitutionalist
+anticonstitutionally
+anticonsumer
+anticontagion
+anticontagionist
+anticontagious
+anticontagiously
+anticontagiousness
+anticonvellent
+anticonvention
+anticonventional
+anticonventionalism
+anticonventionalist
+anticonventionally
+anticonvulsant
+anticonvulsive
+anticor
+anticorn
+anticorona
+anticorrosion
+anticorrosive
+anticorrosively
+anticorrosiveness
+anticorrosives
+anticorruption
+anticorset
+anticosine
+anticosmetic
+anticosmetics
+Anticosti
+anticouncil
+anticourt
+anticourtier
+anticous
+anticovenanter
+anticovenanting
+anticreation
+anticreational
+anticreationism
+anticreationist
+anticreative
+anticreatively
+anticreativeness
+anticreativity
+anticreator
+anticreep
+anticreeper
+anticreeping
+anticrepuscular
+anticrepuscule
+anticrime
+anticrisis
+anticritic
+anticritical
+anticritically
+anticriticalness
+anticritique
+anticrochet
+anticrotalic
+anticruelty
+anticryptic
+anticryptically
+antics
+anticularia
+anticult
+anticultural
+anticum
+anticus
+anticyclic
+anticyclical
+anticyclically
+anticyclogenesis
+anticyclolysis
+anticyclone
+anticyclones
+anticyclonic
+anticyclonically
+anticynic
+anticynical
+anticynically
+anticynicism
+anticytolysin
+anticytotoxin
+antidactyl
+antidancing
+antidandruff
+anti-Darwin
+Anti-darwinian
+anti-Darwinian
+Anti-darwinism
+anti-Darwinism
+anti-Darwinist
+antidecalogue
+antideflation
+antidemocracies
+antidemocracy
+antidemocrat
+antidemocratic
+antidemocratical
+antidemocratically
+antidemoniac
+anti-depressant
+antidepressant
+antidepressants
+antidepressive
+antiderivative
+antidetonant
+antidetonating
+antidiabetic
+antidiastase
+Antidicomarian
+Antidicomarianite
+antidicomarianite
+antidictionary
+antidiffuser
+antidinic
+antidiphtheria
+antidiphtheric
+antidiphtherin
+antidiphtheritic
+antidisciplinarian
+antidiscrimination
+antidisestablishmentarian
+antidisestablishmentarianism
+antidiuretic
+antidivine
+antidivorce
+Antido
+Anti-docetae
+antidogmatic
+antidogmatical
+antidogmatically
+antidogmatism
+antidogmatist
+antidomestic
+antidomestically
+antidominican
+antidora
+Antidorcas
+antidoron
+antidotal
+antidotally
+antidotary
+antidote
+antidoted
+antidotes
+antidotical
+antidotically
+antidoting
+antidotism
+antidraft
+antidrag
+Anti-dreyfusard
+antidromal
+antidromic
+antidromically
+antidromous
+antidromy
+antidrug
+antiduke
+antidumping
+antidynamic
+antidynastic
+antidynastical
+antidynastically
+antidynasty
+antidyscratic
+antidysenteric
+antidysuric
+antieavesdropping
+antiecclesiastic
+antiecclesiastical
+antiecclesiastically
+antiecclesiasticism
+antiedemic
+antieducation
+antieducational
+antieducationalist
+antieducationally
+antieducationist
+antiegoism
+antiegoist
+antiegoistic
+antiegoistical
+antiegoistically
+antiegotism
+antiegotist
+antiegotistic
+antiegotistical
+antiegotistically
+antiejaculation
+antielectron
+antielectrons
+anti-emetic
+antiemetic
+antiemetics
+antiemperor
+antiempiric
+antiempirical
+antiempirically
+antiempiricism
+antiempiricist
+antiendotoxin
+antiendowment
+antienergistic
+Anti-english
+anti-English
+antient
+Anti-entente
+antienthusiasm
+antienthusiast
+antienthusiastic
+antienthusiastically
+antienvironmentalism
+antienvironmentalist
+antienvironmentalists
+antienzymatic
+antienzyme
+antienzymic
+antiepicenter
+antiepileptic
+antiepiscopal
+antiepiscopist
+antiepithelial
+antierosion
+antierosive
+antierysipelas
+antiestablishment
+Antietam
+anti-ethmc
+antiethnic
+antieugenic
+anti-Europe
+Anti-european
+anti-European
+anti-Europeanism
+antievangelical
+antievolution
+antievolutional
+antievolutionally
+antievolutionary
+antievolutionist
+antievolutionistic
+antiexpansion
+antiexpansionism
+antiexpansionist
+antiexporting
+antiexpressionism
+antiexpressionist
+antiexpressionistic
+antiexpressive
+antiexpressively
+antiexpressiveness
+antiextreme
+antieyestrain
+antiface
+antifaction
+antifame
+antifanatic
+Anti-fascism
+antifascism
+Anti-fascist
+antifascist
+Anti-fascisti
+antifascists
+antifat
+antifatigue
+antifebrile
+antifebrin
+antifederal
+Antifederalism
+antifederalism
+Antifederalist
+anti-federalist
+antifederalist
+antifelon
+antifelony
+antifemale
+antifeminine
+antifeminism
+antifeminist
+antifeministic
+antiferment
+antifermentative
+antiferroelectric
+antiferromagnet
+antiferromagnetic
+antiferromagnetism
+antifertility
+antifertilizer
+antifeudal
+antifeudalism
+antifeudalist
+antifeudalistic
+antifeudalization
+antifibrinolysin
+antifibrinolysis
+antifideism
+antifire
+antiflash
+antiflattering
+antiflatulent
+antiflux
+antifoam
+antifoaming
+antifoggant
+antifogmatic
+antiforeign
+antiforeigner
+antiforeignism
+antiformant
+antiformin
+antifouler
+antifouling
+Anti-fourierist
+antifowl
+anti-France
+antifraud
+antifreeze
+antifreezes
+antifreezing
+Anti-french
+anti-French
+anti-Freud
+Anti-freudian
+anti-Freudian
+anti-Freudianism
+antifriction
+antifrictional
+antifrost
+antifundamentalism
+antifundamentalist
+antifungal
+antifungin
+antifungus
+antigalactagogue
+antigalactic
+anti-gallic
+Anti-gallican
+anti-gallican
+anti-gallicanism
+antigambling
+antiganting
+antigay
+antigen
+antigene
+antigenes
+antigenic
+antigenically
+antigenicity
+antigens
+Anti-german
+anti-German
+anti-Germanic
+Anti-germanism
+anti-Germanism
+anti-Germanization
+antighostism
+antigigmanic
+antiglare
+antiglobulin
+antiglyoxalase
+Anti-gnostic
+antignostic
+antignostical
+Antigo
+anti-god
+antigod
+Antigone
+antigone
+antigonococcic
+Antigonon
+antigonorrheal
+antigonorrheic
+Antigonus
+antigorite
+Anti-gothicist
+antigovernment
+antigovernmental
+antigovernmentally
+antigraft
+antigrammatical
+antigrammatically
+antigrammaticalness
+antigraph
+antigraphy
+antigravitate
+antigravitation
+antigravitational
+antigravitationally
+antigravity
+anti-Greece
+anti-Greek
+antigropelos
+antigrowth
+Antigua
+Antiguan
+antiguerilla
+anti-guggler
+antiguggler
+antigun
+antigyrous
+antihalation
+Anti-hanoverian
+antiharmonist
+antihectic
+antihelices
+antihelix
+antihelixes
+antihelminthic
+antihemagglutinin
+antihemisphere
+antihemoglobin
+antihemolysin
+antihemolytic
+antihemophilic
+antihemorrhagic
+antihemorrheidal
+anti-hero
+antihero
+antiheroes
+anti-heroic
+antiheroic
+antiheroism
+antiheterolysin
+antihidrotic
+antihierarchal
+antihierarchic
+antihierarchical
+antihierarchically
+antihierarchies
+antihierarchism
+antihierarchist
+antihierarchy
+antihijack
+antihistamine
+antihistamines
+antihistaminic
+antihistorical
+anti-hog-cholera
+antiholiday
+antihomosexual
+antihormone
+antihuff
+antihum
+antihuman
+antihumanism
+antihumanist
+antihumanistic
+antihumanity
+antihumbuggist
+antihunting
+antihydrophobic
+antihydropic
+antihydropin
+antihygienic
+antihygienically
+antihylist
+antihypertensive
+antihypertensives
+antihypnotic
+antihypnotically
+antihypochondriac
+antihypophora
+antihysteric
+Anti-ibsenite
+anti-icer
+anti-icteric
+anti-idealism
+anti-idealist
+anti-idealistic
+anti-idealistically
+anti-idolatrous
+anti-immigration
+anti-immigrationist
+anti-immune
+anti-imperialism
+anti-imperialist
+anti-imperialistic
+anti-incrustator
+anti-indemnity
+anti-induction
+anti-inductive
+anti-inductively
+anti-inductiveness
+anti-infallibilist
+anti-infantal
+antiinflammatories
+antiinflammatory
+anti-innovationist
+antiinstitutionalist
+antiinstitutionalists
+antiinsurrectionally
+antiinsurrectionists
+anti-intellectual
+anti-intellectualism
+anti-intellectualist
+anti-intellectuality
+anti-intermediary
+anti-Irish
+Anti-irishism
+anti-isolation
+anti-isolationism
+anti-isolationist
+anti-isolysin
+Anti-italian
+anti-Italian
+anti-Italianism
+anti-jacobin
+anti-jacobinism
+antijam
+antijamming
+Anti-jansenist
+Anti-japanese
+anti-Japanese
+Anti-japanism
+Anti-jesuit
+anti-Jesuit
+anti-Jesuitic
+anti-Jesuitical
+anti-Jesuitically
+anti-Jesuitism
+anti-Jesuitry
+Anti-jewish
+anti-Jewish
+Anti-judaic
+anti-Judaic
+Anti-judaism
+anti-Judaism
+anti-Judaist
+anti-Judaistic
+Antikamnia
+antikathode
+antikenotoxin
+antiketogen
+antiketogenesis
+antiketogenic
+antikinase
+antiking
+antikings
+Anti-klan
+Anti-klanism
+antiknock
+antiknocks
+Antikythera
+antilabor
+antilaborist
+antilacrosse
+antilacrosser
+antilactase
+anti-laissez-faire
+Anti-lamarckian
+antilapsarian
+antilapse
+Anti-latin
+anti-Latin
+anti-Latinism
+Anti-laudism
+antileague
+anti-leaguer
+antileak
+Anti-Lebanon
+anti-lecomption
+anti-lecomptom
+antileft
+antilegalist
+antilegomena
+antilemic
+antilens
+antilepsis
+antileptic
+antilepton
+antilethargic
+antileukemic
+antileveling
+antilevelling
+Antilia
+Anti-liberal
+antiliberal
+antiliberalism
+antiliberalist
+antiliberalistic
+antiliberally
+antiliberalness
+antiliberals
+antilibration
+antilife
+antilift
+antilipase
+antilipoid
+antiliquor
+antilithic
+antilitter
+antilittering
+antiliturgic
+antiliturgical
+antiliturgically
+antiliturgist
+antiliturgy
+Antillean
+Antilles
+antilles
+antilobium
+Antilocapra
+Antilocapridae
+Antilochus
+antiloemic
+antilog
+antilogarithm
+antilogarithmic
+antilogarithms
+antilogic
+antilogical
+antilogies
+antilogism
+antilogistic
+antilogistically
+antilogous
+antilogs
+antilogy
+antiloimic
+Antilope
+Antilopinae
+antilopine
+antiloquy
+antilottery
+antiluetic
+antiluetin
+antilynching
+antilysin
+antilysis
+antilyssic
+antilytic
+antimacassar
+antimacassars
+Anti-macedonian
+Anti-macedonianism
+antimachination
+antimachine
+antimachinery
+Antimachus
+antimagistratical
+antimagnetic
+antimalaria
+antimalarial
+antimale
+antimallein
+Anti-malthusian
+anti-Malthusian
+anti-Malthusianism
+antiman
+antimanagement
+antimaniac
+anti-maniacal
+antimaniacal
+Antimarian
+antimark
+antimartyr
+antimask
+antimasker
+antimasks
+Anti-Mason
+Antimason
+antimason
+Anti-Masonic
+Antimasonic
+Anti-Masonry
+Antimasonry
+antimasque
+antimasquer
+antimasquerade
+antimaterialism
+antimaterialist
+antimaterialistic
+antimaterialistically
+antimatrimonial
+antimatrimonialist
+antimatter
+antimechanism
+antimechanist
+antimechanistic
+antimechanistically
+antimechanization
+antimediaeval
+antimediaevalism
+antimediaevalist
+antimediaevally
+antimedical
+antimedically
+antimedication
+antimedicative
+antimedicine
+antimedieval
+antimedievalism
+antimedievalist
+antimedievally
+antimelancholic
+antimellin
+antimeningococcic
+antimensia
+antimension
+antimensium
+antimephitic
+antimere
+antimeres
+antimerger
+antimerging
+antimeric
+Antimerina
+antimerism
+antimeristem
+antimesia
+antimeson
+Anti-messiah
+antimetabole
+antimetabolite
+antimetathesis
+antimetathetic
+antimeter
+antimethod
+antimethodic
+antimethodical
+antimethodically
+antimethodicalness
+antimetrical
+antimetropia
+antimetropic
+Anti-mexican
+anti-Mexican
+antimiasmatic
+antimicrobial
+antimicrobic
+antimilitarism
+antimilitarist
+antimilitaristic
+antimilitaristically
+antimilitary
+antiministerial
+antiministerialist
+antiministerially
+antiminsia
+antiminsion
+antimiscegenation
+antimissile
+antimission
+antimissionary
+antimissioner
+antimitotic
+antimixing
+antimnemonic
+antimodel
+antimodern
+antimodernism
+antimodernist
+antimodernistic
+antimodernization
+antimodernly
+antimodernness
+Anti-mohammedan
+antimonarch
+antimonarchal
+antimonarchally
+antimonarchial
+antimonarchic
+antimonarchical
+antimonarchically
+antimonarchicalness
+antimonarchism
+antimonarchist
+antimonarchistic
+antimonarchists
+antimonarchy
+antimonate
+Anti-mongolian
+antimonial
+antimoniate
+antimoniated
+antimonic
+antimonid
+antimonide
+antimonies
+antimoniferous
+antimonioso-
+antimonious
+antimonite
+antimonium
+antimoniuret
+antimoniureted
+antimoniuretted
+antimonopolism
+antimonopolist
+antimonopolistic
+antimonopolization
+antimonopoly
+antimonous
+antimonsoon
+antimony
+antimonyl
+anti-mony-yellow
+antimoral
+antimoralism
+antimoralist
+antimoralistic
+antimorality
+Anti-mosaical
+antimosquito
+antimusical
+antimusically
+antimusicalness
+antimycotic
+antimystic
+antimystical
+antimystically
+antimysticalness
+antimysticism
+antimythic
+antimythical
+Antin
+antinarcotic
+antinarcotics
+antinarrative
+antinational
+antinationalism
+Anti-nationalist
+antinationalist
+antinationalistic
+antinationalistically
+antinationalists
+antinationalization
+antinationally
+antinatural
+antinaturalism
+antinaturalist
+antinaturalistic
+antinaturally
+antinaturalness
+anti-nebraska
+anti-Negro
+antinegro
+anti-Negroes
+anti-Negroism
+antinegroism
+antineologian
+antineoplastic
+antinephritic
+antinepotic
+antineuralgic
+antineuritic
+antineurotoxin
+antineutral
+antineutralism
+antineutrality
+antineutrally
+antineutrino
+antineutrinos
+antineutron
+antineutrons
+anting
+antinganting
+antings
+antinial
+anti-nicaean
+antinicotine
+antinihilism
+Anti-nihilist
+antinihilist
+antinihilistic
+antinion
+Anti-noahite
+antinodal
+antinode
+antinodes
+antinoise
+antinome
+antinomian
+antinomianism
+antinomians
+antinomic
+antinomical
+antinomies
+antinomist
+antinomy
+antinoness
+Anti-nordic
+anti-Nordic
+antinormal
+antinormality
+antinormalness
+Antinos
+antinosarian
+Antinous
+anti-novel
+antinovel
+anti-novelist
+antinovelist
+antinovels
+antinucleon
+antinucleons
+antinuke
+antiobesity
+Antioch
+Antiochene
+Antiochian
+Antiochianism
+Antiochus
+antiodont
+anti-odontalgic
+antiodontalgic
+Antiope
+antiopelmous
+anti-open-shop
+antiophthalmic
+antiopium
+antiopiumist
+antiopiumite
+antioptimism
+antioptimist
+antioptimistic
+antioptimistical
+antioptimistically
+antioptionist
+anti-orgastic
+antiorgastic
+Anti-oriental
+anti-Oriental
+anti-Orientalism
+anti-Orientalist
+antiorthodox
+antiorthodoxly
+antiorthodoxy
+anti-over
+antioxidant
+antioxidants
+antioxidase
+antioxidizer
+antioxidizing
+antioxygen
+antioxygenating
+antioxygenation
+antioxygenator
+antioxygenic
+antiozonant
+antipacifism
+antipacifist
+antipacifistic
+antipacifists
+antipapacy
+antipapal
+antipapalist
+antipapism
+antipapist
+antipapistic
+antipapistical
+antiparabema
+antiparabemata
+antiparagraphe
+antiparagraphic
+antiparallel
+antiparallelogram
+antiparalytic
+antiparalytical
+antiparasitic
+antiparasitical
+antiparasitically
+antiparastatitis
+antiparliament
+antiparliamental
+antiparliamentarian
+antiparliamentarians
+antiparliamentarist
+antiparliamentary
+antiparliamenteer
+antipart
+antiparticle
+antiparticles
+Antipas
+Antipasch
+Antipascha
+antipass
+antipasti
+antipastic
+antipasto
+antipastos
+Antipater
+Antipatharia
+antipatharian
+antipathetic
+antipathetical
+antipathetically
+antipatheticalness
+antipathic
+Antipathida
+antipathies
+antipathist
+antipathize
+antipathogen
+antipathogene
+antipathogenic
+antipathy
+antipatriarch
+antipatriarchal
+antipatriarchally
+antipatriarchy
+antipatriot
+antipatriotic
+antipatriotically
+antipatriotism
+Anti-paul
+Anti-pauline
+antipedal
+Antipedobaptism
+Antipedobaptist
+antipeduncular
+Anti-pelagian
+antipellagric
+antipendium
+antipepsin
+antipeptone
+antiperiodic
+antiperistalsis
+antiperistaltic
+antiperistasis
+antiperistatic
+antiperistatical
+antiperistatically
+antipersonnel
+antiperspirant
+antiperspirants
+antiperthite
+antipestilence
+antipestilent
+antipestilential
+antipestilently
+antipetalous
+antipewism
+antiphagocytic
+antipharisaic
+antipharmic
+Antiphas
+antiphase
+Antiphates
+Anti-philippizing
+antiphilosophic
+antiphilosophical
+antiphilosophically
+antiphilosophies
+antiphilosophism
+antiphilosophy
+antiphlogistian
+antiphlogistic
+antiphlogistin
+antiphon
+antiphona
+antiphonal
+antiphonally
+antiphonaries
+antiphonary
+antiphoner
+antiphonetic
+antiphonic
+antiphonical
+antiphonically
+antiphonies
+antiphonon
+antiphons
+antiphony
+antiphrases
+antiphrasis
+antiphrastic
+antiphrastical
+antiphrastically
+antiphthisic
+antiphthisical
+Antiphus
+antiphylloxeric
+antiphysic
+antiphysical
+antiphysically
+antiphysicalness
+antiphysician
+antipill
+antiplague
+antiplanet
+antiplastic
+antiplatelet
+anti-Plato
+Anti-platonic
+anti-Platonic
+anti-Platonically
+anti-Platonism
+anti-Platonist
+antipleion
+antiplenist
+antiplethoric
+antipleuritic
+antiplurality
+antipneumococcic
+antipodagric
+antipodagron
+antipodal
+antipode
+antipodean
+antipodeans
+Antipodes
+antipodes
+antipodic
+antipodism
+antipodist
+Antipoenus
+antipoetic
+antipoetical
+antipoetically
+antipoints
+antipolar
+antipole
+antipolemist
+antipoles
+antipolice
+Anti-polish
+anti-Polish
+antipolitical
+antipolitically
+antipolitics
+antipollution
+antipolo
+antipolygamy
+antipolyneuritic
+antipool
+antipooling
+antipope
+antipopery
+antipopes
+antipopular
+antipopularization
+antipopulationist
+antipopulism
+anti-Populist
+antipornographic
+antipornography
+antiportable
+antiposition
+antipot
+antipoverty
+antipragmatic
+antipragmatical
+antipragmatically
+antipragmaticism
+antipragmatism
+antipragmatist
+antiprecipitin
+antipredeterminant
+anti-pre-existentiary
+antiprelate
+antiprelatic
+antiprelatism
+antiprelatist
+antipreparedness
+antiprestidigitation
+antipriest
+antipriestcraft
+antipriesthood
+antiprime
+antiprimer
+antipriming
+antiprinciple
+antiprism
+antiproductionist
+antiproductive
+antiproductively
+antiproductiveness
+antiproductivity
+antiprofiteering
+antiprogressive
+antiprohibition
+antiprohibitionist
+antiprojectivity
+antiprophet
+antiprostate
+antiprostatic
+antiprostitution
+antiprotease
+antiproteolysis
+Anti-protestant
+anti-Protestant
+anti-Protestantism
+antiproton
+antiprotons
+antiprotozoal
+antiprudential
+antipruritic
+antipsalmist
+antipsoric
+antipsychiatry
+antipsychotic
+antiptosis
+antipudic
+anti-Puritan
+antipuritan
+anti-Puritanism
+Antipus
+antiputrefaction
+antiputrefactive
+antiputrescent
+antiputrid
+antipyic
+antipyics
+antipyonin
+antipyresis
+antipyretic
+antipyretics
+antipyrin
+Antipyrine
+antipyrine
+antipyrotic
+antipyryl
+antiq
+antiq.
+antiqua
+antiquarian
+antiquarianism
+antiquarianize
+antiquarianly
+antiquarians
+antiquaries
+antiquarism
+antiquarium
+antiquartan
+antiquary
+antiquate
+antiquated
+antiquatedness
+antiquates
+antiquating
+antiquation
+antique
+antiqued
+antiquely
+antiqueness
+antiquer
+antiquers
+antiques
+antiquing
+antiquist
+antiquitarian
+antiquities
+antiquity
+antiquum
+antirabic
+antirabies
+antiracemate
+antiracer
+antirachitic
+antirachitically
+antiracial
+antiracially
+antiracing
+antiracism
+antiracketeering
+antiradiant
+antiradiating
+antiradiation
+antiradical
+antiradicalism
+antiradically
+antiradicals
+antirailwayist
+antirape
+antirational
+antirationalism
+antirationalist
+antirationalistic
+antirationality
+antirationally
+antirattler
+antireacting
+antireaction
+antireactionaries
+antireactionary
+antireactive
+antirealism
+antirealist
+antirealistic
+antirealistically
+antireality
+antirebating
+antirecession
+antirecruiting
+antired
+antiredeposition
+antireducer
+antireducing
+antireduction
+antireductive
+antireflexive
+antireform
+antireformer
+antireforming
+antireformist
+antireligion
+antireligionist
+antireligiosity
+antireligious
+antireligiously
+Antiremonstrant
+antiremonstrant
+antirennet
+antirennin
+antirent
+antirenter
+antirentism
+Anti-republican
+antirepublican
+antirepublicanism
+antireservationist
+antiresonance
+antiresonator
+antirestoration
+antireticular
+antirevisionist
+antirevolution
+antirevolutionaries
+antirevolutionary
+antirevolutionist
+antirheumatic
+antiricin
+antirickets
+antiriot
+antiritual
+antiritualism
+antiritualist
+antiritualistic
+antirobbery
+antirobin
+antiroll
+Anti-roman
+anti-Roman
+anti-roman
+antiromance
+Anti-romanist
+anti-Romanist
+antiromantic
+antiromanticism
+antiromanticist
+antiroyal
+antiroyalism
+antiroyalist
+Antirrhinum
+antirrhinum
+antirumor
+antirun
+Anti-ruskinian
+anti-Russia
+Anti-russian
+anti-Russian
+antirust
+antirusts
+antis
+Anti-sabbatarian
+antisabbatarian
+Anti-sabian
+antisacerdotal
+antisacerdotalist
+antisag
+antisaloon
+antisalooner
+Antisana
+antisavage
+Anti-saxonism
+antiscabious
+antiscale
+anti-Scandinavia
+antisceptic
+antisceptical
+antiscepticism
+antischolastic
+antischolastically
+antischolasticism
+antischool
+antiscia
+antiscians
+antiscience
+antiscientific
+antiscientifically
+antiscii
+antiscion
+antiscolic
+antiscorbutic
+antiscorbutical
+Anti-scriptural
+antiscriptural
+anti-Scripture
+Anti-scripturism
+antiscripturism
+Anti-scripturist
+anti-Scripturist
+antiscrofulous
+antisegregation
+antiseismic
+antiselene
+Anti-semite
+anti-Semite
+anti-semite
+antisemite
+Anti-semitic
+anti-Semitic
+antisemitic
+Anti-semitically
+Anti-semitism
+anti-Semitism
+antisemitism
+antisensitivity
+antisensitizer
+antisensitizing
+antisensuality
+antisensuous
+antisensuously
+antisensuousness
+antisepalous
+antisepsin
+antisepsis
+antiseptic
+antiseptical
+antiseptically
+antisepticise
+antisepticised
+antisepticising
+antisepticism
+antisepticist
+antisepticize
+antisepticized
+antisepticizing
+antiseptics
+antiseption
+antiseptize
+antisera
+Anti-serb
+anti-Serb
+antiserum
+antiserums
+antiserumsera
+antisex
+antisexist
+antisexual
+Anti-shelleyan
+Anti-shemite
+Anti-shemitic
+Anti-shemitism
+antiship
+antishipping
+antishoplifting
+Antisi
+antisialagogue
+antisialic
+antisiccative
+antisideric
+antisilverite
+antisimoniacal
+antisine
+antisiphon
+antisiphonal
+antiskeptic
+antiskeptical
+antiskepticism
+antiskid
+antiskidding
+Anti-slav
+anti-Slav
+antislavery
+antislaveryism
+anti-Slavic
+antislickens
+antislip
+Anti-slovene
+antismog
+antismoking
+antismuggling
+antismut
+antisnapper
+antisnob
+antisocial
+antisocialist
+antisocialistic
+antisocialistically
+antisociality
+antisocially
+Anti-socinian
+anti-Socrates
+anti-Socratic
+antisolar
+antisophism
+antisophist
+antisophistic
+antisophistication
+antisophistry
+antisoporific
+Anti-soviet
+anti-Soviet
+antispace
+antispadix
+anti-Spain
+Anti-spanish
+anti-Spanish
+antispasis
+antispasmodic
+antispasmodics
+antispast
+antispastic
+antispectroscopic
+antispeculation
+antispending
+antispermotoxin
+antispiritual
+antispiritualism
+antispiritualist
+antispiritualistic
+antispiritually
+antispirochetic
+antisplasher
+antisplenetic
+antisplitting
+antispreader
+antispreading
+antisquama
+antisquatting
+antistadholder
+antistadholderian
+antistalling
+antistaphylococcic
+antistat
+antistate
+antistater
+antistatic
+antistatism
+antistatist
+antisteapsin
+antisterility
+antistes
+Antisthenes
+antistimulant
+antistimulation
+antistock
+antistreptococcal
+antistreptococcic
+antistreptococcin
+antistreptococcus
+antistrike
+antistriker
+antistrophal
+antistrophe
+antistrophic
+antistrophically
+antistrophize
+antistrophon
+antistrumatic
+antistrumous
+antistudent
+antisubmarine
+antisubstance
+antisubversion
+antisubversive
+antisudoral
+antisudorific
+antisuffrage
+antisuffragist
+antisuicide
+antisun
+antisupernatural
+antisupernaturalism
+antisupernaturalist
+antisupernaturalistic
+antisurplician
+anti-Sweden
+anti-Swedish
+antisymmetric
+antisymmetrical
+antisymmetry
+antisyndicalism
+antisyndicalist
+antisyndication
+antisynod
+antisyphilitic
+antisyphillis
+antitabetic
+antitabloid
+antitangent
+antitank
+antitarnish
+antitarnishing
+antitartaric
+antitax
+antitaxation
+antitechnological
+antitechnology
+antiteetotalism
+antitegula
+antitemperance
+antiterrorism
+antiterrorist
+antitetanic
+antitetanolysin
+Anti-teuton
+anti-Teuton
+Anti-teutonic
+anti-Teutonic
+antithalian
+antitheft
+antitheism
+antitheist
+antitheistic
+antitheistical
+antitheistically
+antithenar
+antitheologian
+antitheological
+antitheologizing
+antitheology
+antithermic
+antithermin
+antitheses
+antithesis
+antithesism
+antithesize
+antithet
+antithetic
+antithetical
+antithetically
+antithetics
+antithrombic
+antithrombin
+antithyroid
+antitintinnabularian
+antitobacco
+antitobacconal
+antitobacconist
+antitonic
+antitorpedo
+antitotalitarian
+antitoxic
+antitoxin
+antitoxine
+antitoxins
+anti-trade
+antitrade
+antitrades
+antitradition
+antitraditional
+antitraditionalist
+antitraditionally
+antitragal
+antitragi
+antitragic
+antitragicus
+antitragus
+Anti-tribonian
+Anti-trinitarian
+anti-Trinitarian
+antitrinitarian
+anti-Trinitarianism
+antitrismus
+antitrochanter
+antitropal
+antitrope
+antitropic
+antitropical
+antitropous
+antitropy
+antitrust
+antitruster
+antitrypsin
+antitryptic
+antitubercular
+antituberculin
+antituberculosis
+antituberculotic
+antituberculous
+antitumor
+antitumoral
+Anti-turkish
+anti-Turkish
+antiturnpikeism
+antitussive
+antitwilight
+antitypal
+antitype
+antitypes
+antityphoid
+antitypic
+antitypical
+antitypically
+antitypous
+antitypy
+antityrosinase
+antiuating
+antiulcer
+antiunemployment
+antiunion
+antiunionist
+Anti-unitarian
+antiuniversity
+antiuratic
+antiurban
+antiurease
+antiusurious
+antiutilitarian
+antiutilitarianism
+antivaccination
+antivaccinationist
+antivaccinator
+antivaccinist
+antivandalism
+antivariolous
+antivenefic
+antivenene
+antivenereal
+antivenin
+antivenine
+antivenins
+Anti-venizelist
+antivenom
+antivenomous
+antivermicular
+antivibrating
+antivibrator
+antivibratory
+antivice
+antiviolence
+antiviral
+antivirotic
+antivirus
+antivitalist
+antivitalistic
+antivitamin
+antivivisection
+antivivisectionist
+antivivisectionists
+antivolition
+Anti-volstead
+Anti-volsteadian
+antiwar
+antiwarlike
+antiwaste
+antiwear
+antiwedge
+antiweed
+Anti-whig
+antiwhite
+antiwhitism
+antiwiretapping
+antiwit
+antiwoman
+antiworld
+anti-worlds
+Anti-wycliffist
+Anti-wycliffite
+antixerophthalmic
+antizealot
+Anti-zionism
+anti-Zionism
+Anti-zionist
+anti-Zionist
+antizoea
+Anti-zwinglian
+antizymic
+antizymotic
+antjar
+antler
+antlered
+antlerite
+antlerless
+Antlers
+antlers
+Antlia
+antlia
+Antliae
+antliate
+Antlid
+antlike
+antling
+antlion
+antlions
+antlophobia
+antluetic
+Antntonioni
+antocular
+antodontalgic
+antoeci
+antoecian
+antoecians
+Antofagasta
+Antoine
+Antoinetta
+Antoinette
+antoinette
+Anton
+Antonchico
+Antone
+Antonella
+Antonescu
+Antonet
+Antonetta
+Antoni
+Antonia
+Antonie
+Antonietta
+Antonin
+Antonina
+antoniniani
+antoninianus
+Antonino
+Antoninus
+Antonio
+antonio
+Antonito
+Antonius
+antonomasia
+antonomastic
+antonomastical
+antonomastically
+antonomasy
+Antonovich
+antonovics
+Antons
+Antony
+antony
+antonym
+antonymic
+antonymies
+antonymous
+antonyms
+antonymy
+Antony-over
+antorbital
+antozone
+antozonite
+ant-pipit
+antproof
+antra
+antral
+antralgia
+antre
+antrectomy
+antres
+Antrim
+antrin
+antritis
+antrocele
+antronasal
+antrophore
+antrophose
+antrorse
+antrorsely
+antroscope
+antroscopy
+Antrostomus
+antrotome
+antrotomy
+antrotympanic
+antrotympanitis
+antroversion
+antrovert
+antrum
+antrums
+antrustion
+antrustionship
+ants
+antship
+antshrike
+antsier
+antsiest
+antsigne
+Antsirane
+antsy
+antsy-pantsy
+ant-thrush
+antthrush
+ANTU
+Antu
+antu
+Antum
+Antung
+Antwerp
+antwerp
+Antwerpen
+antwise
+ANU
+Anu
+anubin
+anubing
+Anubis
+anucleate
+anucleated
+anukabiet
+Anukit
+anuloma
+Anunaki
+anunder
+Anunnaki
+Anura
+anura
+Anuradhapura
+Anurag
+anural
+anuran
+anurans
+anureses
+anuresis
+anuretic
+anuria
+anurias
+anuric
+anurous
+anury
+anus
+anuses
+anusim
+Anuska
+anusvara
+anutraminosa
+anvasser
+Anvers
+Anvik
+anvil
+anvil-drilling
+anviled
+anvil-faced
+anvil-facing
+anvil-headed
+anviling
+anvilled
+anvilling
+anvils
+anvilsmith
+anviltop
+anviltops
+anxieties
+anxietude
+anxiety
+anxiolytic
+anxious
+anxiously
+anxiousness
+Any
+any
+Anya
+Anyah
+Anyang
+anybodies
+anybody
+anybody'd
+anybodyd
+Anychia
+anyhow
+any-kyn
+anymore
+anyone
+anyplace
+Anystidae
+anything
+anythingarian
+anythingarianism
+anythings
+anytime
+anyway
+anyways
+anywhen
+anywhence
+anywhere
+anywhereness
+anywheres
+anywhither
+anywhy
+anywise
+anywither
+Anza
+Anzac
+anzac
+Anzanian
+Anzanite
+Anzengruber
+Anzio
+Anzovin
+ANZUS
+A/O
+AO
+Ao
+AOA
+aob
+AOCS
+Aoede
+aogiri
+Aoide
+Aoife
+A-OK
+Aoki
+AOL
+aoli
+Aomori
+aonach
+A-one
+Aonian
+aonian
+AOP
+AOPA
+AOQ
+aor
+Aorangi
+aorist
+aoristic
+aoristically
+aorists
+Aornis
+Aornum
+aorta
+aortae
+aortal
+aortarctia
+aortas
+aortectasia
+aortectasis
+aortic
+aorticorenal
+aortism
+aortitis
+aortoclasia
+aortoclasis
+aortographic
+aortographies
+aortography
+aortoiliac
+aortolith
+aortomalacia
+aortomalaxis
+aortopathy
+aortoptosia
+aortoptosis
+aortorrhaphy
+aortosclerosis
+aortostenosis
+aortotomy
+AOS
+aosmic
+AOSS
+Aosta
+Aotea
+Aotearoa
+Aotes
+Aotus
+AOU
+aouad
+aouads
+aoudad
+aoudads
+Aouellimiden
+Aoul
+AOW
+A&P
+A/P
+AP
+Ap
+a.p.
+ap
+ap-
+APA
+apa
+apabhramsa
+apace
+Apache
+apache
+Apaches
+apaches
+Apachette
+apachism
+apachite
+apadana
+apaesthesia
+apaesthetic
+apaesthetize
+apaestically
+apagoge
+apagoges
+apagogic
+apagogical
+apagogically
+apagogue
+apaid
+apair
+apaise
+Apalachee
+Apalachicola
+Apalachin
+apalit
+Apama
+apanage
+apanaged
+apanages
+apanaging
+apandry
+Apanteles
+Apantesis
+apanthropia
+apanthropy
+apar
+apar-
+Aparai
+aparaphysate
+aparavidya
+apardon
+aparejo
+aparejos
+Apargia
+aparithmesis
+Aparri
+apart
+apartado
+Apartheid
+apartheid
+apartheids
+aparthrosis
+apartment
+apartmental
+apartments
+apartness
+apasote
+apass
+apast
+apastra
+apastron
+apasttra
+apatan
+Apatela
+apatetic
+apathaton
+apatheia
+apathetic
+apathetical
+apathetically
+apathia
+apathic
+apathies
+apathism
+apathist
+apathistical
+apathize
+apathogenic
+Apathus
+apathy
+apatite
+apatites
+Apatornis
+Apatosaurus
+apatosaurus
+Apaturia
+apay
+Apayao
+APB
+APC
+APDA
+APDU
+APE
+ape
+apeak
+apectomy
+aped
+apedom
+apeek
+ape-headed
+apehood
+apeiron
+apeirophobia
+apel-
+Apeldoorn
+apelet
+apelike
+apeling
+Apelles
+apelles
+apellous
+ape-man
+apeman
+Apemantus
+ape-men
+Apemius
+Apemosyne
+apen-
+Apennine
+Apennines
+apennines
+apenteric
+Apepi
+apepsia
+apepsinia
+apepsy
+apeptic
+aper
+aper-
+aperch
+apercu
+apercus
+aperea
+aperient
+aperients
+aperies
+aperiodic
+aperiodically
+aperiodicity
+aperispermic
+aperistalsis
+aperitif
+aperitifs
+aperitive
+apers
+apersee
+apert
+apertion
+apertly
+apertness
+apertometer
+apertum
+apertural
+aperture
+apertured
+apertures
+Aperu
+aperu
+aperulosid
+apery
+apes
+apesthesia
+apesthetic
+apesthetize
+apet-
+Apetalae
+apetalies
+apetaloid
+apetalose
+apetalous
+apetalousness
+apetaly
+apex
+apexed
+apexes
+apexing
+Apfel
+Apfelstadt
+APG
+Apgar
+aph
+aph-
+aphacia
+aphacial
+aphacic
+aphaeresis
+aphaeretic
+aphagia
+aphagias
+aphakia
+aphakial
+aphakic
+Aphanapteryx
+Aphanes
+aphanesite
+Aphaniptera
+aphaniptera
+aphanipterous
+aphanisia
+aphanisis
+aphanite
+aphanites
+aphanitic
+aphanitism
+Aphanomyces
+aphanophyre
+aphanozygous
+Aphareus
+Apharsathacites
+aphasia
+aphasiac
+aphasiacs
+aphasias
+aphasic
+aphasics
+aphasiology
+Aphelandra
+Aphelenchus
+aphelia
+aphelian
+aphelilia
+aphelilions
+Aphelinus
+aphelion
+apheliotropic
+apheliotropically
+apheliotropism
+Aphelops
+aphemia
+aphemic
+aphengescope
+aphengoscope
+aphenoscope
+apheresis
+apheretic
+apheses
+aphesis
+Aphesius
+apheta
+aphetic
+aphetically
+aphetism
+aphetize
+aphicidal
+aphicide
+aphid
+Aphidas
+aphides
+aphidian
+aphidians
+aphidicide
+aphidicolous
+aphidid
+Aphididae
+Aphidiinae
+aphidious
+Aphidius
+aphidivorous
+aphid-lion
+aphidlion
+aphidolysin
+aphidophagous
+aphidozer
+aphids
+aphilanthropy
+Aphis
+aphis
+aphis-lion
+aphislion
+aphizog
+aphlaston
+aphlebia
+aphlogistic
+aphnology
+aphodal
+aphodi
+aphodian
+Aphodius
+aphodus
+apholate
+apholates
+aphonia
+aphonias
+aphonic
+aphonics
+aphonous
+aphony
+aphoria
+aphorise
+aphorised
+aphoriser
+aphorises
+aphorising
+aphorism
+aphorismatic
+aphorismer
+aphorismic
+aphorismical
+aphorismos
+aphorisms
+aphorist
+aphoristic
+aphoristical
+aphoristically
+aphorists
+aphorize
+aphorized
+aphorizer
+aphorizes
+aphorizing
+Aphoruridae
+aphotaxis
+aphotic
+aphototactic
+aphototaxis
+aphototropic
+aphototropism
+Aphra
+aphrasia
+aphrite
+aphrizite
+aphrodesiac
+aphrodisia
+aphrodisiac
+aphrodisiacal
+aphrodisiacs
+aphrodisian
+aphrodisiomania
+aphrodisiomaniac
+aphrodisiomaniacal
+Aphrodision
+Aphrodistic
+Aphrodite
+aphrodite
+Aphroditeum
+aphroditic
+Aphroditidae
+aphroditous
+Aphrogeneia
+aphrolite
+aphronia
+aphronitre
+aphrosiderite
+aphtha
+aphthae
+Aphthartodocetae
+Aphthartodocetic
+Aphthartodocetism
+aphthic
+aphthitalite
+aphthoid
+aphthong
+aphthongal
+aphthongia
+aphthonite
+aphthous
+aphydrotropic
+aphydrotropism
+aphyllies
+aphyllose
+aphyllous
+aphylly
+aphyric
+API
+Apia
+Apiaca
+Apiaceae
+apiaceous
+Apiales
+apian
+Apianus
+apiararies
+apiarian
+apiarians
+apiaries
+apiarist
+apiarists
+apiary
+apiator
+apicad
+apical
+apically
+apicals
+Apicella
+apices
+apicial
+Apician
+apician
+apicifixed
+apicilar
+apicillary
+apicitis
+apickaback
+apickback
+apickpack
+apico-alveolar
+apico-dental
+apicoectomy
+apicolysis
+APICS
+apicula
+apicular
+apiculate
+apiculated
+apiculation
+apiculi
+apicultural
+apiculture
+apiculturist
+apiculus
+Apidae
+apiece
+a-pieces
+apieces
+Apiezon
+apigenin
+apii
+apiin
+apikores
+apikoros
+apikorsim
+apilary
+apili
+apimania
+apimanias
+Apina
+Apinae
+Apinage
+a-pinch
+apinch
+aping
+apinoid
+apio
+Apioceridae
+apiocrinite
+apioid
+apioidal
+apiol
+apiole
+apiolin
+apiologies
+apiologist
+apiology
+apionol
+Apios
+apiose
+Apiosoma
+apiphobia
+Apis
+apis
+apish
+apishamore
+apishly
+apishness
+apism
+Apison
+apitong
+apitpat
+Apium
+apium
+apivorous
+APJ
+apjohnite
+Apl
+apl
+aplace
+aplacental
+Aplacentalia
+Aplacentaria
+Aplacophora
+aplacophoran
+aplacophorous
+aplanat
+aplanatic
+aplanatically
+aplanatism
+Aplanobacter
+aplanogamete
+aplanospore
+aplasia
+aplasias
+aplastic
+Aplectrum
+a-plenty
+aplenty
+Aplington
+aplite
+aplites
+aplitic
+aplobasalt
+aplodiorite
+Aplodontia
+Aplodontiidae
+aplomb
+aplombs
+aplome
+Aplopappus
+aploperistomatous
+aplostemonous
+aplotaxene
+aplotomy
+Apluda
+aplustra
+aplustre
+aplustria
+Aplysia
+APM
+apnea
+apneal
+apneas
+apneic
+apneumatic
+apneumatosis
+Apneumona
+apneumonous
+apneusis
+apneustic
+apnoea
+apnoeal
+apnoeas
+apnoeic
+APO
+Apo
+apo-
+apoaconitine
+apoapsides
+apoapsis
+apoatropine
+apobiotic
+apoblast
+Apoc
+Apoc.
+apocaffeine
+Apocalypse
+apocalypse
+apocalypses
+apocalypst
+apocalypt
+apocalyptic
+apocalyptical
+apocalyptically
+apocalypticism
+apocalyptism
+apocalyptist
+apocamphoric
+apocarp
+apocarpies
+apocarpous
+apocarps
+apocarpy
+apocatastasis
+apocatastatic
+apocatharsis
+apocathartic
+apocenter
+apocentre
+apocentric
+apocentricity
+apocha
+apochae
+apocholic
+apochromat
+apochromatic
+apochromatism
+apocinchonine
+apocodeine
+apocopate
+apocopated
+apocopating
+apocopation
+apocope
+apocopes
+apocopic
+Apocr
+apocrenic
+apocrine
+apocrisiary
+Apocrita
+apocrustic
+apocryph
+Apocrypha
+apocrypha
+apocryphal
+apocryphalist
+apocryphally
+apocryphalness
+apocryphate
+apocryphon
+Apocynaceae
+apocynaceous
+apocyneous
+apocynthion
+apocynthions
+Apocynum
+apocyte
+apod
+Apoda
+apodal
+apodan
+apodedeipna
+apodeictic
+apodeictical
+apodeictically
+apodeipna
+apodeipnon
+apodeixis
+apodema
+apodemal
+apodemas
+apodemata
+apodematal
+apodeme
+Apodes
+Apodia
+apodia
+apodiabolosis
+apodictic
+apodictical
+apodictically
+apodictive
+Apodidae
+apodioxis
+Apodis
+apodixis
+apodoses
+apodosis
+apodous
+apods
+apodyteria
+apodyterium
+apoembryony
+apoenzyme
+apofenchene
+apoferritin
+apogaeic
+apogaic
+apogalacteum
+apogamic
+apogamically
+apogamies
+apogamous
+apogamously
+apogamy
+apogeal
+apogean
+apogee
+apogees
+apogeic
+apogenous
+apogeny
+apogeotropic
+apogeotropically
+apogeotropism
+Apogon
+apogonid
+Apogonidae
+apograph
+apographal
+apographic
+apographical
+apoharmine
+apohyal
+Apoidea
+apoikia
+apoious
+apoise
+apojove
+apokatastasis
+apokatastatic
+apokrea
+apokreos
+apolar
+apolarity
+apolaustic
+A-pole
+apolegamic
+Apolista
+Apolistan
+apolitical
+apolitically
+Apollinaire
+Apollinarian
+apollinarian
+Apollinarianism
+Apollinaris
+Apolline
+apollinian
+Apollo
+apollo
+Apollon
+Apollonia
+Apollonian
+apollonian
+Apollonic
+apollonicon
+Apollonistic
+Apollonius
+Apollos
+apollos
+Apolloship
+Apollus
+Apollyon
+apollyon
+apolog
+apologal
+apologer
+apologete
+apologetic
+apologetical
+apologetically
+apologetics
+apologia
+apologiae
+apologias
+apological
+apologies
+apologise
+apologised
+apologiser
+apologising
+apologist
+apologists
+apologize
+apologized
+apologizer
+apologizers
+apologizes
+apologizing
+apologs
+apologue
+apologues
+apology
+apolousis
+apolune
+apolunes
+apolusis
+Apolysin
+apolysis
+apolytikion
+apomecometer
+apomecometry
+apometabolic
+apometabolism
+apometabolous
+apometaboly
+apomict
+apomictic
+apomictical
+apomictically
+apomicts
+apomixes
+apomixis
+apomorphia
+apomorphin
+apomorphine
+Apomyius
+aponeurology
+aponeurorrhaphy
+aponeuroses
+aponeurosis
+aponeurositis
+aponeurotic
+aponeurotome
+aponeurotomy
+aponia
+aponic
+Aponogeton
+Aponogetonaceae
+aponogetonaceous
+a-poop
+apoop
+apopemptic
+apopenptic
+apopetalous
+apophantic
+apophasis
+apophatic
+Apophis
+apophlegm
+apophlegmatic
+apophlegmatism
+apophonia
+apophonic
+apophonies
+apophony
+apophorometer
+apophthegm
+apophthegmatic
+apophthegmatical
+apophthegmatist
+apophyeeal
+apophyge
+apophyges
+apophylactic
+apophylaxis
+apophyllite
+apophyllous
+apophysary
+apophysate
+apophyseal
+apophyses
+apophysial
+apophysis
+apophysitis
+Apopka
+apoplasmodial
+apoplastogamous
+apoplectic
+apoplectical
+apoplectically
+apoplectiform
+apoplectoid
+apoplex
+apoplexies
+apoplexious
+apoplexy
+apopyle
+apoquinamine
+apoquinine
+aporetic
+aporetical
+aporhyolite
+aporia
+aporiae
+aporias
+Aporobranchia
+aporobranchian
+Aporobranchiata
+Aporocactus
+Aporosa
+aporose
+aporphin
+aporphine
+Aporrhaidae
+Aporrhais
+aporrhaoid
+aporrhea
+aporrhegma
+aporrhiegma
+aporrhoea
+aport
+aportlast
+aportoise
+aposafranine
+aposaturn
+aposaturnium
+aposelene
+aposematic
+aposematically
+aposepalous
+aposia
+aposiopeses
+aposiopesis
+aposiopestic
+aposiopetic
+apositia
+apositic
+aposoro
+aposporic
+apospories
+aposporogony
+aposporous
+apospory
+apostacies
+apostacize
+apostacy
+apostasies
+apostasis
+apostasy
+apostate
+apostates
+apostatic
+apostatical
+apostatically
+apostatise
+apostatised
+apostatising
+apostatism
+apostatize
+apostatized
+apostatizes
+apostatizing
+apostaxis
+apostem
+apostemate
+apostematic
+apostemation
+apostematous
+aposteme
+aposteriori
+aposthia
+aposthume
+apostil
+apostille
+apostils
+apostle
+apostlehood
+Apostles
+apostles
+apostleship
+apostleships
+apostoile
+apostolate
+apostoless
+apostoli
+Apostolian
+apostolian
+Apostolic
+apostolic
+apostolical
+apostolically
+apostolicalness
+Apostolici
+apostolicism
+apostolicity
+apostolize
+Apostolos
+apostrophal
+apostrophation
+apostrophe
+apostrophes
+apostrophi
+Apostrophia
+apostrophic
+apostrophied
+apostrophise
+apostrophised
+apostrophising
+apostrophize
+apostrophized
+apostrophizes
+apostrophizing
+apostrophus
+apostume
+Apotactic
+Apotactici
+apotactite
+apotelesm
+apotelesmatic
+apotelesmatical
+apothec
+apothecal
+apothecarcaries
+apothecaries
+apothecary
+apothecaryship
+apothece
+apotheces
+apothecia
+apothecial
+apothecium
+apothegm
+apothegmatic
+apothegmatical
+apothegmatically
+apothegmatist
+apothegmatize
+apothegms
+apothem
+apothems
+apotheose
+apotheoses
+apotheosis
+apotheosise
+apotheosised
+apotheosising
+apotheosize
+apotheosized
+apotheosizing
+apothesine
+apothesis
+apothgm
+apotihecal
+apotome
+apotracheal
+apotropaic
+apotropaically
+apotropaion
+apotropaism
+apotropous
+apoturmeric
+apotype
+apotypic
+apout
+apoxesis
+Apoxyomenos
+apozem
+apozema
+apozemical
+apozymase
+APP
+app
+app.
+appair
+appal
+Appalachia
+appalachia
+Appalachian
+appalachian
+Appalachians
+appalachians
+appale
+appall
+appalled
+appalling
+appallingly
+appallingness
+appallment
+appalls
+appalment
+Appaloosa
+appaloosa
+appaloosas
+appals
+appalto
+appanage
+appanaged
+appanages
+appanaging
+appanagist
+appar
+apparail
+apparance
+apparat
+apparatchik
+apparatchiki
+apparatchiks
+apparation
+apparats
+apparatus
+apparatuses
+apparel
+appareled
+appareling
+apparelled
+apparelling
+apparelment
+apparels
+apparence
+apparencies
+apparency
+apparens
+apparent
+apparentation
+apparentement
+apparentements
+apparently
+apparentness
+apparition
+apparitional
+apparitions
+apparitor
+appartement
+appassionata
+appassionatamente
+appassionate
+appassionato
+appast
+appaume
+appaumee
+appay
+APPC
+appd
+appeach
+appeacher
+appeachment
+appeal
+appealability
+appealable
+appealed
+appealer
+appealers
+appealing
+appealingly
+appealingness
+appeals
+appear
+appearance
+appearanced
+appearances
+appeared
+appearer
+appearers
+appearing
+appears
+appeasable
+appeasableness
+appeasably
+appease
+appeased
+appeasement
+appeasements
+appeaser
+appeasers
+appeases
+appeasing
+appeasingly
+appeasive
+Appel
+appel
+appellability
+appellable
+appellancy
+appellant
+appellants
+appellate
+appellation
+appellational
+appellations
+appellative
+appellatived
+appellatively
+appellativeness
+appellatory
+appellee
+appellees
+appellor
+appellors
+appels
+appenage
+append
+appendage
+appendaged
+appendages
+appendalgia
+appendance
+appendancy
+appendant
+appendectomies
+appendectomy
+appended
+appendence
+appendency
+appendent
+appender
+appenders
+appendical
+appendicalgia
+appendicate
+appendice
+appendiceal
+appendicectasis
+appendicectomies
+appendicectomy
+appendices
+appendicial
+appendicious
+appendicitis
+appendicle
+appendicocaecostomy
+appendico-enterostomy
+appendicostomy
+appendicular
+Appendicularia
+appendicularian
+Appendiculariidae
+Appendiculata
+appendiculate
+appendiculated
+appending
+appenditious
+appendix
+appendixed
+appendixes
+appendixing
+appendorontgenography
+appendotome
+appends
+appennage
+appense
+appentice
+Appenzell
+appenzell
+apperceive
+apperceived
+apperceiving
+apperception
+apperceptionism
+apperceptionist
+apperceptionistic
+apperceptive
+apperceptively
+appercipient
+appere
+apperil
+appersonation
+appersonification
+appert
+appertain
+appertained
+appertaining
+appertainment
+appertains
+appertinent
+appertise
+appestat
+appestats
+appet
+appete
+appetence
+appetencies
+appetency
+appetent
+appetently
+appetibility
+appetible
+appetibleness
+appetiser
+appetising
+appetisse
+appetit
+appetite
+appetites
+appetition
+appetitional
+appetitious
+appetitive
+appetitiveness
+appetitost
+appetize
+appetized
+appetizement
+appetizer
+appetizers
+appetizing
+appetizingly
+Appia
+Appian
+appinite
+Appius
+appl
+applanate
+applanation
+applaud
+applaudable
+applaudably
+applauded
+applauder
+applauders
+applauding
+applaudingly
+applauds
+applause
+applauses
+applausive
+applausively
+Apple
+apple
+appleberry
+appleblossom
+Appleby
+applecart
+apple-cheeked
+appled
+Appledorf
+appledrane
+appledrone
+apple-eating
+apple-faced
+apple-fallow
+Applegate
+applegrower
+applejack
+applejacks
+apple-john
+applejohn
+applemonger
+applenut
+apple-pie
+apple-polish
+apple-polisher
+apple-polishing
+appleringie
+appleringy
+appleroot
+apples
+applesauce
+apple-scented
+Appleseed
+apple-shaped
+applesnits
+apple-stealing
+Appleton
+apple-twig
+applewife
+applewoman
+applewood
+appliable
+appliableness
+appliably
+appliance
+appliances
+appliant
+applicabilities
+applicability
+applicable
+applicableness
+applicably
+applicancies
+applicancy
+applicant
+applicants
+applicate
+application
+applications
+applicative
+applicatively
+applicator
+applicatorily
+applicators
+applicatory
+applied
+appliedly
+applier
+appliers
+applies
+Appling
+appling
+applique
+appliqued
+appliqueing
+appliques
+applosion
+applosive
+applot
+applotment
+apply
+applying
+applyingly
+applyment
+appmt
+appoggiatura
+appoggiaturas
+appoggiature
+appoint
+appointable
+appointe
+appointed
+appointee
+appointees
+appointer
+appointers
+appointing
+appointive
+appointively
+appointment
+appointments
+appointor
+appoints
+Appolonia
+Appomatox
+Appomattoc
+Appomattox
+appomattox
+apport
+apportion
+apportionable
+apportionate
+apportioned
+apportioner
+apportioning
+apportionment
+apportionments
+apportions
+apposability
+apposable
+appose
+apposed
+apposer
+apposers
+apposes
+apposing
+apposiopestic
+apposite
+appositely
+appositeness
+apposition
+appositional
+appositionally
+appositions
+appositive
+appositively
+apppetible
+appraisable
+appraisal
+appraisals
+appraise
+appraised
+appraisement
+appraiser
+appraisers
+appraises
+appraising
+appraisingly
+appraisive
+apprecate
+appreciable
+appreciably
+appreciant
+appreciate
+appreciated
+appreciates
+appreciating
+appreciatingly
+appreciation
+appreciational
+appreciations
+appreciativ
+appreciative
+appreciatively
+appreciativeness
+appreciator
+appreciatorily
+appreciators
+appreciatory
+appredicate
+apprehend
+apprehendable
+apprehended
+apprehender
+apprehending
+apprehendingly
+apprehends
+apprehensibility
+apprehensible
+apprehensibly
+apprehension
+apprehensions
+apprehensive
+apprehensively
+apprehensiveness
+apprehensivenesses
+apprend
+apprense
+apprentice
+apprenticed
+apprenticehood
+apprenticement
+apprentices
+apprenticeship
+apprenticeships
+apprenticing
+appress
+appressed
+appressor
+appressoria
+appressorial
+appressorium
+apprest
+appreteur
+appreve
+apprise
+apprised
+appriser
+apprisers
+apprises
+apprising
+apprizal
+apprize
+apprized
+apprizement
+apprizer
+apprizers
+apprizes
+apprizing
+appro
+approach
+approachability
+approachabl
+approachable
+approachableness
+approached
+approacher
+approachers
+approaches
+approaching
+approachless
+approachment
+approbate
+approbated
+approbating
+approbation
+approbations
+approbative
+approbativeness
+approbator
+approbatory
+apprompt
+approof
+appropinquate
+appropinquation
+appropinquity
+appropre
+appropriable
+appropriament
+appropriate
+appropriated
+appropriately
+appropriateness
+appropriates
+appropriating
+appropriation
+Appropriations
+appropriations
+appropriative
+appropriativeness
+appropriator
+appropriators
+approvability
+approvable
+approvableness
+approvably
+approval
+approvals
+approvance
+approve
+approved
+approvedly
+approvedness
+approvement
+approver
+approvers
+approves
+approving
+approvingly
+approx
+approx.
+approximable
+approximal
+approximant
+approximants
+approximate
+approximated
+approximately
+approximates
+approximating
+approximation
+approximations
+approximative
+approximatively
+approximativeness
+approximator
+Apps
+appt
+apptd
+appui
+appulse
+appulses
+appulsion
+appulsive
+appulsively
+appunctuation
+appurtenance
+appurtenances
+appurtenant
+APR
+Apr
+Apr.
+apr
+APRA
+apractic
+apraxia
+apraxias
+apraxic
+aprendiz
+apres
+Apresoline
+apreynte
+apricate
+aprication
+aprickle
+apricot
+apricot-kernal
+apricots
+April
+april
+Aprile
+Aprilesque
+Aprilette
+April-gowk
+Apriline
+Aprilis
+apriori
+apriorism
+apriorist
+aprioristic
+aprioristically
+apriority
+apritif
+Aprocta
+aproctia
+aproctous
+apron
+aproned
+aproneer
+apronful
+aproning
+apronless
+apronlike
+aprons
+apron-squire
+apron-string
+apronstring
+apropos
+aprosexia
+aprosopia
+aprosopous
+aproterodont
+aprowl
+APS
+APSA
+Apsaras
+Apsarases
+APSE
+apse
+apselaphesia
+apselaphesis
+apses
+apsid
+apsidal
+apsidally
+apsides
+apsidiole
+apsinthion
+apsis
+Apsu
+apsychia
+apsychical
+Apsyrtus
+APT
+apt
+apt.
+Aptal
+aptate
+Aptenodytes
+apter
+Aptera
+apteral
+apteran
+apteria
+apterial
+apterium
+apteroid
+apterous
+Apteryges
+apterygial
+Apterygidae
+Apterygiformes
+Apterygogenea
+Apterygota
+apterygote
+apterygotous
+apteryla
+Apteryx
+apteryx
+apteryxes
+aptest
+Apthorp
+Aptian
+Aptiana
+aptitude
+aptitudes
+aptitudinal
+aptitudinally
+aptly
+aptness
+aptnesses
+Aptos
+aptote
+aptotic
+apts
+aptyalia
+aptyalism
+aptychus
+APU
+Apul
+Apuleius
+Apulia
+Apulian
+apulmonic
+apulse
+Apure
+Apurimac
+apurpose
+Apus
+apx
+apyonin
+apyrase
+apyrases
+apyrene
+apyretic
+apyrexia
+apyrexial
+apyrexy
+apyrotype
+apyrous
+AQ
+Aq
+aq
+Aqaba
+AQL
+aqua
+aquabelle
+aquabib
+aquacade
+aquacades
+aquacultural
+aquaculture
+aquadag
+aquaduct
+aquaducts
+aquae
+aquaemanale
+aquaemanalia
+aquafer
+aquafortis
+aquafortist
+aquage
+aquagreen
+aquake
+Aqua-Lung
+aqualung
+aqualunger
+aquamanale
+aquamanalia
+aquamanile
+aquamaniles
+aquamanilia
+aquamarine
+aquamarines
+aquameter
+aquanaut
+aquanauts
+aquaphobia
+aquaplane
+aquaplaned
+aquaplaner
+aquaplanes
+aquaplaning
+aquapuncture
+aquaregia
+aquarelle
+aquarelles
+aquarellist
+aquaria
+aquarial
+Aquarian
+aquarian
+aquarians
+Aquarid
+Aquarii
+aquariia
+aquariist
+aquariiums
+aquarist
+aquarists
+aquarium
+aquariums
+Aquarius
+aquarius
+a-quarter
+aquarter
+aquas
+Aquasco
+aquascope
+aquascutum
+Aquashicola
+aquashow
+aquate
+aquatic
+aquatical
+aquatically
+aquatics
+aquatile
+aquatint
+aquatinta
+aquatinted
+aquatinter
+aquatinting
+aquatintist
+aquatints
+aquation
+aquativeness
+aquatone
+aquatones
+aquavalent
+aquavit
+aqua-vitae
+aquavits
+Aquebogue
+aqueduct
+aqueducts
+aqueity
+aquench
+aqueo-
+aqueoglacial
+aqueoigneous
+aqueomercurial
+aqueous
+aqueously
+aqueousness
+aquerne
+Aqueus
+aquiclude
+aquicolous
+aquicultural
+aquiculture
+aquiculturist
+aquifer
+aquiferous
+aquifers
+Aquifoliaceae
+aquifoliaceous
+aquiform
+aquifuge
+Aquila
+aquila
+Aquilae
+Aquilaria
+aquilawood
+aquilege
+Aquilegia
+aquilegia
+Aquileia
+aquilia
+Aquilian
+Aquilid
+aquiline
+aquiline-nosed
+aquilinity
+aquilino
+Aquilla
+Aquilo
+aquilon
+Aquinas
+aquinas
+aquincubital
+aquincubitalism
+Aquinist
+aquintocubital
+aquintocubitalism
+aquiparous
+Aquitaine
+Aquitania
+Aquitanian
+a-quiver
+aquiver
+aquo
+aquocapsulitis
+aquocarbonic
+aquocellolitis
+aquo-ion
+Aquone
+aquopentamminecobaltic
+aquose
+aquosity
+aquotization
+aquotize
+-ar
+AR
+Ar
+Ar.
+a.r.
+ar
+ar-
+ar.
+ARA
+Ara
+ara
+Arab
+Arab.
+arab
+araba
+araban
+arabana
+Arabeila
+Arabel
+Arabela
+Arabele
+Arabella
+Arabelle
+arabesk
+arabesks
+Arabesque
+arabesque
+arabesquely
+arabesquerie
+arabesques
+Arabi
+Arabia
+arabia
+Arabian
+arabian
+Arabianize
+arabians
+Arabic
+arabic
+arabica
+Arabicism
+Arabicize
+arabicize
+Arabidopsis
+arability
+arabin
+arabine
+arabinic
+arabinose
+arabinosic
+arabinoside
+Arabis
+arabis
+Arabism
+Arabist
+arabist
+arabit
+arabite
+arabitol
+arabiyeh
+Arabize
+arabize
+arabized
+arabizes
+arabizing
+arable
+arables
+Arabo-byzantine
+Arabophil
+arabs
+Araby
+araby
+araca
+Aracaj
+Aracaju
+Aracana
+aracanga
+aracari
+Aracatuba
+arace
+Araceae
+araceous
+arach
+arache
+arachic
+arachide
+arachidic
+arachidonic
+arachin
+Arachis
+arachis
+arachnactis
+Arachne
+arachne
+arachnean
+arachnephobia
+arachnid
+Arachnida
+arachnidan
+arachnidial
+arachnidism
+arachnidium
+arachnids
+arachnism
+Arachnites
+arachnitis
+arachnoid
+arachnoidal
+Arachnoidea
+arachnoidea
+arachnoidean
+arachnoiditis
+arachnological
+arachnologist
+arachnology
+Arachnomorphae
+arachnophagous
+arachnopia
+Arad
+arad
+aradid
+Aradidae
+arado
+Arae
+araeometer
+araeostyle
+araeosystyle
+araeotic
+Arafat
+Arafura
+Aragallus
+Aragats
+arage
+Arago
+Aragon
+Aragonese
+Aragonian
+aragonite
+aragonitic
+aragonspath
+Araguaia
+araguane
+Araguari
+araguato
+Araguaya
+araignee
+arain
+Arains
+araire
+araise
+Arak
+arak
+Arakan
+Arakanese
+Arakawa
+arakawaite
+a-rake
+arake
+Araks
+araks
+Aralac
+Araldo
+Arales
+Aralia
+aralia
+Araliaceae
+araliaceous
+araliad
+Araliaephyllum
+aralie
+Araliophyllum
+aralkyl
+aralkylated
+Arallu
+Aralu
+Aram
+Aramaean
+aramaean
+Aramaic
+aramaic
+Aramaicize
+Aramaism
+Aramanta
+aramayoite
+Aramburu
+Aramean
+Aramen
+Aramenta
+aramid
+Aramidae
+aramids
+aramina
+Araminta
+ARAMIS
+Aramis
+Aramitess
+Aramu
+Aramus
+Aran
+Arand
+Aranda
+Arandas
+Aranea
+Araneae
+araneid
+Araneida
+araneidal
+araneidan
+araneids
+araneiform
+Araneiformes
+Araneiformia
+aranein
+Araneina
+Araneoidea
+araneologist
+araneology
+araneose
+araneous
+aranga
+arango
+arangoes
+Aranha
+arank
+Arany
+Aranyaka
+Aranyaprathet
+aranzada
+arapahite
+Arapaho
+arapaho
+Arapahoe
+Arapahoes
+Arapahos
+arapahos
+arapaima
+arapaimas
+Arapesh
+Arapeshes
+araphorostic
+araphostic
+araponga
+arapunga
+Araquaju
+arar
+Arara
+arara
+araracanga
+ararao
+Ararat
+ararauna
+arariba
+araroba
+ararobas
+araru
+Aras
+arase
+Arathorn
+arati
+aratinga
+aration
+aratory
+Aratus
+Araua
+Arauan
+Araucan
+Araucania
+Araucanian
+araucanian
+Araucano
+Araucaria
+araucaria
+Araucariaceae
+araucarian
+Araucarioxylon
+Araujia
+Arauna
+Arawa
+Arawak
+arawak
+Arawakan
+arawakan
+Arawakian
+Arawaks
+Arawn
+Araxa
+Araxes
+arayne
+arb
+arba
+Arbacia
+arbacia
+arbacin
+arbalest
+arbalester
+arbalestre
+arbalestrier
+arbalests
+arbalist
+arbalister
+arbalists
+arbalo
+arbalos
+Arbe
+Arbela
+Arbela-Gaugamela
+arbelest
+Arber
+arber
+Arbil
+arbinose
+arbiter
+arbiters
+arbith
+arbitrable
+arbitrage
+arbitrager
+arbitragers
+arbitrages
+arbitrageur
+arbitragist
+arbitral
+arbitrament
+arbitraments
+arbitraries
+arbitrarily
+arbitrariness
+arbitrarinesses
+arbitrary
+arbitrate
+arbitrated
+arbitrates
+arbitrating
+arbitration
+arbitrational
+arbitrationist
+arbitrations
+arbitrative
+arbitrator
+arbitrators
+arbitratorship
+arbitratrix
+arbitre
+arbitrement
+arbitrer
+arbitress
+arbitry
+arblast
+Arblay
+Arboles
+arboloco
+Arbon
+arbor
+arboraceous
+arboral
+arborary
+arborator
+arborea
+arboreal
+arboreally
+arborean
+arbored
+arboreous
+arborer
+arbores
+arborescence
+arborescent
+arborescently
+arboresque
+arboret
+arboreta
+arboretum
+arboretums
+arborical
+arboricole
+arboricoline
+arboricolous
+arboricultural
+arboriculture
+arboriculturist
+arboriform
+arborise
+arborist
+arborists
+arborization
+arborize
+arborized
+arborizes
+arborizing
+arboroid
+arborolater
+arborolatry
+arborous
+arbors
+arborvitae
+arborvitaes
+arborway
+arbory
+arbota
+arbour
+arboured
+arbours
+Arbovale
+arbovirus
+Arbroath
+arbs
+arbtrn
+Arbuckle
+arbuscle
+arbuscles
+arbuscula
+arbuscular
+arbuscule
+arbust
+arbusta
+arbusterin
+arbusterol
+arbustum
+arbutase
+arbute
+arbutean
+arbutes
+Arbuthnot
+arbutin
+arbutinase
+arbutus
+arbutuses
+Arbyrd
+ARC
+arc
+arca
+arcabucero
+Arcacea
+arcade
+arcaded
+arcades
+Arcadia
+arcadia
+Arcadian
+arcadian
+Arcadianism
+Arcadianly
+arcadians
+arcadias
+Arcadic
+arcading
+arcadings
+Arcady
+arcady
+arcae
+arcana
+arcanal
+arcane
+Arcangelo
+arcanist
+arcanite
+Arcanum
+arcanum
+arcanums
+Arcaro
+Arcas
+Arcata
+arcate
+arcato
+arcature
+arcatures
+arc-back
+arc-boutant
+arcboutant
+arccos
+arccosine
+Arce
+arced
+Arcella
+arcella
+arces
+Arcesilaus
+Arcesius
+Arceuthobium
+arceuthobium
+arcform
+-arch
+Arch
+Arch.
+arch
+arch-
+arch.
+archabomination
+archae
+archae-
+Archaean
+archaean
+archaecraniate
+archaeo-
+Archaeoceti
+Archaeocyathid
+Archaeocyathidae
+Archaeocyathus
+archaeocyte
+archaeogeology
+archaeographic
+archaeographical
+archaeography
+archaeohippus
+archaeol
+archaeol.
+archaeolater
+archaeolatry
+archaeolith
+archaeolithic
+archaeologer
+archaeologian
+archaeologic
+archaeological
+archaeologically
+archaeologies
+archaeologist
+archaeologists
+archaeology
+archaeomagnetism
+Archaeopithecus
+Archaeopteris
+Archaeopterygiformes
+Archaeopteryx
+archaeopteryx
+Archaeornis
+archaeornis
+Archaeornithes
+archaeostoma
+Archaeostomata
+archaeostomatous
+archaeotherium
+Archaeozoic
+archaeus
+archagitator
+archai
+Archaic
+archaic
+archaical
+archaically
+archaicism
+archaicness
+Archaimbaud
+archaise
+archaised
+archaiser
+archaises
+archaising
+archaism
+archaisms
+archaist
+archaistic
+archaists
+archaize
+archaized
+archaizer
+archaizes
+archaizing
+Archambault
+Ar-chang
+Archangel
+archangel
+archangelic
+Archangelica
+archangelical
+archangels
+archangelship
+archantagonist
+archanthropine
+archantiquary
+archapostate
+archapostle
+archarchitect
+archarios
+archartist
+Archbald
+archbanc
+archbancs
+archband
+archbeacon
+archbeadle
+archbishop
+archbishopess
+archbishopric
+archbishoprics
+archbishopry
+archbishops
+Archbold
+archbotcher
+archboutefeu
+Archbp
+arch-brahman
+archbuffoon
+archbuilder
+arch-butler
+arch-buttress
+Archcape
+archchampion
+arch-chanter
+archchaplain
+archcharlatan
+archcheater
+archchemic
+archchief
+arch-christendom
+arch-christianity
+archchronicler
+archcity
+archconfraternities
+archconfraternity
+archconsoler
+archconspirator
+archcorrupter
+archcorsair
+archcount
+archcozener
+archcriminal
+archcritic
+archcrown
+archcupbearer
+Archd
+archd
+archdapifer
+archdapifership
+archdeacon
+archdeaconate
+archdeaconess
+archdeaconries
+archdeaconry
+archdeacons
+archdeaconship
+archdean
+archdeanery
+archdeceiver
+archdefender
+archdemon
+archdepredator
+archdespot
+archdetective
+archdevil
+archdiocesan
+archdiocese
+archdioceses
+archdiplomatist
+archdissembler
+archdisturber
+archdivine
+archdogmatist
+archdolt
+archdruid
+archducal
+archduchess
+archduchesses
+archduchies
+archduchy
+archduke
+archdukedom
+archdukes
+archduxe
+arche
+archeal
+Archean
+archean
+archearl
+archebanc
+archebancs
+archebiosis
+archecclesiastic
+archecentric
+arched
+archegay
+Archegetes
+archegone
+archegonia
+archegonial
+Archegoniata
+Archegoniatae
+archegoniate
+archegoniophore
+archegonium
+archegony
+Archegosaurus
+archeion
+Archelaus
+Archelenis
+Archelochus
+archelogy
+Archelon
+archelon
+archemastry
+Archemorus
+archemperor
+Archencephala
+archencephalic
+archenemies
+arch-enemy
+archenemy
+archengineer
+archenia
+archenteric
+archenteron
+archeocyte
+archeol
+archeolithic
+archeologian
+archeologic
+archeological
+archeologically
+archeologies
+archeologist
+archeology
+archeopteryx
+archeostome
+Archeozoic
+archeozoic
+Archeptolemus
+Archer
+archer
+archeress
+archerfish
+archerfishes
+archeries
+archers
+archership
+archery
+Arches
+arches
+arches-court
+archespore
+archespores
+archesporia
+archesporial
+archesporium
+archespsporia
+archest
+archetto
+archettos
+archetypal
+archetypally
+archetype
+archetypes
+archetypic
+archetypical
+archetypically
+archetypist
+archeunuch
+archeus
+archexorcist
+archfelon
+Archfiend
+arch-fiend
+archfiend
+archfiends
+archfire
+arch-flamen
+archflamen
+archflatterer
+arch-foe
+archfoe
+archfool
+archform
+archfounder
+archfriend
+archgenethliac
+archgod
+archgomeral
+archgovernor
+archgunner
+archhead
+archheart
+archheresy
+arch-heretic
+archheretic
+archhost
+archhouse
+archhumbug
+archhypocrisy
+archhypocrite
+archi-
+Archiannelida
+Archias
+archiater
+Archibald
+Archibaldo
+archibenthal
+archibenthic
+archibenthos
+archiblast
+archiblastic
+archiblastoma
+archiblastula
+Archibold
+Archibuteo
+archical
+archicantor
+archicarp
+archicerebra
+archicerebrum
+Archichlamydeae
+archichlamydeous
+archicleistogamous
+archicleistogamy
+archicoele
+archicontinent
+archicyte
+archicytula
+Archidamus
+Archidiaceae
+archidiaconal
+archidiaconate
+archididascalian
+archididascalos
+Archidiskodon
+Archidium
+archidome
+archidoxis
+Archie
+archie
+archiepiscopacy
+archiepiscopal
+archiepiscopality
+archiepiscopally
+archiepiscopate
+archiereus
+archigaster
+archigastrula
+archigenesis
+archigonic
+archigonocyte
+archigony
+archiheretical
+archikaryon
+archil
+archilithic
+archilla
+Archilochian
+archilochian
+Archilochus
+archilowe
+archils
+archilute
+archimage
+Archimago
+archimagus
+archimandrite
+archimandrites
+Archimedean
+archimedean
+Archimedes
+archimedes
+archimime
+archimorphic
+archimorula
+archimperial
+archimperialism
+archimperialist
+archimperialistic
+archimpressionist
+Archimycetes
+archin
+archine
+archines
+archineuron
+archinfamy
+archinformer
+arching
+archings
+archipallial
+archipallium
+archipelagian
+archipelagic
+archipelago
+archipelagoes
+archipelagos
+Archipenko
+archiphoneme
+archipin
+archiplasm
+archiplasmic
+Archiplata
+archiprelatical
+archipresbyter
+archipterygial
+archipterygium
+archisperm
+Archispermae
+archisphere
+archispore
+archistome
+archisupreme
+archisymbolical
+archisynagogue
+archit
+archit.
+architect
+architective
+architectonic
+Architectonica
+architectonically
+architectonics
+architectress
+architects
+architectural
+architecturalist
+architecturally
+architecture
+architectures
+architecturesque
+Architeuthis
+architis
+architraval
+architrave
+architraved
+architraves
+architricline
+architypographer
+archival
+archivault
+archive
+archived
+archiver
+archivers
+archives
+archiving
+archivist
+archivists
+archivolt
+archizoic
+archjockey
+archking
+archknave
+Archle
+archleader
+archlecher
+archlet
+archleveler
+archlexicographer
+archliar
+archlute
+archly
+archmachine
+archmagician
+archmagirist
+archmarshal
+archmediocrity
+archmessenger
+archmilitarist
+archmime
+archminister
+archmock
+archmocker
+archmockery
+archmonarch
+archmonarchist
+archmonarchy
+archmugwump
+archmurderer
+archmystagogue
+archness
+archnesses
+archocele
+archocystosyrinx
+archology
+archon
+archons
+archonship
+archonships
+archont
+archontate
+Archontia
+archontic
+archoplasm
+archoplasma
+archoplasmic
+archoptoma
+archoptosis
+archorrhagia
+archorrhea
+archostegnosis
+archostenosis
+archosyrinx
+archoverseer
+archpall
+archpapist
+archpastor
+archpatriarch
+archpatron
+archphilosopher
+archphylarch
+archpiece
+archpilferer
+archpillar
+archpirate
+archplagiarist
+archplagiary
+archplayer
+archplotter
+archplunderer
+archplutocrat
+arch-poet
+archpoet
+archpolitician
+archpontiff
+archpractice
+arch-prelate
+archprelate
+archprelatic
+archprelatical
+arch-presbyter
+archpresbyter
+archpresbyterate
+archpresbytery
+archpretender
+archpriest
+archpriesthood
+archpriestship
+archprimate
+archprince
+archprophet
+arch-protestant
+archprotopope
+archprototype
+archpublican
+archpuritan
+archradical
+archrascal
+archreactionary
+archrebel
+archregent
+archrepresentative
+archrobber
+archrogue
+archruler
+archsacrificator
+archsacrificer
+archsaint
+archsatrap
+archscoundrel
+arch-sea
+archseducer
+archsee
+archsewer
+archshepherd
+archsin
+archsnob
+archspirit
+archspy
+archsteward
+archswindler
+archsynagogue
+archt
+archt.
+archtempter
+archthief
+arch-traitor
+archtraitor
+archtreasurer
+archtreasurership
+archturncoat
+archtyrant
+archurger
+archvagabond
+archvampire
+archvestryman
+arch-villain
+archvillain
+archvillainy
+archvisitor
+archwag
+archway
+archways
+archwench
+arch-whig
+archwife
+archwise
+archworker
+archworkmaster
+-archy
+Archy
+archy
+Archytas
+Arcidae
+Arcifera
+arciferous
+arcifinious
+arciform
+Arcimboldi
+arcing
+Arciniegas
+Arcite
+arcked
+arcking
+arclength
+arclike
+ARCM
+ARCNET
+ARCO
+Arco
+arco
+arcocentrous
+arcocentrum
+arcograph
+Arcola
+Arcos
+arcose
+arcosolia
+arcosoliulia
+arcosolium
+arc-over
+A.R.C.S.
+ARCS
+arcs
+arcs-boutants
+arc-shaped
+arcsin
+arcsine
+arcsines
+Arctalia
+Arctalian
+Arctamerican
+arctan
+arctangent
+arctation
+Arctia
+arctian
+Arctic
+arctic
+arctically
+arctician
+arcticize
+arcticized
+arcticizing
+arctico-altaic
+arcticologist
+arcticology
+arctics
+arcticward
+arcticwards
+arctiid
+Arctiidae
+Arctisca
+arctitude
+Arctium
+Arctocephalus
+Arctogaea
+Arctogaeal
+arctogaeal
+Arctogaean
+Arctogaeic
+Arctogea
+Arctogean
+Arctogeic
+arctoid
+Arctoidea
+arctoidean
+Arctomys
+Arctos
+Arctosis
+Arctostaphylos
+Arcturia
+Arcturian
+Arcturus
+arcturus
+arcual
+arcuale
+arcualia
+arcuate
+arcuated
+arcuately
+arcuation
+arcubalist
+arcubalister
+arcubos
+arcula
+arculite
+arcus
+arcuses
+-ard
+Ard
+Arda
+Ardara
+ardass
+ardassine
+Ardath
+Arde
+Ardea
+Ardeae
+ardeb
+ardebs
+Ardeche
+Ardeen
+Ardeha
+Ardehs
+ardeid
+Ardeidae
+Ardel
+Ardelia
+ardelio
+Ardelis
+Ardell
+Ardella
+ardella
+ardellae
+Ardelle
+Arden
+ardencies
+ardency
+Ardene
+Ardenia
+Ardennes
+ardennite
+ardent
+ardently
+ardentness
+Ardenvoir
+arder
+Ardeth
+Ardhamagadhi
+Ardhanari
+Ardie
+Ardi-ea
+ardilla
+Ardin
+Ardine
+Ardis
+ardish
+Ardisia
+ardisia
+Ardisiaceae
+Ardisj
+Ardith
+arditi
+ardito
+Ardme
+Ardmore
+Ardmored
+Ardoch
+ardoise
+Ardolino
+ardor
+ardors
+ardour
+ardours
+Ardra
+Ardrey
+ardri
+ardrigh
+Ardsley
+ardu
+arduinite
+arduous
+arduously
+arduousness
+arduousnesses
+ardure
+ardurous
+Ardussi
+Ardy
+Ardyce
+Ardys
+Ardyth
+ARE
+are
+area
+areach
+aread
+aready
+areae
+areal
+areality
+areally
+Arean
+arear
+areas
+areason
+areasoner
+areaway
+areaways
+areawide
+Areca
+areca
+Arecaceae
+arecaceous
+arecaidin
+arecaidine
+arecain
+arecaine
+Arecales
+arecas
+areche
+Arecibo
+arecolidin
+arecolidine
+arecolin
+arecoline
+Arecuna
+ared
+Aredale
+areek
+areel
+arefact
+arefaction
+arefy
+areg
+aregenerative
+aregeneratory
+areic
+Areithous
+areito
+Areius
+Arel
+Arela
+Arelia
+Arella
+Arelus
+aren
+ARENA
+arena
+arenaceo-
+arenaceous
+arenae
+Arenaria
+arenaria
+arenariae
+arenarious
+arenas
+arenation
+arend
+arendalite
+arendator
+Arends
+Arendt
+Arendtsville
+Arene
+areng
+Arenga
+Arenicola
+arenicole
+arenicolite
+arenicolor
+arenicolous
+Arenig
+arenilitic
+arenite
+arenites
+arenoid
+arenose
+arenosity
+arenoso-
+arenous
+Arensky
+aren't
+arent
+arenulous
+Arenzville
+areo-
+areocentric
+areographer
+areographic
+areographical
+areographically
+areography
+areola
+areolae
+areolar
+areolas
+areolate
+areolated
+areolation
+areole
+areoles
+areolet
+areologic
+areological
+areologically
+areologies
+areologist
+areology
+areometer
+areometric
+areometrical
+areometry
+Areopagist
+areopagist
+Areopagite
+areopagite
+Areopagitic
+areopagitic
+Areopagitica
+Areopagus
+areopagus
+areopagy
+areostyle
+areosystyle
+areotectonics
+Arequipa
+arere
+arerola
+areroscope
+Ares
+ares
+Areskutan
+arest
+Aret
+aret
+Areta
+aretaics
+aretalogy
+Arete
+arete
+aretes
+Aretha
+Arethusa
+arethusa
+arethusas
+Arethuse
+Aretina
+Aretinian
+Aretino
+Aretta
+Arette
+arette
+Aretus
+Areus
+arew
+Arezzini
+Arezzo
+ARF
+arf
+arfillite
+arfs
+arfvedsonite
+Arg
+Arg.
+arg
+Argades
+argaile
+argal
+argala
+argalas
+argali
+argalis
+Argall
+argals
+argan
+argand
+argans
+Argante
+Argas
+argasid
+Argasidae
+Argean
+argeers
+Argeiphontes
+argel
+Argelander
+argema
+Argemone
+argemone
+argemony
+argenol
+Argent
+argent
+Argenta
+argental
+argentamid
+argentamide
+argentamin
+argentamine
+argentan
+argentarii
+argentarius
+argentate
+argentation
+argenteous
+argenter
+Argenteuil
+argenteum
+Argentia
+argentic
+argenticyanide
+argentide
+argentiferous
+argentin
+Argentina
+argentina
+Argentine
+argentine
+Argentinean
+argentinean
+argentineans
+argentines
+Argentinian
+Argentinidae
+argentinitrate
+Argentinize
+Argentino
+argentino
+argention
+argentite
+argento-
+argentojarosite
+argentol
+argentometer
+argentometric
+argentometrically
+argentometry
+argenton
+argentoproteinum
+argentose
+argentous
+argentry
+argents
+argentum
+argentums
+argent-vive
+Arges
+Argestes
+argh
+arghan
+arghel
+arghool
+arghoul
+Argia
+Argid
+argify
+argil
+Argile
+argillaceo-
+argillaceous
+argillic
+argilliferous
+Argillite
+argillite
+argillitic
+argillo-
+argilloarenaceous
+argillocalcareous
+argillocalcite
+argilloferruginous
+argilloid
+argillomagnesian
+argillous
+argils
+argin
+arginase
+arginases
+argine
+arginine
+argininephosphoric
+arginines
+Argiope
+Argiopidae
+Argiopoidea
+Argiphontes
+Argive
+argive
+argle
+argle-bargie
+argle-bargle
+arglebargle
+arglebargled
+arglebargling
+argled
+argles
+argling
+Argo
+argo
+Argoan
+argol
+argolet
+argoletier
+Argolian
+Argolic
+Argolid
+Argolis
+argols
+argon
+Argonaut
+argonaut
+Argonauta
+Argonautic
+argonautic
+argonautid
+argonauts
+Argonia
+Argonne
+argonon
+argons
+Argos
+argos
+argosies
+argosine
+Argostolion
+argosy
+argot
+argotic
+argots
+Argovian
+Argovie
+arguable
+arguably
+argue
+argue-bargue
+argued
+Arguedas
+arguendo
+arguer
+arguers
+argues
+argufied
+argufier
+argufiers
+argufies
+argufy
+argufying
+arguing
+arguitively
+Argulus
+argument
+argumenta
+argumental
+argumentation
+argumentatious
+argumentative
+argumentatively
+argumentativeness
+argumentator
+argumentatory
+argumentive
+argumentMaths
+arguments
+argumentum
+Argus
+argus
+arguses
+Argus-eyed
+argus-eyed
+argusfish
+argusfishes
+Argusianus
+Arguslike
+Argusville
+arguta
+argutation
+argute
+argutely
+arguteness
+argy-bargied
+argy-bargies
+argy-bargy
+argy-bargying
+Argyle
+argyle
+argyles
+Argyll
+argyll
+argylls
+Argyllshire
+Argynnis
+argyr-
+Argyra
+argyranthemous
+argyranthous
+Argyraspides
+Argyres
+argyria
+argyric
+argyrite
+argyrocephalous
+argyrodite
+Argyrol
+Argyroneta
+Argyropelecus
+argyrose
+argyrosis
+Argyrosomus
+Argyrotoxus
+argyrythrose
+arh-
+arhar
+Arhat
+arhat
+arhats
+Arhatship
+arhatship
+Arhauaco
+Arhna
+arhythmia
+arhythmic
+arhythmical
+arhythmically
+Ari
+Aria
+aria
+Ariadaeus
+Ariadna
+Ariadne
+ariadne
+-arian
+Arian
+arian
+Ariana
+Ariane
+Arianie
+Arianism
+arianism
+arianist
+Arianistic
+Arianistical
+arianists
+Arianize
+Arianizer
+Arianna
+Arianne
+Arianrhod
+arias
+aribin
+aribine
+ariboflavinosis
+Aribold
+Aric
+Arica
+Arician
+aricin
+aricine
+Arick
+arid
+Aridatha
+Arided
+arider
+aridest
+aridge
+aridian
+aridities
+aridity
+aridly
+aridness
+aridnesses
+Arie
+Ariege
+ariegite
+Ariel
+ariel
+Ariela
+Ariella
+Arielle
+ariels
+arienzo
+Aries
+aries
+arietate
+arietation
+Arietid
+arietinous
+Arietis
+arietta
+ariettas
+ariette
+ariettes
+Ariew
+aright
+arightly
+arigue
+Ariidae
+Arikara
+ariki
+aril
+ariled
+arillary
+arillate
+arillated
+arilled
+arilli
+arilliform
+arillode
+arillodes
+arillodium
+arilloid
+arillus
+arils
+Arimasp
+Arimaspian
+Arimaspians
+Arimathaea
+Arimathaean
+Arimathea
+Arimathean
+Ariminum
+Arimo
+Arin
+Ario
+Ariocarpus
+Arioi
+Arioian
+ariolate
+ariole
+Arion
+ariose
+ariosi
+arioso
+ariosos
+Ariosto
+a-riot
+ariot
+-arious
+Ariovistus
+Aripeka
+a-ripple
+aripple
+ARIS
+Arisaema
+arisaid
+arisard
+Arisbe
+arise
+arised
+arisen
+ariser
+arises
+arish
+arising
+arisings
+Arispe
+Arissa
+arist
+Arista
+arista
+aristae
+Aristaeus
+Aristarch
+aristarch
+Aristarchian
+aristarchies
+Aristarchus
+aristarchy
+aristas
+aristate
+ariste
+Aristeas
+aristeia
+Aristes
+Aristida
+Aristide
+Aristides
+Aristillus
+Aristippus
+aristippus
+Aristo
+aristo
+aristo-
+aristocracies
+aristocracy
+aristocrat
+aristocratic
+aristocratical
+aristocratically
+aristocraticalness
+aristocraticism
+aristocraticness
+aristocratism
+aristocrats
+aristodemocracies
+aristodemocracy
+aristodemocratical
+Aristodemus
+aristogenesis
+aristogenetic
+aristogenic
+aristogenics
+aristoi
+Aristol
+Aristolochia
+aristolochia
+Aristolochiaceae
+aristolochiaceous
+Aristolochiales
+aristolochin
+aristolochine
+aristological
+aristologist
+aristology
+Aristomachus
+aristomonarchy
+Aristophanes
+Aristophanic
+aristorepublicanism
+aristos
+Aristotelean
+aristotelean
+Aristoteles
+Aristotelian
+aristotelian
+Aristotelianism
+Aristotelic
+Aristotelism
+Aristotle
+aristotle
+aristotype
+aristulate
+Arita
+arite
+arith
+arithmancy
+arithmetic
+arithmetical
+arithmetically
+arithmetician
+arithmeticians
+arithmetico-geometric
+arithmetico-geometrical
+arithmetics
+arithmetization
+arithmetizations
+arithmetize
+arithmetized
+arithmetizes
+arithmic
+arithmo-
+arithmocracy
+arithmocratic
+arithmogram
+arithmograph
+arithmography
+arithmomancy
+arithmomania
+arithmometer
+arithromania
+Ariton
+-arium
+Arius
+Arivaca
+Arivaipa
+Ariz
+Ariz.
+Arizona
+arizona
+Arizonan
+arizonan
+arizonans
+Arizonian
+arizonian
+arizonians
+arizonite
+Arjan
+Arjay
+Arjun
+arjun
+Arjuna
+Ark
+Ark.
+ark
+Arkab
+Arkabutla
+Arkadelphia
+Arkansan
+arkansan
+arkansans
+Arkansas
+arkansas
+Arkansaw
+Arkansawyer
+arkansawyer
+Arkansian
+arkansite
+Arkdale
+Arkhangelsk
+Arkie
+arkie
+Arkite
+arkite
+Arkoma
+arkose
+arkoses
+arkosic
+Arkport
+arks
+arksutite
+Arkville
+Arkwright
+arkwright
+Arlan
+Arlana
+Arlberg
+arle
+Arlee
+Arleen
+Arlen
+Arlena
+Arlene
+Arleng
+arlequinade
+Arles
+arles
+arless
+Arleta
+Arlette
+Arley
+Arleyne
+Arlie
+Arliene
+Arlin
+Arlina
+Arlinda
+Arline
+arling
+Arlington
+arlington
+Arlis
+Arliss
+Arlo
+Arlon
+arloup
+Arluene
+Arly
+Arlyn
+Arlyne
+Arlynne
+ARM
+ArM
+Arm
+Arm.
+arm
+Arma
+Armada
+armada
+armadas
+armadilla
+Armadillididae
+Armadillidium
+armadillo
+armadillos
+Armado
+Armageddon
+armageddon
+Armageddonist
+Armagh
+Armagnac
+armagnac
+armagnacs
+Armalda
+Armalla
+Armallas
+armament
+armamentaria
+armamentarium
+armamentary
+armaments
+Arman
+Armand
+Armanda
+Armando
+armangite
+armaria
+armarian
+armaries
+armariolum
+armarium
+armariumaria
+armary
+Armata
+Armatoles
+Armatoli
+armature
+armatured
+armatures
+armaturing
+Armavir
+armband
+armbands
+armbone
+Armbrecht
+Armbrust
+Armbruster
+arm-chair
+armchair
+armchaired
+armchairs
+Armco
+armed
+Armelda
+Armen
+Armenia
+armenia
+armeniaceous
+Armenian
+armenian
+armenians
+Armenic
+armenite
+Armenize
+Armenoid
+Armeno-turkish
+Armenti
+Armentieres
+armer
+Armeria
+Armeriaceae
+armers
+armet
+armets
+armful
+armfuls
+armgaunt
+arm-great
+armguard
+arm-headed
+arm-hole
+armhole
+armholes
+armhoop
+Armida
+armied
+armies
+armiferous
+armiger
+armigeral
+armigeri
+armigero
+armigeros
+armigerous
+armigers
+Armil
+armil
+Armilda
+armill
+Armilla
+armilla
+armillae
+Armillaria
+armillaria
+armillary
+Armillas
+armillas
+armillate
+armillated
+Armillda
+Armillia
+Armin
+Armina
+arm-in-arm
+armine
+arming
+armings
+Armington
+Arminian
+arminian
+Arminianism
+Arminianize
+Arminianizer
+Arminius
+armipotence
+armipotent
+armisonant
+armisonous
+armistice
+armistices
+armit
+Armitage
+armitas
+armless
+armlessly
+armlessness
+armlet
+armlets
+armlike
+arm-linked
+armload
+armloads
+armlock
+armlocks
+armoire
+armoires
+armomancy
+Armona
+Armond
+armoniac
+armonica
+armonicas
+Armonk
+armor
+Armoracia
+armor-bearer
+armorbearer
+armor-clad
+armored
+Armorel
+armorer
+armorers
+armorial
+armorially
+armorials
+Armoric
+Armorica
+armorica
+Armorican
+armorican
+Armorician
+armoried
+armories
+armoring
+armorist
+armorless
+armor-piercing
+armor-plate
+armor-plated
+armorplated
+armorproof
+armors
+armorwise
+armory
+Armouchiquois
+Armour
+armour
+armour-bearer
+armourbearer
+armour-clad
+armoured
+armourer
+armourers
+armouries
+armouring
+armour-piercing
+armour-plate
+armours
+armoury
+armozeen
+armozine
+armpad
+armpiece
+armpit
+armpits
+armplate
+armrack
+armrest
+armrests
+arms
+armscye
+armseye
+armsful
+arm-shaped
+armsize
+Armstrong
+armstrong
+Armstrong-Jones
+Armuchee
+armure
+armures
+army
+Armyn
+armyworm
+armyworms
+arn
+arna
+Arnaeus
+Arnaldo
+arnatta
+arnatto
+arnattos
+Arnaud
+Arnaudville
+Arnaut
+arnberry
+Arndt
+Arne
+Arneb
+Arnebia
+arnee
+Arnegard
+Arnel
+Arnelle
+arnement
+Arnett
+Arney
+Arnhem
+Arni
+arni
+arnica
+arnicas
+Arnie
+Arnim
+Arno
+Arnold
+arnold
+Arnoldist
+Arnoldo
+Arnoldsburg
+Arnoldson
+Arnoldsville
+Arnon
+Arnoseris
+Arnot
+arnotta
+arnotto
+arnottos
+Arnst
+ar'n't
+Arnuad
+Arnulf
+Arnulfo
+Arnusian
+arnut
+Arny
+ARO
+Aro
+a-roar
+aroar
+aroast
+Arock
+arock
+Aroda
+aroeira
+aroid
+aroideous
+Aroides
+aroids
+aroint
+arointed
+arointing
+aroints
+Arola
+arolia
+arolium
+arolla
+aroma
+aromacity
+aromadendrin
+aromal
+Aromas
+aromas
+aromata
+aromatic
+aromatical
+aromatically
+aromaticity
+aromaticness
+aromatics
+aromatise
+aromatised
+aromatiser
+aromatising
+aromatitae
+aromatite
+aromatites
+aromatization
+aromatize
+aromatized
+aromatizer
+aromatizing
+aromatophor
+aromatophore
+aromatous
+Aron
+Arona
+Arondel
+Arondell
+Aronia
+Aronoff
+Aronow
+Aronson
+a-room
+aroon
+Aroostook
+a-root
+aroph
+Aroras
+Arosaguntacook
+arose
+around
+around-the-clock
+arousable
+arousal
+arousals
+arouse
+aroused
+arousement
+arouser
+arousers
+arouses
+arousing
+a-row
+arow
+aroxyl
+aroynt
+aroynted
+aroynting
+aroynts
+ARP
+Arp
+ARPA
+ARPANET
+arpanet
+arpeggiando
+arpeggiated
+arpeggiation
+arpeggio
+arpeggioed
+arpeggios
+arpen
+arpens
+arpent
+arpenteur
+arpents
+Arpin
+ARQ
+arquated
+arquebus
+arquebuses
+arquebusier
+arquerite
+arquifoux
+Arquit
+arr
+arr.
+arracach
+arracacha
+Arracacia
+arrace
+arrach
+arrack
+arracks
+arrage
+Arragon
+arragonite
+arrah
+arraign
+arraignability
+arraignable
+arraignableness
+arraigned
+arraigner
+arraigning
+arraignment
+arraignments
+arraigns
+arrame
+Arran
+arrand
+arrange
+arrangeable
+arranged
+arrangement
+arrangements
+arranger
+arrangers
+arranges
+arranging
+arrant
+arrantly
+arrantness
+Arras
+arras
+arrased
+arrasene
+arrases
+arrastra
+arrastre
+arras-wise
+arratel
+Arratoon
+Arrau
+arrau
+array
+arrayal
+arrayals
+arrayan
+arrayed
+arrayer
+arrayers
+arraying
+arrayment
+arrays
+arrear
+arrearage
+arrearages
+arrear-guard
+arrears
+arrear-ward
+arrect
+arrectary
+arrector
+arrendation
+arrendator
+arrenotokous
+arrenotoky
+arrent
+arrentable
+arrentation
+Arrephoria
+Arrephoroi
+Arrephoros
+arreption
+arreptitious
+arrest
+arrestable
+arrestant
+arrestation
+arrested
+arrestee
+arrestees
+arrester
+arresters
+arresting
+arrestingly
+arrestive
+arrestment
+arrestor
+arrestors
+arrests
+arret
+arretez
+Arretine
+Arretium
+Arrey
+arrgt
+arrha
+arrhal
+arrhenal
+Arrhenatherum
+Arrhenius
+arrhenoid
+arrhenotokous
+arrhenotoky
+Arrhephoria
+arrhinia
+arrhizal
+arrhizous
+arrhythmia
+arrhythmias
+arrhythmic
+arrhythmical
+arrhythmically
+arrhythmous
+arrhythmy
+Arri
+arri
+Arria
+arriage
+Arriba
+arriba
+arribadas
+arricci
+arricciati
+arricciato
+arricciatos
+arriccio
+arriccioci
+arriccios
+arride
+arrided
+arridge
+arriding
+arrie
+arriere
+arriere-ban
+arriere-pensee
+arriero
+Arries
+Arriet
+Arrigny
+Arrigo
+arrimby
+Arrington
+Arrio
+arris
+arrises
+arrish
+arrisways
+arriswise
+arrivage
+arrival
+arrivals
+arrivance
+arrive
+arrived
+arrivederci
+arrivederla
+arriver
+arrivers
+arrives
+arriving
+arrivism
+arrivisme
+arrivist
+arriviste
+arrivistes
+ARRL
+arroba
+arrobas
+arrode
+arrogance
+arrogances
+arrogancy
+arrogant
+arrogantly
+arrogantness
+arrogate
+arrogated
+arrogates
+arrogating
+arrogatingly
+arrogation
+arrogations
+arrogative
+arrogator
+arrojadite
+Arron
+arrondi
+arrondissement
+arrondissements
+arrope
+arrosion
+arrosive
+arround
+arrouse
+arrow
+arrow-back
+arrow-bearing
+arrowbush
+arrowed
+arrow-grass
+arrow-head
+arrowhead
+arrowheaded
+arrowheads
+arrowing
+arrowleaf
+arrow-leaved
+arrowless
+arrowlet
+arrowlike
+arrowplate
+arrow-root
+arrowroot
+arrowroots
+arrows
+arrow-shaped
+arrow-slain
+Arrowsmith
+arrowsmith
+arrow-smitten
+arrowstone
+arrow-toothed
+arrowweed
+arrow-wood
+arrowwood
+arrowworm
+arrow-wounded
+arrowy
+arroya
+arroyo
+arroyos
+arroyuelo
+arroz
+arrtez
+Arruague
+Arry
+Arryish
+arrythmia
+arrythmic
+arrythmical
+arrythmically
+ARS
+ars
+ARSA
+Arsacid
+Arsacidan
+arsanilic
+ARSB
+arse
+arsedine
+arsefoot
+arsehole
+arsen-
+arsenal
+arsenals
+arsenate
+arsenates
+arsenation
+arseneted
+arsenetted
+arsenfast
+arsenferratose
+arsenhemol
+arseniasis
+arseniate
+arsenic
+arsenic-
+arsenical
+arsenicalism
+arsenicate
+arsenicated
+arsenicating
+arsenicism
+arsenicize
+arsenicked
+arsenicking
+arsenicophagy
+arsenics
+arsenide
+arsenides
+arseniferous
+arsenillo
+arsenio-
+arseniopleite
+arseniosiderite
+arsenious
+arsenism
+arsenite
+arsenites
+arsenium
+arseniuret
+arseniureted
+arseniuretted
+arsenization
+arseno
+arseno-
+arsenobenzene
+arsenobenzol
+arsenobismite
+arsenoferratin
+arsenofuran
+arsenohemol
+arsenolite
+arsenophagy
+arsenophen
+arsenophenol
+arsenophenylglycin
+arsenopyrite
+arsenostyracol
+arsenotherapy
+arsenotungstates
+arsenotungstic
+arsenous
+arsenoxide
+Arseny
+arsenyl
+arses
+arsesmart
+arsheen
+Arshile
+arshin
+arshine
+arshins
+arsine
+arsines
+arsinic
+arsino
+Arsinoe
+Arsinoitherium
+Arsinous
+Arsippe
+arsis
+arsle
+ARSM
+arsmetik
+arsmetrik
+arsmetrike
+arsmetry
+arsnicker
+arsoite
+arson
+arsonate
+arsonation
+arsonic
+arsonist
+arsonists
+arsonite
+arsonium
+arsono
+arsonous
+arsons
+arsonvalization
+arsphenamine
+Arst
+arsyl
+arsylene
+arsy-varsiness
+arsy-varsy
+arsy-versy
+arsyversy
+-art
+ART
+Art
+art
+art.
+Arta
+artaba
+artabe
+Artacia
+Artair
+artal
+Artamas
+Artamidae
+Artamus
+artar
+artarin
+artarine
+Artas
+Artaud
+ARTCC
+art-colored
+art-conscious
+artcraft
+Arte
+arte
+artefac
+artefact
+artefacts
+artel
+artels
+Artema
+Artemas
+Artemia
+artemia
+ARTEMIS
+Artemis
+artemis
+Artemisa
+Artemisia
+artemisia
+artemisic
+artemisin
+Artemision
+Artemisium
+artemon
+Artemovsk
+Artemus
+arter
+arteri-
+arteria
+arteriac
+arteriae
+arteriagra
+arterial
+arterialisation
+arterialise
+arterialised
+arterialising
+arterialization
+arterialize
+arterialized
+arterializing
+arterially
+arterials
+arteriarctia
+arteriasis
+arteriectasia
+arteriectasis
+arteriectomy
+arteriectopia
+arteried
+arteries
+arterin
+arterio-
+arterioarctia
+arteriocapillary
+arteriococcygeal
+arteriodialysis
+arteriodiastasis
+arteriofibrosis
+arteriogenesis
+arteriogram
+arteriograph
+arteriographic
+arteriography
+arteriolar
+arteriole
+arterioles
+arteriolith
+arteriology
+arterioloscleroses
+arteriolosclerosis
+arteriomalacia
+arteriometer
+arteriomotor
+arterionecrosis
+arteriopalmus
+arteriopathy
+arteriophlebotomy
+arterioplania
+arterioplasty
+arteriopressor
+arteriorenal
+arteriorrhagia
+arteriorrhaphy
+arteriorrhexis
+arterioscleroses
+arteriosclerosis
+arteriosclerotic
+arteriospasm
+arteriostenosis
+arteriostosis
+arteriostrepsis
+arteriosympathectomy
+arteriotome
+arteriotomies
+arteriotomy
+arteriotrepsis
+arterious
+arteriovenous
+arterioversion
+arterioverter
+arteritis
+artery
+arterying
+Artesia
+Artesian
+artesian
+artesonado
+artesonados
+Arteveld
+Artevelde
+artful
+artfully
+artfulness
+artfulnesses
+Artgum
+Artha
+artha
+Arthaud
+arthel
+arthemis
+Arther
+arthogram
+arthr-
+arthra
+arthragra
+arthral
+arthralgia
+arthralgic
+arthrectomies
+arthrectomy
+arthredema
+arthrempyesis
+arthresthesia
+arthritic
+arthritical
+arthritically
+arthriticine
+arthritics
+arthritides
+arthritis
+arthritism
+arthro-
+Arthrobacter
+arthrobacterium
+arthrobranch
+arthrobranchia
+arthrocace
+arthrocarcinoma
+arthrocele
+arthrochondritis
+arthroclasia
+arthrocleisis
+arthroclisis
+arthroderm
+arthrodesis
+arthrodia
+arthrodiae
+arthrodial
+arthrodic
+Arthrodira
+arthrodiran
+arthrodire
+arthrodirous
+Arthrodonteae
+arthrodymic
+arthrodynia
+arthrodynic
+arthroempyema
+arthroempyesis
+arthroendoscopy
+Arthrogastra
+arthrogastran
+arthrogenous
+arthrography
+arthrogryposis
+arthrolite
+arthrolith
+arthrolithiasis
+arthrology
+arthromeningitis
+arthromere
+arthromeric
+arthrometer
+arthrometry
+arthron
+arthroncus
+arthroneuralgia
+arthropathic
+arthropathology
+arthropathy
+arthrophlogosis
+arthrophyma
+arthroplastic
+arthroplasty
+arthropleura
+arthropleure
+arthropod
+Arthropoda
+arthropodal
+arthropodan
+arthropodous
+arthropods
+arthropody
+Arthropomata
+arthropomatous
+arthropterous
+arthropyosis
+arthrorheumatism
+arthrorrhagia
+arthrosclerosis
+arthroses
+arthrosia
+arthrosis
+arthrospore
+arthrosporic
+arthrosporous
+arthrosteitis
+arthrosterigma
+arthrostome
+arthrostomy
+Arthrostraca
+arthrosynovitis
+arthrosyrinx
+arthrotome
+arthrotomies
+arthrotomy
+arthrotrauma
+arthrotropic
+arthrotyphoid
+arthrous
+arthroxerosis
+Arthrozoa
+arthrozoan
+arthrozoic
+Arthur
+arthur
+Arthurdale
+Arthurian
+arthurian
+Arthuriana
+artiad
+artic
+artichoke
+artichokes
+article
+articled
+articles
+articling
+Articodactyla
+articulability
+articulable
+articulacy
+articulant
+articular
+articulare
+articularly
+articulars
+articulary
+Articulata
+articulata
+articulate
+articulated
+articulately
+articulateness
+articulatenesses
+articulates
+articulating
+articulation
+articulationes
+articulationist
+articulations
+articulative
+articulator
+articulatorily
+articulators
+articulatory
+articulite
+articulus
+Artie
+artier
+artiest
+artifact
+artifactitious
+artifacts
+artifactual
+artifactually
+artifex
+artifice
+artificer
+artificers
+artificership
+artifices
+artificial
+artificialism
+artificialities
+artificiality
+artificialize
+artificially
+artificialness
+artificialnesses
+artificious
+Artigas
+artilize
+artiller
+artilleries
+artillerist
+artillerists
+artillery
+artilleryman
+artillerymen
+artilleryship
+artily
+Artima
+Artimas
+Artina
+artiness
+artinesses
+artinite
+Artinskian
+artiodactyl
+Artiodactyla
+artiodactylous
+artiphyllous
+artisan
+artisanal
+artisanry
+artisans
+artisanship
+artist
+artistdom
+artiste
+artiste-peintre
+artistes
+artistess
+artistic
+artistical
+artistically
+artist-in-residence
+artistries
+artistry
+artists
+artize
+artless
+artlessly
+artlessness
+artlessnesses
+artlet
+art-like
+artlike
+artly
+art-minded
+artmobile
+Artocarpaceae
+artocarpad
+artocarpeous
+artocarpous
+Artocarpus
+Artois
+artolater
+artolatry
+artophagous
+artophophoria
+artophoria
+artophorion
+artotype
+artotypy
+Artotyrite
+artotyrite
+artou
+arts
+artsier
+artsiest
+arts-man
+artsman
+arts-master
+artsy
+Artsybashev
+artsy-craftsiness
+artsy-craftsy
+Artukovic
+Artur
+Arturo
+Artus
+artus
+artware
+artwork
+artworks
+Arty
+arty
+arty-craftiness
+arty-crafty
+Artzybasheff
+Artzybashev
+ARU
+aru
+Aruabea
+Aruac
+Aruba
+arugola
+arugolas
+arugula
+arugulas
+arui
+aruke
+Arulo
+Arum
+arum
+arumin
+arumlike
+arums
+Arun
+Aruncus
+Arundel
+Arundell
+arundiferous
+arundinaceous
+Arundinaria
+arundineous
+Arundo
+Aruns
+Arunta
+Aruntas
+arupa
+Aruru
+arusa
+Arusha
+arusha
+aruspex
+aruspice
+aruspices
+aruspicy
+arustle
+Arutiunian
+Aruwimi
+ARV
+Arv
+Arva
+Arvad
+Arvada
+Arval
+arval
+Arvales
+ArvArva
+arvejon
+arvel
+Arvell
+Arverni
+Arvicola
+arvicole
+Arvicolinae
+arvicoline
+arvicolous
+arviculture
+Arvid
+Arvida
+Arvie
+Arvilla
+Arvin
+Arvind
+Arvo
+arvo
+Arvol
+Arvonia
+Arvonio
+arvos
+Arvy
+arx
+-ary
+Ary
+ary
+Arya
+Aryaman
+Aryan
+aryan
+Aryanise
+Aryanised
+Aryanising
+Aryanism
+Aryanization
+Aryanize
+aryanize
+Aryanized
+Aryanizing
+aryans
+aryballi
+aryballoi
+aryballoid
+aryballos
+aryballus
+arybballi
+aryepiglottic
+aryepiglottidean
+aryl
+arylamine
+arylamino
+arylate
+arylated
+arylating
+arylation
+arylide
+aryls
+Aryn
+Aryo-dravidian
+Aryo-indian
+aryteno-
+aryteno-epiglottic
+arytenoepiglottic
+arytenoid
+arytenoidal
+arythmia
+arythmias
+arythmic
+arythmical
+arythmically
+Arzachel
+arzan
+Arzava
+Arzawa
+arzrunite
+arzun
+AS
+As
+as
+as-
+ASA
+Asa
+Asabi
+ASA/BS
+asaddle
+Asael
+asafetida
+asafoetida
+Asag
+Asahel
+Asahi
+Asahigawa
+Asahikawa
+ASAIGAC
+asak
+a-sale
+asale
+asamblea
+asana
+Asante
+Asantehene
+ASAP
+asap
+Asaph
+asaphia
+Asaphic
+asaphid
+Asaphidae
+Asaphus
+asaprol
+Asapurna
+Asar
+asarabacca
+Asaraceae
+Asare
+Asarh
+asarin
+asarite
+asaron
+asarone
+asarota
+asarotum
+asarta
+Asarum
+asarum
+asarums
+Asat
+asb
+Asben
+asbest
+asbestic
+asbestiform
+asbestine
+asbestinize
+asbestoid
+asbestoidal
+asbestos
+asbestos-coated
+asbestos-corrugated
+asbestos-covered
+asbestoses
+Asbestosis
+asbestosis
+asbestos-packed
+asbestos-protected
+asbestos-welded
+asbestous
+asbestus
+asbestuses
+Asbjornsen
+asbolan
+asbolane
+asbolin
+asboline
+asbolite
+Asbury
+ASC
+Asc
+asc-
+Ascabart
+Ascalabota
+Ascalabus
+Ascalaphus
+ascan
+Ascanian
+Ascanius
+ASCAP
+Ascapart
+ascape
+ascare
+ascared
+ascariasis
+ascaricidal
+ascaricide
+ascarid
+Ascaridae
+ascarides
+Ascaridia
+ascaridiasis
+ascaridol
+ascaridole
+ascarids
+Ascaris
+ascaris
+ascaron
+ASCC
+ascebc
+Ascella
+ascelli
+ascellus
+ascence
+ascend
+ascendable
+ascendance
+ascendancies
+ascendancy
+ascendant
+ascendantly
+ascendants
+ascended
+ascendence
+ascendency
+ascendent
+ascender
+ascenders
+ascendible
+ascending
+ascendingly
+ascends
+Ascenez
+ascenseur
+Ascension
+ascension
+ascensional
+ascensionist
+ascensions
+Ascensiontide
+ascensive
+ascensor
+ascent
+ascents
+ascertain
+ascertainability
+ascertainable
+ascertainableness
+ascertainably
+ascertained
+ascertainer
+ascertaining
+ascertainment
+ascertains
+ascescency
+ascescent
+asceses
+ascesis
+ascetic
+ascetical
+ascetically
+asceticism
+asceticisms
+ascetics
+Ascetta
+Asch
+Aschaffenburg
+aschaffite
+Ascham
+ascham
+Aschelminthes
+ascher
+Aschim
+aschistic
+asci
+ascian
+ascians
+ascicidia
+Ascidia
+ascidia
+Ascidiacea
+Ascidiae
+ascidian
+ascidians
+ascidiate
+ascidicolous
+ascidiferous
+ascidiform
+ascidiia
+ascidioid
+Ascidioida
+Ascidioidea
+Ascidiozoa
+ascidiozooid
+ascidium
+asciferous
+ascigerous
+ASCII
+ascii
+ascill
+ascitan
+ascitb
+ascite
+ascites
+ascitic
+ascitical
+ascititious
+asclent
+Asclepi
+Asclepiad
+asclepiad
+Asclepiadaceae
+asclepiadaceous
+Asclepiadae
+Asclepiade
+Asclepiadean
+asclepiadeous
+Asclepiadic
+Asclepian
+Asclepias
+asclepias
+asclepidin
+asclepidoid
+Asclepieion
+asclepin
+Asclepius
+asclepius
+Asco
+asco-
+ascocarp
+ascocarpous
+ascocarps
+Ascochyta
+ascogenous
+ascogone
+ascogonia
+ascogonial
+ascogonidia
+ascogonidium
+ascogonium
+ascolichen
+Ascolichenes
+ascoma
+ascomata
+ascomycetal
+ascomycete
+Ascomycetes
+ascomycetes
+ascomycetous
+ascon
+Ascones
+asconia
+asconoid
+A-scope
+ascophore
+ascophorous
+Ascophyllum
+ascorbate
+ascorbic
+ascospore
+ascosporic
+ascosporous
+Ascot
+ascot
+Ascothoracica
+ascots
+ASCQ
+ascribable
+ascribe
+ascribed
+ascribes
+ascribing
+ascript
+ascription
+ascriptions
+ascriptitii
+ascriptitious
+ascriptitius
+ascriptive
+ascrive
+ascry
+ascula
+asculae
+Ascupart
+Ascus
+ascus
+Ascutney
+ascyphous
+Ascyrum
+ASDIC
+asdic
+asdics
+ASDSP
+-ase
+Ase
+ase
+a-sea
+asea
+ASEAN
+asearch
+asecretory
+a-seethe
+aseethe
+aseismatic
+aseismic
+aseismicity
+aseitas
+a-seity
+aseity
+Asel
+aselar
+aselgeia
+asellate
+Aselli
+Asellidae
+Aselline
+aselline
+Asellus
+asellus
+asem
+asemasia
+asemia
+asemic
+Asenath
+Aseneth
+asepalous
+asepses
+asepsis
+aseptate
+aseptic
+aseptically
+asepticism
+asepticize
+asepticized
+asepticizing
+aseptify
+aseptol
+aseptolin
+Aser
+asexual
+asexualisation
+asexualise
+asexualised
+asexualising
+asexuality
+asexualization
+asexualize
+asexualized
+asexualizing
+asexually
+asexuals
+Aseyev
+asfast
+asfetida
+ASG
+asg
+Asgard
+asgard
+Asgardhr
+Asgarth
+asgd
+Asgeir
+Asgeirsson
+asgmt
+Ash
+ash
+Asha
+Ashab
+a-shake
+ashake
+ashame
+ashamed
+ashamedly
+ashamedness
+ashamnu
+Ashangos
+Ashantee
+Ashanti
+ashanti
+A-shaped
+Asharasi
+A-sharp
+Ashaway
+Ashbaugh
+ash-bellied
+ashberry
+Ashbey
+ash-blond
+ash-blue
+Ashburn
+Ashburnham
+Ashburton
+Ashby
+ashcake
+ashcan
+ashcans
+Ashchenaz
+ash-colored
+Ashcroft
+Ashdod
+Ashdown
+Ashe
+Asheboro
+ashed
+Ashelman
+Ashely
+ashen
+ashen-hued
+Asher
+asher
+Asherah
+asherah
+Asherahs
+asherahs
+asheries
+Asherim
+asherim
+Asherite
+Asherites
+Asherton
+ashery
+Ashes
+ashes
+ashet
+Asheville
+ashfall
+Ashfield
+Ashford
+ash-free
+ash-gray
+Ashia
+Ashien
+ashier
+ashiest
+Ashikaga
+Ashil
+ashily
+ashimmer
+a-shine
+ashine
+ashiness
+ashing
+a-shipboard
+ashipboard
+Ashippun
+Ashir
+a-shiver
+ashiver
+Ashjian
+Ashkenaz
+Ashkenazi
+ashkenazi
+Ashkenazic
+Ashkenazim
+ashkey
+Ashkhabad
+ashkoko
+Ashkum
+Ashla
+Ashlan
+Ashland
+ashlar
+ashlared
+ashlaring
+ashlars
+ash-leaved
+Ashlee
+Ashleigh
+Ashlen
+ashler
+ashlered
+ashlering
+ashlers
+ashless
+Ashley
+Ashli
+Ashlie
+Ashlin
+Ashling
+ashling
+ash-looking
+Ashluslay
+Ashly
+Ashman
+ashman
+Ashmead
+ashmen
+Ashmolean
+Ashmore
+Ashochimi
+Ashok
+ashore
+ashot
+ashpan
+ashpit
+ashplant
+ashplants
+ASHRAE
+Ashraf
+ashraf
+ashrafi
+ashram
+ashrama
+ashrams
+ash-staved
+ashstone
+Ashtabula
+ashthroat
+ash-throated
+Ashti
+Ashton
+Ashton-under-Lyne
+Ashtoreth
+ashtoreth
+ashtray
+ashtrays
+Ashuelot
+Ashur
+ashur
+Ashurbanipal
+ashvamedha
+Ashville
+ash-wednesday
+ashweed
+Ashwell
+ash-white
+Ashwin
+Ashwood
+ashwort
+ashy
+ASI
+Asia
+asia
+asialia
+Asian
+asian
+Asianic
+Asianism
+asians
+Asiarch
+asiarch
+Asiarchate
+Asiatic
+asiatic
+Asiatical
+Asiatically
+Asiatican
+Asiaticism
+asiaticism
+Asiaticization
+Asiaticize
+Asiatize
+ASIC
+aside
+asidehand
+asiden
+asideness
+asiderite
+asides
+asideu
+asiento
+asilid
+Asilidae
+Asilomar
+Asilus
+asimen
+Asimina
+a-simmer
+asimmer
+Asine
+asinego
+asinegoes
+asinine
+asininely
+asininities
+asininity
+ASIO
+Asio
+asiphonate
+asiphonogama
+Asir
+-asis
+asitia
+Asius
+ASK
+Ask
+ask
+askable
+askance
+askant
+askapart
+askar
+askarel
+Askari
+askari
+askaris
+asked
+Askelon
+asker
+askers
+askeses
+askesis
+askew
+askewgee
+askewness
+askile
+asking
+askingly
+askings
+askip
+Askja
+asklent
+Asklepios
+askoi
+askos
+Askov
+askoye
+Askr
+asks
+Askwith
+aslake
+Aslam
+aslant
+aslantwise
+aslaver
+asleep
+ASLEF
+aslop
+aslope
+a-slug
+aslumber
+ASM
+asmack
+asmalte
+Asmara
+ASME
+a-smear
+asmear
+asmile
+Asmodeus
+asmodeus
+asmoke
+asmolder
+Asmonaean
+Asmonean
+a-smoulder
+ASN
+ASN1
+Asni
+Asnieres
+asniffle
+a-snort
+asnort
+Aso
+a-soak
+asoak
+ASOC
+asocial
+asok
+Asoka
+asoka
+asomatophyte
+asomatous
+asonant
+asonia
+asop
+Asopus
+asor
+Asosan
+Asotin
+a-south
+asouth
+ASP
+Asp
+asp
+Aspa
+ASPAC
+aspace
+aspalathus
+Aspalax
+aspalax
+asparagic
+asparagin
+asparagine
+asparaginic
+asparaginous
+asparagus
+asparaguses
+asparagyl
+asparamic
+a-sparkle
+asparkle
+Aspartame
+aspartame
+aspartate
+aspartic
+aspartokinase
+aspartyl
+Aspasia
+Aspatia
+ASPCA
+aspca
+aspect
+aspectable
+aspectant
+aspection
+aspects
+aspectual
+ASPEN
+Aspen
+aspen
+aspens
+asper
+asperate
+asperated
+asperates
+asperating
+asperation
+aspergation
+asperge
+asperger
+Asperges
+asperges
+asperggilla
+asperggilli
+aspergil
+aspergill
+aspergilla
+Aspergillaceae
+Aspergillales
+aspergilli
+aspergilliform
+aspergillin
+aspergilloses
+aspergillosis
+aspergillum
+aspergillums
+aspergillus
+Asperifoliae
+asperifoliate
+asperifolious
+asperite
+asperities
+asperity
+asperly
+aspermatic
+aspermatism
+aspermatous
+aspermia
+aspermic
+Aspermont
+aspermous
+aspern
+asperness
+asperous
+asperously
+Aspers
+aspers
+asperse
+aspersed
+asperser
+aspersers
+asperses
+aspersing
+aspersion
+aspersions
+aspersive
+aspersively
+aspersoir
+aspersor
+aspersoria
+aspersorium
+aspersoriums
+aspersors
+aspersory
+Asperugo
+Asperula
+asperuloside
+asperulous
+Asphalius
+asphalt
+asphalt-base
+asphalted
+asphaltene
+asphalter
+asphaltic
+asphalting
+asphaltite
+asphaltlike
+asphalts
+asphaltum
+asphaltums
+asphaltus
+aspheric
+aspherical
+aspheterism
+aspheterize
+asphodel
+Asphodelaceae
+Asphodeline
+asphodels
+Asphodelus
+asphyctic
+asphyctous
+asphyxia
+asphyxial
+asphyxiant
+asphyxias
+asphyxiate
+asphyxiated
+asphyxiates
+asphyxiating
+asphyxiation
+asphyxiations
+asphyxiative
+asphyxiator
+asphyxied
+asphyxies
+asphyxy
+Aspia
+aspic
+aspics
+aspiculate
+aspiculous
+aspidate
+aspide
+aspidiaria
+aspidinol
+Aspidiotus
+Aspidiske
+Aspidistra
+aspidistra
+aspidistras
+aspidium
+Aspidobranchia
+Aspidobranchiata
+aspidobranchiate
+Aspidocephali
+Aspidochirota
+Aspidoganoidei
+aspidomancy
+Aspidosperma
+aspidospermine
+Aspinwall
+aspiquee
+aspirant
+aspirants
+aspirata
+aspiratae
+aspirate
+aspirated
+aspirates
+aspirating
+aspiration
+aspirations
+aspirator
+aspirators
+aspiratory
+aspire
+aspired
+aspiree
+aspirer
+aspirers
+aspires
+aspirin
+aspiring
+aspiringly
+aspiringness
+aspirins
+aspis
+aspises
+aspish
+asplanchnic
+Asplenieae
+asplenioid
+Asplenium
+asplenium
+asporogenic
+asporogenous
+asporous
+asport
+asportation
+asporulate
+a-spout
+aspout
+a-sprawl
+asprawl
+a-spread
+aspread
+Aspredinidae
+Aspredo
+asprete
+aspring
+a-sprout
+asprout
+asps
+aspy
+asquare
+a-squat
+asquat
+asqueal
+asquint
+a-squirm
+asquirm
+Asquith
+ASR
+asrama
+asramas
+ASRM
+Asroc
+ASRS
+ASS
+ass
+assacu
+Assad
+assafetida
+assafoetida
+assagai
+assagaied
+assagaiing
+assagais
+assahy
+assai
+assail
+assailability
+assailable
+assailableness
+assailant
+assailants
+assailed
+assailer
+assailers
+assailing
+assailment
+assails
+assais
+assalto
+Assam
+assam
+Assama
+assamar
+Assamese
+assamese
+Assamites
+assapan
+assapanic
+assapanick
+Assaracus
+Assaria
+assarion
+assart
+assary
+Assassin
+assassin
+assassinate
+assassinated
+assassinates
+assassinating
+assassination
+assassinations
+assassinative
+assassinator
+assassinatress
+assassinist
+assassins
+assate
+assation
+assaugement
+assault
+assaultable
+assaulted
+assaulter
+assaulters
+assaulting
+assaultive
+assaults
+assausive
+assaut
+Assawoman
+assay
+assayable
+assayed
+assayer
+assayers
+assaying
+assays
+assbaa
+ass-backwards
+ass-chewing
+asse
+asseal
+ass-ear
+assecuration
+assecurator
+assecure
+assecution
+assedat
+assedation
+assegai
+assegaied
+assegaiing
+assegaing
+assegais
+asseize
+asself
+assembl
+assemblable
+assemblage
+assemblages
+assemblagist
+assemblance
+assemble
+assembled
+assemblee
+assemblement
+assembler
+assemblers
+assembles
+assemblies
+assembling
+Assembly
+assembly
+assemblyman
+assemblymen
+assemblywoman
+assemblywomen
+Assen
+assent
+assentaneous
+assentation
+assentatious
+assentator
+assentatorily
+assentatory
+assented
+assenter
+assenters
+assentient
+assenting
+assentingly
+assentive
+assentiveness
+assentor
+assentors
+assents
+asseour
+Asser
+assert
+asserta
+assertable
+assertative
+asserted
+assertedly
+asserter
+asserters
+assertible
+asserting
+assertingly
+assertion
+assertional
+assertions
+assertive
+assertively
+assertiveness
+assertivenesses
+assertor
+assertorial
+assertorially
+assertoric
+assertorical
+assertorically
+assertorily
+assertors
+assertory
+assertress
+assertrix
+asserts
+assertum
+asserve
+asservilize
+asses
+assess
+assessable
+assessably
+assessed
+assessee
+assesses
+assessing
+assession
+assessionary
+assessment
+assessments
+assessor
+assessorial
+assessors
+assessorship
+assessory
+asset
+asseth
+assets
+asset-stripping
+assever
+asseverate
+asseverated
+asseverates
+asseverating
+asseveratingly
+asseveration
+asseverations
+asseverative
+asseveratively
+asseveratory
+assewer
+ass-head
+asshead
+ass-headed
+assheadedness
+asshole
+assholes
+Asshur
+assi
+assibilate
+assibilated
+assibilating
+assibilation
+Assidaean
+assidaean
+Assidean
+assident
+assidual
+assidually
+assiduate
+assiduities
+assiduity
+assiduous
+assiduously
+assiduousness
+assiduousnesses
+assiege
+assientist
+assiento
+assiette
+assify
+assign
+assignability
+assignable
+assignably
+assignat
+assignation
+assignations
+assignats
+assigned
+assignee
+assignees
+assigneeship
+assigner
+assigners
+assigning
+assignment
+assignments
+assignor
+assignors
+assigns
+assilag
+assimilability
+assimilable
+assimilate
+assimilated
+assimilates
+assimilating
+assimilation
+assimilationist
+assimilations
+assimilative
+assimilativeness
+assimilator
+assimilatory
+assimulate
+assinego
+Assiniboin
+Assiniboine
+Assiniboins
+assinuate
+assis
+assisa
+Assisan
+assise
+assish
+assishly
+assishness
+Assisi
+assisi
+assist
+assistance
+assistances
+assistant
+assistanted
+assistants
+assistantship
+assistantships
+assisted
+assistency
+assister
+assisters
+assistful
+assisting
+assistive
+assistless
+assistor
+assistors
+assists
+assith
+Assiut
+assize
+assized
+assizement
+assizer
+assizes
+assizing
+ass-kisser
+ass-kissing
+ass-licker
+ass-licking
+asslike
+assman
+Assmannshausen
+Assmannshauser
+assmanship
+Assn
+assn
+assn.
+assobre
+assoc
+assoc.
+associability
+associable
+associableness
+associate
+associated
+associatedness
+associates
+associateship
+associating
+association
+associational
+associationalism
+associationalist
+associationism
+associationist
+associationistic
+associations
+associative
+associatively
+associativeness
+associativity
+associator
+associators
+associatory
+associe
+assoil
+assoiled
+assoiling
+assoilment
+assoils
+assoilzie
+assoin
+assoluto
+assonance
+assonanced
+assonances
+assonant
+assonantal
+assonantic
+assonantly
+assonants
+assonate
+Assonet
+Assonia
+assoria
+assort
+assortative
+assortatively
+assorted
+assortedness
+assorter
+assorters
+assorting
+assortive
+assortment
+assortments
+assorts
+assot
+Assouan
+ASSR
+ass-reaming
+asssembler
+ass-ship
+asst
+asst.
+assuade
+assuagable
+assuage
+assuaged
+assuagement
+assuagements
+assuager
+assuages
+assuaging
+Assuan
+assuasive
+assubjugate
+assuefaction
+Assuerus
+assuetude
+assumable
+assumably
+assume
+assumed
+assumedly
+assument
+assumer
+assumers
+assumes
+assuming
+assumingly
+assumingness
+assummon
+assumpsit
+assumpt
+Assumption
+assumption
+Assumptionist
+assumptions
+assumptious
+assumptiousness
+assumptive
+assumptively
+assumptiveness
+Assur
+assurable
+assurance
+assurances
+assurant
+assurate
+Assurbanipal
+assurd
+assure
+assured
+assuredly
+assuredness
+assureds
+assurer
+assurers
+assures
+assurge
+assurgency
+assurgent
+assuring
+assuringly
+assuror
+assurors
+asswage
+asswaged
+asswages
+asswaging
+assyntite
+Assyr
+Assyr.
+Assyria
+assyria
+Assyrian
+assyrian
+Assyrianize
+assyrians
+Assyriological
+Assyriologist
+assyriologist
+Assyriologue
+Assyriology
+assyriology
+Assyro-Babylonian
+Assyro-babylonian
+Assyroid
+assyth
+assythment
+Assyut
+-ast
+AST
+ast
+Asta
+asta
+astable
+astacian
+Astacidae
+Astacus
+Astaire
+Astakiwi
+astalk
+a-starboard
+astarboard
+a-stare
+astare
+a-start
+astart
+Astarte
+astarte
+Astartian
+Astartidae
+astasia
+astasia-abasia
+astasias
+astate
+astatic
+astatically
+astaticism
+astatine
+astatines
+astatize
+astatized
+astatizer
+astatizing
+Astatula
+a-stay
+astay
+a-stays
+asteam
+asteatosis
+asteep
+asteer
+asteism
+astel
+astelic
+astely
+-aster
+aster
+Astera
+Asteraceae
+asteraceous
+Asterales
+Asterella
+astereognosis
+Asteria
+asteria
+asteriae
+asterial
+Asterias
+asterias
+asteriated
+Asteriidae
+asterikos
+asterin
+Asterina
+Asterinidae
+asterioid
+Asterion
+asterion
+Asterionella
+asteriscus
+asteriscuses
+asterisk
+asterisked
+asterisking
+asteriskless
+asteriskos
+asterisks
+asterism
+asterismal
+asterisms
+asterite
+Asterius
+asterixis
+astern
+asternal
+Asternata
+asternia
+Asterochiton
+Asterodia
+asteroid
+asteroidal
+Asteroidea
+asteroidean
+asteroids
+Asterolepidae
+Asterolepis
+Asteropaeus
+Asterope
+asterophyllite
+Asterophyllites
+Asterospondyli
+asterospondylic
+asterospondylous
+Asteroxylaceae
+Asteroxylon
+Asterozoa
+asters
+astert
+asterwort
+asthamatic
+asthenia
+asthenias
+asthenic
+asthenical
+asthenics
+asthenies
+asthenobiosis
+asthenobiotic
+asthenolith
+asthenology
+asthenope
+asthenophobia
+asthenopia
+asthenopic
+asthenosphere
+astheny
+asthma
+asthmas
+asthmatic
+asthmatical
+asthmatically
+asthmatics
+asthmatoid
+asthmogenic
+asthore
+asthorin
+Asti
+Astian
+astichous
+astigmat
+astigmatic
+astigmatical
+astigmatically
+astigmatism
+astigmatisms
+astigmatizer
+astigmatometer
+astigmatometry
+astigmatoscope
+astigmatoscopies
+astigmatoscopy
+astigmia
+astigmias
+astigmic
+astigmism
+astigmometer
+astigmometry
+astigmoscope
+Astilbe
+astilbe
+astint
+astipulate
+astipulation
+astir
+Astispumante
+astite
+ASTM
+ASTMS
+astogeny
+Astolat
+astomatal
+astomatous
+astomia
+astomous
+Aston
+astond
+astone
+astoned
+astonied
+astonies
+astonish
+astonished
+astonishedly
+astonisher
+astonishes
+astonishing
+astonishingly
+astonishingness
+astonishment
+astonishments
+astony
+astonying
+astoop
+Astor
+astor
+astore
+Astoria
+astound
+astoundable
+astounded
+astounding
+astoundingly
+astoundment
+astounds
+astr
+astr-
+astr.
+Astra
+Astrabacus
+Astrachan
+astrachan
+astracism
+a-straddle
+astraddle
+Astraea
+astraea
+Astraean
+astraean
+astraeid
+Astraeidae
+astraeiform
+Astraeus
+astragal
+astragalar
+astragalectomy
+astragali
+astragalocalcaneal
+astragalocentral
+astragalomancy
+astragalonavicular
+astragaloscaphoid
+astragalotibial
+astragals
+Astragalus
+astragalus
+Astrahan
+a-strain
+astrain
+astrakanite
+Astrakhan
+astrakhan
+astral
+astrally
+astrals
+a-strand
+astrand
+Astrangia
+Astrantia
+astraphobia
+astrapophobia
+Astrateia
+astray
+astre
+Astrea
+astream
+astrean
+Astred
+astrer
+Astri
+astrict
+astricted
+astricting
+astriction
+astrictive
+astrictively
+astrictiveness
+astricts
+Astrid
+astride
+astrier
+astriferous
+astrild
+astringe
+astringed
+astringence
+astringencies
+astringency
+astringent
+astringently
+astringents
+astringer
+astringes
+astringing
+astrion
+astrionics
+Astrix
+astro-
+astroalchemist
+astrobiological
+astrobiologically
+astrobiologies
+astrobiologist
+astrobiologists
+astrobiology
+astroblast
+astrobotany
+Astrocaryum
+astrochemist
+astrochemistry
+astrochronological
+astrocompass
+astrocyte
+astrocytic
+astrocytoma
+astrocytomas
+astrocytomata
+astrodiagnosis
+astrodome
+astrodynamic
+astrodynamics
+astrofel
+astrofell
+astrogate
+astrogated
+astrogating
+astrogation
+astrogational
+astrogator
+astrogeny
+astrogeologist
+astrogeology
+astroglia
+astrognosy
+astrogonic
+astrogony
+astrograph
+astrographer
+astrographic
+astrography
+astrohatch
+astroid
+astroite
+astrol
+astrol.
+astrolabe
+astrolabes
+astrolabical
+astrolater
+astrolatry
+astrolithology
+astrolog
+astrologaster
+astrologe
+astrologer
+astrologers
+astrologian
+astrologic
+astrological
+astrologically
+astrologies
+astrologist
+astrologistic
+astrologists
+astrologize
+astrologous
+astrology
+astromancer
+astromancy
+astromantic
+astromeda
+astrometeorological
+astrometeorologist
+astro-meteorology
+astrometeorology
+astrometer
+astrometric
+astrometrical
+astrometry
+astron
+astronaut
+Astronautarum
+astronautic
+astronautical
+astronautically
+astronautics
+Astronauts
+astronauts
+astronavigation
+astronavigator
+astronomer
+astronomers
+astronomic
+astronomical
+astronomically
+astronomics
+astronomien
+astronomize
+astronomy
+Astropecten
+Astropectinidae
+astrophel
+astrophil
+astrophobia
+astrophotographer
+astrophotographic
+astrophotography
+astrophotometer
+astrophotometrical
+astrophotometry
+astrophyllite
+astrophysical
+astrophysicist
+astrophysicists
+astrophysics
+Astrophyton
+astroscope
+Astroscopus
+astroscopy
+astrose
+astrospectral
+astrospectroscopic
+astrosphere
+astrospherecentrosomic
+astrotheology
+Astroturf
+astructive
+a-strut
+astrut
+Astto
+astucious
+astuciously
+astucity
+Astur
+Asturian
+Asturias
+astute
+astutely
+astuteness
+astutious
+Astyanax
+astyanax
+Astydamia
+astylar
+astyllen
+Astylospongia
+Astylosternus
+ASU
+asuang
+a-sudden
+asudden
+Asunci
+Asuncion
+asunder
+Asur
+Asura
+Asuri
+ASV
+Asvins
+ASW
+aswail
+Aswan
+a-swarm
+aswarm
+a-swash
+aswash
+a-sway
+asway
+a-sweat
+asweat
+aswell
+asweve
+a-swim
+aswim
+a-swing
+aswing
+aswirl
+aswithe
+a-swoon
+aswoon
+aswooned
+aswough
+As-yakh
+asyla
+asylabia
+asyle
+asyllabia
+asyllabic
+asyllabical
+asylum
+asylums
+asymbiotic
+asymbolia
+asymbolic
+asymbolical
+asymmetral
+asymmetranthous
+asymmetric
+asymmetrical
+asymmetrically
+asymmetries
+asymmetrocarpous
+Asymmetron
+asymmetry
+asymptomatic
+asymptomatically
+asymptote
+asymptotes
+asymptotic
+asymptotical
+asymptotically
+asymtote
+asymtotes
+asymtotic
+asymtotically
+asynapsis
+asynaptic
+asynartete
+asynartetic
+async
+asynchronism
+asynchronisms
+asynchronous
+asynchronously
+asynchrony
+asyndesis
+asyndeta
+asyndetic
+asyndetically
+asyndeton
+asyndetons
+asynergia
+asynergy
+asyngamic
+asyngamy
+Asynjur
+asyntactic
+asyntrophy
+asystematic
+asystole
+asystolic
+asystolism
+Asyut
+asyzygetic
+Asz
+AT
+At
+at
+at-
+at.
+ATA
+Ata
+atabal
+Atabalipa
+atabals
+atabeg
+atabek
+Atabrine
+atabrine
+Atabyrian
+Atacaman
+Atacamenan
+Atacamenian
+Atacameno
+atacamite
+ATACC
+atactic
+atactiform
+Ataentsic
+atafter
+ataghan
+ataghans
+Atahualpa
+Ataigal
+Ataiyal
+Atakapa
+Atakapas
+atake
+Atal
+Atalan
+Atalanta
+atalanta
+Atalante
+Atalanti
+atalantis
+Atalaya
+atalaya
+Atalayah
+atalayas
+Atalee
+Ataliah
+Atalie
+Atalissa
+Atalya
+ataman
+atamans
+atamasco
+atamascos
+atame
+Atamosco
+atangle
+atap
+ataps
+atar
+ataractic
+Atarax
+ataraxia
+ataraxias
+ataraxic
+ataraxics
+ataraxies
+ataraxy
+Atascadero
+Atascosa
+Atat
+atatschite
+Ataturk
+ataunt
+ataunto
+atavi
+atavic
+atavism
+atavisms
+atavist
+atavistic
+atavistically
+atavists
+atavus
+ataxaphasia
+ataxia
+ataxiagram
+ataxiagraph
+ataxiameter
+ataxiaphasia
+ataxias
+ataxic
+ataxics
+ataxies
+ataxinomic
+ataxite
+ataxonomic
+ataxophemia
+ataxy
+atazir
+ATB
+Atbara
+atbash
+ATC
+Atcheson
+Atchison
+atchison
+Atcliffe
+Atco
+ATDA
+ATDRS
+-ate
+ATE
+Ate
+ate
+ate-
+Ateba
+atebrin
+atechnic
+atechnical
+atechny
+-ated
+ated
+atees
+ateeter
+atef
+atef-crown
+ateknia
+atelectasis
+atelectatic
+ateleiosis
+atelene
+ateleological
+Ateles
+atelestite
+atelets
+atelic
+atelier
+ateliers
+ateliosis
+ateliotic
+Atellan
+atellan
+atelo
+atelo-
+atelocardia
+atelocephalous
+ateloglossia
+atelognathia
+atelomitic
+atelomyelia
+atelophobia
+atelopodia
+ateloprosopia
+atelorachidia
+atelostomia
+ately
+atemoya
+a-temporal
+atemporal
+Aten
+Atenism
+Atenist
+A-tent
+ater-
+Aterian
+aterian
+ates
+Ateste
+Atestine
+ateuchi
+ateuchus
+ATF
+Atfalati
+Atglen
+ATH
+Athabasca
+Athabascan
+Athabaska
+Athabaskan
+Athal
+athalamous
+Athalee
+Athalia
+Athaliah
+Athalie
+Athalla
+Athallia
+athalline
+Athamantid
+athamantin
+Athamas
+athamaunte
+athanasia
+Athanasian
+athanasian
+Athanasianism
+Athanasianist
+athanasies
+Athanasius
+athanasy
+athanor
+Athapascan
+Athapaskan
+athapaskan
+athar
+Atharvan
+Atharva-Veda
+athbash
+Athecae
+Athecata
+athecate
+atheism
+atheisms
+atheist
+atheistic
+atheistical
+atheistically
+atheisticalness
+atheisticness
+atheists
+atheize
+atheizer
+Athel
+athel
+Athelbert
+athelia
+atheling
+athelings
+Athelred
+Athelstan
+Athelstane
+athematic
+Athena
+athena
+Athenaea
+Athenaeum
+athenaeum
+athenaeums
+Athenaeus
+Athenagoras
+Athenai
+Athene
+athenee
+atheneum
+atheneums
+Athenian
+athenian
+Athenianly
+athenians
+Athenienne
+athenor
+Athens
+athens
+atheological
+atheologically
+atheology
+atheous
+Athericera
+athericeran
+athericerous
+atherine
+Atherinidae
+Atheriogaea
+Atheriogaean
+Atheris
+athermancy
+athermanous
+athermic
+athermous
+atherogenesis
+atherogenic
+atheroma
+atheromas
+atheromasia
+atheromata
+atheromatosis
+atheromatous
+atheroscleroses
+atherosclerosis
+atherosclerotic
+atherosclerotically
+Atherosperma
+Atherton
+Atherurus
+athetesis
+atheticize
+athetize
+athetized
+athetizing
+athetoid
+athetoids
+athetosic
+athetosis
+athetotic
+Athey
+Athie
+athing
+athink
+athirst
+Athiste
+athlete
+athletehood
+athletes
+athletic
+athletical
+athletically
+athleticism
+athletics
+athletism
+athletocracy
+athlothete
+athlothetes
+athodyd
+athodyds
+athogen
+Athol
+athold
+at-home
+at-homeish
+at-homeishness
+at-homeness
+athonite
+athort
+Athos
+athrepsia
+athreptic
+a-thrill
+athrill
+athrive
+a-throb
+athrob
+athrocyte
+athrocytosis
+athrogenic
+a-throng
+athrong
+athrough
+athumia
+athwart
+athwarthawse
+athwartship
+athwartships
+athwartwise
+athymia
+athymic
+athymy
+athyreosis
+athyria
+athyrid
+Athyridae
+Athyris
+Athyrium
+athyroid
+athyroidism
+athyrosis
+ATI
+Ati
+Atiana
+-atic
+Atik
+Atikokania
+Atila
+-atile
+atilt
+atimon
+atimy
+ating
+atinga
+atingle
+atinkle
+-ation
+atip
+a-tiptoe
+atiptoe
+ATIS
+atis
+-ative
+ATK
+Atka
+Atkins
+Atkinson
+Atlanta
+atlanta
+atlantad
+atlantal
+Atlante
+Atlantean
+atlantean
+atlantes
+Atlantic
+atlantic
+Atlantica
+Atlantid
+Atlantides
+Atlantis
+atlantis
+atlantite
+atlanto-
+atlantoaxial
+atlantodidymus
+atlantomastoid
+Atlanto-mediterranean
+atlantoodontoid
+Atlantosaurus
+atlantosaurus
+at-large
+ATLAS
+Atlas
+atlas
+Atlas-Agena
+Atlasburg
+Atlas-Centaur
+atlases
+Atlaslike
+Atlas-Score
+atlatl
+atlatls
+atle
+Atlee
+atlee
+Atli
+atli
+atlo-
+atloaxoid
+atloid
+atloidean
+atloidoaxoid
+atloido-occipital
+atlo-odontoid
+ATM
+At/m
+atm
+atm.
+atma
+Atman
+atman
+atmans
+atmas
+atmiatrics
+atmiatry
+atmid
+atmidalbumin
+atmidometer
+atmidometry
+atmo
+atmo-
+atmocausis
+atmocautery
+atmoclastic
+atmogenic
+atmograph
+atmologic
+atmological
+atmologist
+atmology
+atmolyses
+atmolysis
+atmolyzation
+atmolyze
+atmolyzer
+atmometer
+atmometric
+atmometry
+atmophile
+Atmore
+atmos
+atmosphere
+atmosphered
+atmosphereful
+atmosphereless
+atmospheres
+atmospheric
+atmospherical
+atmospherically
+atmospherics
+atmospherium
+atmospherology
+atmostea
+atmosteal
+atmosteon
+ATMS
+ATN
+Atnah
+ATO
+atocha
+atocia
+Atoka
+atokal
+atoke
+atokous
+atole
+atoll
+atolls
+a-tolyl
+atom
+atomatic
+atom-bomb
+atom-chipping
+atomechanics
+atomerg
+atomic
+atomical
+atomically
+atomician
+atomicism
+atomicity
+atomics
+atomies
+atomiferous
+atomisation
+atomise
+atomised
+atomises
+atomising
+atomism
+atomisms
+atomist
+atomistic
+atomistical
+atomistically
+atomistics
+atomists
+atomity
+atomization
+atomize
+atomized
+atomizer
+atomizers
+atomizes
+atomizing
+atomology
+atom-rocket
+ATOMS
+atoms
+atom-smashing
+atom-tagger
+atom-tagging
+atomy
+Aton
+atonable
+atonal
+atonalism
+atonalist
+atonalistic
+atonality
+atonally
+atone
+atoneable
+atoned
+atonement
+atonements
+atoneness
+atoner
+atoners
+atones
+atonia
+atonic
+atonicity
+atonics
+atonies
+atoning
+atoningly
+Atonsah
+atony
+atop
+atopen
+Atophan
+atophan
+atopic
+atopies
+atopite
+atopy
+-ator
+Atorai
+-atory
+Atossa
+atour
+atoxic
+Atoxyl
+atoxyl
+ATP
+ATP2
+ATPCO
+atpoints
+ATR
+atrabilaire
+atrabilar
+atrabilarian
+atrabilarious
+atrabile
+atrabiliar
+atrabiliarious
+atrabiliary
+atrabilious
+atrabiliousness
+atracheate
+Atractaspis
+Atragene
+atragene
+Atrahasis
+atrail
+atrament
+atramental
+atramentary
+atramentous
+atraumatic
+Atrax
+atrazine
+atrazines
+Atrebates
+atrede
+Atremata
+atremate
+atrematous
+a-tremble
+atremble
+atren
+atrenne
+atrepsy
+atreptic
+atresia
+atresias
+atresic
+atresy
+atretic
+Atreus
+atreus
+atria
+atrial
+atrible
+Atrice
+atrichia
+atrichic
+atrichosis
+atrichous
+atrickle
+Atridae
+Atridean
+atrienses
+atriensis
+atriocoelomic
+atrioporal
+atriopore
+atrioventricular
+a-trip
+atrip
+Atriplex
+atrium
+atriums
+atro-
+atroce
+atroceruleous
+atroceruleus
+atrocha
+atrochal
+atrochous
+atrocious
+atrociously
+atrociousness
+atrociousnesses
+atrocities
+atrocity
+atrocoeruleus
+atrolactic
+Atronna
+Atropa
+atropaceous
+atropal
+atropamine
+Atropatene
+atrophia
+atrophias
+atrophiated
+atrophic
+atrophied
+atrophies
+atrophoderma
+atrophous
+atrophy
+atrophying
+atropia
+atropic
+Atropidae
+atropin
+atropine
+atropines
+atropinism
+atropinization
+atropinize
+atropins
+atropism
+atropisms
+Atropos
+atropos
+atropous
+atrorubent
+atrosanguineous
+atroscine
+atrous
+ATRS
+a-try
+atry
+Atrypa
+atrypoid
+ATS
+atsara
+Atsugi
+AT&T
+ATT
+att
+att.
+Atta
+atta
+attababy
+attabal
+attaboy
+Attacapan
+attacca
+attacco
+attach
+attachable
+attachableness
+attache
+attached
+attachedly
+attacher
+attachers
+attaches
+attacheship
+attaching
+attachment
+attachments
+attack
+attackable
+attacked
+attacker
+attackers
+attacking
+attackingly
+attackman
+attacks
+attacolite
+Attacus
+attacus
+attagal
+attagen
+attaghan
+attagirl
+Attah
+attain
+attainabilities
+attainability
+attainable
+attainableness
+attainably
+attainder
+attainders
+attained
+attainer
+attainers
+attaining
+attainment
+attainments
+attainor
+attains
+attaint
+attainted
+attainting
+attaintment
+attaints
+attainture
+attal
+Attalanta
+Attalea
+attaleh
+Attalid
+Attalie
+Attalla
+attame
+attapulgite
+Attapulgus
+attar
+attargul
+attars
+attask
+attaste
+attatched
+attatches
+ATTC
+ATTCOM
+atte
+atteal
+attemper
+attemperament
+attemperance
+attemperate
+attemperately
+attemperation
+attemperator
+attempered
+attempering
+attempers
+attempre
+attempt
+attemptability
+attemptable
+attempted
+attempter
+attempters
+attempting
+attemptive
+attemptless
+attempts
+Attenborough
+attend
+attendance
+attendances
+attendancy
+attendant
+attendantly
+attendants
+attended
+attendee
+attendees
+attender
+attenders
+attending
+attendingly
+attendings
+attendment
+attendress
+attends
+attensity
+attent
+attentat
+attentate
+attention
+attentional
+attentionality
+attention-getting
+attentions
+attentive
+attentively
+attentiveness
+attentivenesses
+attently
+attenuable
+attenuant
+attenuate
+attenuated
+attenuates
+attenuating
+attenuation
+attenuations
+attenuative
+attenuator
+attenuators
+Attenweiler
+atter
+Atterbury
+attercop
+attercrop
+atterminal
+attermine
+attermined
+atterminement
+attern
+atterr
+atterrate
+attery
+attest
+attestable
+attestant
+attestation
+attestations
+attestative
+attestator
+attested
+attester
+attesters
+attesting
+attestive
+attestor
+attestors
+attests
+Atthia
+Attic
+attic
+Attica
+Attical
+attice
+Atticise
+Atticised
+Atticising
+Atticism
+atticism
+atticisms
+Atticist
+atticist
+atticists
+Atticize
+atticize
+Atticized
+atticized
+Atticizing
+atticizing
+atticomastoid
+attics
+attid
+Attidae
+attidae
+Attila
+attila
+attinge
+attingence
+attingency
+attingent
+attirail
+attire
+attired
+attirement
+attirer
+attires
+attiring
+ATTIS
+Attis
+attitude
+attitudes
+attitudinal
+attitudinarian
+attitudinarianism
+attitudinise
+attitudinised
+attitudiniser
+attitudinising
+attitudinize
+attitudinized
+attitudinizer
+attitudinizes
+attitudinizing
+attitudist
+Attius
+Attiwendaronk
+attle
+Attleboro
+Attlee
+attn
+attntrp
+atto-
+attollent
+attomy
+attorn
+attornare
+attorned
+attorney
+attorney-at-law
+attorneydom
+attorney-generalship
+attorney-in-fact
+attorneyism
+attorneys
+attorneys-at-law
+attorneyship
+attorneys-in-fact
+attorning
+attornment
+attorns
+attouchement
+attour
+attourne
+attract
+attractability
+attractable
+attractableness
+attractance
+attractancy
+attractant
+attractants
+attracted
+attracted-disk
+attracter
+attractile
+attracting
+attractingly
+attraction
+attractionally
+attractions
+attractive
+attractively
+attractiveness
+attractivenesses
+attractivity
+attractor
+attractors
+attracts
+attrahent
+attrap
+attrectation
+attrib
+attrib.
+attributable
+attributal
+attribute
+attributed
+attributer
+attributes
+attributing
+attribution
+attributional
+attributions
+attributive
+attributively
+attributiveness
+attributives
+attributor
+attrist
+attrite
+attrited
+attriteness
+attriting
+attrition
+attritional
+attritive
+attritus
+attriutively
+attroopment
+attroupement
+attry
+Attu
+attune
+attuned
+attunely
+attunement
+attunes
+attuning
+atturn
+Attwood
+atty
+atty.
+atua
+Atuami
+Atul
+atule
+Atum
+a-tumble
+atumble
+atune
+ATV
+atveen
+a-twain
+atwain
+Atwater
+At/Wb
+atweel
+atween
+Atwekk
+atwin
+atwind
+atwirl
+a-twist
+atwist
+atwitch
+atwite
+a-twitter
+atwitter
+atwixt
+a-two
+atwo
+Atwood
+Atworth
+Atymnius
+atypic
+atypical
+atypicality
+atypically
+atypy
+Atys
+A.U.
+AU
+Au
+AUA
+auantic
+aubade
+aubades
+aubain
+aubaine
+Aubanel
+Aubarta
+Aube
+aube
+aubepine
+Auber
+Auberbach
+Auberge
+auberge
+auberges
+aubergine
+aubergiste
+aubergistes
+Auberon
+Auberry
+Aubert
+Auberta
+Aubervilliers
+Aubigny
+Aubin
+aubin
+Aubine
+Aubree
+Aubreir
+aubretia
+aubretias
+Aubrette
+Aubrey
+Aubrie
+aubrieta
+aubrietas
+Aubrietia
+aubrietia
+aubrite
+Aubry
+Auburn
+auburn
+Auburndale
+auburn-haired
+auburns
+Auburntown
+Auburta
+Aubusson
+aubusson
+Aubyn
+A.U.C.
+AUC
+Auca
+auca
+Aucan
+Aucaner
+Aucanian
+Auchenia
+auchenia
+auchenium
+Auchincloss
+Auchinleck
+auchlet
+aucht
+Auckland
+auckland
+auctary
+auction
+auctionary
+auctioned
+auctioneer
+auctioneers
+auctioning
+auctions
+auctor
+auctorial
+auctorizate
+auctors
+Aucuba
+aucuba
+aucubas
+aucupate
+aud
+aud.
+audace
+audacious
+audaciously
+audaciousness
+audacities
+audacity
+audad
+audads
+Audaean
+Aude
+Auden
+Audette
+Audhumbla
+Audhumla
+Audi
+Audian
+Audibertia
+audibility
+audible
+audibleness
+audibles
+audibly
+Audie
+audience
+audience-proof
+audiencer
+audiences
+audiencia
+audiencier
+audient
+audients
+audile
+audiles
+auding
+audings
+audio
+audio-
+audioemission
+audio-frequency
+audiogenic
+audiogram
+audiograms
+audiological
+audiologies
+audiologist
+audiologists
+audiology
+audiometer
+audiometers
+audiometric
+audiometrically
+audiometries
+audiometrist
+audiometry
+Audion
+audion
+audiophile
+audiophiles
+audios
+audiotape
+audiotapes
+audiotypist
+audio-visual
+audiovisual
+audio-visually
+audiovisuals
+audiphone
+audit
+auditable
+audited
+auditing
+audition
+auditioned
+auditioning
+auditions
+auditive
+auditives
+auditor
+auditor-general
+auditoria
+auditorial
+auditorially
+auditories
+auditorily
+auditorium
+auditoriums
+auditors
+auditors-general
+auditorship
+auditory
+auditotoria
+auditress
+audits
+auditual
+audivise
+audiviser
+audivision
+AUDIX
+Audley
+Audly
+Audra
+Audras
+Audre
+Audres
+Audrey
+Audri
+Audrie
+Audris
+Audrit
+Audry
+Audrye
+Audsley
+Audubon
+audubon
+Audubonistic
+Audun
+Audwen
+Audwin
+Audy
+Auer
+Auerbach
+Aueto
+AUEW
+auf
+aufait
+aufgabe
+Aufklarung
+aufklarung
+Aufklrung
+Aufmann
+auftakt
+Aug
+Aug.
+aug
+aug.
+auganite
+Auge
+auge
+Augean
+augean
+Augeas
+augelite
+Augelot
+augen
+augend
+augends
+augen-gabbro
+augen-gneiss
+auger
+augerer
+auger-nose
+augers
+auger-type
+auget
+augh
+aught
+aughtlins
+aughts
+Augie
+Augier
+augite
+augite-porphyrite
+augite-porphyry
+augites
+augitic
+augitite
+augitophyre
+augment
+augmentable
+augmentation
+augmentationer
+augmentations
+augmentative
+augmentatively
+augmented
+augmentedly
+augmenter
+augmenters
+augmenting
+augmentive
+augmentor
+augments
+Augres
+augrim
+Augsburg
+augur
+augural
+augurate
+auguration
+augure
+augured
+augurer
+augurers
+augurial
+auguries
+auguring
+augurous
+augurs
+augurship
+augury
+August
+august
+Augusta
+augusta
+augustal
+Augustales
+Augustan
+augustan
+Auguste
+auguste
+auguster
+augustest
+Augusti
+Augustin
+augustin
+Augustina
+Augustine
+augustine
+Augustinian
+augustinian
+Augustinianism
+Augustinism
+augustly
+augustness
+Augusto
+Augustus
+Augy
+auh
+auhuhu
+AUI
+Auk
+auk
+auklet
+auklets
+auks
+auksinai
+auksinas
+auksinu
+aul
+aula
+aulacocarpous
+Aulacodus
+Aulacomniaceae
+Aulacomnium
+aulae
+Aulander
+Aulard
+aularian
+aulas
+auld
+aulder
+auldest
+auld-farran
+auld-farrand
+auld-farrant
+auldfarrantlike
+auld-warld
+Aulea
+auletai
+aulete
+auletes
+auletic
+auletrides
+auletris
+aulic
+aulical
+aulicism
+Auliffe
+Aulis
+aullay
+auln-
+auloi
+aulophobia
+aulophyte
+aulos
+Aulostoma
+Aulostomatidae
+Aulostomi
+aulostomid
+Aulostomidae
+Aulostomus
+Ault
+Aultman
+aulu
+AUM
+Aum
+aum
+aumaga
+aumail
+aumakua
+aumbries
+aumbry
+aumery
+aumil
+aumildar
+aummbulatory
+aumoniere
+aumous
+aumrie
+Aumsville
+Aun
+aunc-
+auncel
+Aundrea
+aune
+Aunjetitz
+Aunson
+aunt
+aunter
+aunters
+aunthood
+aunthoods
+auntie
+aunties
+auntish
+auntlier
+auntliest
+auntlike
+auntly
+auntre
+auntrous
+aunts
+auntsary
+auntship
+aunty
+AUP
+aupaka
+aur-
+AURA
+Aura
+aura
+aurae
+Aural
+aural
+aurally
+auramin
+auramine
+aurang
+Aurangzeb
+aurantia
+Aurantiaceae
+aurantiaceous
+Aurantium
+aurantium
+aurar
+auras
+aurata
+aurate
+aurated
+Aurea
+aureal
+aureate
+aureately
+aureateness
+aureation
+aurei
+aureity
+Aurel
+Aurelea
+Aurelia
+aurelia
+Aurelian
+aurelian
+Aurelie
+Aurelio
+Aurelius
+aurene
+Aureocasidium
+aureola
+aureolae
+aureolas
+aureole
+aureoled
+aureoles
+aureolin
+aureoline
+aureoling
+Aureomycin
+aureomycin
+aureous
+aureously
+Aures
+aures
+auresca
+aureus
+Auria
+auribromide
+Auric
+auric
+aurichalcite
+aurichalcum
+aurichloride
+aurichlorohydric
+auricle
+auricled
+auricles
+auricomous
+Auricula
+auricula
+auriculae
+auricular
+auriculare
+auriculares
+Auricularia
+auricularia
+Auriculariaceae
+auriculariae
+Auriculariales
+auricularian
+auricularias
+auricularis
+auricularly
+auriculars
+auriculas
+auriculate
+auriculated
+auriculately
+Auriculidae
+auriculo
+auriculocranial
+auriculoid
+auriculo-infraorbital
+auriculo-occipital
+auriculoparietal
+auriculotemporal
+auriculoventricular
+auriculovertical
+auricyanhydric
+auricyanic
+auricyanide
+auride
+Aurie
+auriferous
+aurifex
+aurific
+aurification
+aurified
+auriflamme
+auriform
+aurify
+aurifying
+Auriga
+auriga
+Aurigae
+aurigal
+aurigation
+aurigerous
+Aurigid
+Aurignac
+Aurignacian
+aurignacian
+aurigo
+aurigraphy
+auri-iodide
+aurilave
+Aurilia
+aurin
+aurinasal
+aurine
+Auriol
+auriphone
+auriphrygia
+auriphrygiate
+auripigment
+auripuncture
+aurir
+auris
+auriscalp
+auriscalpia
+auriscalpium
+auriscope
+auriscopic
+auriscopically
+auriscopy
+aurist
+aurists
+Aurita
+aurite
+aurited
+aurivorous
+Aurlie
+auro-
+auroauric
+aurobromide
+auroch
+aurochloride
+aurochs
+aurochses
+aurocyanide
+aurodiamine
+auronal
+Auroora
+aurophobia
+aurophore
+Aurora
+aurora
+aurorae
+auroral
+aurorally
+auroras
+Aurore
+aurore
+aurorean
+Aurorian
+aurorium
+aurotellurite
+aurothiosulphate
+aurothiosulphuric
+aurous
+aurrescu
+Aurthur
+aurulent
+Aurum
+aurum
+aurums
+aurung
+Aurungzeb
+aurure
+auryl
+AUS
+Aus
+Aus.
+Ausable
+Auschwitz
+auscult
+auscultascope
+auscultate
+auscultated
+auscultates
+auscultating
+auscultation
+auscultations
+auscultative
+auscultator
+auscultatory
+Auscultoscope
+auscultoscope
+Ause
+ausform
+ausformed
+ausforming
+ausforms
+ausgespielt
+Ausgleich
+Ausgleiche
+Aushar
+Auslander
+auslander
+auslaut
+auslaute
+Auslese
+Ausones
+Ausonian
+Ausonius
+auspex
+auspicate
+auspicated
+auspicating
+auspice
+auspices
+auspicial
+auspicious
+auspiciously
+auspiciousness
+auspicy
+Aussie
+aussie
+aussies
+Aust
+Aust.
+Austafrican
+austausch
+Austell
+austemper
+Austen
+austenite
+austenitic
+austenitize
+austenitized
+austenitizing
+Auster
+auster
+austere
+austerely
+austereness
+austerer
+austerest
+austerities
+austerity
+Austerlitz
+austerus
+Austin
+austin
+Austina
+Austinburg
+Austine
+Austinville
+Auston
+austr-
+Austral
+Austral.
+austral
+Australanthropus
+Australasia
+Australasian
+australasian
+Australe
+australene
+Austral-english
+Australia
+australia
+Australian
+australian
+Australiana
+Australianism
+Australianize
+Australian-oak
+australians
+Australic
+Australioid
+Australis
+australis
+australite
+Australoid
+australoid
+Australopithecinae
+Australopithecine
+australopithecine
+Australopithecus
+Australorp
+australorp
+australs
+Austrasia
+Austrasian
+Austreng
+Austria
+austria
+Austria-Hungary
+Austrian
+austrian
+Austrianize
+austrians
+Austric
+austrine
+austringer
+austrium
+Austro-
+Austro-Asiatic
+Austroasiatic
+austroasiatic
+Austro-columbia
+Austro-columbian
+Austrogaea
+Austrogaean
+Austro-Hungarian
+Austro-hungarian
+Austro-malayan
+austromancy
+Austronesia
+Austronesian
+austronesian
+Austrophil
+Austrophile
+Austrophilism
+Austroriparian
+Austro-swiss
+Austwell
+ausu
+ausubo
+ausubos
+aut-
+autacoid
+autacoidal
+autacoids
+autaesthesy
+autallotriomorphic
+autantitypy
+autarch
+autarchic
+autarchical
+autarchically
+autarchies
+autarchist
+Autarchoglossa
+autarchy
+autarkic
+autarkical
+autarkically
+autarkies
+autarkik
+autarkikal
+autarkist
+autarky
+Autaugaville
+aute
+autechoscope
+autecious
+auteciously
+auteciousness
+autecism
+autecisms
+autecologic
+autecological
+autecologically
+autecologist
+autecology
+autecy
+autem
+autere
+Auteuil
+auteur
+auteurism
+auteurs
+autexousy
+auth
+auth.
+authentic
+authentical
+authentically
+authenticalness
+authenticatable
+authenticate
+authenticated
+authenticates
+authenticating
+authentication
+authentications
+authenticator
+authenticators
+authenticities
+authenticity
+authenticly
+authenticness
+authigene
+authigenetic
+authigenic
+authigenous
+Authon
+author
+authorcraft
+author-created
+authored
+author-entry
+authoress
+authoresses
+authorhood
+authorial
+authorially
+authoring
+authorisable
+authorisation
+authorise
+authorised
+authoriser
+authorish
+authorising
+authorism
+authoritarian
+authoritarianism
+authoritarianisms
+authoritarians
+authoritative
+authoritatively
+authoritativeness
+authorities
+authority
+authorizable
+authorization
+authorizations
+authorize
+authorized
+authorizer
+authorizers
+authorizes
+authorizing
+authorless
+authorling
+authorly
+author-publisher
+author-ridden
+authors
+authorship
+authorships
+authotype
+autism
+autisms
+autist
+autistic
+auto
+auto-
+auto.
+autoabstract
+autoactivation
+autoactive
+autoaddress
+autoagglutinating
+autoagglutination
+autoagglutinin
+auto-alarm
+autoalarm
+autoalkylation
+autoallogamous
+autoallogamy
+autoanalysis
+autoanalytic
+autoantibody
+autoanticomplement
+autoantitoxin
+autoasphyxiation
+autoaspiration
+autoassimilation
+auto-audible
+Autobahn
+autobahn
+autobahnen
+autobahns
+autobasidia
+Autobasidiomycetes
+autobasidiomycetous
+autobasidium
+Autobasisii
+autobiographal
+autobiographer
+autobiographers
+autobiographic
+autobiographical
+autobiographically
+autobiographies
+autobiographist
+autobiography
+autobiology
+autoblast
+autoboat
+autoboating
+autobolide
+autobus
+autobuses
+autobusses
+autocab
+autocade
+autocades
+autocall
+autocamp
+autocamper
+autocamping
+autocar
+autocarist
+autocarp
+autocarpian
+autocarpic
+autocarpous
+autocatalepsy
+autocatalyses
+autocatalysis
+autocatalytic
+autocatalytically
+autocatalyze
+autocatharsis
+autocatheterism
+autocephalia
+autocephalic
+autocephality
+autocephalous
+autocephaly
+autoceptive
+autochanger
+autochemical
+autocholecystectomy
+autochrome
+autochromy
+autochronograph
+autochthon
+autochthonal
+autochthones
+autochthonic
+autochthonism
+autochthonous
+autochthonously
+autochthonousness
+autochthons
+autochthony
+autochton
+autocide
+autocinesis
+autoclasis
+autoclastic
+autoclave
+autoclaved
+autoclaves
+autoclaving
+autocoder
+autocoenobium
+autocoherer
+autocoid
+autocoids
+autocollimate
+autocollimation
+autocollimator
+autocollimators
+autocolony
+autocombustible
+autocombustion
+autocomplexes
+autocondensation
+autoconduction
+autoconvection
+autoconverter
+autocopist
+autocoprophagous
+autocorrelate
+autocorrelation
+autocorrosion
+autocosm
+autocracies
+autocracy
+autocrat
+autocratic
+autocratical
+autocratically
+autocraticalness
+autocrator
+autocratoric
+autocratorical
+autocratrix
+autocrats
+autocratship
+autocremation
+autocriticism
+autocross
+autocue
+autocycle
+autocystoplasty
+autocytolysis
+autocytolytic
+auto-da-f
+auto-da-fe
+auto-dafe
+autodecomposition
+autodecrement
+autodecremented
+autodecrements
+autodepolymerization
+autodermic
+autodestruction
+autodetector
+autodiagnosis
+autodiagnostic
+autodiagrammatic
+autodial
+autodialed
+autodialer
+autodialers
+autodialing
+autodialled
+autodialling
+autodials
+autodidact
+autodidactic
+autodidactically
+autodidacts
+autodifferentiation
+autodiffusion
+autodigestion
+autodigestive
+AUTODIN
+autodrainage
+autodrome
+autodynamic
+autodyne
+autodynes
+autoecholalia
+autoecic
+autoecious
+autoeciously
+autoeciousness
+autoecism
+autoecous
+autoecy
+autoed
+autoeducation
+autoeducative
+autoelectrolysis
+autoelectrolytic
+autoelectronic
+autoelevation
+autoepigraph
+autoepilation
+autoerotic
+autoerotically
+autoeroticism
+autoerotism
+autoette
+autoexcitation
+autofecundation
+autofermentation
+autofluorescence
+autoformation
+autofrettage
+autogamic
+autogamies
+autogamous
+autogamy
+autogauge
+autogeneal
+autogeneses
+autogenesis
+autogenetic
+autogenetically
+autogenic
+autogenies
+autogenous
+autogenously
+autogenuous
+autogeny
+Autogiro
+autogiro
+autogiros
+autognosis
+autognostic
+autograft
+autografting
+autogram
+autograph
+autographal
+autographed
+autographer
+autographic
+autographical
+autographically
+autographing
+autographism
+autographist
+autographometer
+autographs
+autography
+autogravure
+autogyro
+autogyros
+Autoharp
+autoharp
+autoheader
+autohemic
+autohemolysin
+autohemolysis
+autohemolytic
+autohemorrhage
+autohemotherapy
+autoheterodyne
+autoheterosis
+autohexaploid
+autohybridization
+autohypnosis
+autohypnotic
+autohypnotically
+autohypnotism
+autohypnotization
+autoicous
+autoignition
+autoimmune
+autoimmunities
+autoimmunity
+autoimmunization
+autoimmunize
+autoimmunized
+autoimmunizing
+autoincrement
+autoincremented
+autoincrements
+autoindex
+autoindexing
+autoinduction
+autoinductive
+auto-infection
+autoinfection
+autoinfusion
+autoing
+autoinhibited
+auto-inoculability
+auto-inoculable
+autoinoculable
+auto-inoculation
+autoinoculation
+autointellectual
+autointoxicant
+autointoxication
+autoionization
+autoirrigation
+autoist
+autojigger
+autojuggernaut
+autokinesis
+autokinesy
+autokinetic
+autokrator
+autolaryngoscope
+autolaryngoscopic
+autolaryngoscopy
+autolater
+autolatry
+autolavage
+autolesion
+autolimnetic
+autolith
+autolithograph
+autolithographer
+autolithographic
+autolithography
+autoloader
+autoloaders
+autoloading
+autological
+autologist
+autologous
+autology
+autoluminescence
+autoluminescent
+Autolycus
+autolysate
+autolysate-precipitate
+autolyse
+autolysin
+autolysis
+autolytic
+Autolytus
+autolyzate
+autolyze
+autolyzed
+autolyzes
+autolyzing
+automa
+automacy
+automaker
+automan
+automania
+automanipulation
+automanipulative
+automanual
+automat
+automata
+automatable
+automate
+automateable
+automated
+automates
+automatic
+automatical
+automatically
+automaticity
+automatics
+automatictacessing
+automating
+automation
+automations
+automatism
+automatist
+automative
+automatization
+automatize
+automatized
+automatizes
+automatizing
+automatograph
+automaton
+automatonlike
+automatons
+automatonta
+automatontons
+automatous
+automats
+automechanical
+automechanism
+Automedon
+automelon
+automen
+autometamorphosis
+autometric
+autometry
+automobile
+automobiled
+automobiles
+automobiling
+automobilism
+automobilist
+automobilistic
+automobilists
+automobility
+automolite
+automonstration
+automorph
+automorphic
+automorphically
+automorphic-granular
+automorphism
+automotive
+automotor
+automower
+autompne
+automysophobia
+autonavigator
+autonavigators
+autonegation
+autonephrectomy
+autonephrotoxin
+autonetics
+autoneurotoxin
+autonitridation
+Autonoe
+autonoetic
+autonomasy
+autonomic
+autonomical
+autonomically
+autonomies
+autonomist
+autonomize
+autonomous
+autonomously
+autonomousness
+autonomy
+autonym
+auto-objective
+auto-observation
+auto-omnibus
+auto-ophthalmoscope
+auto-ophthalmoscopy
+auto-oxidation
+autooxidation
+auto-oxidize
+autoparasitism
+autopathic
+autopathography
+autopathy
+autopelagic
+autopepsia
+autophagi
+autophagia
+autophagous
+autophagy
+autophobia
+autophoby
+autophon
+autophone
+autophonoscope
+autophonous
+autophony
+autophotoelectric
+autophotograph
+autophotometry
+autophthalmoscope
+autophyllogeny
+autophyte
+autophytic
+autophytically
+autophytograph
+autophytography
+autopilot
+autopilots
+autopista
+autoplagiarism
+autoplasmotherapy
+autoplast
+autoplastic
+autoplastically
+autoplasties
+autoplasty
+autopneumatic
+autopoint
+autopoisonous
+autopolar
+autopolo
+autopoloist
+autopolyploid
+autopolyploidy
+autopore
+autoportrait
+autoportraiture
+Autopositive
+autopositive
+autopotamic
+autopotent
+autoprogressive
+autoproteolysis
+autoprothesis
+autopsic
+autopsical
+autopsied
+autopsies
+autopsist
+autopsy
+autopsychic
+autopsychoanalysis
+autopsychology
+autopsychorhythmia
+autopsychosis
+autopsying
+autoptic
+autoptical
+autoptically
+autopticity
+autoput
+autopyotherapy
+autor
+autoracemization
+autoradiogram
+autoradiograph
+autoradiographic
+autoradiography
+autorail
+autoreduction
+autoreflection
+autoregenerator
+autoregressive
+autoregulation
+autoregulative
+autoregulatory
+autoreinfusion
+autoretardation
+autorhythmic
+autorhythmus
+auto-rickshaw
+auto-rifle
+autoriser
+autorotate
+autorotation
+autorotational
+autoroute
+autorrhaphy
+autos
+Autosauri
+Autosauria
+autoschediasm
+autoschediastic
+autoschediastical
+autoschediastically
+autoschediaze
+autoscience
+autoscope
+autoscopic
+autoscopy
+autosender
+autosensitization
+autosensitized
+autosepticemia
+autoserotherapy
+autoserum
+autosexing
+autosight
+autosign
+autosite
+autositic
+autoskeleton
+autosled
+autoslip
+autosomal
+autosomally
+autosomatognosis
+autosomatognostic
+autosome
+autosomes
+autosoteric
+autosoterism
+autospore
+autosporic
+autospray
+autostability
+autostage
+autostandardization
+autostarter
+autostethoscope
+autostoper
+autostrada
+autostradas
+autostylic
+autostylism
+autostyly
+autosuggest
+autosuggestibility
+autosuggestible
+autosuggestion
+autosuggestionist
+autosuggestions
+autosuggestive
+autosuppression
+autosymbiontic
+autosymbolic
+autosymbolical
+autosymbolically
+autosymnoia
+Autosyn
+autosyn
+autosyndesis
+autota
+autotelegraph
+autotelic
+autotelism
+autotetraploid
+autotetraploidy
+autothaumaturgist
+autotheater
+autotheism
+autotheist
+autotherapeutic
+autotherapy
+autothermy
+autotimer
+autotomic
+autotomies
+autotomise
+autotomised
+autotomising
+autotomize
+autotomized
+autotomizing
+autotomous
+autotomy
+autotoxaemia
+autotoxemia
+autotoxic
+autotoxication
+autotoxicity
+autotoxicosis
+autotoxin
+autotoxis
+autotractor
+autotransformer
+autotransfusion
+autotransplant
+autotransplantation
+autotrepanation
+autotriploid
+autotriploidy
+autotroph
+autotrophic
+autotrophically
+autotrophy
+autotropic
+autotropically
+autotropism
+autotruck
+autotuberculin
+autoturning
+autotype
+autotypes
+autotyphization
+autotypic
+autotypies
+autotypography
+autotypy
+autourine
+autovaccination
+autovaccine
+autovalet
+autovalve
+autovivisection
+AUTOVON
+autoxeny
+autoxidation
+autoxidation-reduction
+autoxidator
+autoxidizability
+autoxidizable
+autoxidize
+autoxidizer
+autozooid
+Autrain
+Autrans
+autre
+autrefois
+Autrey
+Autry
+Autryville
+Autum
+Autumn
+autumn
+autumnal
+autumnally
+autumn-brown
+Autumni
+autumnian
+autumnity
+autumns
+autumn-spring
+Autun
+Autunian
+autunite
+autunites
+auturgy
+Auvergne
+Auvil
+Auwers
+AUX
+aux
+aux.
+auxamylase
+auxanogram
+auxanology
+auxanometer
+auxeses
+auxesis
+auxetic
+auxetical
+auxetically
+auxetics
+AUXF
+Auxier
+auxil
+auxiliar
+auxiliaries
+auxiliarly
+auxiliary
+auxiliate
+auxiliation
+auxiliator
+auxiliatory
+auxilium
+auxillary
+auxilytic
+auximone
+auxin
+auxinic
+auxinically
+auxins
+Auxo
+auxoaction
+auxoamylase
+auxoblast
+auxobody
+auxocardia
+auxochrome
+auxochromic
+auxochromism
+auxochromous
+auxocyte
+auxoflore
+auxofluor
+auxograph
+auxographic
+auxohormone
+auxology
+auxometer
+auxospore
+auxosubstance
+auxotonic
+auxotox
+auxotroph
+auxotrophic
+auxotrophy
+Auxvasse
+Auzout
+A.V.
+A/V
+AV
+Av
+a-v
+av
+av-
+av.
+Ava
+ava
+avadana
+avadavat
+avadavats
+avadhuta
+avahi
+avail
+availabile
+availabilities
+availability
+available
+availableness
+availably
+availed
+availer
+availers
+availing
+availingly
+availment
+avails
+aval
+avalanche
+avalanched
+avalanches
+avalanching
+avale
+avalent
+Avallon
+Avalokita
+Avalokitesvara
+Avalon
+avalon
+avalvular
+Avan
+avance
+Avanguardisti
+avania
+avanious
+Avant
+avant
+avant-
+avantage
+avant-courier
+avanters
+avant-garde
+avantgarde
+avant-gardism
+avant-gardist
+Avanti
+avantlay
+avant-propos
+avanturine
+avanyu
+Avar
+Avaradrano
+avaram
+avaremotemo
+Avaria
+Avarian
+avarice
+avarices
+avaricious
+avariciously
+avariciousness
+Avarish
+avaritia
+Avars
+avascular
+avast
+avatar
+avatara
+avatars
+avaunt
+Avawam
+AVC
+AVD
+avdp
+avdp.
+Ave
+Ave.
+ave
+Avebury
+Aveiro
+Avelin
+Avelina
+Aveline
+avell
+Avella
+avellan
+avellane
+Avellaneda
+avellaneous
+avellano
+Avellino
+avelonge
+aveloz
+Avena
+avenaceous
+avenage
+Avenal
+avenalin
+avenant
+avenary
+Avenel
+avener
+avenery
+avenge
+avenged
+avengeful
+avengement
+avenger
+avengeress
+avengers
+avenges
+avenging
+avengingly
+avenida
+aveniform
+avenin
+avenine
+avenolith
+avenous
+avens
+avenses
+aventail
+aventails
+aventayle
+Aventine
+aventine
+aventre
+aventure
+aventurin
+aventurine
+avenue
+avenues
+aveny
+aver
+aver-
+Avera
+avera
+average
+averaged
+averagely
+averageness
+averager
+averages
+averaging
+averah
+Averell
+Averi
+averia
+Averil
+averil
+Averill
+averin
+Averir
+averish
+averment
+averments
+avern
+Avernal
+avernal
+Averno
+Avernus
+avernus
+averrable
+averral
+averred
+averrer
+Averrhoa
+Averrhoism
+Averrhoist
+Averrhoistic
+averring
+Averroes
+Averroism
+Averroist
+averroist
+Averroistic
+averruncate
+averruncation
+averruncator
+avers
+aversant
+aversation
+averse
+aversely
+averseness
+aversion
+aversions
+aversive
+avert
+avertable
+averted
+avertedly
+averter
+avertible
+avertiment
+Avertin
+avertin
+averting
+avertive
+averts
+Avery
+Averyl
+Aves
+aves
+Avesta
+avesta
+Avestan
+avestan
+avestruz
+aveugle
+Aveyron
+avg
+avg.
+avgas
+avgases
+avgasses
+Avi
+aviador
+avian
+avianization
+avianize
+avianized
+avianizes
+avianizing
+avians
+aviararies
+aviaries
+aviarist
+aviarists
+aviary
+aviate
+aviated
+aviates
+aviatic
+aviating
+aviation
+aviational
+aviations
+aviator
+aviatorial
+aviatoriality
+aviators
+aviatory
+aviatress
+aviatrice
+aviatrices
+aviatrix
+aviatrixes
+Avice
+Avicebron
+Avicenna
+Avicennia
+Avicenniaceae
+Avicennism
+avichi
+avicide
+avick
+avicolous
+Avictor
+Avicula
+avicular
+Avicularia
+avicularia
+avicularian
+Aviculariidae
+Avicularimorphae
+avicularium
+Aviculidae
+aviculture
+aviculturist
+avid
+avidin
+avidins
+avidious
+avidiously
+avidities
+avidity
+avidly
+avidness
+avidnesses
+avidous
+avidya
+Avie
+avie
+Aviemore
+aview
+avifauna
+avifaunae
+avifaunal
+avifaunally
+avifaunas
+avifaunistic
+avigate
+avigation
+avigator
+avigators
+Avigdor
+Avignon
+Avignonese
+avijja
+Avikom
+Avila
+avilaria
+avile
+avilement
+Avilion
+avilion
+Avilla
+avine
+Avinger
+aviolite
+avion
+avion-canon
+avionic
+avionics
+avions
+avirulence
+avirulent
+Avis
+avis
+Avisco
+avision
+aviso
+avisos
+Aviston
+avital
+avitaminoses
+avitaminosis
+avitaminotic
+avitic
+Avitzur
+Aviv
+Aviva
+Avivah
+avives
+avizandum
+AVLIS
+Avlona
+AVM
+avn
+avn.
+Avner
+Avo
+avo
+Avoca
+avocado
+avocadoes
+avocados
+avocat
+avocate
+avocation
+avocational
+avocationally
+avocations
+avocative
+avocatory
+avocet
+avocets
+avodire
+avodires
+avogadrite
+Avogadro
+avogadro
+avogram
+avoid
+avoidable
+avoidably
+avoidance
+avoidances
+avoidant
+avoided
+avoider
+avoiders
+avoiding
+avoidless
+avoidment
+avoids
+avoidupois
+avoidupoises
+avoir
+avoir.
+avoirdupois
+avoke
+avolate
+avolation
+avolitional
+Avon
+Avondale
+avondbloem
+Avonmore
+Avonne
+avos
+avoset
+avosets
+avouch
+avouchable
+avouched
+avoucher
+avouchers
+avouches
+avouching
+avouchment
+avoue
+avour
+avoure
+avourneen
+avouter
+avoutry
+avow
+avowable
+avowableness
+avowably
+avowal
+avowals
+avowance
+avowant
+avowe
+avowed
+avowedly
+avowedness
+avower
+avowers
+avowing
+avowries
+avowry
+avows
+avowter
+avoy
+avoyer
+avoyership
+Avra
+Avraham
+Avram
+Avril
+Avrit
+Avrom
+Avron
+Avruch
+Avshar
+avulse
+avulsed
+avulses
+avulsing
+avulsion
+avulsions
+avuncular
+avunculate
+avunculize
+avyayibhava
+avys
+AW
+a.w.
+aw
+aw-
+awa
+Awabakal
+awabi
+AWACS
+awacs
+Awad
+Awadhi
+awaft
+awag
+await
+awaited
+awaiter
+awaiters
+awaiting
+Awaitlala
+awaits
+awakable
+awake
+awakeable
+awaked
+awaken
+awakenable
+awakened
+awakener
+awakeners
+awakening
+awakeningly
+awakenings
+awakenment
+awakens
+awakes
+awaking
+awakings
+awald
+awalim
+awalt
+Awan
+awane
+awanting
+awanyu
+awapuhi
+A-war
+award
+awardable
+awarded
+awardee
+awardees
+awarder
+awarders
+awarding
+awardment
+awards
+aware
+awaredom
+awareness
+awarn
+awarrant
+awaruite
+awash
+awaste
+awat
+awatch
+awater
+awave
+away
+away-going
+awayness
+awaynesses
+aways
+AWB
+awber
+awd
+awe
+AWEA
+A-weapons
+awearied
+aweary
+a-weather
+aweather
+awe-awakening
+awe-band
+aweband
+awe-bound
+awe-commanding
+awe-compelling
+awed
+awedly
+awedness
+awee
+a-week
+aweek
+aweel
+awe-filled
+aweigh
+aweing
+awe-inspired
+awe-inspiring
+awe-inspiringly
+aweless
+awelessness
+Awellimiden
+Awendaw
+awes
+awesome
+awesomely
+awesomeness
+a-west
+awest
+awe-stricken
+awestricken
+awe-strike
+awestrike
+awe-struck
+awestruck
+aweto
+awfu
+awful
+awful-eyed
+awful-gleaming
+awfuller
+awfullest
+awful-looking
+awfully
+awfulness
+awful-voiced
+AWG
+awhape
+awheel
+a-wheels
+awheft
+a-whet
+awhet
+awhile
+a-whiles
+a-whir
+awhir
+a-whirl
+awhirl
+awide
+awiggle
+awikiwiki
+awin
+a-wing
+awing
+awingly
+a-wink
+awink
+awiwi
+AWK
+awk
+awkly
+awkward
+awkwarder
+awkwardest
+awkwardish
+awkwardly
+awkwardness
+awkwardnesses
+AWL
+awl
+awless
+awlessness
+awl-fruited
+awl-leaved
+awls
+awl-shaped
+awlwort
+awlworts
+awm
+awmbrie
+awmous
+awn
+awned
+awner
+awning
+awninged
+awnings
+awnless
+awnlike
+awns
+awny
+a-wobble
+awoke
+awoken
+A.W.O.L.
+AWOL
+Awol
+awol
+Awolowo
+awols
+awonder
+a-work
+awork
+aworry
+aworth
+a-wrack
+a-wreak
+awreak
+awreck
+awrist
+awrong
+awry
+Awshar
+AWST
+AWU
+awunctive
+Ax
+ax
+ax.
+Axa
+ax-adz
+AXAF
+axal
+axanthopsia
+axbreaker
+Axe
+axe
+axe-breaker
+axebreaker
+axed
+Axel
+axel
+axels
+axeman
+axemaster
+axemen
+axenic
+axenically
+axer
+axerophthol
+axers
+axes
+axfetch
+axhammer
+axhammered
+axhead
+axial
+axial-flow
+axialities
+axiality
+axially
+axiate
+axiation
+Axifera
+axiferous
+axiform
+axifugal
+axil
+axile
+axilemma
+axilemmas
+axilemmata
+axilla
+axillae
+axillant
+axillar
+axillaries
+axillars
+axillary
+axillas
+axils
+axin
+axine
+axing
+axiniform
+axinite
+axinomancy
+axiolite
+axiolitic
+axiological
+axiologically
+axiologies
+axiologist
+axiology
+axiom
+axiomatic
+axiomatical
+axiomatically
+axiomatization
+axiomatizations
+axiomatize
+axiomatized
+axiomatizes
+axiomatizing
+axioms
+axion
+axiopisty
+Axiopoenus
+Axis
+axis
+axised
+axises
+axisymmetric
+axisymmetrical
+axisymmetrically
+axisymmetry
+axite
+axites
+axle
+axle-bending
+axle-boring
+axle-centering
+axled
+axle-forging
+axles
+axlesmith
+axle-tooth
+axle-tree
+axletree
+axletrees
+axlike
+axmaker
+axmaking
+axman
+axmanship
+axmaster
+axmen
+Axminster
+axminster
+axodendrite
+axofugal
+axogamy
+axoid
+axoidean
+axolemma
+axolotl
+axolotls
+axolysis
+axometer
+axometric
+axometry
+axon
+axonal
+axone
+axonemal
+axoneme
+axonemes
+axones
+axoneure
+axoneuron
+Axonia
+axonic
+Axonolipa
+axonolipous
+axonometric
+axonometry
+Axonophora
+axonophorous
+Axonopus
+axonost
+axons
+axopetal
+axophyte
+axoplasm
+axoplasmic
+axoplasms
+axopodia
+axopodium
+axospermous
+axostyle
+axotomous
+axseed
+axseeds
+ax-shaped
+Axson
+axstone
+Axtel
+Axtell
+Axton
+axtree
+Axum
+Axumite
+axunge
+axweed
+axwise
+axwort
+AY
+Ay
+ay
+ay-
+ayacahuite
+Ayacucho
+ayah
+ayahausca
+ayahs
+ayahuasca
+Ayahuca
+Ayala
+ayapana
+ayatollah
+ayatollahs
+Aycliffe
+Aydelotte
+Ayden
+Aydendron
+Aydin
+Aydlett
+aye
+a-year
+aye-aye
+aye-ceaseless
+aye-during
+aye-dwelling
+ayegreen
+aye-lasting
+aye-living
+a-yelp
+ayelp
+ayen
+ayenbite
+ayens
+ayenst
+Ayer
+ayer-ayer
+aye-remaining
+aye-renewed
+aye-restless
+aye-rolling
+Ayers
+aye-running
+ayes
+Ayesha
+aye-sought
+aye-troubled
+aye-turning
+aye-varied
+aye-welcome
+ay-green
+AYH
+ayield
+ayin
+Ayina
+ayins
+Aylesbury
+ayless
+aylet
+Aylett
+ayllu
+Aylmar
+Aylmer
+Aylsworth
+Aylward
+Aym
+Aymara
+aymara
+Aymaran
+Aymaras
+Ayme
+ayme
+Aymer
+Aymoro
+Ayn
+Aynat
+ayne
+Aynor
+Ayntab
+Ayo
+ayond
+ayont
+ayous
+Ayr
+ayre
+Ayres
+Ayrshire
+ayrshire
+ays
+Aythya
+ayu
+Ayubite
+ayudante
+Ayudhya
+ayuntamiento
+ayuntamientos
+Ayurveda
+ayurveda
+ayurvedas
+Ayurvedic
+Ayuthea
+Ayuthia
+Ayutthaya
+ayuyu
+aywhere
+Ayyubid
+AZ
+az
+az-
+aza-
+azadirachta
+azadrachta
+azafran
+azafrin
+Azal
+Azalea
+azalea
+Azaleah
+azaleamum
+azaleas
+Azalia
+Azan
+azan
+Azana
+Azande
+azans
+Azar
+Azarcon
+Azaria
+Azariah
+azarole
+Azarria
+azaserine
+azathioprine
+Azazel
+azazel
+Azbine
+azedarac
+azedarach
+Azeglio
+Azeito
+azelaic
+azelate
+Azelea
+Azelfafage
+azeotrope
+azeotropic
+azeotropism
+azeotropy
+Azerbaidzhan
+Azerbaijan
+Azerbaijanese
+Azerbaijani
+Azerbaijanian
+Azerbaijanis
+Azeria
+Azha
+Azide
+azide
+azides
+azido
+aziethane
+Azikiwe
+Azilian
+Azilian-tardenoisian
+azilut
+Azimech
+azimene
+azimethylene
+azimide
+azimin
+azimine
+azimino
+aziminobenzene
+azimuth
+azimuthal
+azimuthally
+azimuths
+azine
+azines
+azinphosmethyl
+aziola
+Aziza
+azlactone
+Azle
+azlon
+azlons
+Aznavour
+azo
+azo-
+azobacter
+azobenzene
+azobenzil
+azobenzoic
+azobenzol
+azoblack
+azoch
+azocochineal
+azocoralline
+azocorinth
+azocyanide
+azocyclic
+azodicarboxylic
+azodiphenyl
+azodisulphonic
+azoeosin
+azoerythrin
+Azof
+azofication
+azofier
+azoflavine
+azoformamide
+azoformic
+azofy
+azogallein
+azogreen
+azogrenadine
+azohumic
+azoic
+azoimide
+azoisobutyronitrile
+azole
+azoles
+azolitmin
+Azolla
+azomethine
+azon
+azonal
+azonaphthalene
+azonic
+azonium
+azons
+azoology
+azo-orange
+azo-orchil
+azo-orseilline
+azoospermia
+azoparaffin
+azophen
+azophenetole
+azophenine
+azophenol
+azophenyl
+azophenylene
+Azophi
+azophosphin
+azophosphore
+azoprotein
+Azor
+Azores
+azores
+Azorian
+Azorin
+azorite
+azorubine
+azosulphine
+azosulphonic
+azotaemia
+azotate
+azote
+azotea
+azoted
+azotemia
+azotemias
+azotemic
+azotenesis
+azotes
+azotetrazole
+azoth
+azothionium
+azoths
+azotic
+azotin
+azotine
+azotise
+azotised
+azotises
+azotising
+azotite
+azotize
+azotized
+azotizes
+azotizing
+Azotobacter
+azotobacter
+Azotobacterieae
+azotoluene
+azotometer
+azotorrhea
+azotorrhoea
+Azotos
+azotous
+azoturia
+azoturias
+Azov
+azovernine
+azox
+azoxazole
+azoxime
+azoxine
+azoxonium
+azoxy
+azoxyanisole
+azoxybenzene
+azoxybenzoic
+azoxynaphthalene
+azoxyphenetole
+azoxytoluidine
+Azpurua
+Azrael
+azrael
+Azral
+Azriel
+Aztec
+aztec
+Azteca
+azteca
+Aztecan
+aztecan
+aztecs
+azthionium
+Azuela
+Azuero
+azulejo
+azulejos
+azulene
+azuline
+azulite
+azulmic
+azumbre
+azure
+azurean
+azure-blazoned
+azure-blue
+azure-canopied
+azure-circled
+azure-colored
+azured
+azure-domed
+azure-eyed
+azure-footed
+azure-inlaid
+azure-mantled
+azureness
+azureous
+azure-penciled
+azure-plumed
+azures
+azure-tinted
+azure-vaulted
+azure-veined
+azurine
+azurite
+azurites
+azurmalachite
+azurous
+azury
+Azusa
+azygo-
+Azygobranchia
+Azygobranchiata
+azygobranchiate
+azygomatous
+azygos
+azygoses
+azygosperm
+azygospore
+azygote
+azygous
+azyme
+azymite
+azymous
+B
+B-
+b
+B911
+B.A.
+BA
+Ba
+ba
+B.A.A.
+BAA
+baa
+baaed
+baahling
+baaing
+Baal
+baal
+Baalath
+Baalbeer
+Baalbek
+Baal-berith
+Baalim
+baalim
+Baalish
+Baalism
+baalism
+baalisms
+Baalist
+Baalistic
+Baalite
+Baalitical
+Baalize
+Baalized
+Baalizing
+Baalman
+baals
+Baalshem
+baar
+baas
+baases
+baaskaap
+baaskaaps
+baaskap
+Baastan
+Bab
+bab
+Baba
+baba
+babacoote
+babai
+babajaga
+baba-koto
+babakoto
+Babar
+Babara
+babas
+babasco
+babassu
+babassus
+babasu
+babaylan
+babaylanes
+Babb
+Babbage
+babbage
+Babbette
+Babbie
+babbie
+babbishly
+babbit
+babbit-metal
+Babbitry
+Babbitt
+babbitt
+babbitted
+babbitter
+Babbittess
+Babbittian
+babbitting
+Babbittish
+Babbittism
+Babbittry
+babbittry
+babbitts
+babblative
+babble
+babbled
+babblement
+babbler
+babblers
+babbles
+babblesome
+babbling
+babblingly
+babblings
+babblish
+babblishly
+babbly
+babbool
+babbools
+Babby
+babby
+Babcock
+babcock
+Babe
+babe
+babe-faced
+babehood
+Babel
+babel
+Babeldom
+babelet
+Babelic
+babelike
+Babelisation
+Babelise
+Babelised
+Babelish
+Babelising
+Babelism
+Babelization
+Babelize
+Babelized
+Babelizing
+babels
+Baber
+babery
+babes
+babeship
+Babesia
+babesia
+babesias
+babesiasis
+babesiosis
+Babette
+Babeuf
+Babhan
+Babi
+Babiana
+babiche
+babiches
+babied
+babies
+babies'-breath
+Babiism
+babillard
+Babine
+babingtonite
+babion
+babirousa
+babiroussa
+babirusa
+babirusas
+babirussa
+babis
+babish
+babished
+babishly
+babishness
+Babism
+Babist
+Babita
+Babite
+Babits
+babka
+babkas
+bablah
+bable
+babloh
+baboen
+Babol
+Babongo
+baboo
+baboodom
+babooism
+babool
+babools
+baboon
+baboonery
+baboonish
+baboonroot
+baboons
+baboos
+baboosh
+baboot
+babouche
+Babouvism
+Babouvist
+babracot
+babroot
+Babs
+Babson
+babu
+Babua
+babudom
+babuina
+babuism
+babul
+babuls
+Babuma
+Babungera
+Babur
+baburd
+babus
+babushka
+babushkas
+baby
+baby-blue-eyes
+Baby-bouncer
+baby-browed
+baby-doll
+babydom
+baby-face
+baby-faced
+baby-featured
+babyfied
+babyhood
+babyhoods
+babyhouse
+babying
+babyish
+babyishly
+babyishness
+babyism
+baby-kissing
+babylike
+Babylon
+babylon
+Babylonia
+babylonia
+Babylonian
+babylonian
+babylonians
+Babylonic
+Babylonish
+babylonish
+Babylonism
+Babylonite
+Babylonize
+babyolatry
+baby-sat
+babysat
+baby's-breath
+babyship
+baby-sit
+babysit
+baby-sitter
+babysitter
+baby-sitting
+babysitting
+baby-sized
+baby-snatching
+baby's-slippers
+baby-tears
+Baby-walker
+Bac
+bac
+bacaba
+bacach
+bacalao
+bacalaos
+bacao
+Bacardi
+Bacau
+bacauan
+bacbakiri
+BAcc
+bacca
+baccaceous
+baccae
+baccalaurean
+baccalaureat
+baccalaureate
+baccalaureates
+baccalaureus
+baccar
+baccara
+baccaras
+baccarat
+baccarats
+baccare
+baccate
+baccated
+Bacchae
+bacchae
+bacchanal
+Bacchanalia
+bacchanalia
+bacchanalian
+bacchanalianism
+bacchanalianly
+Bacchanalias
+bacchanalias
+bacchanalism
+bacchanalization
+bacchanalize
+bacchanals
+bacchant
+bacchante
+bacchantes
+bacchantic
+bacchants
+bacchar
+baccharis
+baccharoid
+baccheion
+Bacchelli
+bacchiac
+bacchian
+Bacchic
+bacchic
+Bacchical
+Bacchides
+bacchii
+bacchiuchii
+bacchius
+Bacchus
+bacchus
+Bacchuslike
+Bacchylides
+baccies
+bacciferous
+bacciform
+baccilla
+baccilli
+baccillla
+baccillum
+Baccio
+baccivorous
+baccy
+BACH
+Bach
+bach
+Bacharach
+bacharach
+Bache
+bache
+bached
+bachel
+Bacheller
+bachelor
+bachelor-at-arms
+bachelordom
+bachelorette
+bachelorhood
+bachelorhoods
+bachelorism
+bachelorize
+bachelorlike
+bachelorly
+bachelors
+bachelors-at-arms
+bachelor's-button
+bachelor's-buttons
+bachelorship
+bachelorwise
+bachelry
+baches
+Bachichi
+baching
+Bachman
+bacilary
+bacile
+Bacillaceae
+bacillar
+Bacillariaceae
+bacillariaceous
+Bacillariales
+Bacillarieae
+Bacillariophyta
+bacillary
+bacillemia
+bacilli
+bacillian
+bacillicidal
+bacillicide
+bacillicidic
+bacilliculture
+bacilliform
+bacilligenic
+bacilliparous
+bacillite
+bacillogenic
+bacillogenous
+bacillophobia
+bacillosis
+bacilluria
+bacillus
+bacin
+Bacis
+bacitracin
+back
+back-
+backache
+backaches
+backaching
+backachy
+back-acting
+backadation
+backage
+back-alley
+back-and-forth
+back-angle
+backare
+backarrow
+backarrows
+backband
+backbar
+backbear
+backbearing
+backbeat
+backbeats
+back-bencher
+backbencher
+backbenchers
+backbend
+backbends
+backberand
+back-berend
+backberend
+backbit
+backbite
+backbiter
+backbiters
+backbites
+back-biting
+backbiting
+backbitingly
+backbitten
+back-blocker
+backblocks
+backblow
+back-blowing
+back-board
+backboard
+backboards
+backbone
+backboned
+backboneless
+backbonelessness
+backbones
+backbrand
+backbreaker
+back-breaking
+backbreaking
+back-breathing
+back-broken
+back-burner
+backcap
+backcast
+backcasts
+backchain
+backchat
+backchats
+back-check
+back-cloth
+backcloth
+back-cloths
+backcomb
+back-coming
+back-connected
+back-country
+backcountry
+backcourt
+backcourtman
+backcross
+backdate
+backdated
+backdates
+backdating
+back-door
+backdoor
+backdown
+back-drawing
+back-drawn
+backdrop
+backdrops
+backed
+backed-off
+backen
+back-end
+backened
+backening
+Backer
+backer
+backers
+backers-up
+backer-up
+backet
+back-face
+back-facing
+backfall
+back-fanged
+backfatter
+backfield
+backfields
+backfill
+backfilled
+backfiller
+back-filleted
+backfilling
+backfills
+back-fire
+backfire
+backfired
+backfires
+backfiring
+backflap
+backflash
+backflip
+backflow
+back-flowing
+backflowing
+back-flung
+back-focused
+backfold
+back-formation
+backframe
+backfriend
+backfurrow
+backgame
+backgammon
+backgammons
+back-geared
+backgeared
+back-glancing
+back-going
+background
+backgrounds
+back-hand
+backhand
+back-handed
+backhanded
+backhandedly
+backhandedness
+back-hander
+backhander
+backhanding
+backhands
+backhatch
+backhaul
+backhauled
+backhauling
+backhauls
+Backhaus
+backheel
+backhoe
+backhoes
+backhooker
+backhouse
+backhouses
+backie
+backiebird
+backing
+backing-off
+backings
+backjaw
+backjoint
+backland
+backlands
+back-lash
+backlash
+backlashed
+backlasher
+backlashers
+backlashes
+backlashing
+back-leaning
+Backler
+backless
+backlet
+backliding
+back-light
+back-lighted
+back-lighting
+backlighting
+backlings
+backlins
+back-list
+backlist
+backlists
+back-lit
+backlit
+back-log
+backlog
+backlogged
+backlogging
+backlogs
+back-looking
+backlotter
+back-lying
+back-making
+backmost
+back-number
+backoff
+backorder
+backout
+backouts
+backpack
+backpacked
+backpacker
+backpackers
+backpacking
+backpacks
+back-paddle
+back-paint
+back-palm
+back-pedal
+backpedal
+back-pedaled
+backpedaled
+back-pedaling
+backpedaling
+back-pedalled
+back-pedalling
+back-piece
+backpiece
+backplane
+backplanes
+back-plaster
+back-plate
+backplate
+backpointer
+backpointers
+back-pulling
+back-putty
+back-racket
+back-raking
+backrest
+backrests
+backrope
+backropes
+backrun
+backrush
+backrushes
+Backs
+backs
+backsaw
+backsaws
+backscatter
+backscattered
+backscattering
+backscatters
+backscraper
+back-scratcher
+backscratcher
+back-scratching
+backscratching
+backseat
+backseats
+back-set
+backset
+backsets
+backsetting
+back-settler
+backsettler
+back-sey
+backsey
+backsheesh
+backshift
+backshish
+backside
+backsides
+backsight
+backsite
+back-slang
+back-slanging
+backslap
+backslapped
+backslapper
+backslappers
+back-slapping
+backslapping
+backslaps
+backslash
+backslashes
+backslid
+backslidden
+backslide
+backslided
+backslider
+backsliders
+backslides
+backsliding
+backslidingness
+backspace
+backspaced
+backspacefile
+backspacer
+backspaces
+backspacing
+backspang
+backspear
+backspeer
+backspeir
+backspier
+backspierer
+back-spiker
+backspin
+backspins
+backsplice
+backspliced
+backsplicing
+backspread
+backspringing
+backstab
+backstabbed
+backstabber
+backstabbing
+back-staff
+backstaff
+backstage
+backstair
+backstairs
+backstamp
+back-starting
+backstay
+backstays
+Backstein
+back-stepping
+backster
+backstick
+back-stitch
+backstitch
+backstitched
+backstitches
+backstitching
+backstone
+backstop
+back-stope
+backstopped
+backstopping
+backstops
+backstrap
+back-strapped
+backstrapped
+backstreet
+back-streeter
+backstretch
+backstretches
+backstring
+backstrip
+back-stroke
+backstroke
+backstroked
+backstrokes
+backstroking
+backstromite
+back-surging
+backswept
+backswimmer
+backswing
+back-sword
+backsword
+backswording
+backswordman
+backswordmen
+backswordsman
+backtack
+back-talk
+backtalk
+back-tan
+backtender
+backtenter
+back-titrate
+back-titration
+back-to-back
+back-to-front
+backtrace
+backtrack
+backtracked
+backtracker
+backtrackers
+backtracking
+backtracks
+backtrail
+back-trailer
+backtrick
+back-trip
+back-up
+backup
+backups
+Backus
+backus
+backveld
+backvelder
+backwall
+back-ward
+backward
+backwardation
+backwardly
+backwardness
+backwardnesses
+backwards
+backwash
+backwashed
+backwasher
+backwashes
+backwashing
+backwater
+backwatered
+backwaters
+back-way
+backway
+backwind
+backwinded
+backwinding
+backwood
+backwoods
+backwoodser
+backwoodsiness
+backwoodsman
+backwoodsmen
+backwoodsy
+backword
+backworm
+backwort
+backwrap
+backwraps
+backy
+backyard
+backyarder
+backyards
+baclava
+Bacliff
+baclin
+Baco
+Bacolod
+Bacon
+bacon
+bacon-and-eggs
+baconer
+Baconian
+baconian
+Baconianism
+Baconic
+Baconism
+Baconist
+baconize
+bacons
+Baconton
+baconweed
+bacony
+Bacopa
+Bacova
+bacquet
+bact
+bact.
+bacteraemia
+bacteremia
+bacteremic
+bacteri-
+bacteria
+Bacteriaceae
+bacteriaceous
+bacteriaemia
+bacterial
+bacterially
+bacterian
+bacteric
+bactericholia
+bactericidal
+bactericidally
+bactericide
+bactericides
+bactericidin
+bacterid
+bacteriemia
+bacteriform
+bacterin
+bacterins
+bacterio-
+bacterioagglutinin
+bacterioblast
+bacteriochlorophyll
+bacteriocidal
+bacteriocin
+bacteriocyte
+bacteriodiagnosis
+bacteriofluorescin
+bacteriogenic
+bacteriogenous
+bacteriohemolysin
+bacterioid
+bacterioidal
+bacteriol
+bacteriol.
+bacteriologic
+bacteriological
+bacteriologically
+bacteriologies
+bacteriologist
+bacteriologists
+bacteriology
+bacteriolysin
+bacteriolysis
+bacteriolytic
+bacteriolyze
+bacterio-opsonic
+bacterio-opsonin
+bacteriopathology
+bacteriophage
+bacteriophages
+bacteriophagia
+bacteriophagic
+bacteriophagous
+bacteriophagy
+bacteriophobia
+bacterioprecipitin
+bacterioprotein
+bacteriopsonic
+bacteriopsonin
+bacteriopurpurin
+bacteriorhodopsin
+bacterioscopic
+bacterioscopical
+bacterioscopically
+bacterioscopist
+bacterioscopy
+bacteriosis
+bacteriosolvent
+bacteriostasis
+bacteriostat
+bacteriostatic
+bacteriostatically
+bacteriotherapeutic
+bacteriotherapy
+bacteriotoxic
+bacteriotoxin
+bacteriotropic
+bacteriotropin
+bacteriotrypsin
+bacterious
+bacteririum
+bacteritic
+bacterium
+bacteriuria
+bacterization
+bacterize
+bacterized
+bacterizing
+bacteroid
+bacteroidal
+Bacteroideae
+Bacteroides
+bacteroides
+bactetiophage
+Bactra
+Bactria
+Bactrian
+Bactris
+Bactrites
+bactriticone
+bactritoid
+bacubert
+bacula
+bacule
+baculere
+baculi
+baculiferous
+baculiform
+baculine
+baculite
+Baculites
+baculitic
+baculiticone
+baculoid
+baculo-metry
+baculum
+baculums
+baculus
+bacury
+bad
+Badacsonyi
+Badaga
+Badajoz
+Badakhshan
+Badalona
+badan
+Badarian
+badarrah
+badass
+badassed
+badasses
+badaud
+Badawi
+Badaxe
+badaxe
+Badb
+badchan
+baddeleyite
+badder
+badderlocks
+baddest
+baddie
+baddies
+baddish
+baddishly
+baddishness
+baddock
+baddy
+bade
+Baden
+Baden-Baden
+badenite
+Baden-Powell
+Baden-Wtemberg
+badge
+badged
+badgeless
+badgeman
+badgemen
+Badger
+badger
+badgerbrush
+badgered
+badgerer
+badgering
+badgeringly
+badger-legged
+badgerlike
+badgerly
+badgers
+badgerweed
+badges
+badging
+badgir
+badhan
+bad-headed
+bad-hearted
+bad-humored
+badiaga
+badian
+badigeon
+Badin
+badinage
+badinaged
+badinages
+badinaging
+badiner
+badinerie
+badineur
+badious
+badju
+badland
+badlands
+badling
+bad-looking
+badly
+badman
+badmash
+badmen
+BAdmEng
+bad-minded
+badminton
+badmintons
+bad-mouth
+badmouth
+badmouthed
+badmouthing
+badmouths
+badness
+badnesses
+Badoeng
+Badoglio
+Badon
+Badr
+badrans
+bads
+bad-smelling
+bad-tempered
+Baduhenna
+BAE
+bae
+bae-
+Baecher
+BAEd
+Baeda
+Baedeker
+baedeker
+Baedekerian
+baedekers
+Baekeland
+Bael
+bael
+Baelbeer
+Baer
+Baeria
+Baerl
+Baerman
+Baese
+baetuli
+baetulus
+baetyl
+baetylic
+baetylus
+baetzner
+Baeyer
+Baez
+bafaro
+baff
+baffed
+baffeta
+baffies
+Baffin
+baffing
+baffle
+baffled
+bafflement
+bafflements
+baffleplate
+baffler
+bafflers
+baffles
+baffling
+bafflingly
+bafflingness
+baffs
+baffy
+BAFO
+baft
+bafta
+baftah
+Bafyot
+BAg
+bag
+baga
+Baganda
+bagani
+bagass
+bagasse
+bagasses
+bagataway
+bagatelle
+bagatelles
+Bagatha
+bagatine
+bagattini
+bagattino
+Bagaudae
+bag-bearing
+bag-bedded
+bag-bundling
+bag-cheeked
+bag-closing
+bag-cutting
+Bagdad
+Bagdi
+BAgE
+Bagehot
+bagel
+bagels
+bag-filling
+bag-flower
+bag-folding
+bagful
+bagfuls
+baggage
+baggageman
+baggagemaster
+baggager
+baggages
+baggage-smasher
+baggala
+bagganet
+Baggara
+bagge
+bagged
+Bagger
+bagger
+baggers
+Baggett
+baggie
+baggier
+baggies
+baggiest
+baggily
+bagginess
+bagging
+baggings
+baggit
+Baggott
+Baggs
+baggy
+baggyrinkle
+baggywrinkle
+bagh
+Baghdad
+baghdad
+Bagheera
+Bagheli
+baghla
+Baghlan
+baghouse
+bagie
+Baginda
+bagio
+bagios
+Bagirmi
+bagle
+bagleaves
+Bagley
+baglike
+bagmaker
+bagmaking
+bagman
+bagmen
+bagne
+Bagnes
+bagnes
+bagnet
+bagnette
+bagnio
+bagnios
+bagnut
+bago
+Bagobo
+bagonet
+bagong
+bagoong
+bagpipe
+bagpiped
+bagpiper
+bagpipers
+bagpipes
+bagpiping
+bagplant
+bagpod
+bag-printing
+bagpudding
+Bagpuize
+BAgr
+Bagram
+bagrationite
+bagre
+bag-reef
+bagreef
+Bagritski
+bagroom
+bags
+BAgSc
+bag-sewing
+bagsful
+bag-shaped
+bagtikan
+baguet
+baguets
+baguette
+baguettes
+Baguio
+baguio
+baguios
+bagwash
+Bagwell
+bag-wig
+bagwig
+bagwigged
+bagwigs
+bagwoman
+bagwomen
+bagwork
+bagworm
+bagworms
+bagwyn
+bah
+bahada
+bahadur
+bahadurs
+Baha'i
+Bahai
+bahai
+Bahaism
+Bahaist
+Baham
+Bahama
+Bahamas
+bahamas
+Bahamian
+bahamian
+bahamians
+bahan
+bahar
+Baha'ullah
+Bahaullah
+Bahawalpur
+bahawder
+bahay
+bahera
+Bahia
+bahiaite
+Bahima
+bahisti
+Bahmani
+Bahmanid
+Bahner
+bahnung
+baho
+bahoe
+bahoo
+Bahr
+Bahrain
+Bahrein
+baht
+bahts
+Bahuma
+bahur
+bahut
+bahuts
+Bahutu
+bahuvrihi
+bahuvrihis
+Bai
+bai
+Baiae
+Baianism
+baidak
+baidar
+baidarka
+baidarkas
+Baidya
+Baiel
+Baiera
+baiginet
+baign
+baignet
+baigneuse
+baigneuses
+baignoire
+Baikal
+baikalite
+baikerinite
+baikerite
+baikie
+Baikonur
+Bail
+bail
+bailable
+bailage
+Bailar
+bail-dock
+baile
+bailed
+bailee
+bailees
+bailer
+bailers
+Bailey
+bailey
+baileys
+Baileyton
+Baileyville
+bailiaries
+bailiary
+Bailie
+bailie
+bailieries
+bailiery
+bailies
+bailieship
+bailiff
+bailiffry
+bailiffs
+bailiffship
+bailiffwick
+bailing
+bailiwick
+bailiwicks
+Baillaud
+bailli
+bailliage
+Baillie
+baillie
+Baillieu
+baillone
+Baillonella
+Bailly
+bailment
+bailments
+bailo
+bailor
+bailors
+bail-out
+bailout
+bailouts
+bailpiece
+bails
+bailsman
+bailsmen
+bailwood
+Baily
+Bain
+bain
+Bainbridge
+Bainbrudge
+bainie
+Baining
+bainite
+bain-marie
+Bains
+bains-marie
+Bainter
+Bainville
+baioc
+baiocchi
+baiocco
+bairagi
+Bairam
+bairam
+Baird
+Bairdford
+bairdi
+bairn
+bairnie
+bairnish
+bairnishness
+bairnlier
+bairnliest
+bairnliness
+bairnly
+bairns
+Bairnsfather
+bairnteam
+bairnteem
+bairntime
+bairnwort
+Bairoil
+Bais
+Baisakh
+Baisden
+baisemain
+Baiss
+baister
+bait
+baited
+baiter
+baiters
+baitfish
+baith
+baiting
+baits
+baittle
+baitylos
+baiza
+baizas
+baize
+baized
+baizes
+baizing
+Baja
+baja
+bajada
+Bajadero
+Bajaj
+Bajan
+bajan
+Bajardo
+bajarigar
+Bajau
+Bajer
+bajocco
+bajochi
+Bajocian
+bajoire
+bajonado
+BAJour
+bajra
+bajree
+bajri
+bajulate
+bajury
+Bak
+baka
+Bakairi
+bakal
+Bakalai
+Bakalei
+Bakatan
+bake
+bakeapple
+bakeboard
+baked
+baked-apple
+bakehead
+bakehouse
+bakehouses
+Bakelite
+bakelite
+bakelize
+Bakeman
+bake-meat
+bakemeat
+bakemeats
+Bakemeier
+baken
+bake-off
+bakeout
+bakeoven
+bakepan
+Baker
+baker
+bakerdom
+bakeress
+bakeries
+bakerite
+baker-knee
+baker-kneed
+baker-leg
+baker-legged
+bakerless
+bakerlike
+bakerly
+Bakerman
+bakers
+Bakersfield
+bakersfield
+bakership
+Bakerstown
+Bakersville
+Bakerton
+bakery
+Bakes
+bakes
+bakeshop
+bakeshops
+bakestone
+bakeware
+Bakewell
+Bakhmut
+Bakhtiari
+bakie
+baking
+bakingly
+bakings
+Bakke
+Bakki
+baklava
+baklavas
+baklawa
+baklawas
+bakli
+Bakongo
+bakra
+Bakshaish
+baksheesh
+baksheeshes
+bakshi
+bakshis
+bakshish
+bakshished
+bakshishes
+bakshishing
+Bakst
+baktun
+Baku
+baku
+Bakuba
+bakula
+Bakunda
+Bakunin
+Bakuninism
+Bakuninist
+bakupari
+Bakutu
+Bakwiri
+BAL
+Bal
+bal
+bal.
+Bala
+Balaam
+balaam
+Balaamite
+Balaamitical
+balabos
+Balac
+balachan
+balachong
+Balaclava
+balaclava
+balada
+baladine
+Balaena
+Balaenicipites
+balaenid
+Balaenidae
+balaenoid
+Balaenoidea
+balaenoidean
+Balaenoptera
+Balaenopteridae
+balafo
+balagan
+balaghat
+balaghaut
+balai
+Balaic
+Balak
+Balakirev
+Balaklava
+balalaika
+balalaikas
+Balan
+Balance
+balance
+balanceable
+balanced
+balancedness
+balancelle
+balanceman
+balancement
+balancer
+balancers
+balances
+balancewise
+Balanchine
+balancing
+balander
+balandra
+balandrana
+balaneutics
+Balanga
+balangay
+balanic
+balanid
+Balanidae
+balaniferous
+balanism
+balanite
+Balanites
+balanitis
+balanoblennorrhea
+balanocele
+Balanoglossida
+Balanoglossus
+balanoid
+Balanophora
+Balanophoraceae
+balanophoraceous
+balanophore
+balanophorin
+balanoplasty
+balanoposthitis
+balanopreputial
+Balanops
+balanops
+Balanopsidaceae
+Balanopsidales
+balanorrhagia
+balant
+Balanta
+Balante
+balantidial
+balantidiasis
+balantidic
+balantidiosis
+Balantidium
+Balanus
+Balao
+balao
+balaos
+balaphon
+Balarama
+balarao
+Balas
+balas
+balases
+balat
+balata
+balatas
+balate
+Balaton
+balatong
+balatron
+balatronic
+balatte
+balau
+balausta
+balaustine
+balaustre
+Balawa
+Balawu
+balayeuse
+Balbinder
+Balbo
+Balboa
+balboa
+balboas
+balbriggan
+Balbuena
+Balbur
+balbusard
+balbutiate
+balbutient
+balbuties
+Balcer
+Balch
+balche
+Balcke
+balcon
+balcone
+balconet
+balconette
+balconied
+balconies
+balcony
+Bald
+bald
+baldacchini
+baldacchino
+baldachin
+baldachined
+baldachini
+baldachino
+baldachinos
+baldachins
+Baldad
+baldakin
+baldaquin
+Baldassare
+baldberry
+baldcrown
+balded
+balden
+Balder
+balder
+balder-brae
+balderdash
+balderdashes
+balder-herb
+baldest
+bald-faced
+baldfaced
+baldhead
+bald-headed
+baldheaded
+bald-headedness
+baldheads
+baldicoot
+Baldie
+baldies
+balding
+baldish
+baldling
+baldly
+baldmoney
+baldmoneys
+baldness
+baldnesses
+Baldomero
+baldoquin
+baldpate
+bald-pated
+baldpated
+bald-patedness
+baldpatedness
+baldpates
+Baldr
+baldrib
+baldric
+baldrick
+baldricked
+baldricks
+baldrics
+baldricwise
+Baldridge
+balds
+balducta
+balductum
+Balduin
+Baldur
+Baldwin
+Baldwinsville
+Baldwinville
+Baldwyn
+baldy
+Bale
+bale
+baleare
+Baleares
+Balearian
+Balearic
+Balearica
+balebos
+baled
+baleen
+baleens
+bale-fire
+balefire
+balefires
+baleful
+balefully
+balefulness
+balei
+baleise
+baleless
+Balenciaga
+Baler
+baler
+balers
+bales
+balestra
+balete
+Balewa
+balewort
+baleys
+Balf
+Balfore
+Balfour
+Bali
+bali
+balian
+balibago
+balibuntal
+balibuntl
+Balija
+Balikpapan
+Balilla
+balimbing
+baline
+Balinese
+balinese
+baling
+balinger
+balinghasay
+Baliol
+balisaur
+balisaurs
+balisier
+balistarii
+balistarius
+balister
+Balistes
+balistid
+Balistidae
+balistraria
+balita
+balitao
+baliti
+Balius
+balize
+balk
+Balkan
+balkan
+Balkanic
+Balkanise
+Balkanised
+Balkanising
+Balkanism
+Balkanite
+Balkanization
+balkanization
+Balkanize
+balkanize
+Balkanized
+balkanized
+Balkanizing
+balkanizing
+balkans
+Balkar
+balked
+balker
+balkers
+Balkh
+Balkhash
+balkier
+balkiest
+balkily
+Balkin
+balkiness
+balking
+balkingly
+Balkis
+balkish
+balkline
+balklines
+Balko
+balks
+balky
+Ball
+ball
+Balla
+ballad
+ballade
+balladeer
+balladeers
+ballader
+balladeroyal
+ballades
+balladic
+balladical
+balladier
+balladise
+balladised
+balladising
+balladism
+balladist
+balladize
+balladized
+balladizing
+balladlike
+balladling
+balladmonger
+balladmongering
+balladries
+balladromic
+balladry
+ballads
+balladwise
+ballahoo
+ballahou
+ballam
+ballan
+Ballance
+ballant
+Ballantine
+ballarag
+Ballarat
+Ballard
+ballard
+ballas
+ballast
+ballastage
+ballast-cleaning
+ballast-crushing
+ballasted
+ballaster
+ballastic
+ballasting
+ballast-loading
+ballasts
+ballat
+ballata
+ballate
+ballaton
+ballatoon
+ball-bearing
+ballbuster
+ball-carrier
+ballcarrier
+balldom
+balldress
+balled
+balled-up
+Ballengee
+Ballentine
+baller
+ballerina
+ballerinas
+ballerine
+ballers
+ballet
+balletic
+balletically
+balletomane
+balletomanes
+balletomania
+ballets
+ballett
+ballfield
+ball-flower
+ballflower
+ballgame
+ballgames
+ballgown
+ballgowns
+Ballhausplatz
+ballhawk
+ballhawks
+ball-hooter
+ballhooter
+balli
+balliage
+Ballico
+ballies
+Balliett
+Balling
+balling
+Ballinger
+Ballington
+Balliol
+ballised
+ballism
+ballismus
+ballist
+ballista
+ballistae
+ballistic
+ballistically
+ballistician
+ballisticians
+ballistics
+Ballistite
+ballistite
+ballistocardiogram
+ballistocardiograph
+ballistocardiographic
+ballistocardiography
+ballistophobia
+ballium
+ball-jasper
+Ballman
+ballmine
+ballo
+ballock
+ballocks
+balloen
+ballogan
+ballon
+ballone
+ballones
+ballonet
+ballonets
+ballonette
+ballonne
+ballonnes
+ballons
+ballon-sonde
+balloon
+balloonation
+balloon-berries
+balloon-berry
+ballooned
+ballooner
+ballooners
+balloonery
+balloonet
+balloonfish
+balloonfishes
+balloonflower
+balloonful
+ballooning
+balloonish
+balloonist
+balloonists
+balloonlike
+balloons
+ballot
+Ballota
+ballotade
+ballotage
+ballote
+balloted
+balloter
+balloters
+balloting
+ballotist
+ballots
+ballottable
+ballottement
+ballottine
+ballottines
+Ballou
+Ballouville
+ballow
+ball-park
+ballpark
+ballparks
+ball-planting
+Ballplatz
+ballplayer
+ballplayers
+ball-point
+ballpoint
+ballpoints
+ballproof
+ballroom
+ballrooms
+balls
+ball-shaped
+ballsier
+ballsiest
+ballstock
+balls-up
+ballsy
+ball-thrombus
+ballup
+ballute
+ballutes
+ballweed
+Ballwin
+Bally
+bally
+ballyhack
+ballyhoo
+ballyhooed
+ballyhooer
+ballyhooing
+ballyhoos
+Ballyllumford
+ballyrag
+ballyragged
+ballyragging
+ballyrags
+ballywack
+ballywrack
+balm
+balmacaan
+Balmain
+balm-apple
+Balmarcodes
+Balmat
+Balmawhapple
+balm-breathing
+balm-cricket
+balmier
+balmiest
+balmily
+balminess
+balminesses
+balm-leaved
+balmlike
+balmonies
+Balmont
+balmony
+Balmoral
+balmoral
+balmorals
+Balmorhea
+balms
+balm-shed
+Balmunc
+Balmung
+Balmuth
+balmy
+balnea
+balneae
+balneal
+balneary
+balneation
+balneatory
+balneographer
+balneography
+balneologic
+balneological
+balneologist
+balneology
+balneophysiology
+balneotechnics
+balneotherapeutics
+balneotherapia
+balneotherapy
+balneum
+Balnibarbi
+Baloch
+Balochi
+Balochis
+Baloghia
+Balolo
+balon
+balonea
+baloney
+baloneys
+baloo
+Balopticon
+balopticon
+Balor
+Baloskion
+Baloskionaceae
+balotade
+Balough
+balourdise
+balow
+BALPA
+balr
+bals
+balsa
+Balsam
+balsam
+balsamaceous
+balsamation
+Balsamea
+Balsameaceae
+balsameaceous
+balsamed
+balsamer
+balsamic
+balsamical
+balsamically
+balsamiferous
+balsamina
+Balsaminaceae
+balsaminaceous
+balsamine
+balsaming
+balsamitic
+balsamiticness
+balsamize
+balsamo
+Balsamodendron
+Balsamorrhiza
+balsamous
+balsamroot
+balsams
+balsamum
+balsamweed
+balsamy
+balsas
+balsawood
+Balshem
+Balt
+Balt.
+Balta
+Baltassar
+baltei
+balter
+baltetei
+balteus
+Balthasar
+Balthazar
+baltheus
+Balti
+Baltic
+baltic
+Baltimore
+baltimore
+Baltimorean
+baltimorite
+Baltis
+Balto-slav
+Balto-Slavic
+Balto-slavic
+balto-slavic
+Balto-Slavonic
+Balto-slavonic
+balu
+Baluba
+Baluch
+Baluchi
+baluchi
+Baluchis
+Baluchistan
+baluchithere
+baluchitheria
+Baluchitherium
+baluchitherium
+Baluga
+BALUN
+balun
+Balunda
+balushai
+baluster
+balustered
+balusters
+balustrade
+balustraded
+balustrades
+balustrading
+balut
+balwarra
+balza
+Balzac
+Balzacian
+balzarine
+BAM
+bam
+BAMAF
+bamah
+Bamako
+Bamalip
+Bamangwato
+bambacciata
+bamban
+Bambara
+Bamberg
+Bamberger
+Bambi
+Bambie
+bambini
+bambino
+bambinos
+bambocciade
+bambochade
+bamboche
+bamboo
+bamboos
+bamboozle
+bamboozled
+bamboozlement
+bamboozler
+bamboozlers
+bamboozles
+bamboozling
+Bambos
+bamboula
+Bambuba
+bambuco
+bambuk
+Bambusa
+bambusa
+Bambuseae
+Bambute
+Bamby
+Bamford
+Bamian
+Bamileke
+bammed
+bamming
+bamoth
+bams
+BAMusEd
+Ban
+ban
+Bana
+banaba
+Banach
+banago
+banagos
+banak
+banakite
+banal
+banalities
+banality
+banalize
+banally
+banalness
+banana
+Bananaland
+Bananalander
+bananaquit
+bananas
+Banande
+bananist
+bananivorous
+Banaras
+Banares
+Banat
+banat
+Banate
+banate
+banatite
+banausic
+Banba
+Banbury
+banbury
+banc
+banca
+bancal
+bancales
+bancha
+banchi
+Banco
+banco
+bancos
+Bancroft
+BANCS
+bancus
+band
+Banda
+banda
+bandage
+bandaged
+bandager
+bandagers
+bandages
+bandaging
+bandagist
+Band-Aid
+band-aid
+bandaid
+bandaite
+bandaka
+bandala
+bandalore
+Bandana
+bandana
+bandanaed
+bandanas
+bandanna
+bandannaed
+bandannas
+bandar
+Bandaranaike
+Bandar-log
+bandar-log
+bandarlog
+bandbox
+bandboxes
+bandboxical
+bandboxy
+bandcase
+bandcutter
+bande
+bandeau
+bandeaus
+bandeaux
+banded
+Bandeen
+bandel
+bandelet
+bandelette
+Bandello
+bandeng
+Bander
+bander
+Bandera
+banderilla
+banderillas
+banderillero
+banderilleros
+banderlog
+Banderma
+banderol
+banderole
+banderoled
+banderoles
+banderoling
+banderols
+banders
+bandersnatch
+bandfile
+bandfiled
+bandfiling
+bandfish
+band-gala
+bandgap
+bandh
+bandhava
+bandhook
+Bandhor
+bandhu
+bandi
+bandicoot
+bandicoots
+bandicoy
+bandido
+bandidos
+bandie
+bandied
+bandies
+bandikai
+Bandinelli
+bandiness
+banding
+bandit
+banditism
+banditries
+banditry
+bandits
+banditti
+Bandjarmasin
+Bandjermasin
+Bandkeramik
+bandle
+bandleader
+Bandler
+bandless
+bandlessly
+bandlessness
+bandlet
+bandlimit
+bandlimited
+bandlimiting
+bandlimits
+bandman
+bandmaster
+bandmasters
+bando
+bandobust
+Bandoeng
+bandog
+bandogs
+bandoleer
+bandoleered
+bandoleers
+bandolerismo
+bandolero
+bandoleros
+bandolier
+bandoliered
+bandoline
+Bandon
+bandon
+bandonion
+Bandor
+bandora
+bandoras
+bandore
+bandores
+bandos
+bandpass
+bandrol
+bands
+bandsaw
+bandsawed
+band-sawing
+bandsawing
+bandsawn
+band-sawyer
+band-shaped
+bandsman
+bandsmen
+bandspreading
+bandstand
+bandstands
+bandster
+bandstop
+bandstring
+band-tailed
+Bandundu
+Bandung
+Bandur
+bandura
+bandurria
+bandurrias
+Bandusia
+Bandusian
+bandwagon
+bandwagons
+bandwidth
+bandwidths
+bandwork
+bandworm
+bandy
+bandyball
+bandy-bandy
+bandying
+bandy-legged
+bandylegged
+bandyman
+Bandytown
+bane
+baneberries
+baneberry
+Banebrudge
+Banecroft
+baned
+baneful
+banefully
+banefulness
+Banerjea
+Banerjee
+banes
+banewort
+Banff
+Banffshire
+Bang
+bang
+banga
+Bangala
+bangalay
+Bangall
+Bangalore
+bangalow
+Bangash
+bang-bang
+bangboard
+bange
+banged
+banged-up
+banger
+bangers
+banghy
+Bangia
+Bangiaceae
+bangiaceous
+Bangiales
+banging
+Bangka
+Bangkok
+bangkok
+bangkoks
+Bangladesh
+bangladesh
+bangle
+bangled
+bangles
+bangling
+Bangor
+bangos
+Bangs
+bangs
+bangster
+bang-tail
+bangtail
+bangtailed
+bangtails
+Bangui
+bang-up
+bangup
+Bangwaketsi
+Bangweulu
+bangy
+bani
+bania
+banian
+banians
+Banias
+banig
+banilad
+baning
+banish
+banished
+banisher
+banishers
+banishes
+banishing
+banishment
+banishments
+banister
+banister-back
+banisterine
+banisters
+Baniva
+baniwa
+baniya
+banjara
+Banjermasin
+banjo
+banjoes
+banjoist
+banjoists
+banjo-picker
+banjore
+banjorine
+banjos
+banjo-uke
+banjo-ukulele
+banjo-zither
+banjuke
+Banjul
+banjulele
+Bank
+bank
+Banka
+bankable
+Bankalachi
+bank-bill
+bank-book
+bankbook
+bankbooks
+bankcard
+bankcards
+banked
+banker
+bankera
+bankerdom
+bankeress
+banker-mark
+banker-out
+bankers
+banket
+bank-full
+bankfull
+Bankhead
+bank-high
+Banking
+banking
+banking-house
+bankings
+bankman
+bankmen
+bank-note
+banknote
+banknotes
+bankrider
+bank-riding
+bankroll
+bankrolled
+bankroller
+bankrolling
+bankrolls
+bankrupcy
+bankrupt
+bankruptcies
+bankruptcy
+bankrupted
+bankrupting
+bankruptism
+bankruptlike
+bankruptly
+bankrupts
+bankruptship
+bankrupture
+Banks
+banks
+bankshall
+Banksia
+banksia
+Banksian
+banksias
+Bankside
+bank-side
+bankside
+bank-sided
+banksides
+banksman
+banksmen
+Bankston
+bankweed
+bank-wound
+Banky
+banky
+banlieu
+banlieue
+Banlon
+Bann
+Banna
+bannack
+Bannasch
+bannat
+banned
+Banner
+banner
+bannered
+bannerer
+banneret
+bannerets
+bannerette
+banner-fashioned
+bannerfish
+bannerless
+bannerlike
+bannerline
+Bannerman
+bannerman
+bannermen
+bannerol
+bannerole
+bannerols
+banners
+banner-shaped
+bannerwise
+bannet
+bannets
+bannimus
+Banning
+banning
+Bannister
+bannister
+bannisters
+bannition
+Bannock
+bannock
+Bannockburn
+bannocks
+Bannon
+banns
+bannut
+Banon
+banovina
+banque
+Banquer
+banquet
+Banquete
+banqueted
+banqueteer
+banqueteering
+banqueter
+banqueters
+banqueting
+banquetings
+banquets
+banquette
+banquettes
+Banquo
+banquo
+bans
+bansalague
+bansela
+banshee
+banshees
+banshie
+banshies
+Banstead
+banstickle
+bant
+Bantam
+bantam
+bantamize
+bantams
+bantamweight
+bantamweights
+bantay
+bantayan
+banteng
+banter
+bantered
+banterer
+banterers
+bantering
+banteringly
+banters
+bantery
+Banthine
+banties
+bantin
+Banting
+banting
+Bantingism
+bantingize
+bantings
+bantling
+bantlings
+Bantoid
+Bantry
+Bantu
+bantu
+Bantus
+bantus
+Bantustan
+banty
+banus
+banuyo
+Banville
+Banwell
+banxring
+banya
+Banyai
+banyan
+banyans
+Banyoro
+Banyuls
+banzai
+banzais
+BAO
+baobab
+baobabs
+BAOR
+Bap
+bap
+BAPCO
+BAPCT
+Baphia
+Baphomet
+baphomet
+Baphometic
+bapistery
+BAppArts
+Bapt
+bapt
+Baptanodon
+baptise
+baptised
+baptises
+Baptisia
+baptisia
+baptisias
+baptising
+baptism
+baptismal
+baptismally
+baptisms
+Baptist
+baptist
+Baptista
+Baptiste
+baptisteries
+baptistery
+Baptistic
+baptistic
+Baptistown
+baptistries
+baptistry
+baptists
+baptizable
+baptize
+baptized
+baptizee
+baptizement
+baptizer
+baptizers
+baptizes
+baptizing
+Baptlsta
+Baptornis
+BAR
+BAr
+Bar
+bar
+bar-
+bar.
+Bara
+bara
+barabara
+Barabas
+Barabbas
+barabbas
+Baraboo
+barabora
+Barabra
+Barac
+Baraca
+Barack
+Baracoa
+barad
+baradari
+Baraga
+baragnosis
+baragouin
+baragouinish
+Barahona
+baraita
+Baraithas
+Barajas
+barajillo
+Barak
+baraka
+Baralipton
+baralipton
+Baram
+Baramika
+baramin
+bar-and-grill
+barandos
+barangay
+barani
+Baranov
+Barany
+bara-picklet
+bararesque
+bararite
+Baras
+Barashit
+barasingha
+barat
+Barataria
+barathea
+baratheas
+barathra
+barathron
+barathrum
+barato
+baratte
+barauna
+Baray
+Barayon
+baraza
+Barb
+barb
+barba
+Barbabas
+Barbabra
+barbacan
+Barbacoa
+Barbacoan
+barbacou
+Barbadian
+barbadoes
+Barbados
+barbados
+barbal
+barbaloin
+barbar
+Barbara
+barbara
+Barbara-Anne
+Barbaraanne
+barbaralalia
+Barbarea
+Barbaresco
+Barbarese
+Barbaresi
+barbaresque
+Barbarian
+barbarian
+barbarianism
+barbarianize
+barbarianized
+barbarianizing
+barbarians
+barbaric
+barbarical
+barbarically
+barbarious
+barbariousness
+barbarisation
+barbarise
+barbarised
+barbarising
+barbarism
+barbarisms
+barbarities
+barbarity
+barbarization
+barbarize
+barbarized
+barbarizes
+barbarizing
+Barbarossa
+barbarous
+barbarously
+barbarousness
+Barbary
+barbary
+barbas
+barbasco
+barbascoes
+barbascos
+barbastel
+barbastelle
+barbate
+barbated
+barbatimao
+Barbe
+barbe
+Barbeau
+barbeau
+barbecue
+barbecued
+barbecueing
+barbecuer
+barbecues
+barbecuing
+barbed
+barbedness
+Barbee
+barbeiro
+barbel
+barbeled
+barbell
+barbellate
+barbells
+barbellula
+barbellulae
+barbellulate
+barbels
+barbeque
+barbequed
+barbequing
+Barber
+barber
+Barbera
+barbera
+barbered
+barberess
+barberfish
+barbering
+barberish
+barberite
+barbermonger
+barbero
+barberries
+barberry
+barbers
+barbershop
+barbershops
+barber-surgeon
+Barberton
+Barberville
+barbery
+barbes
+barbet
+barbets
+Barbette
+barbette
+barbettes
+Barbey
+Barbeyaceae
+Barbi
+Barbica
+barbican
+barbicanage
+barbicans
+barbicel
+barbicels
+Barbie
+barbierite
+barbigerous
+barbing
+barbion
+Barbirolli
+barbita
+barbital
+barbitalism
+barbitals
+barbiton
+barbitone
+barbitos
+barbituism
+barbiturate
+barbiturates
+barbituric
+barbiturism
+Barbizon
+barble
+barbless
+barblet
+barbola
+barbone
+barbotine
+barbotte
+barbouillage
+Barbour
+Barboursville
+Barbourville
+barboy
+Barboza
+Barbra
+barbre
+barbs
+barbu
+Barbuda
+barbudo
+barbudos
+Barbula
+barbula
+barbulate
+barbule
+barbules
+barbulyie
+Barbur
+Barbusse
+barbut
+barbute
+Barbuto
+barbuts
+barbwire
+barbwires
+Barby
+Barca
+Barcan
+barcarole
+barcaroles
+barcarolle
+barcas
+Barce
+barcella
+Barcellona
+Barcelona
+barcelona
+barcelonas
+Barceloneta
+B.Arch.
+BArch
+barchan
+barchans
+BArchE
+barche
+Barclay
+Barco
+barcolongo
+barcone
+Barcoo
+Barcot
+Barcroft
+Barcus
+Bard
+bard
+bardane
+bardash
+bardcraft
+Barde
+barde
+barded
+bardee
+Bardeen
+bardel
+bardelle
+Barden
+bardes
+Bardesanism
+Bardesanist
+Bardesanite
+bardess
+Bardia
+bardic
+bardie
+bardier
+bardiest
+bardiglio
+bardily
+bardiness
+barding
+bardings
+bardish
+bardism
+bardlet
+bardlike
+bardling
+Bardo
+bardo
+bardocucullus
+Bardolater
+bardolater
+Bardolatry
+bardolatry
+Bardolino
+Bardolph
+Bardolphian
+Bardot
+bards
+bardship
+Bardstown
+Bardulph
+Bardwell
+bardy
+Bare
+bare
+Barea
+bare-ankled
+bare-armed
+bare-ass
+bare-assed
+bareback
+bare-backed
+barebacked
+bare-bitten
+bareboat
+bareboats
+barebone
+bare-boned
+bareboned
+barebones
+bare-bosomed
+bare-branched
+bare-breasted
+bareca
+bare-chested
+bare-clawed
+bared
+bare-faced
+barefaced
+barefacedly
+barefacedness
+bare-fingered
+barefisted
+barefit
+Barefoot
+barefoot
+barefooted
+barege
+bareges
+bare-gnawn
+bare-handed
+barehanded
+barehead
+bare-headed
+bareheaded
+bareheadedness
+Bareilly
+bareka
+bare-kneed
+bareknuckle
+bareknuckled
+bare-legged
+barelegged
+Bareli
+barely
+Barenboim
+bare-necked
+barenecked
+bareness
+barenesses
+Barents
+bare-picked
+barer
+bare-ribbed
+bares
+baresark
+baresarks
+bare-skinned
+bare-skulled
+baresma
+barest
+baresthesia
+baret
+bare-throated
+bare-toed
+baretta
+bare-walled
+bare-worn
+barf
+barfed
+barff
+barfing
+barfish
+barflies
+barfly
+barfs
+barful
+Barfuss
+barfy
+bargain
+bargainable
+bargain-basement
+bargain-counter
+bargained
+bargainee
+bargainer
+bargainers
+bargain-hunting
+bargaining
+bargainor
+bargains
+bargainwise
+bargander
+barge
+barge-board
+bargeboard
+barge-couple
+barge-course
+barged
+bargee
+bargeer
+bargees
+bargeese
+bargehouse
+barge-laden
+bargelike
+bargelli
+bargello
+bargellos
+bargeload
+bargeman
+bargemaster
+bargemen
+bargepole
+Barger
+barger
+barge-rigged
+Bargersville
+barges
+barge-stone
+bargestone
+bargh
+bargham
+barghest
+barghests
+barging
+bargir
+bar-goose
+bargoose
+barguest
+barguests
+barhal
+Barhamsville
+barhop
+barhopped
+barhopping
+barhops
+Bari
+bari
+baria
+bariatrician
+bariatrics
+baric
+barid
+barie
+barih
+barile
+barilla
+barillas
+Bariloche
+Barimah
+Barina
+Barinas
+Baring
+baring
+bariolage
+baris
+barish
+barit
+barit.
+barite
+baritenor
+barites
+baritonal
+baritone
+baritones
+barium
+bariums
+bark
+barkan
+barkantine
+barkary
+bark-bared
+barkbound
+barkcutter
+bark-cutting
+barked
+barkeep
+barkeeper
+barkeepers
+barkeeps
+barken
+barkened
+barkening
+barkentine
+barkentines
+Barker
+barker
+barkers
+barkery
+barkevikite
+barkevikitic
+barkey
+bark-formed
+bark-galled
+bark-galling
+bark-grinding
+barkhan
+barkier
+barkiest
+Barking
+barking
+barkingly
+Barkinji
+Barkla
+barkle
+Barkleigh
+barkless
+Barkley
+barklyite
+barkometer
+barkpeel
+barkpeeler
+barkpeeling
+barks
+Barksdale
+bark-shredding
+barksome
+barkstone
+bark-tanned
+barky
+Barlach
+barlafumble
+barlafummil
+Bar-le-duc
+barleduc
+barleducs
+barless
+Barletta
+barley
+barleybird
+barleybrake
+barley-break
+barleybreak
+barley-bree
+barley-broo
+barley-cap
+barley-clipping
+Barleycorn
+barley-corn
+barleycorn
+barley-fed
+barley-grinding
+barley-hood
+barleyhood
+barley-hulling
+barleymow
+barleys
+barleysick
+barley-sugar
+Barling
+barling
+barlock
+Barlow
+barlow
+barlows
+barly
+barm
+barmaid
+barmaids
+barman
+barmaster
+barmbrack
+barmcloth
+Barmecidal
+barmecidal
+Barmecide
+barmecide
+Barmen
+barmen
+barmfel
+barmie
+barmier
+barmiest
+barming
+barmkin
+barmote
+barms
+barmskin
+barmy
+barmybrained
+Barn
+barn
+Barna
+Barnaba
+Barnabas
+barnabas
+Barnabe
+Barnabite
+barnabite
+Barna-brahman
+Barnaby
+barnaby
+barnacle
+barnacle-back
+barnacled
+barnacle-eater
+barnacles
+barnacling
+barnage
+Barnaise
+Barnard
+barnard
+Barnardo
+Barnardsville
+Barnaul
+barn-brack
+barnbrack
+Barnburner
+Barncard
+barn-door
+barndoor
+Barnebas
+Barnegat
+Barnes
+Barnesboro
+Barneston
+Barnesville
+Barnet
+Barnett
+Barneveld
+Barneveldt
+Barney
+barney
+barney-clapper
+barneys
+barnful
+Barnhard
+barnhardtite
+Barnhart
+Barnie
+barnier
+barniest
+barnlike
+barnman
+barnmen
+barn-raising
+barns
+barns-breaking
+Barnsdall
+Barnsley
+Barnstable
+Barnstead
+Barnstock
+barnstorm
+barnstormed
+barnstormer
+barnstormers
+barnstorming
+barnstorms
+Barnum
+Barnumesque
+Barnumism
+Barnumize
+barnumize
+Barnwell
+Barny
+barny
+barnyard
+barnyards
+baro-
+Barocchio
+barocco
+Barocius
+baroclinicity
+baroclinity
+Baroco
+barocyclonometer
+Baroda
+barodynamic
+barodynamics
+barognosis
+barogram
+barograms
+barograph
+barographic
+barographs
+baroi
+Baroja
+baroko
+Barolet
+Barolo
+barolo
+barology
+Barolong
+baromacrometer
+barometer
+barometers
+barometric
+barometrical
+barometrically
+barometrograph
+barometrography
+barometry
+barometz
+baromotor
+Baron
+baron
+baronage
+baronages
+baronduki
+baroness
+baronesses
+baronet
+baronetage
+baronetcies
+baronetcy
+baroneted
+baronethood
+baronetical
+baroneting
+baronetise
+baronetised
+baronetising
+baronetize
+baronetized
+baronetizing
+baronets
+baronetship
+barong
+Baronga
+barongs
+baroni
+baronial
+baronies
+baronize
+baronized
+baronizing
+baronne
+baronnes
+baronries
+baronry
+barons
+baronship
+barony
+barophobia
+Baroque
+baroque
+baroquely
+baroqueness
+baroques
+baroreceptor
+baroscope
+baroscopic
+baroscopical
+barosinusitis
+barosinusitus
+Barosma
+barosmin
+barostat
+baroswitch
+barotactic
+barotaxis
+barotaxy
+barothermogram
+barothermograph
+barothermohygrogram
+barothermohygrograph
+baroto
+barotrauma
+barotraumas
+barotraumata
+barotropic
+barotropy
+Barotse
+Barotseland
+barouche
+barouches
+barouchet
+barouchette
+Barouni
+baroxyton
+Barozzi
+barpost
+barquantine
+barque
+barquentine
+Barquero
+barques
+barquest
+barquette
+Barquisimeto
+Barr
+barr
+Barra
+barra
+barrabkie
+barrable
+barrabora
+barracan
+barrace
+barrack
+barracked
+barracker
+barracking
+barracks
+Barrackville
+barraclade
+barracoon
+barracouta
+barracoutas
+barracuda
+barracudas
+barracudina
+barrad
+Barrada
+barragan
+barrage
+barraged
+barrages
+barraging
+barragon
+Barram
+barramunda
+barramundas
+barramundi
+barramundies
+barramundis
+barranca
+Barrancabermeja
+barrancas
+barranco
+barrancos
+barrandite
+Barranquilla
+Barranquitas
+barras
+barrat
+barrater
+barraters
+barrator
+barrators
+barratries
+barratrous
+barratrously
+barratry
+Barrault
+Barraza
+Barre
+barre
+barred
+Barree
+barrel
+barrelage
+barrel-bellied
+barrel-boring
+barrel-branding
+barrel-chested
+barrel-driving
+barreled
+barreler
+barrelet
+barreleye
+barreleyes
+barrelfish
+barrelfishes
+barrelful
+barrelfuls
+barrelhead
+barrel-heading
+barrelhouse
+barrelhouses
+barreling
+barrelled
+barrelling
+barrelmaker
+barrelmaking
+barrel-packing
+barrel-roll
+barrels
+barrelsful
+barrel-shaped
+barrel-vaulted
+barrelwise
+Barren
+barren
+barrener
+barrenest
+barrenly
+barrenness
+barrennesses
+barrens
+barrenwort
+barrer
+barrera
+barrer-off
+Barres
+barres
+Barret
+barret
+barretor
+barretors
+barretries
+barretry
+barrets
+Barrett
+barrette
+barretter
+barrettes
+Barri
+barricade
+barricaded
+barricader
+barricaders
+barricades
+barricading
+barricado
+barricadoed
+barricadoes
+barricadoing
+barricados
+barrico
+barricoes
+barricos
+Barrie
+Barrientos
+barrier
+barriers
+barriguda
+barrigudo
+barrigudos
+barrikin
+barriness
+barring
+barringer
+Barrington
+Barringtonia
+barrio
+barrio-dwellers
+Barrios
+barrios
+Barris
+barrister
+barrister-at-law
+barristerial
+barristers
+barristership
+barristress
+BARRNET
+Barron
+Barronett
+barroom
+barrooms
+Barros
+Barrow
+barrow
+barrow-boy
+barrowcoat
+barrowful
+Barrow-in-Furness
+Barrowist
+barrowist
+barrow-man
+barrowman
+barrow-men
+barrows
+barrulee
+barrulet
+barrulety
+barruly
+Barrus
+Barry
+barry
+barry-bendy
+Barrymore
+barry-nebuly
+barry-pily
+Barryton
+Barrytown
+Barryville
+barry-wavy
+bars
+Barsac
+barse
+Barsky
+barsom
+barspoon
+barstool
+barstools
+Barstow
+Bart
+Bart.
+bart
+Barta
+bar-tailed
+Bartel
+Bartelso
+bartend
+bartended
+bartender
+bartenders
+bartending
+bartends
+barter
+bartered
+barterer
+barterers
+bartering
+barters
+Barth
+barth
+Barthel
+Barthelemy
+Barthian
+barthian
+Barthianism
+barthite
+Barthol
+Barthold
+Bartholdi
+Bartholemy
+bartholinitis
+Bartholomean
+Bartholomeo
+Bartholomeus
+Bartholomew
+bartholomew
+Bartholomewtide
+Bartholomite
+Barthou
+Bartie
+bartisan
+bartisans
+bartizan
+bartizaned
+bartizans
+Bartko
+Bartle
+Bartlemy
+Bartlesville
+Bartlet
+Bartlett
+bartlett
+bartletts
+Bartley
+Barto
+Bartok
+Bartolemo
+Bartolome
+Bartolomeo
+Bartolommeo
+Bartolozzi
+Barton
+barton
+Bartonella
+Bartonia
+Bartonsville
+Bartonville
+Bartosch
+Bartow
+Bartram
+bartram
+Bartramia
+Bartramiaceae
+Bartramian
+bartree
+Bartsia
+bartsia
+Barty
+baru
+Baruch
+barukhzy
+Barundi
+baruria
+barvel
+barvell
+Barvick
+barwal
+barware
+barwares
+barway
+barways
+Barwick
+barwin
+barwing
+barwise
+barwood
+bar-wound
+Bary
+barycenter
+barycentre
+barycentric
+Barye
+barye
+baryecoia
+baryes
+baryglossia
+barylalia
+barylite
+baryon
+baryonic
+baryons
+baryphonia
+baryphonic
+baryphony
+Baryram
+barysilite
+barysphere
+baryta
+barytas
+baryte
+barytes
+barythymia
+barytic
+barytine
+baryto-
+barytocalcite
+barytocelestine
+barytocelestite
+baryton
+barytone
+barytones
+barytons
+barytophyllite
+barytostrontianite
+barytosulphate
+Barzani
+BAS
+bas
+basad
+basal
+basale
+basalia
+basally
+basal-nerved
+basalt
+basaltes
+basaltic
+basaltiform
+basaltine
+basaltoid
+basalt-porphyry
+basalts
+basaltware
+basan
+basanite
+basaree
+basat
+BASc
+bascinet
+Bascio
+Basco
+Bascology
+Bascom
+Bascomb
+basculation
+bascule
+bascules
+bascunan
+Base
+base
+base-ball
+baseball
+baseballdom
+baseballer
+baseballs
+baseband
+base-begged
+base-begot
+baseboard
+baseboards
+base-born
+baseborn
+basebred
+base-burner
+baseburner
+basecoat
+base-court
+basecourt
+based
+base-forming
+basehearted
+baseheartedness
+Basehor
+Basel
+baselard
+Baseler
+baseless
+baselessly
+baselessness
+baselevel
+baselike
+baseline
+baseliner
+baselines
+Basella
+basella
+Basellaceae
+basellaceous
+Basel-Land
+Basel-Mulhouse
+Basel-Stadt
+basely
+baseman
+basemen
+basement
+basementless
+basements
+basementward
+base-mettled
+base-minded
+base-mindedly
+base-mindedness
+basename
+baseness
+basenesses
+basenet
+Basenji
+basenji
+basenjis
+baseplate
+baseplug
+basepoint
+baser
+baserunning
+bases
+base-souled
+base-spirited
+base-spiritedness
+basest
+base-witted
+bas-fond
+BASH
+bash
+bashalick
+Basham
+Bashan
+bashara
+bashaw
+bashawdom
+bashawism
+bashaws
+bashawship
+bashed
+Bashee
+Bashemath
+Bashemeth
+basher
+bashers
+bashes
+bashful
+bashfully
+bashfulness
+bashfulnesses
+bashi-bazouk
+bashibazouk
+bashi-bazoukery
+Bashilange
+-bashing
+bashing
+Bashkir
+Bashkiria
+bashless
+bashlik
+bashlyk
+bashlyks
+bashment
+Bashmuric
+Basho
+Bashuk
+bashyle
+basi-
+Basia
+basial
+basialveolar
+basiarachnitis
+basiarachnoiditis
+basiate
+basiated
+basiating
+basiation
+Basibracteolate
+basibranchial
+basibranchiate
+basibregmatic
+BASIC
+Basic
+basic
+basically
+basicerite
+basichromatic
+basichromatin
+basichromatinic
+basichromiole
+basicities
+basicity
+basic-lined
+basicranial
+basics
+basicytoparaplastin
+basidia
+basidial
+basidigital
+basidigitale
+basidigitalia
+basidiocarp
+basidiogenetic
+basidiolichen
+Basidiolichenes
+basidiomycete
+Basidiomycetes
+basidiomycetes
+basidiomycetous
+basidiophore
+basidiospore
+basidiosporous
+basidium
+basidorsal
+Basie
+basifacial
+basification
+basified
+basifier
+basifiers
+basifies
+basifixed
+basifugal
+basify
+basifying
+basigamous
+basigamy
+basigenic
+basigenous
+basiglandular
+basigynium
+basihyal
+basihyoid
+Basil
+basil
+Basilan
+basilar
+Basilarchia
+basilard
+basilary
+basilateral
+Basildon
+Basile
+basilect
+basileis
+basilemma
+basileus
+Basilian
+basilian
+basilic
+Basilica
+basilica
+Basilicae
+basilicae
+basilical
+basilicalike
+basilican
+basilicas
+Basilicata
+basilicate
+basilicock
+basilicon
+Basilics
+basilics
+basilidan
+Basilidian
+Basilidianism
+Basiliensis
+basilinna
+Basilio
+basiliscan
+basiliscine
+Basiliscus
+basilisk
+basilisks
+basilissa
+Basilius
+Basilosauridae
+Basilosaurus
+basils
+basilweed
+basilysis
+basilyst
+basimesostasis
+basin
+basinal
+basinasal
+basinasial
+basined
+basinerved
+basinet
+basinets
+basinful
+basing
+Basingstoke
+basinlike
+basins
+basioccipital
+basion
+basions
+basiophitic
+basiophthalmite
+basiophthalmous
+basiotribe
+basiotripsy
+basiparachromatin
+basiparaplastin
+basipetal
+basipetally
+basiphobia
+basipodite
+basipoditic
+basipterygial
+basipterygium
+basipterygoid
+Basir
+basiradial
+basirhinal
+basirostral
+basis
+basiscopic
+basisidia
+basisolute
+basisphenoid
+basisphenoidal
+basitemporal
+basitting
+basiventral
+basivertebral
+bask
+baske
+basked
+basker
+Baskerville
+basket
+basket-ball
+basketball
+basketballer
+basketballs
+basket-bearing
+basketful
+basketfuls
+basket-hilted
+basketing
+basketlike
+basketmaker
+basketmaking
+basket-of-gold
+basketries
+basketry
+baskets
+basket-star
+Baskett
+basketware
+basketweaving
+basketwoman
+basketwood
+basketwork
+basketworm
+Baskin
+basking
+Baskish
+Baskonize
+basks
+Basle
+basnat
+basnet
+Basoche
+basocyte
+Basoga
+basoid
+Basoko
+Basom
+Basommatophora
+basommatophorous
+bason
+Basonga-mina
+Basongo
+basophil
+basophile
+basophilia
+basophilic
+basophilous
+basophils
+basophobia
+basos
+basote
+Basotho
+basotho
+Basotho-Qwaqwa
+Basov
+Basque
+basque
+basqued
+basques
+basquine
+Basra
+bas-relief
+Bas-Rhin
+Bass
+bass
+Bassa
+Bassalia
+Bassalian
+bassan
+bassanello
+bassanite
+Bassano
+bassara
+bassarid
+Bassaris
+Bassariscus
+bassarisk
+bass-bar
+Bassein
+Basse-Normandie
+Bassenthwaite
+basses
+Basses-Alpes
+Basses-Pyrn
+Basset
+basset
+basse-taille
+basseted
+Basse-Terre
+Basseterre
+basset-horn
+basseting
+bassetite
+bassets
+Bassett
+bassetta
+bassette
+bassetted
+bassetting
+Bassetts
+Bassfield
+bass-horn
+bassi
+Bassia
+bassia
+bassie
+bassine
+bassinet
+bassinets
+bassing
+bassi-rilievi
+bassirilievi
+bassist
+bassists
+bassly
+bassness
+bassnesses
+Basso
+basso
+basson
+bassoon
+bassoonist
+bassoonists
+bassoons
+basso-relievo
+basso-relievos
+basso-rilievo
+bassorin
+bassos
+bass-relief
+bassus
+bass-viol
+bass-wood
+basswood
+basswoods
+bassy
+Bast
+bast
+basta
+Bastaard
+Bastad
+bastant
+Bastard
+bastard
+bastarda
+bastard-cut
+bastardice
+bastardies
+bastardisation
+bastardise
+bastardised
+bastardising
+bastardism
+bastardization
+bastardizations
+bastardize
+bastardized
+bastardizes
+bastardizing
+bastardliness
+bastardly
+bastardry
+bastards
+bastard-saw
+bastard-sawed
+bastard-sawing
+bastard-sawn
+bastardy
+baste
+basted
+bastel-house
+basten
+baster
+basters
+bastes
+basti
+Bastia
+Bastian
+bastian
+bastide
+Bastien
+bastile
+bastiles
+Bastille
+bastille
+bastilles
+bastillion
+bastiment
+bastinade
+bastinaded
+bastinades
+bastinading
+bastinado
+bastinadoed
+bastinadoes
+bastinadoing
+basting
+bastings
+bastion
+bastionary
+bastioned
+bastionet
+bastions
+bastite
+bastnaesite
+bastnasite
+basto
+Bastogne
+baston
+bastonet
+bastonite
+Bastrop
+basts
+basural
+basurale
+Basuto
+basuto
+Basutoland
+Basutos
+Basye
+basyl
+Bat
+bat
+Bataan
+bataan
+Bataan-Corregidor
+batable
+batad
+Batak
+batakan
+bataleur
+batamote
+Batan
+Batanes
+Batangas
+batara
+batarde
+batardeau
+batata
+Batatas
+batatilla
+Batavi
+Batavia
+Batavian
+batavian
+batboy
+batboys
+batch
+batched
+Batchelder
+Batchelor
+batcher
+batchers
+batches
+batching
+Batchtown
+Bate
+bate
+batea
+bat-eared
+bateau
+bateaux
+bated
+bateful
+Batekes
+batel
+bateleur
+batell
+Bateman
+bateman
+batement
+Baten
+bater
+Bates
+bates
+Batesburg
+Batesland
+Batesville
+batete
+Batetela
+batfish
+batfishes
+bat-fowl
+batfowl
+batfowled
+batfowler
+batfowling
+batfowls
+batful
+Bath
+bath
+bath-
+Batha
+Bathala
+bathe
+batheable
+bathed
+Bathelda
+bather
+bathers
+bathes
+Bathesda
+bathetic
+bathetically
+bathflower
+bathhouse
+bathhouses
+bathic
+Bathilda
+Bathinette
+bathinette
+bathing
+bathing-machine
+bathkol
+bathless
+bath-loving
+bathman
+bathmat
+bathmats
+bathmic
+bathmism
+bathmotropic
+bathmotropism
+batho-
+bathochromatic
+bathochromatism
+bathochrome
+bathochromic
+bathochromy
+bathoflore
+bathofloric
+batholite
+batholith
+batholithic
+batholiths
+batholitic
+Batholomew
+bathomania
+bathometer
+bathometry
+Bathonian
+bathool
+bathophobia
+bathorse
+bathos
+bathoses
+bathrobe
+bathrobes
+bathroom
+bathroomed
+bathrooms
+bathroot
+baths
+Bathsheb
+Bath-sheba
+Bathsheba
+Bathsheeb
+bathtub
+bathtubful
+bathtubs
+bathukolpian
+bathukolpic
+Bathulda
+Bathurst
+bathvillite
+bathwater
+bathwort
+bathy-
+bathyal
+bathyanesthesia
+bathybian
+bathybic
+bathybius
+bathycentesis
+bathychrome
+bathycolpian
+bathycolpic
+bathycurrent
+bathyesthesia
+bathygraphic
+bathyhyperesthesia
+bathyhypesthesia
+bathyl
+bathylimnetic
+bathylite
+bathylith
+bathylithic
+bathylitic
+bathymeter
+bathymetric
+bathymetrical
+bathymetrically
+bathymetry
+bathyorographical
+bathypelagic
+bathyplankton
+bathyscape
+bathyscaph
+bathyscaphe
+bathyscaphes
+bathyseism
+bathysmal
+bathysophic
+bathysophical
+bathysphere
+bathyspheres
+bathythermogram
+bathythermograph
+Batia
+Batidaceae
+batidaceous
+batik
+batiked
+batiker
+batiking
+batiks
+Batilda
+bating
+batino
+Batis
+Batish
+Batista
+batiste
+batistes
+batitinan
+batlan
+batler
+batlet
+Batley
+batlike
+batling
+batlon
+Batman
+batman
+batmen
+bat-minded
+bat-mindedness
+bat-mule
+Batna
+Batocrinidae
+Batocrinus
+Batodendron
+batoid
+Batoidei
+Batoka
+Baton
+baton
+batoneer
+Batonga
+batonist
+batonistic
+batonne
+batonnier
+batons
+batoon
+batophobia
+Bator
+Batory
+Batrachia
+batrachia
+batrachian
+batrachians
+batrachiate
+Batrachidae
+batrachite
+Batrachium
+batracho-
+batrachoid
+Batrachoididae
+batrachophagous
+Batrachophidia
+batrachophobia
+batrachoplasty
+Batrachospermum
+batrachotoxin
+Batruk
+bats
+BATSE
+Batsheva
+bats-in-the-belfry
+batsman
+batsmanship
+batsmen
+Batson
+batster
+batswing
+batt
+Batta
+batta
+battable
+battailant
+battailous
+Battak
+Battakhin
+battalia
+battalias
+battalion
+battalions
+Battambang
+battarism
+battarismus
+Battat
+batteau
+batteaux
+batted
+battel
+batteled
+batteler
+batteling
+Battelle
+Battelmatt
+battels
+battement
+battements
+batten
+Battenburg
+battened
+battener
+batteners
+battening
+battens
+batter
+batterable
+battercake
+batterdock
+battered
+batterer
+batterfang
+batterie
+batteried
+batteries
+battering
+battering-ram
+batterman
+batter-out
+batters
+Battersea
+Battery
+battery
+battery-charging
+batteryman
+battery-powered
+battery-testing
+batteuse
+Batticaloa
+battier
+batties
+Battiest
+battiest
+battik
+battiks
+battiness
+batting
+battings
+Battipaglia
+battish
+Battista
+Battiste
+battle
+battle-ax
+battle-axe
+Battleboro
+battled
+battledore
+battledored
+battledores
+battledoring
+battle-fallen
+battlefield
+battlefields
+battlefront
+battlefronts
+battleful
+battleground
+battlegrounds
+battlement
+battlemented
+battlements
+battlepiece
+battleplane
+battler
+battlers
+battles
+battle-scarred
+battleship
+battleships
+battle-slain
+battlesome
+battle-spent
+battlestead
+Battletown
+battlewagon
+battleward
+battlewise
+battle-writhen
+battling
+battological
+battologise
+battologised
+battologising
+battologist
+battologize
+battologized
+battologizing
+battology
+batton
+batts
+battu
+battue
+battues
+batture
+Battus
+battuta
+battutas
+battute
+battuto
+battutos
+Batty
+batty
+battycake
+batukite
+batule
+Batum
+Batumi
+batuque
+Batussi
+Batwa
+batwing
+batwoman
+batwomen
+batyphone
+batz
+batzen
+BAU
+Bau
+baubee
+baubees
+bauble
+baublery
+baubles
+baubling
+Baubo
+bauch
+Bauchi
+bauchle
+Baucis
+bauckie
+bauckiebird
+baud
+baudekin
+baudekins
+Baudelaire
+baudery
+Baudette
+Baudin
+Baudoin
+Baudouin
+baudrons
+baudronses
+bauds
+Bauer
+Bauera
+Bauernbrot
+baufrey
+bauge
+Baugh
+Baughman
+Bauhaus
+Bauhinia
+bauhinia
+bauhinias
+bauk
+Baul
+baul
+bauld
+baulea
+bauleah
+baulk
+baulked
+baulkier
+baulkiest
+baulking
+baulks
+baulky
+Baum
+Baumann
+Baumbaugh
+Baume
+baume
+Baumeister
+baumhauerite
+baumier
+Baun
+baun
+bauno
+Baure
+Bauru
+Bausch
+Bauske
+Bausman
+bauson
+bausond
+bauson-faced
+bauta
+Bautain
+Bautista
+Bautram
+bautta
+Bautzen
+bauxite
+bauxites
+bauxitic
+bauxitite
+Bav
+bavardage
+Bavaria
+Bavarian
+bavarian
+bavarois
+bavaroise
+bavaroy
+bavary
+bavenite
+bavette
+baviaantje
+Bavian
+bavian
+baviere
+bavin
+Bavius
+Bavon
+bavoso
+baw
+bawarchi
+bawbee
+bawbees
+bawble
+bawcock
+bawcocks
+bawd
+bawdier
+bawdies
+bawdiest
+bawdily
+bawdiness
+bawdinesses
+bawdric
+bawdrick
+bawdrics
+bawdries
+bawdry
+bawds
+bawdship
+bawdstrot
+bawdy
+bawdyhouse
+bawdyhouses
+bawhorse
+bawke
+bawl
+bawled
+bawler
+bawlers
+bawley
+bawling
+bawling-out
+bawls
+bawly
+bawn
+bawneen
+Bawra
+bawrel
+bawsint
+baws'nt
+bawsunt
+bawtie
+bawties
+bawty
+Bax
+B-axes
+Baxie
+B-axis
+Baxley
+Baxter
+baxter
+Baxterian
+Baxterianism
+baxtone
+Baxy
+Bay
+bay
+Baya
+baya
+bayadeer
+bayadeers
+bayadere
+bayaderes
+bayal
+Bayam
+Bayamo
+bayamo
+Bayamon
+bayamos
+bayano
+Bayar
+Bayard
+bayard
+bayardly
+bayards
+bay-bay
+bayberries
+bayberry
+baybolt
+Bayboro
+bay-breasted
+baybush
+bay-colored
+baycuru
+Bayda
+Bayeau
+bayed
+Bayer
+Bayern
+Bayesian
+bayesian
+bayeta
+bayete
+Bayfield
+baygall
+Bayh
+bayhead
+baying
+bayish
+bayldonite
+Bayle
+Bayless
+baylet
+Bayley
+baylike
+Baylis
+Baylor
+Bayly
+bayman
+baymen
+Bayminette
+Baynebridge
+bayness
+Bayogoula
+bayok
+bayonet
+bayoneted
+bayoneteer
+bayoneting
+bayonets
+bayonetted
+bayonetting
+bayong
+Bayonne
+bayou
+Bayougoula
+bayous
+Baypines
+Bayport
+Bayreuth
+Bays
+bays
+bay-salt
+Bayshore
+Bayside
+baysmelt
+baysmelts
+Baytown
+Bayview
+Bayville
+bay-window
+bay-winged
+baywood
+baywoods
+bayz
+bazaar
+bazaars
+Bazaine
+Bazar
+bazar
+bazars
+Bazatha
+baze
+Bazigar
+Bazil
+Bazin
+Bazine
+Baziotes
+Bazluke
+bazoo
+bazooka
+bazookaman
+bazookamen
+bazookas
+bazooms
+bazoos
+bazzite
+B/B
+BB
+bb
+BBA
+BBB
+B.B.C.
+BBC
+BBL
+bbl
+bbl.
+bbls
+BBN
+bbs
+BBXRT
+B.C.
+B/C
+BC
+BCBS
+BCC
+BCD
+bcd
+BCDIC
+B.C.E.
+BCE
+BCerE
+bcf
+B.Ch.
+BCh
+bch
+Bchar
+BChE
+bchs
+B.C.L.
+BCL
+BCM
+BCom
+BComSc
+BCP
+BCPL
+BCR
+BCS
+BCWP
+BCWS
+B.D.
+B/D
+BD
+bd
+bd.
+BDA
+BDC
+BDD
+Bde
+bde
+bdellatomy
+bdellid
+Bdellidae
+bdellium
+bdelliums
+bdelloid
+Bdelloida
+bdellometer
+Bdellostoma
+Bdellostomatidae
+Bdellostomidae
+bdellotomy
+Bdelloura
+Bdellouridae
+bdellovibrio
+BDes
+BDF
+bdft
+bdl
+bdl.
+bdle
+bdls
+bdrm
+B.D.S.
+BDS
+bds
+BDSA
+BDT
+B.E.
+B/E
+BE
+Be
+be
+be-
+BEA
+Bea
+Beach
+beach
+Beacham
+beachboy
+Beachboys
+beachboys
+beachcomb
+beachcomber
+beachcombers
+beachcombing
+beachdrops
+beached
+beacher
+beaches
+beachfront
+beachhead
+beachheads
+beachie
+beachier
+beachiest
+beaching
+Beach-la-Mar
+Beach-la-mar
+beach-la-mar
+beachlamar
+beachless
+beachman
+beachmaster
+beachmen
+beach-sap
+beachside
+beachward
+beachwear
+Beachwood
+beachy
+beacon
+beaconage
+beaconed
+beaconing
+beaconless
+beacons
+Beaconsfield
+beaconwise
+bead
+beaded
+beaded-edge
+beader
+beadeye
+bead-eyed
+beadeyes
+beadflush
+bead-hook
+beadhouse
+beadhouses
+beadier
+beadiest
+beadily
+beadiness
+beading
+beadings
+Beadle
+beadle
+beadledom
+beadlehood
+beadleism
+beadlery
+beadles
+beadleship
+beadlet
+bead-like
+beadlike
+beadman
+beadmen
+bead-roll
+beadroll
+beadrolls
+beadrow
+bead-rubies
+bead-ruby
+beads
+bead-shaped
+beadsman
+beadsmen
+beadswoman
+beadswomen
+beadwork
+beadworks
+beady
+beady-eyed
+Beagle
+beagle
+beagles
+beagling
+beak
+beak-bearing
+beaked
+beaker
+beakerful
+beakerman
+beakermen
+beakers
+beakful
+beak-head
+beakhead
+beakier
+beakiest
+beak-iron
+beakiron
+beakless
+beak-like
+beaklike
+beak-nosed
+beaks
+beak-shaped
+beaky
+Beal
+beal
+beala
+bealach
+Beale
+Bealeton
+bealing
+Beall
+be-all
+beallach
+Bealle
+Beallsville
+Beals
+bealtared
+Bealtine
+Bealtuinn
+beam
+beamage
+Beaman
+beam-bending
+beambird
+beamed
+beam-end
+beam-ends
+beamer
+beamers
+beamfilling
+beamful
+beamhouse
+beamier
+beamiest
+beamily
+beaminess
+beaming
+beamingly
+beamish
+beamishly
+beamless
+beamlet
+beamlike
+beamman
+beamroom
+beams
+beamsman
+beamsmen
+beamster
+beam-straightening
+beam-tree
+beamwork
+beamy
+Bean
+bean
+bean-bag
+beanbag
+beanbags
+beanball
+beanballs
+bean-cleaning
+beancod
+bean-crushing
+Beane
+beaned
+Beaner
+beaner
+beaneries
+beaners
+beanery
+bean-feast
+beanfeast
+beanfeaster
+bean-fed
+beanfest
+beanfield
+beanie
+beanier
+beanies
+beaniest
+beaning
+beanlike
+beano
+beanos
+bean-planting
+beanpole
+beanpoles
+bean-polishing
+beans
+beansetter
+bean-shaped
+beanshooter
+beanstalk
+beanstalks
+beant
+beanweed
+beany
+beaproned
+Bear
+bear
+bearability
+bearable
+bearableness
+bearably
+bearance
+bearbaiter
+bear-baiting
+bearbaiting
+bearbane
+bearberries
+bearberry
+bearbind
+bearbine
+bearbush
+bearcat
+bearcats
+Bearce
+bearcoot
+Beard
+beard
+bearded
+beardedness
+Bearden
+bearder
+beardfish
+beardfishes
+beardie
+bearding
+beardless
+beardlessness
+beardlike
+beardom
+beards
+Beardsley
+Beardstown
+beardtongue
+beardy
+Beare
+beared
+bearer
+bearer-off
+bearers
+bearess
+bearfoot
+bearfoots
+bearherd
+bearhide
+bearhound
+bearhug
+bearhugs
+bearing
+bearings
+bearish
+bearishly
+bearishness
+bear-lead
+bear-leader
+bearleap
+bearlet
+bearlike
+bearm
+Bearnaise
+bearnaise
+Bearnard
+bearpaw
+bears
+bear's-breech
+bear's-ear
+bear's-foot
+bear's-foots
+bearship
+bearskin
+bearskins
+bear's-paw
+Bearsville
+beartongue
+bear-tree
+bearward
+bearwood
+bearwoods
+bearwort
+Beasley
+Beason
+beast
+beastbane
+beastdom
+beasthood
+beastie
+beasties
+beastily
+beastings
+beastish
+beastishness
+beastlier
+beastliest
+beastlike
+beastlily
+beastliness
+beastlinesses
+beastling
+beastlings
+beastly
+beastman
+Beaston
+beasts
+beastship
+beat
+Beata
+beata
+beatable
+beatably
+beatae
+beatas
+beat-beat
+beatee
+beaten
+beater
+beaterman
+beatermen
+beater-out
+beaters
+beaters-up
+beater-up
+beath
+beati
+beatific
+beatifical
+beatifically
+beatificate
+beatification
+beatifications
+beatified
+beatifies
+beatify
+beatifying
+beatille
+beatinest
+beating
+beatings
+beating-up
+Beatitude
+beatitude
+beatitudes
+Beatles
+beatles
+beatless
+beatnik
+beatnikism
+beatniks
+Beaton
+Beatrice
+beatrice
+Beatrisa
+Beatrix
+Beatriz
+beats
+beatster
+Beattie
+Beatty
+Beattyville
+beat-up
+beatus
+beatuti
+Beau
+beau
+Beauchamp
+Beauclerc
+beauclerk
+beaucoup
+Beaudoin
+beaued
+beauetry
+Beaufert
+beaufet
+beaufin
+Beauford
+Beaufort
+beaufort
+beaugregories
+beaugregory
+Beauharnais
+beau-ideal
+beau-idealize
+beauing
+beauish
+beauism
+Beaujolais
+beaujolais
+Beaujolaises
+Beaulieu
+Beaumarchais
+beaume
+beau-monde
+Beaumont
+beaumont
+Beaumontia
+Beaune
+beaupere
+beaupers
+beau-pleader
+beau-pot
+Beauregard
+beaus
+beauseant
+beauship
+beausire
+beaut
+beauteous
+beauteously
+beauteousness
+beauti
+beautician
+beauticians
+beautied
+beauties
+beautification
+beautifications
+beautified
+beautifier
+beautifiers
+beautifies
+beautiful
+beautifully
+beautifulness
+beautify
+beautifying
+beautihood
+beautiless
+beauts
+beauty
+beauty-beaming
+beauty-berry
+beauty-blind
+beauty-blooming
+beauty-blushing
+beauty-breathing
+beauty-bright
+beauty-bush
+beauty-clad
+beautydom
+beauty-fruit
+beauty-loving
+beauty-proof
+beautyship
+beauty-waning
+Beauvais
+Beauvoir
+beaux
+Beaux-Arts
+beaux-arts
+beaux-esprits
+beauxite
+BEAV
+Beaver
+beaver
+Beaverboard
+beaverboard
+Beaverbrook
+Beaverdale
+beavered
+beaverette
+beaveries
+beavering
+beaverish
+beaverism
+beaverite
+beaverize
+Beaverkill
+beaverkin
+Beaverlett
+beaverlike
+beaverpelt
+beaverroot
+beavers
+beaverskin
+beaverteen
+Beaverton
+Beavertown
+beaver-tree
+Beaverville
+beaverwood
+beavery
+beback
+bebait
+beballed
+bebang
+bebannered
+bebar
+bebaron
+bebaste
+bebat
+bebathe
+bebatter
+bebay
+Bebe
+bebeast
+bebed
+bebeerin
+bebeerine
+bebeeru
+bebeerus
+Bebel
+bebelted
+Beberg
+bebilya
+Bebington
+bebite
+bebization
+beblain
+beblear
+bebled
+bebleed
+bebless
+beblister
+beblood
+beblooded
+beblooding
+bebloods
+bebloom
+beblot
+beblotch
+beblubber
+beblubbered
+bebog
+bebop
+bebopper
+beboppers
+bebops
+beboss
+bebotch
+bebothered
+bebouldered
+bebrave
+bebreech
+bebrine
+bebrother
+bebrush
+Bebryces
+bebump
+Bebung
+bebusy
+bebuttoned
+bec
+becafico
+becall
+becalm
+becalmed
+becalming
+becalmment
+becalms
+became
+becap
+becapped
+becapping
+becaps
+becard
+becarpet
+becarpeted
+becarpeting
+becarpets
+becarve
+becasse
+becassine
+becassocked
+becater
+because
+Becca
+beccabunga
+beccaccia
+beccafico
+beccaficoes
+beccaficos
+Beccaria
+becchi
+becco
+becense
+bechained
+bechalk
+bechalked
+bechalking
+bechalks
+bechamel
+bechamels
+bechance
+bechanced
+bechances
+bechancing
+becharm
+becharmed
+becharming
+becharms
+bechase
+bechatter
+bechauffeur
+beche
+becheck
+Beche-de-Mer
+beche-de-mer
+beche-le-mar
+becher
+bechern
+Bechet
+bechic
+bechignoned
+bechirp
+Bechler
+Becht
+Bechtel
+Bechtelsville
+Bechtler
+Bechuana
+Bechuanaland
+Bechuanas
+becircled
+becivet
+Beck
+beck
+Becka
+becked
+beckelite
+Beckemeyer
+Becker
+becker
+Beckerman
+Becket
+becket
+beckets
+Beckett
+beckett
+Beckford
+Becki
+Beckie
+becking
+beckiron
+Beckley
+Beckman
+Beckmann
+beckon
+beckoned
+beckoner
+beckoners
+beckoning
+beckoningly
+beckons
+becks
+Beckville
+Beckwith
+Becky
+beclad
+beclamor
+beclamored
+beclamoring
+beclamors
+beclamour
+beclang
+beclap
+beclart
+beclasp
+beclasped
+beclasping
+beclasps
+beclatter
+beclaw
+beclip
+becloak
+becloaked
+becloaking
+becloaks
+beclog
+beclogged
+beclogging
+beclogs
+beclose
+beclothe
+beclothed
+beclothes
+beclothing
+becloud
+beclouded
+beclouding
+beclouds
+beclout
+beclown
+beclowned
+beclowning
+beclowns
+becluster
+becobweb
+becoiffed
+becollier
+becolme
+becolor
+becombed
+become
+becomed
+becomes
+becometh
+becoming
+becomingly
+becomingness
+becomings
+becomma
+becompass
+becompliment
+becoom
+becoresh
+becost
+becousined
+becovet
+becoward
+becowarded
+becowarding
+becowards
+Becquer
+Becquerel
+becquerelite
+becram
+becramp
+becrampon
+becrawl
+becrawled
+becrawling
+becrawls
+becreep
+becrime
+becrimed
+becrimes
+becriming
+becrimson
+becrinolined
+becripple
+becrippled
+becrippling
+becroak
+becross
+becrowd
+becrowded
+becrowding
+becrowds
+becrown
+becrush
+becrust
+becrusted
+becrusting
+becrusts
+becry
+becudgel
+becudgeled
+becudgeling
+becudgelled
+becudgelling
+becudgels
+becuffed
+becuiba
+becumber
+becuna
+becurl
+becurry
+becurse
+becursed
+becurses
+becursing
+becurst
+becurtained
+becushioned
+becut
+B.Ed.
+BED
+BEd
+bed
+bedabble
+bedabbled
+bedabbles
+bedabbling
+Bedad
+bedad
+bedaff
+bedaggered
+bedaggle
+bedamn
+bedamned
+bedamning
+bedamns
+bedamp
+bedangled
+bedare
+bedark
+bedarken
+bedarkened
+bedarkening
+bedarkens
+bedash
+bedaub
+bedaubed
+bedaubing
+bedaubs
+bedawee
+bedawn
+beday
+bedaze
+bedazed
+bedazement
+bedazzle
+bedazzled
+bedazzlement
+bedazzles
+bedazzling
+bedazzlingly
+bedboard
+bedbug
+bedbugs
+bedcap
+bedcase
+bedchair
+bedchairs
+bedchamber
+bed-clothes
+bedclothes
+bedclothing
+bedcord
+bedcover
+bedcovers
+beddable
+bed-davenport
+bedded
+bedder
+bedders
+bedding
+beddingroll
+beddings
+Beddoes
+beddy-bye
+Bede
+bede
+bedead
+bedeaf
+bedeafen
+bedeafened
+bedeafening
+bedeafens
+bedebt
+bedeck
+bedecked
+bedecking
+bedecks
+bedecorate
+bedeen
+bedegar
+bedeguar
+bedehouse
+bedehouses
+bedel
+Bedelia
+Bedell
+bedell
+bedells
+bedels
+bedelve
+bedeman
+bedemen
+beden
+bedene
+bedesman
+bedesmen
+bedeswoman
+bedeswomen
+bedevil
+bedeviled
+bedeviling
+bedevilled
+bedevilling
+bedevilment
+bedevils
+bedew
+bedewed
+bedewer
+bedewing
+bedewoman
+bedews
+bedfast
+bedfellow
+bedfellows
+bedfellowship
+bed-fere
+bedflower
+bedfoot
+Bedford
+Bedfordshire
+bedfordshire
+bedframe
+bedframes
+bedgery
+bedgoer
+bedgown
+bedgowns
+bed-head
+bediademed
+bediamonded
+bediaper
+bediapered
+bediapering
+bediapers
+Bedias
+bedight
+bedighted
+bedighting
+bedights
+bedikah
+bedim
+bedimmed
+bedimming
+bedimple
+bedimpled
+bedimples
+bedimplies
+bedimpling
+bedims
+bedin
+bedip
+bedirt
+bedirter
+bedirtied
+bedirties
+bedirty
+bedirtying
+bedismal
+Bedivere
+bedivere
+bedizen
+bedizened
+bedizening
+bedizenment
+bedizens
+bedkey
+bedlam
+bedlamer
+Bedlamic
+bedlamise
+bedlamised
+bedlamising
+bedlamism
+bedlamite
+bedlamitish
+bedlamize
+bedlamized
+bedlamizing
+bedlamp
+bedlamps
+bedlams
+bedlar
+bedless
+bedlids
+bedlight
+bedlike
+Bedlington
+Bedlingtonshire
+bed-maker
+bedmaker
+bedmakers
+bedmaking
+bedman
+bedmate
+bedmates
+Bedminster
+bednighted
+bednights
+bedoctor
+bedog
+bedolt
+bedot
+bedote
+bedotted
+Bedouin
+bedouin
+Bedouinism
+Bedouins
+bedouins
+bedouse
+bedown
+bedoyo
+bedpad
+bedpan
+bedpans
+bedplate
+bedplates
+bedpost
+bedposts
+bedquilt
+bedquilts
+bedrabble
+bedrabbled
+bedrabbling
+bedraggle
+bedraggled
+bedragglement
+bedraggles
+bedraggling
+bedrail
+bedrails
+bedral
+bedrape
+bedraped
+bedrapes
+bedraping
+bedravel
+bedread
+bedrel
+bedrench
+bedrenched
+bedrenches
+bedrenching
+bedress
+bedribble
+bedrid
+bedridden
+bedriddenness
+bedrift
+bedright
+bedrip
+bedrite
+bedrivel
+bedriveled
+bedriveling
+bedrivelled
+bedrivelling
+bedrivels
+bedrizzle
+bedrock
+bedrocks
+bedroll
+bedrolls
+bedroom
+bedrooms
+bedrop
+bedrown
+bedrowse
+bedrug
+bedrugged
+bedrugging
+bedrugs
+Beds
+beds
+bedscrew
+bedsheet
+bedsheets
+bedsick
+bedside
+bedsides
+bedsit
+bedsite
+bed-sitter
+bedsitter
+bed-sitting-room
+bedsock
+bedsonia
+bedsonias
+bedsore
+bedsores
+bedspread
+bedspreads
+bedspring
+bedsprings
+bedstaff
+bedstand
+bedstands
+bedstaves
+bedstead
+bedsteads
+bedstock
+bedstraw
+bedstraws
+bedstring
+bedswerver
+bedtick
+bedticking
+bedticks
+bedtime
+bedtimes
+bedub
+beduchess
+beduck
+Beduin
+beduin
+Beduins
+beduins
+beduke
+bedull
+bedumb
+bedumbed
+bedumbing
+bedumbs
+bedunce
+bedunced
+bedunces
+bedunch
+beduncing
+bedung
+bedur
+bedusk
+bedust
+bedward
+bedwards
+bedwarf
+bedwarfed
+bedwarfing
+bedwarfs
+bedwarmer
+bedway
+bedways
+Bedwell
+bedwell
+bed-wetting
+Bedworth
+bedye
+BEE
+Bee
+bee
+beearn
+be-east
+Beeb
+beeball
+Beebe
+beebee
+beebees
+beebread
+beebreads
+bee-butt
+beech
+Beecham
+Beechbottom
+beechdrops
+beechen
+Beecher
+beecher
+beeches
+beech-green
+beechier
+beechiest
+Beechmont
+beechnut
+beechnuts
+beechwood
+beechwoods
+beechy
+Beeck
+Beedeville
+beedged
+beedi
+beedom
+Beedon
+bee-eater
+beef
+beefalo
+beefaloes
+beefalos
+beef-brained
+beefburger
+beefburgers
+beefcake
+beefcakes
+beefeater
+beefeaters
+beef-eating
+beefed
+beefed-up
+beefer
+beefers
+beef-faced
+beefhead
+beefheaded
+beefier
+beefiest
+beefily
+beefin
+beefiness
+beefing
+beefing-up
+beefish
+beefishness
+beefless
+beeflower
+beefs
+beef-steak
+beefsteak
+beefsteaks
+beeftongue
+beef-witted
+beef-wittedly
+beef-wittedness
+beef-wood
+beefwood
+beefwoods
+beefy
+beegerite
+beehead
+bee-headed
+beeheaded
+beeherd
+Beehive
+beehive
+beehives
+beehive-shaped
+Beehouse
+beehouse
+beeish
+beeishness
+beek
+beekeeper
+beekeepers
+beekeeping
+beekite
+Beekman
+Beekmantown
+beelbow
+beele
+Beeler
+beelike
+beeline
+beelines
+beelol
+bee-loud
+Beelzebub
+beelzebub
+Beelzebubian
+Beelzebul
+beeman
+beemaster
+beemen
+Beemer
+been
+beennut
+beent
+beento
+beep
+beeped
+beeper
+beepers
+beeping
+beeps
+Beer
+beer
+Beera
+beerage
+beerbachite
+beerbelly
+beerbibber
+Beerbohm
+beeregar
+beerhouse
+beerhouses
+beerier
+beeriest
+beerily
+beeriness
+beerish
+beerishly
+beermaker
+beermaking
+beermonger
+Beernaert
+beerocracy
+Beerothite
+beerpull
+Beers
+beers
+Beersheba
+Beersheeba
+beer-up
+beery
+bees
+Beesley
+Beeson
+beest
+beesting
+beestings
+beestride
+bees-wax
+beeswax
+beeswaxes
+beeswing
+beeswinged
+beeswings
+beet
+beetewk
+beetfly
+beeth
+Beethoven
+beethoven
+Beethovenian
+Beethovenish
+Beethovian
+beetiest
+beetle
+beetle-browed
+beetle-crusher
+beetled
+beetle-green
+beetlehead
+beetle-headed
+beetleheaded
+beetleheadedness
+beetler
+beetlers
+beetles
+beetlestock
+beetlestone
+beetleweed
+beetlike
+beetling
+beetmister
+Beetner
+Beetown
+beetrave
+beet-red
+beetroot
+beetroots
+beetrooty
+beets
+beety
+beeve
+beeves
+Beeville
+beevish
+beeware
+beeway
+beeweed
+beewinged
+beewise
+beewort
+beeyard
+beezer
+beezers
+B.E.F.
+BEF
+bef
+befall
+befallen
+befalling
+befalls
+befame
+befamilied
+befamine
+befan
+befancy
+befanned
+befathered
+befavor
+befavour
+befeather
+befell
+beferned
+befetished
+befetter
+befezzed
+Beffrey
+beffroy
+befiddle
+befilch
+befile
+befilleted
+befilmed
+befilth
+Befind
+befinger
+befingered
+befingering
+befingers
+befire
+befist
+befit
+befits
+befitted
+befitting
+befittingly
+befittingness
+beflag
+beflagged
+beflagging
+beflags
+beflannel
+beflap
+beflatter
+beflea
+befleaed
+befleaing
+befleas
+befleck
+beflecked
+beflecking
+beflecks
+beflounce
+beflour
+beflout
+beflower
+beflowered
+beflowering
+beflowers
+beflum
+befluster
+befoam
+befog
+befogged
+befogging
+befogs
+befool
+befoolable
+befooled
+befooling
+befoolment
+befools
+befop
+before
+before-cited
+before-created
+before-delivered
+before-going
+beforehand
+beforehandedness
+before-known
+before-mentioned
+beforementioned
+before-named
+beforeness
+before-noticed
+before-recited
+before-said
+beforesaid
+beforested
+before-tasted
+before-thought
+beforetime
+beforetimes
+before-told
+before-warned
+before-written
+befortune
+befoul
+befouled
+befouler
+befoulers
+befoulier
+befouling
+befoulment
+befouls
+befountained
+befraught
+befreckle
+befreeze
+befreight
+befret
+befrets
+befretted
+befretting
+befriend
+befriended
+befriender
+befriending
+befriendment
+befriends
+befrill
+befrilled
+befringe
+befringed
+befringes
+befringing
+befriz
+befrocked
+befrogged
+befrounce
+befrumple
+befuddle
+befuddled
+befuddlement
+befuddlements
+befuddler
+befuddlers
+befuddles
+befuddling
+befume
+befur
+befurbelowed
+befurred
+beg
+Bega
+begabled
+begad
+begall
+begalled
+begalling
+begalls
+began
+begani
+begar
+begari
+begarie
+begarlanded
+begarnish
+begartered
+begary
+begash
+begass
+begat
+begats
+begattal
+begaud
+begaudy
+begay
+begaze
+begazed
+begazes
+begazing
+begeck
+begem
+begemmed
+begemming
+beget
+begets
+begettal
+begetter
+begetters
+begetting
+Begga
+beggable
+beggar
+beggardom
+beggared
+beggarer
+beggaress
+beggarhood
+beggaries
+beggaring
+beggarism
+beggar-lice
+beggarlice
+beggarlike
+beggarliness
+beggarly
+beggarman
+beggar-my-neighbor
+beggar-my-neighbour
+beggar-patched
+beggars
+beggar's-lice
+beggar's-tick
+beggar's-ticks
+beggar-tick
+beggar-ticks
+beggarweed
+beggarwise
+beggarwoman
+beggary
+begged
+begger
+Beggiatoa
+Beggiatoaceae
+beggiatoaceous
+begging
+beggingly
+beggingwise
+Beggs
+Beghard
+beghard
+Beghtol
+begift
+begiggle
+begild
+Begin
+begin
+beginger
+beginner
+beginners
+beginning
+beginnings
+begins
+begird
+begirded
+begirding
+begirdle
+begirdled
+begirdles
+begirdling
+begirds
+begirt
+beglad
+begladded
+begladding
+beglads
+beglamour
+beglare
+beglerbeg
+beglerbeglic
+beglerbeglik
+beglerbegluc
+beglerbegship
+beglerbey
+beglew
+beglic
+beglide
+beglitter
+beglobed
+begloom
+begloomed
+beglooming
+beglooms
+begloze
+begluc
+beglue
+begnaw
+begnawed
+begnawn
+bego
+begob
+begobs
+begod
+begoggled
+begohm
+begone
+begonia
+Begoniaceae
+begoniaceous
+Begoniales
+begonias
+begorah
+begorra
+begorrah
+begorry
+begot
+begotten
+begottenness
+begoud
+begowk
+begowned
+begrace
+begrain
+begrave
+begray
+begrease
+begreen
+begrett
+begrim
+begrime
+begrimed
+begrimer
+begrimes
+begriming
+begrimmed
+begrimming
+begrims
+begripe
+begroan
+begroaned
+begroaning
+begroans
+begrown
+begrudge
+begrudged
+begrudger
+begrudges
+begrudging
+begrudgingly
+begruntle
+begrutch
+begrutten
+begs
+begster
+beguard
+beguess
+beguile
+beguiled
+beguileful
+beguilement
+beguilements
+beguiler
+beguilers
+beguiles
+beguiling
+beguilingly
+beguilingness
+Beguin
+beguin
+Beguine
+beguine
+beguines
+begulf
+begulfed
+begulfing
+begulfs
+begum
+begummed
+begumming
+begums
+begun
+begunk
+begut
+Behah
+Behaim
+behale
+behalf
+behallow
+behalves
+behammer
+Behan
+behang
+behap
+Behar
+behatted
+behav
+behave
+behaved
+behaver
+behavers
+behaves
+behaving
+behavior
+behavioral
+behaviorally
+behaviored
+behaviorism
+behaviorist
+behavioristic
+behavioristically
+behaviorists
+behaviors
+behaviour
+behavioural
+behaviourally
+behaviourism
+behaviourist
+behaviours
+behead
+beheadal
+beheaded
+beheader
+beheading
+beheadlined
+beheads
+behear
+behears
+behearse
+behedge
+beheira
+beheld
+behelp
+behemoth
+behemothic
+behemoths
+behen
+behenate
+behenic
+behest
+behests
+behew
+behight
+behind
+behinder
+behindhand
+behinds
+behindsight
+behint
+Behistun
+behither
+Behka
+Behl
+Behlau
+Behlke
+Behm
+Behmen
+Behmenism
+Behmenist
+Behmenite
+Behn
+behn
+Behnken
+behold
+beholdable
+beholden
+beholder
+beholders
+beholding
+beholdingness
+beholds
+behoney
+behoof
+behooped
+behoot
+behoove
+behooved
+behooveful
+behoovefully
+behoovefulness
+behooves
+behooving
+behoovingly
+behorn
+behorror
+behove
+behoved
+behovely
+behoves
+behoving
+behowl
+behowled
+behowling
+behowls
+Behre
+Behrens
+Behring
+Behrman
+behung
+behusband
+behymn
+behypocrite
+Beica
+beice
+Beichner
+Beid
+Beiderbecke
+beige
+beigel
+beiges
+beignet
+beignets
+beigy
+Beijing
+beild
+Beilul
+Bein
+bein
+being
+beingless
+beingness
+beings
+beinked
+beinly
+beinness
+Beira
+beira
+Beirne
+Beirut
+beirut
+beisa
+beisance
+Beisel
+Beitch
+Beitnes
+Beitris
+Beitz
+Beja
+beja
+bejabbers
+bejabers
+bejade
+bejan
+bejant
+bejape
+bejaundice
+bejazz
+bejel
+bejeled
+bejeling
+bejelled
+bejelling
+bejesuit
+bejesus
+bejewel
+bejeweled
+bejeweling
+bejewelled
+bejewelling
+bejewels
+bejezebel
+bejig
+Bejou
+bejuco
+bejuggle
+bejumble
+bejumbled
+bejumbles
+bejumbling
+Beka
+Bekaa
+Bekah
+bekah
+Bekelja
+Beker
+bekerchief
+Bekha
+bekick
+bekilted
+beking
+bekinkinite
+bekiss
+bekissed
+bekisses
+bekissing
+Bekki
+bekko
+beknave
+beknight
+beknighted
+beknighting
+beknights
+beknit
+beknived
+beknot
+beknots
+beknotted
+beknottedly
+beknottedness
+beknotting
+beknow
+beknown
+Bel
+bel
+Bela
+bela
+belabor
+belabored
+belaboring
+belabors
+belabour
+belaboured
+belabouring
+belabours
+bel-accoil
+belace
+belaced
+beladied
+beladies
+beladle
+belady
+beladying
+Belafonte
+belage
+belah
+Belair
+Belait
+Belaites
+Belak
+Belalton
+belam
+Belamcanda
+Bel-ami
+belamour
+Belamy
+belamy
+belanda
+belander
+Belanger
+belap
+belar
+belard
+Belasco
+belash
+belast
+belat
+belate
+belated
+belatedly
+belatedness
+belating
+Belatrix
+belatticed
+belaud
+belauded
+belauder
+belauding
+belauds
+Belaunde
+belavendered
+belay
+belayed
+belayer
+belaying
+Belayneh
+belays
+belch
+belched
+Belcher
+belcher
+belchers
+Belchertown
+belches
+belching
+Belcourt
+beld
+Belda
+beldam
+beldame
+beldames
+beldams
+beldamship
+Belden
+Beldenville
+belder
+belderroot
+Belding
+belduque
+beleaf
+beleaguer
+beleaguered
+beleaguerer
+beleaguering
+beleaguerment
+beleaguers
+beleap
+beleaped
+beleaping
+beleaps
+beleapt
+beleave
+belection
+belecture
+beledgered
+belee
+beleed
+beleft
+Belem
+belemnid
+belemnite
+Belemnites
+belemnitic
+Belemnitidae
+belemnoid
+Belemnoidea
+Belen
+beleper
+bel-esprit
+belesprit
+beletter
+beleve
+Belfair
+Belfast
+belfast
+belfather
+Belfield
+Belford
+Belfort
+belfried
+belfries
+belfry
+Belg
+Belg.
+belga
+Belgae
+belgae
+belgard
+belgas
+Belgaum
+Belgian
+belgian
+belgians
+Belgic
+Belgique
+Belgium
+belgium
+Belgophile
+Belgorod-Dnestrovski
+Belgrade
+belgrade
+Belgrano
+Belgravia
+Belgravian
+Belia
+Belial
+belial
+Belialic
+Belialist
+belibel
+belibeled
+belibeling
+Belicia
+belick
+belicoseness
+belie
+belied
+belief
+beliefful
+belieffulness
+beliefless
+beliefs
+Belier
+belier
+beliers
+belies
+believability
+believable
+believableness
+believably
+belie-ve
+believe
+believed
+believer
+believers
+believes
+believeth
+believing
+believingly
+belight
+beliing
+belike
+beliked
+belikely
+Belili
+belime
+belimousined
+Belinda
+Belington
+Belinuridae
+Belinurus
+belion
+beliquor
+beliquored
+beliquoring
+beliquors
+Belis
+Belisarius
+Belita
+belite
+Belitoeng
+Belitong
+belitter
+belittle
+belittled
+belittlement
+belittler
+belittlers
+belittles
+belittling
+Belitung
+belive
+Belize
+Belk
+belk
+Belknap
+belknap
+Bell
+bell
+Bella
+Bellabella
+Bellacoola
+belladonna
+belladonnas
+Bellaghy
+Bellaire
+Bellamy
+Bellanca
+bellarmine
+Bellarthur
+Bellatrix
+Bellaude
+Bellay
+bell-bearer
+bellbind
+bellbinder
+bellbine
+bell-bird
+bellbird
+bellbirds
+bellbottle
+bell-bottom
+bell-bottomed
+bell-bottoms
+bellboy
+bellboys
+Bellbrook
+Bellbuckle
+BELLCORE
+bell-cranked
+bell-crowned
+Bellda
+Belldame
+Belldas
+Belle
+belle
+Bellechasse
+belled
+belledom
+Belleek
+belleek
+belleeks
+Bellefonte
+bellehood
+Bellelay
+Bellemead
+Bellemina
+Belleplaine
+Beller
+belleric
+Bellerive
+Bellerophon
+bellerophon
+Bellerophontes
+Bellerophontic
+Bellerophontidae
+Bellerose
+belles
+belles-lettres
+belleter
+belletrist
+belletristic
+belletrists
+Bellevernon
+Belleview
+Belleville
+Bellevue
+bellevue
+Bellew
+bell-faced
+Bellflower
+bell-flower
+bellflower
+bell-flowered
+bellhanger
+bellhanging
+bell-hooded
+bellhop
+bellhops
+bell-house
+bellhouse
+belli
+bellibone
+bellic
+bellical
+bellicism
+bellicist
+bellicose
+bellicosely
+bellicoseness
+bellicosities
+bellicosity
+bellied
+bellies
+belliferous
+belligerence
+belligerences
+belligerencies
+belligerency
+belligerent
+belligerently
+belligerents
+Bellina
+belling
+Bellingham
+Bellini
+Bellinzona
+bellipotent
+Bellis
+bellite
+bell-less
+bell-like
+bell-magpie
+bellmaker
+bellmaking
+bellman
+bellmanship
+bellmaster
+Bellmead
+bellmen
+bell-metal
+Bellmont
+Bellmore
+bellmouth
+bell-mouthed
+bellmouthed
+bell-nosed
+Bello
+bello
+Belloc
+Belloir
+bellon
+Bellona
+bellona
+Bellonian
+bellonion
+belloot
+Bellot
+bellota
+bellote
+Bellotto
+Bellovaci
+Bellow
+bellow
+bellowed
+bellower
+bellowers
+bellowing
+Bellows
+bellows
+bellowsful
+bellowslike
+bellowsmaker
+bellowsmaking
+bellowsman
+Bellport
+bellpull
+bellpulls
+bellrags
+bell-ringer
+Bells
+bells
+bell-shaped
+belltail
+bell-tongue
+belltopper
+belltopperdom
+belluine
+bellum
+bell-up
+Bellvale
+Bellville
+Bellvue
+bellware
+bellwaver
+bellweather
+bellweed
+bell-wether
+bellwether
+bellwethers
+bellwind
+bellwine
+Bellwood
+bellwood
+bellwort
+bellworts
+belly
+bellyache
+bellyached
+bellyacher
+bellyaches
+bellyaching
+belly-band
+bellyband
+belly-beaten
+belly-blind
+belly-bound
+belly-bumper
+bellybutton
+bellybuttons
+belly-cheer
+belly-devout
+bellyer
+belly-fed
+bellyfish
+bellyflaught
+belly-flop
+belly-flopped
+belly-flopping
+belly-ful
+bellyful
+bellyfull
+bellyfulls
+bellyfuls
+belly-god
+belly-gulled
+belly-gun
+belly-helve
+bellying
+belly-laden
+belly-land
+bellyland
+belly-landing
+bellylike
+bellyman
+belly-naked
+belly-piece
+bellypiece
+bellypinch
+belly-pinched
+belly-proud
+belly-sprung
+belly-timber
+belly-wash
+belly-whop
+belly-whopped
+belly-whopping
+belly-worshiping
+Belmar
+Bel-Merodach
+Belmond
+Belmondo
+Belmont
+Belmonte
+Belmopan
+beloam
+belock
+beloeilite
+beloid
+Beloit
+belomancy
+Belone
+belonephobia
+belonesite
+belong
+belonged
+belonger
+belonging
+belongings
+belongs
+belonid
+Belonidae
+belonite
+belonoid
+belonosphaerite
+belook
+belord
+Belorussia
+Belorussian
+belorussian
+Belostok
+Belostoma
+Belostomatidae
+Belostomidae
+belotte
+belouke
+belout
+belove
+beloved
+beloveds
+Belovo
+below
+belowdecks
+belowground
+belows
+belowstairs
+belozenged
+Belpre
+Bel-Ridge
+bels
+Belsano
+Belsen
+Belshazzar
+belshazzar
+Belshazzaresque
+Belshin
+belsire
+Belsky
+belswagger
+belt
+Beltane
+beltane
+belt-coupled
+beltcourse
+belt-cutting
+belt-driven
+belted
+Beltene
+Belter
+belter
+belter-skelter
+Belteshazzar
+belt-folding
+Beltian
+beltie
+beltine
+belting
+beltings
+Beltir
+Beltis
+beltless
+beltline
+beltlines
+beltmaker
+beltmaking
+beltman
+beltmen
+Belton
+belton
+Beltrami
+Beltran
+belt-repairing
+belts
+belt-sanding
+belt-sewing
+Beltsville
+belt-tightening
+Beltu
+beltway
+beltways
+beltwise
+Beluchi
+Belucki
+belue
+beluga
+belugas
+belugite
+Belus
+belute
+Belva
+belve
+Belvedere
+belvedere
+belvedered
+belvederes
+Belverdian
+Belvia
+Belvidere
+belvidere
+Belview
+Belvue
+Bely
+bely
+belying
+belyingly
+belzebub
+belzebuth
+Belzoni
+B.E.M.
+BEM
+BEMA
+bema
+bemad
+bemadam
+bemadamed
+bemadaming
+bemadams
+bemadden
+bemaddened
+bemaddening
+bemaddens
+bemail
+bemaim
+bemajesty
+beman
+bemangle
+bemantle
+bemar
+bemartyr
+bemas
+bemask
+bemaster
+bemat
+bemata
+bemaul
+bemazed
+Bemba
+Bembas
+Bembecidae
+Bemberg
+Bembex
+beme
+bemeal
+bemean
+bemeaned
+bemeaning
+bemeans
+bemedaled
+bemedalled
+bemeet
+Bemelmans
+Bement
+bementite
+bemercy
+bemete
+Bemidji
+bemingle
+bemingled
+bemingles
+bemingling
+beminstrel
+bemire
+bemired
+bemirement
+bemires
+bemiring
+bemirror
+bemirrorment
+Bemis
+bemist
+bemisted
+bemisting
+bemistress
+bemists
+bemitered
+bemitred
+bemix
+bemixed
+bemixes
+bemixing
+bemixt
+bemoan
+bemoanable
+bemoaned
+bemoaner
+bemoaning
+bemoaningly
+bemoans
+bemoat
+bemock
+bemocked
+bemocking
+bemocks
+bemoil
+bemoisten
+bemol
+bemole
+bemolt
+bemonster
+bemoon
+bemotto
+bemoult
+bemourn
+bemouth
+bemuck
+bemud
+bemuddle
+bemuddled
+bemuddlement
+bemuddles
+bemuddling
+bemuddy
+bemuffle
+bemurmur
+bemurmure
+bemurmured
+bemurmuring
+bemurmurs
+bemuse
+bemused
+bemusedly
+bemusement
+bemuses
+bemusing
+bemusk
+bemuslined
+bemuzzle
+bemuzzled
+bemuzzles
+bemuzzling
+Ben
+ben
+Bena
+bena
+benab
+Benacus
+Benadryl
+benadryl
+bename
+benamed
+benamee
+benames
+benami
+benamidar
+benaming
+Benares
+Benarnold
+benasty
+Benavides
+benben
+Benbow
+Benbrook
+bench
+benchboard
+benched
+bencher
+benchers
+benchership
+benches
+benchfellow
+benchful
+bench-hardened
+benching
+bench-kneed
+benchland
+bench-legged
+benchless
+benchlet
+Benchley
+bench-made
+benchman
+benchmar
+bench-mark
+benchmark
+benchmarked
+benchmarking
+benchmarks
+benchmen
+bench-warmer
+benchwarmer
+benchwork
+benchy
+Bencion
+bencite
+Benco
+Bend
+bend
+Benda
+benda
+bendability
+bendable
+benday
+bendayed
+bendaying
+bendays
+bended
+bendee
+bendees
+Bendel
+bendel
+bendell
+Bendena
+Bender
+bender
+benders
+Bendersville
+Bendick
+Bendict
+Bendicta
+Bendicty
+bendies
+Bendigo
+bending
+bendingly
+Bendite
+Bendix
+bendlet
+bends
+bendsome
+bendways
+bendwise
+bendy
+bendys
+bendy-wavy
+Bene
+bene
+beneaped
+beneath
+beneception
+beneceptive
+beneceptor
+Benedetta
+Benedetto
+Benedic
+Benedicite
+benedicite
+Benedick
+benedick
+benedicks
+Benedict
+benedict
+Benedicta
+Benedictine
+benedictine
+Benedictinism
+benediction
+benedictional
+benedictionale
+benedictionary
+benedictions
+benedictive
+benedictively
+Benedicto
+benedictory
+benedicts
+Benedictus
+benedictus
+benedight
+Benedikt
+Benedikta
+Benediktov
+Benedix
+benefact
+benefaction
+benefactions
+benefactive
+benefactor
+benefactors
+benefactorship
+benefactory
+benefactress
+benefactresses
+benefactrices
+benefactrix
+benefactrixes
+benefic
+benefice
+beneficed
+benefice-holder
+beneficeless
+beneficence
+beneficences
+beneficency
+beneficent
+beneficential
+beneficently
+benefices
+beneficiaire
+beneficial
+beneficially
+beneficialness
+beneficiaries
+beneficiary
+beneficiaryship
+beneficiate
+beneficiated
+beneficiating
+beneficiation
+beneficience
+beneficient
+beneficing
+beneficium
+benefit
+benefited
+benefiter
+benefiting
+benefits
+benefitted
+benefitting
+benegro
+beneighbored
+BENELUX
+Benelux
+beneme
+Benemid
+benempt
+benempted
+Benenson
+beneplacit
+beneplacito
+beneplacity
+Benes
+benes
+Benet
+benet
+Benet-Mercie
+Benetnasch
+Benetta
+benetted
+benetting
+benettle
+beneurous
+Beneventan
+Beneventana
+Benevento
+benevolence
+benevolences
+benevolency
+benevolent
+benevolently
+benevolentness
+benevolist
+Benezett
+Benfleet
+BEng
+Beng
+Beng.
+beng
+Bengal
+bengal
+Bengalese
+Bengali
+bengali
+Bengalic
+bengaline
+bengals
+Bengasi
+Benge
+Benghazi
+Bengkalis
+Bengola
+Bengt
+Benguela
+Ben-Gurion
+Benham
+Benhur
+Beni
+beni
+Benia
+Beniamino
+benic
+Benicia
+benight
+benighted
+benightedly
+benightedness
+benighten
+benighter
+benighting
+benightmare
+benightment
+benign
+benignancies
+benignancy
+benignant
+benignantly
+benignities
+benignity
+benignly
+benignness
+Beni-israel
+Benil
+Benilda
+Benildas
+Benildis
+benim
+Benin
+benin
+Benincasa
+Benioff
+Benis
+Benisch
+beniseed
+benison
+benisons
+Benita
+benitier
+Benito
+benitoite
+benj
+Benjamen
+Benjamin
+benjamin
+benjamin-bush
+Benjamin-Constant
+Benjaminite
+benjaminite
+benjamins
+Benjamite
+Benji
+Benjie
+benjoin
+Benjy
+benjy
+Benkelman
+Benkley
+Benkulen
+Benld
+Benlomond
+benmost
+Benn
+benn
+benne
+bennel
+bennes
+Bennet
+bennet
+bennets
+Bennett
+Bennettitaceae
+bennettitaceous
+Bennettitales
+Bennettites
+Bennettsville
+bennetweed
+Benni
+benni
+Bennie
+bennies
+Bennington
+Bennink
+Bennion
+Bennir
+bennis
+benniseed
+Bennu
+Benny
+benny
+Beno
+beno
+Benoit
+Benoite
+benomyl
+benomyls
+Ben-oni
+Benoni
+benorth
+benote
+bens
+bensail
+Bensalem
+bensall
+bensel
+bensell
+Bensen
+Bensenville
+bensh
+benshea
+benshee
+benshi
+bensil
+Bensky
+Benson
+Bent
+bent
+bentang
+ben-teak
+bentgrass
+benthal
+Bentham
+Benthamic
+Benthamism
+benthamism
+Benthamite
+benthic
+benthon
+benthonic
+benthopelagic
+benthos
+benthoscope
+benthoses
+Bentinck
+bentinck
+Bentincks
+bentiness
+benting
+Bentlee
+bentlet
+Bentley
+Bentleyville
+Bently
+Benton
+Bentonia
+bentonite
+bentonitic
+Bentonville
+Bentree
+bents
+bentstar
+bent-taildog
+bentwood
+bentwoods
+benty
+Benu
+Benue
+Benue-Congo
+benumb
+benumbed
+benumbedness
+benumbing
+benumbingly
+benumbment
+benumbs
+Benvenuto
+benvenuto
+benward
+benweed
+Benwood
+Benyamin
+Benz
+benz-
+benzacridine
+benzal
+benzalacetone
+benzalacetophenone
+benzalaniline
+benzalazine
+benzalcohol
+benzalcyanhydrin
+benzaldehyde
+benzaldiphenyl
+benzaldoxime
+benzalethylamine
+benzalhydrazine
+benzalphenylhydrazone
+benzalphthalide
+benzamide
+benzamido
+benzamine
+benzaminic
+benzamino
+benzanalgen
+benzanilide
+benzanthracene
+benzanthrone
+benzantialdoxime
+benzazide
+benzazimide
+benzazine
+benzazole
+benzbitriazole
+benzdiazine
+benzdifuran
+benzdioxazine
+benzdioxdiazine
+benzdioxtriazine
+Benzedrine
+benzedrine
+benzein
+Benzel
+benzene
+benzeneazobenzene
+benzenediazonium
+benzenes
+benzenoid
+benzenyl
+benzhydrol
+benzhydroxamic
+benzidin
+benzidine
+benzidino
+benzidins
+benzil
+benzilic
+benzimidazole
+benziminazole
+benzin
+benzinduline
+benzine
+benzines
+benzins
+benzo
+benzo-
+benzoate
+benzoated
+benzoates
+benzoazurine
+benzobis
+benzocaine
+benzocoumaran
+benzodiazine
+benzodiazole
+benzoflavine
+benzofluorene
+benzofulvene
+benzofuran
+benzofuroquinoxaline
+benzofuryl
+benzoglycolic
+benzoglyoxaline
+benzohydrol
+benzoic
+benzoid
+benzoin
+benzoinated
+benzoins
+benzoiodohydrin
+benzol
+benzolate
+benzole
+benzoles
+benzoline
+benzolize
+benzols
+benzomorpholine
+benzonaphthol
+Benzonia
+benzonitrile
+benzonitrol
+benzoperoxide
+benzophenanthrazine
+benzophenanthroline
+benzophenazine
+benzophenol
+benzophenone
+benzophenothiazine
+benzophenoxazine
+benzophloroglucinol
+benzophosphinic
+benzophthalazine
+benzopinacone
+benzopyran
+benzopyranyl
+benzopyrazolone
+benzopyrene
+benzopyrylium
+benzoquinoline
+benzoquinone
+benzoquinoxaline
+benzosulfimide
+benzosulphimide
+benzotetrazine
+benzotetrazole
+benzothiazine
+benzothiazole
+benzothiazoline
+benzothiodiazole
+benzothiofuran
+benzothiophene
+benzothiopyran
+benzotoluide
+benzotriazine
+benzotriazole
+benzotrichloride
+benzotrifluoride
+benzotrifuran
+benzoxate
+benzoxy
+benzoxyacetic
+benzoxycamphor
+benzoxyphenanthrene
+benzoyl
+benzoylate
+benzoylated
+benzoylating
+benzoylation
+benzoylformic
+benzoylglycine
+benzoyls
+benzpinacone
+benzpyrene
+benzthiophen
+benztrioxazine
+Ben-Zvi
+benzyl
+benzylamine
+benzylic
+benzylidene
+benzylpenicillin
+benzyls
+beode
+Beograd
+Beora
+Beore
+Beothuk
+Beothukan
+Beowawe
+Beowulf
+beowulf
+BEP
+bepaid
+Bepaint
+bepaint
+bepainted
+bepainting
+bepaints
+bepale
+bepaper
+beparch
+beparody
+beparse
+bepart
+bepaste
+bepastured
+bepat
+bepatched
+bepaw
+bepearl
+bepelt
+bepen
+bepepper
+beperiwigged
+bepester
+bepewed
+bephilter
+bephrase
+bepicture
+bepiece
+bepierce
+bepile
+bepill
+bepillared
+bepimple
+bepimpled
+bepimples
+bepimpling
+bepinch
+bepistoled
+bepity
+beplague
+beplaided
+beplaster
+beplumed
+bepommel
+bepowder
+bepraise
+bepraisement
+bepraiser
+beprank
+bepranked
+bepray
+bepreach
+bepress
+bepretty
+bepride
+beprose
+bepuddle
+bepuff
+bepuffed
+bepun
+bepurple
+bepuzzle
+bepuzzlement
+Beqaa
+bequalm
+bequeath
+bequeathable
+bequeathal
+bequeathed
+bequeather
+bequeathing
+bequeathment
+bequeaths
+bequest
+bequests
+bequirtle
+bequote
+beqwete
+BER
+Ber
+ber
+berain
+berairou
+berakah
+berake
+beraked
+berakes
+beraking
+berakot
+berakoth
+Beranger
+berapt
+Berar
+Berard
+Berardo
+berascal
+berascaled
+berascaling
+berascals
+berat
+berate
+berated
+berates
+berating
+berattle
+beraunite
+beray
+berbamine
+Berber
+berber
+Berbera
+Berberi
+berberia
+Berberian
+berberid
+Berberidaceae
+berberidaceous
+berberin
+berberine
+berberins
+Berberis
+berberis
+berberry
+berbers
+berbery
+berceau
+berceaunette
+bercelet
+berceuse
+berceuses
+Berchemia
+Berchta
+Berchtesgaden
+Berck
+Berclair
+Bercovici
+Bercy
+berdache
+berdaches
+berdash
+Berdichev
+Berdyaev
+Berdyayev
+bere
+Berea
+Berean
+bereareft
+bereason
+bereave
+bereaved
+bereavement
+bereavements
+bereaven
+bereaver
+bereavers
+bereaves
+bereaving
+Berecyntia
+berede
+bereft
+berend
+berendo
+Berengaria
+Berengarian
+Berengarianism
+berengelite
+berengena
+Berenice
+Berenices
+Berenson
+Beresford
+Bereshith
+beresite
+Beret
+beret
+berets
+Beretta
+beretta
+berettas
+berewick
+Berey
+Berezina
+Berezniki
+Berfield
+Berg
+berg
+Berga
+bergalith
+bergall
+Bergama
+bergamasca
+bergamasche
+Bergamask
+bergamask
+Bergamee
+bergamiol
+Bergamo
+Bergamos
+Bergamot
+bergamot
+bergamots
+bergander
+bergaptene
+Bergdama
+Bergeman
+Bergen
+Bergen-Belsen
+Bergenfield
+Berger
+berger
+Bergerac
+bergere
+bergeres
+bergeret
+bergerette
+Bergeron
+Bergess
+Berget
+bergfall
+berggylt
+Bergh
+bergh
+berghaan
+Berghoff
+Bergholz
+Bergin
+berginization
+berginize
+Bergius
+Bergland
+berglet
+Berglund
+Bergman
+bergman
+Bergmann
+bergmannite
+Bergmans
+bergomask
+Bergoo
+Bergquist
+Bergren
+bergs
+bergschrund
+Bergsma
+Bergson
+Bergsonian
+Bergsonism
+Bergstein
+Bergstrom
+Bergton
+bergut
+Bergwall
+bergy
+bergylt
+Berhley
+berhyme
+berhymed
+berhymes
+berhyming
+Beri
+Beria
+beribanded
+beribbon
+beribboned
+beriber
+beriberi
+beriberic
+beriberis
+beribers
+beride
+berigora
+berime
+berimed
+berimes
+beriming
+Bering
+bering
+beringed
+beringite
+beringleted
+berinse
+Berio
+Beriosova
+Berit
+Berith
+berith
+Berk
+berk
+Berke
+Berkeleian
+berkeleian
+Berkeleianism
+Berkeley
+berkeley
+Berkeleyism
+Berkeleyite
+berkelium
+Berkey
+Berkie
+Berkin
+Berkley
+Berkly
+Berkman
+berkovets
+berkovtsi
+Berkow
+Berkowitz
+berkowitz
+Berks
+Berkshire
+berkshire
+Berkshires
+Berky
+Berl
+Berlauda
+Berlen
+berley
+Berlichingen
+Berlin
+berlin
+berlina
+Berlinda
+berline
+berline-landaulet
+Berliner
+berliner
+berliners
+berlines
+Berlinguer
+berlinite
+Berlinize
+berlin-landaulet
+berlins
+Berlioz
+Berlitz
+Berlon
+berloque
+Berlyn
+Berlyne
+berm
+Berman
+berme
+Bermejo
+bermensch
+bermes
+berms
+Bermuda
+bermuda
+Bermudan
+Bermudas
+bermudas
+Bermudian
+bermudian
+bermudians
+bermudite
+Bern
+Berna
+bernacle
+Bernadene
+Bernadette
+Bernadina
+Bernadine
+Bernadotte
+Bernal
+Bernalillo
+Bernanos
+Bernard
+bernard
+Bernardi
+Bernardina
+Bernardine
+bernardine
+Bernardino
+Bernardo
+Bernardston
+Bernardsville
+Bernarr
+Bernat
+Berne
+berne
+Bernelle
+Berner
+Berners
+Bernese
+Bernet
+Berneta
+Bernete
+Bernetta
+Bernette
+Bernhard
+Bernhardi
+Bernhardt
+Berni
+Bernice
+Bernicia
+bernicle
+bernicles
+Bernie
+Berniece
+Bernina
+Berninesque
+Bernini
+Bernis
+Bernita
+Bernj
+Bernkasteler
+bernoo
+Bernouilli
+Bernoulli
+Bernoullian
+Berns
+Bernstein
+bernstein
+Bernstorff
+Bernt
+Bernville
+Berny
+berob
+berobed
+Beroe
+beroe
+berogue
+Beroida
+Beroidae
+beroll
+Berossos
+Berosus
+berouged
+Beroun
+beround
+Berra
+berreave
+berreaved
+berreaves
+berreaving
+Berrellez
+berrendo
+berret
+berretta
+berrettas
+berrettino
+Berri
+berri
+berrichon
+berrichonne
+Berrie
+berried
+berrier
+berries
+berrigan
+Berriman
+berrugate
+Berry
+berry
+berry-bearing
+berry-brown
+berrybush
+berry-formed
+berrying
+berryless
+berrylike
+Berryman
+berryman
+berry-on-bone
+berrypicker
+berrypicking
+Berrysburg
+berry-shaped
+Berryton
+Berryville
+bersagliere
+bersaglieri
+berseem
+berseems
+berserk
+berserker
+berserks
+Bersiamite
+Bersil
+bersim
+berskin
+berstel
+Berstine
+BERT
+Bert
+Berta
+Bertasi
+Bertat
+Bertaud
+Berte
+Bertelli
+Bertero
+Berteroa
+berth
+Bertha
+bertha
+berthage
+berthas
+Berthe
+berthed
+berther
+berthierite
+berthing
+Berthold
+Bertholletia
+Berthoud
+berths
+Berti
+Bertie
+Bertila
+Bertilla
+Bertillon
+bertillonage
+bertin
+Bertina
+Bertine
+Bertle
+Bertoia
+Bertold
+Bertolde
+Bertolonia
+Bertolt
+Bertolucci
+Berton
+Bertram
+bertram
+Bertrand
+bertrandite
+Bertrando
+Bertrant
+bertrum
+Bertsche
+Berty
+beruffed
+beruffled
+berun
+berust
+bervie
+Berwick
+berwick
+Berwickshire
+Berwick-upon-Tweed
+Berwind
+Berwyn
+berycid
+Berycidae
+beryciform
+berycine
+berycoid
+Berycoidea
+berycoidean
+Berycoidei
+Berycomorphi
+Beryl
+beryl
+berylate
+beryl-blue
+Beryle
+beryl-green
+beryline
+beryllate
+beryllia
+berylline
+berylliosis
+beryllium
+berylloid
+beryllonate
+beryllonite
+beryllosis
+beryls
+Berytidae
+Beryx
+beryx
+berzelianite
+berzeliite
+Berzelius
+BES
+Bes
+bes
+bes-
+besa
+besagne
+besague
+besaiel
+besaile
+besaint
+besan
+Besancon
+besanctify
+besand
+Besant
+besant
+bes-antler
+besauce
+besayle
+bescab
+bescarf
+bescatter
+bescent
+bescorch
+bescorched
+bescorches
+bescorching
+bescorn
+bescoundrel
+bescour
+bescoured
+bescourge
+bescouring
+bescours
+bescramble
+bescrape
+bescratch
+bescrawl
+bescreen
+bescreened
+bescreening
+bescreens
+bescribble
+bescribbled
+bescribbling
+bescurf
+bescurvy
+bescutcheon
+beseam
+besee
+beseech
+beseeched
+beseecher
+beseechers
+beseeches
+beseeching
+beseechingly
+beseechingness
+beseechment
+beseek
+beseem
+beseemed
+beseeming
+beseemingly
+beseemingness
+beseemliness
+beseemly
+beseems
+beseen
+beseige
+Beseleel
+beset
+besetment
+besets
+besetter
+besetters
+besetting
+besew
+beshackle
+beshade
+beshadow
+beshadowed
+beshadowing
+beshadows
+beshag
+beshake
+beshame
+beshamed
+beshames
+beshaming
+beshawled
+beshear
+beshell
+beshield
+beshine
+beshiver
+beshivered
+beshivering
+beshivers
+beshlik
+beshod
+Beshore
+beshout
+beshouted
+beshouting
+beshouts
+beshow
+beshower
+beshrew
+beshrewed
+beshrewing
+beshrews
+beshriek
+beshrivel
+beshroud
+beshrouded
+beshrouding
+beshrouds
+BeShT
+besiclometer
+beside
+besides
+besiege
+besieged
+besiegement
+besieger
+besiegers
+besieges
+besieging
+besiegingly
+Besier
+besigh
+besilver
+besin
+besing
+besiren
+besit
+beslab
+beslabber
+beslap
+beslash
+beslave
+beslaved
+beslaver
+besleeve
+beslime
+beslimed
+beslimer
+beslimes
+besliming
+beslings
+beslipper
+beslobber
+beslow
+beslubber
+besluit
+beslur
+beslushed
+besmear
+besmeared
+besmearer
+besmearing
+besmears
+besmell
+besmile
+besmiled
+besmiles
+besmiling
+besmirch
+besmirched
+besmircher
+besmirchers
+besmirches
+besmirching
+besmirchment
+besmoke
+besmoked
+besmokes
+besmoking
+besmooth
+besmoothed
+besmoothing
+besmooths
+besmother
+besmottered
+besmouch
+besmudge
+besmudged
+besmudges
+besmudging
+be-smut
+besmut
+be-smutch
+besmutch
+besmuts
+besmutted
+besmutting
+Besnard
+besnare
+besneer
+besnivel
+besnow
+besnowed
+besnowing
+besnows
+besnuff
+besodden
+besogne
+besognier
+besoil
+besoin
+besom
+besomer
+besoms
+besonio
+besonnet
+besoot
+besoothe
+besoothed
+besoothement
+besoothes
+besoothing
+besort
+besot
+besotment
+besots
+besotted
+besottedly
+besottedness
+besotter
+besotting
+besottingly
+besought
+besoul
+besour
+besouth
+bespake
+bespangle
+bespangled
+bespangles
+bespangling
+bespate
+bespatter
+bespattered
+bespatterer
+bespattering
+bespatterment
+bespatters
+bespawl
+bespeak
+bespeakable
+bespeaker
+bespeaking
+bespeaks
+bespecked
+bespeckle
+bespeckled
+bespecklement
+bespectacled
+besped
+bespeech
+bespeed
+bespell
+bespelled
+bespend
+bespete
+bespew
+bespice
+bespill
+bespin
+bespirit
+bespit
+besplash
+besplatter
+besplit
+bespoke
+bespoken
+bespot
+bespotted
+bespottedness
+bespotting
+bespouse
+bespoused
+bespouses
+bespousing
+bespout
+bespray
+bespread
+bespreading
+bespreads
+bespreng
+besprent
+bespring
+besprinkle
+besprinkled
+besprinkler
+besprinkles
+besprinkling
+besprizorni
+bespurred
+bespurt
+besputter
+bespy
+besqueeze
+besquib
+besquirt
+besra
+Bess
+bess
+Bessarabia
+Bessarabian
+Bessarion
+Besse
+Bessel
+bessel
+Besselian
+Bessemer
+bessemer
+Bessemerize
+bessemerize
+bessemerized
+bessemerizing
+Bessera
+besses
+Bessi
+Bessie
+Bessy
+Bessye
+BEST
+Best
+best
+bestab
+best-able
+best-abused
+best-accomplished
+bestad
+best-agreeable
+bestain
+bestamp
+bestand
+bestar
+bestare
+best-armed
+bestarve
+bestatued
+bestay
+bestayed
+best-ball
+best-beloved
+best-bred
+best-built
+best-clad
+best-conditioned
+best-conducted
+best-considered
+best-consulted
+best-cultivated
+best-dressed
+bestead
+besteaded
+besteading
+besteads
+besteal
+bested
+besteer
+bestench
+bester
+best-established
+best-esteemed
+best-formed
+best-graced
+best-grounded
+best-hated
+best-humored
+bestial
+bestialise
+bestialised
+bestialising
+bestialism
+bestialist
+bestialities
+bestiality
+bestialize
+bestialized
+bestializes
+bestializing
+bestially
+bestials
+bestian
+bestiarian
+bestiarianism
+bestiaries
+bestiarist
+bestiary
+bestick
+besticking
+bestill
+best-informed
+besting
+bestink
+best-intentioned
+bestir
+bestirred
+bestirring
+bestirs
+best-known
+best-laid
+best-learned
+best-liked
+best-loved
+best-made
+best-managed
+best-meaning
+best-meant
+best-minded
+best-natured
+bestness
+best-nourishing
+bestock
+bestore
+bestorm
+bestove
+bestow
+bestowable
+bestowage
+bestowal
+bestowals
+bestowed
+bestower
+bestowing
+bestowment
+bestows
+best-paid
+best-paying
+best-pleasing
+best-preserved
+best-principled
+bestraddle
+bestraddled
+bestraddling
+bestrapped
+bestraught
+bestraw
+best-read
+bestreak
+bestream
+best-resolved
+bestrew
+bestrewed
+bestrewing
+bestrewment
+bestrewn
+bestrews
+bestrid
+bestridden
+bestride
+bestrided
+bestrides
+bestriding
+bestripe
+bestrode
+bestrow
+bestrowed
+bestrowing
+bestrown
+bestrows
+bestrut
+bests
+bestseller
+bestsellerdom
+bestsellers
+best-selling
+bestselling
+best-sighted
+best-skilled
+best-tempered
+best-trained
+bestubble
+bestubbled
+bestuck
+bestud
+bestudded
+bestudding
+bestuds
+bestuur
+besugar
+besugo
+besuit
+besully
+beswarm
+beswarmed
+beswarming
+beswarms
+besweatered
+besweeten
+beswelter
+beswim
+beswinge
+beswink
+beswitch
+bet
+bet.
+Beta
+beta
+beta-amylase
+betacaine
+betacism
+betacismus
+beta-eucaine
+betafite
+betag
+beta-glucose
+betail
+betailor
+betain
+betaine
+betaines
+betainogen
+betake
+betaken
+betakes
+betaking
+betalk
+betallow
+beta-naphthol
+betanaphthol
+beta-naphthyl
+beta-naphthylamine
+Betancourt
+betangle
+betanglement
+beta-orcin
+beta-orcinol
+betas
+betask
+betassel
+betatron
+betatrons
+betatter
+betattered
+betattering
+betatters
+betaxed
+bete
+beteach
+betear
+beteela
+beteem
+betel
+Betelgeuse
+betelgeuse
+Betelgeux
+betell
+betelnut
+betelnuts
+betels
+beterschap
+betes
+Beth
+beth
+bethabara
+Bethalto
+Bethania
+bethank
+bethanked
+bethanking
+bethankit
+bethanks
+Bethanna
+Bethanne
+Bethany
+Bethe
+Bethel
+bethel
+bethels
+Bethena
+Bethera
+Bethesda
+bethesda
+bethesdas
+Bethesde
+Bethezel
+bethflower
+Bethina
+bethink
+bethinking
+bethinks
+Bethlehem
+bethlehem
+Bethlehemite
+bethlehemite
+bethorn
+bethorned
+bethorning
+bethorns
+bethought
+Bethpage
+bethrall
+bethreaten
+bethroot
+beths
+Bethsabee
+Bethsaida
+Bethuel
+bethumb
+bethump
+bethumped
+bethumping
+bethumps
+bethunder
+Bethune
+bethwack
+bethwine
+bethylid
+Bethylidae
+betide
+betided
+betides
+betiding
+betimber
+betime
+betimes
+betinge
+betipple
+betire
+betis
+betise
+betises
+betitle
+Betjeman
+betocsin
+betoil
+betoken
+betokened
+betokener
+betokening
+betokenment
+betokens
+beton
+betone
+betongue
+Betonica
+betonica
+betonies
+betons
+betony
+betook
+betorcin
+betorcinol
+betorn
+betoss
+betowel
+betowered
+Betoya
+Betoyan
+betrace
+betrail
+betraise
+betrample
+betrap
+betravel
+betray
+betrayal
+betrayals
+betrayed
+betrayer
+betrayers
+betra'ying
+betraying
+betrayment
+betrays
+betread
+betrend
+betrim
+betrinket
+betroth
+betrothal
+betrothals
+betrothed
+betrotheds
+betrothing
+betrothment
+betroths
+betrough
+betrousered
+BETRS
+betrumpet
+betrunk
+betrust
+bets
+Betsey
+Betsi
+Betsileos
+Betsimisaraka
+betso
+Betsy
+Bett
+Betta
+betta
+bettas
+Bette
+Bette-Ann
+Betteann
+Betteanne
+betted
+Bettencourt
+Bettendorf
+better
+better-advised
+better-affected
+better-balanced
+better-becoming
+better-behaved
+better-born
+better-bred
+better-considered
+better-disposed
+better-dressed
+bettered
+betterer
+bettergates
+better-humored
+better-informed
+bettering
+better-knowing
+better-known
+better-liked
+better-liking
+betterly
+better-meant
+betterment
+betterments
+bettermost
+better-natured
+betterness
+better-omened
+better-principled
+better-regulated
+betters
+better-seasoned
+better-taught
+Betterton
+better-witted
+Betthel
+Betthezel
+Betthezul
+Betti
+betties
+Bettina
+Bettine
+betting
+Bettinus
+bettong
+bettonga
+Bettongia
+bettor
+bettors
+Bettsville
+Betty
+betty
+Bettye
+Bettzel
+betuckered
+Betula
+Betulaceae
+betulaceous
+betulin
+betulinamaric
+betulinic
+betulinol
+Betulites
+betumbled
+beturbaned
+betusked
+betutor
+betutored
+betwattled
+between
+betweenbrain
+between-deck
+between-decks
+betweenity
+between-maid
+betweenmaid
+betweenness
+betweens
+betweentimes
+between-whiles
+betweenwhiles
+betwine
+betwit
+betwixen
+betwixt
+Betz
+beudanite
+beudantite
+Beulah
+beulah
+Beulaville
+beuncled
+beuniformed
+beurre
+Beuthel
+Beuthen
+Beutler
+Beutner
+BeV
+Bev
+Bevan
+bevaring
+Bevash
+bevatron
+bevatrons
+beveil
+bevel
+beveled
+bevel-edged
+beveler
+bevelers
+beveling
+bevelled
+beveller
+bevellers
+bevelling
+bevelment
+bevels
+bevenom
+Bever
+bever
+beverage
+beverages
+Beveridge
+Beverie
+Beverle
+Beverlee
+Beverley
+Beverlie
+Beverly
+Bevers
+beverse
+bevesseled
+bevesselled
+beveto
+Bevier
+bevies
+bevil
+bevillain
+bevilled
+Bevin
+bevined
+Bevington
+Bevinsville
+Bevis
+bevoiled
+bevomit
+bevomited
+bevomiting
+bevomits
+Bevon
+bevor
+bevors
+bevue
+Bevus
+Bevvy
+bevvy
+bevy
+BEW
+bewail
+bewailable
+bewailed
+bewailer
+bewailers
+bewailing
+bewailingly
+bewailment
+bewails
+bewaitered
+bewake
+bewall
+beware
+bewared
+bewares
+bewaring
+bewary
+bewash
+bewaste
+bewater
+bewearied
+bewearies
+beweary
+bewearying
+beweep
+beweeper
+beweeping
+beweeps
+bewelcome
+bewelter
+bewend
+bewept
+bewest
+bewet
+bewhig
+bewhisker
+bewhiskered
+bewhisper
+bewhistle
+bewhite
+bewhiten
+bewhore
+Bewick
+bewidow
+bewield
+bewig
+bewigged
+bewigging
+bewigs
+bewilder
+bewildered
+bewilderedly
+bewilderedness
+bewildering
+bewilderingly
+bewilderment
+bewilderments
+bewilders
+bewimple
+bewinged
+bewinter
+bewired
+bewit
+bewitch
+bewitched
+bewitchedness
+bewitcher
+bewitchery
+bewitches
+bewitchful
+bewitching
+bewitchingly
+bewitchingness
+bewitchment
+bewitchments
+bewith
+bewizard
+bewonder
+bework
+beworm
+bewormed
+beworming
+beworms
+beworn
+beworried
+beworries
+beworry
+beworrying
+beworship
+bewpers
+bewrap
+bewrapped
+bewrapping
+bewraps
+bewrapt
+bewrathed
+bewray
+bewrayed
+bewrayer
+bewrayers
+bewraying
+bewrayingly
+bewrayment
+bewrays
+bewreak
+bewreath
+bewreck
+bewrite
+bewrought
+bewry
+bewwept
+Bexar
+Bexhill-on-Sea
+Bexley
+bey
+beydom
+Beyer
+beyerite
+Beyle
+Beylic
+beylic
+beylical
+beylics
+beylik
+beyliks
+Beyo
+Beyoglu
+beyond
+beyondness
+beyonds
+beyrichite
+Beyrouth
+beys
+beyship
+Bezae
+Bezaleel
+Bezaleelian
+bezan
+Bezanson
+bezant
+bezante
+bezantee
+bez-antler
+bezants
+bezanty
+bezazz
+bezazzes
+bezel
+bezels
+bezesteen
+bezetta
+bezette
+Beziers
+bezil
+bezils
+bezique
+beziques
+bezoar
+bezoardic
+bezoars
+bezonian
+Bezpopovets
+Bezwada
+bezzant
+bezzants
+bezzi
+bezzle
+bezzled
+bezzling
+bezzo
+B/F
+BF
+b.f.
+bf
+BFA
+BFAMus
+BFD
+BFDC
+BFHD
+B-flat
+BFR
+BFS
+BFT
+BG
+bg
+BGE
+BGeNEd
+B-girl
+Bglr
+BGP
+BH
+BHA
+bhabar
+Bhabha
+Bhadgaon
+Bhadon
+Bhaga
+Bhagalpur
+bhagat
+Bhagavad-Gita
+bhagavat
+bhagavata
+Bhai
+bhaiachara
+bhaiachari
+Bhairava
+Bhairavi
+bhaiyachara
+bhajan
+bhakta
+Bhaktapur
+bhaktas
+bhakti
+bhaktimarga
+bhaktis
+bhalu
+bhandar
+bhandari
+bhang
+bhangi
+bhangs
+Bhar
+bhara
+bharal
+Bharat
+Bharata
+Bharatiya
+bharti
+bhat
+Bhatpara
+Bhatt
+Bhaunagar
+bhava
+Bhavabhuti
+bhavan
+Bhavani
+Bhave
+Bhavnagar
+Bhayani
+BHC
+bhd
+bheestie
+bheesties
+bheesty
+bhikhari
+Bhikku
+bhikku
+Bhikkuni
+Bhikshu
+bhikshu
+Bhil
+Bhili
+Bhima
+bhindi
+bhishti
+bhisti
+bhistie
+bhisties
+BHL
+Bhojpuri
+bhokra
+Bhola
+Bhoodan
+bhoosa
+bhoot
+bhoots
+Bhopal
+b-horizon
+Bhotia
+Bhotiya
+Bhowani
+b'hoy
+bhoy
+BHP
+bhp
+BHT
+Bhubaneswar
+Bhudan
+Bhudevi
+Bhumibol
+bhumidar
+Bhumij
+bhunder
+bhungi
+bhungini
+bhut
+Bhutan
+bhutan
+Bhutanese
+bhutanese
+Bhutani
+Bhutatathata
+bhutatathata
+bhut-bali
+Bhutia
+bhuts
+Bhutto
+BI
+Bi
+bi
+bi-
+Bia
+biabo
+biacetyl
+biacetylene
+biacetyls
+biacid
+biacromial
+biacuminate
+biacuru
+Biadice
+Biafra
+Biafran
+Biagi
+Biagio
+biajaiba
+Biak
+bialate
+biali
+Bialik
+bialis
+biallyl
+bialveolar
+bialy
+bialys
+Bialystok
+bialystoker
+Biamonte
+Bianca
+Biancha
+Bianchi
+Bianchini
+bianchite
+Bianco
+bianco
+biangular
+biangulate
+biangulated
+biangulous
+bianisidine
+Bianka
+biannual
+biannually
+biannulate
+biarchy
+biarcuate
+biarcuated
+Biarritz
+biarticular
+biarticulate
+biarticulated
+Bias
+bias
+biased
+biasedly
+biases
+biasing
+biasness
+biasnesses
+biassed
+biassedly
+biasses
+biassing
+biasteric
+biasways
+biaswise
+biathlon
+biathlons
+biatomic
+biaural
+biauricular
+biauriculate
+biaxal
+biaxial
+biaxiality
+biaxially
+biaxillary
+Biayenda
+Bib
+Bib.
+bib
+bibacious
+bibaciousness
+bibacity
+bibasic
+bibasilar
+bibation
+bibb
+bibbed
+bibber
+bibberies
+bibbers
+bibbery
+Bibbie
+Bibbiena
+bibbing
+bibble
+bibble-babble
+bibbled
+bibbler
+bibbling
+bibbons
+bibbs
+Bibby
+bibby
+Bibbye
+bibcock
+bibcocks
+Bibeau
+bibelot
+bibelots
+bibenzyl
+biberon
+Bibi
+bibi
+Bibiena
+Bibio
+bibionid
+Bibionidae
+bibiri
+bibiru
+bibitory
+bi-bivalent
+Bibl
+Bibl.
+bibl
+bibl.
+Bible
+bible
+Bible-basher
+bible-christian
+bible-clerk
+bibles
+bibless
+BiblHeb
+Biblic
+Biblical
+biblical
+Biblicality
+Biblically
+biblically
+Biblicism
+biblicism
+Biblicist
+biblicist
+Biblicistic
+biblico-
+Biblicolegal
+Biblicoliterary
+Biblicopsychological
+biblike
+biblio-
+biblioclasm
+biblioclast
+bibliofilm
+bibliog
+bibliog.
+bibliogenesis
+bibliognost
+bibliognostic
+bibliogony
+bibliograph
+bibliographer
+bibliographers
+bibliographic
+bibliographical
+bibliographically
+bibliographies
+bibliographize
+bibliography
+bibliokelpt
+biblioklept
+bibliokleptomania
+bibliokleptomaniac
+bibliolater
+bibliolatrist
+bibliolatrous
+bibliolatry
+bibliological
+bibliologies
+bibliologist
+bibliology
+bibliomancy
+bibliomane
+bibliomania
+bibliomaniac
+bibliomaniacal
+bibliomanian
+bibliomanianism
+bibliomanism
+bibliomanist
+bibliopegic
+bibliopegically
+bibliopegist
+bibliopegistic
+bibliopegistical
+bibliopegy
+bibliophage
+bibliophagic
+bibliophagist
+bibliophagous
+bibliophil
+bibliophile
+bibliophiles
+bibliophilic
+bibliophilism
+bibliophilist
+bibliophilistic
+bibliophily
+bibliophobe
+bibliophobia
+bibliopolar
+bibliopole
+bibliopolery
+bibliopolic
+bibliopolical
+bibliopolically
+bibliopolism
+bibliopolist
+bibliopolistic
+bibliopoly
+bibliosoph
+bibliotaph
+bibliotaphe
+bibliotaphic
+bibliothec
+bibliotheca
+bibliothecae
+bibliothecaire
+bibliothecal
+bibliothecarial
+bibliothecarian
+bibliothecary
+bibliothecas
+bibliotheke
+bibliotheque
+bibliotherapeutic
+bibliotherapies
+bibliotherapist
+bibliotherapy
+bibliothetic
+bibliothque
+bibliotic
+bibliotics
+bibliotist
+Biblism
+Biblist
+biblist
+biblists
+biblos
+biblus
+biborate
+bibracteate
+bibracteolate
+bibs
+bibulosities
+bibulosity
+bibulous
+bibulously
+bibulousness
+Bibulus
+Bicakci
+bicalcarate
+bicalvous
+bicameral
+bicameralism
+bicameralist
+bicamerist
+bicapitate
+bicapsular
+bicarb
+bicarbide
+bicarbonate
+bicarbonates
+bicarbs
+bicarbureted
+bicarburetted
+bicarinate
+bicarpellary
+bicarpellate
+bicaudal
+bicaudate
+bicched
+Bice
+bice
+bicellular
+bicentenaries
+bicentenarnaries
+bicentenary
+bicentennial
+bicentennially
+bicentennials
+bicentral
+bicentric
+bicentrically
+bicentricity
+bicep
+bicephalic
+bicephalous
+biceps
+bicepses
+bices
+bicetyl
+Bichat
+Biche-la-mar
+Bichelamar
+bichir
+bichloride
+bichlorides
+bichord
+bichos
+bichromate
+bichromated
+bichromatic
+bichromatize
+bichrome
+bichromic
+bichy
+biciliate
+biciliated
+bicipital
+bicipitous
+bicircular
+bicirrose
+Bick
+bick
+Bickart
+bicker
+bickered
+bickerer
+bickerers
+bickering
+bickern
+bickers
+bick-iron
+bickiron
+Bickleton
+Bickmore
+Bicknell
+biclavate
+biclinia
+biclinium
+Bicol
+bicollateral
+bicollaterality
+bicolligate
+bicolor
+bicolored
+bicolorous
+bicolors
+bicolour
+bicoloured
+bicolourous
+bicolours
+Bicols
+bicompact
+biconcave
+biconcavities
+biconcavity
+biconditional
+bicondylar
+bicone
+biconic
+biconical
+biconically
+biconjugate
+biconnected
+biconsonantal
+biconvex
+biconvexities
+biconvexity
+Bicorn
+bicorn
+bicornate
+bicorne
+bicorned
+bicornes
+bicornous
+bicornuate
+bicornuous
+bicornute
+bicorporal
+bicorporate
+bicorporeal
+bicostate
+bicrenate
+bicrescentic
+bicrofarad
+bicron
+bicrons
+bicrural
+BICS
+bicuculline
+bicultural
+biculturalism
+bicursal
+bicuspid
+bicuspidal
+bicuspidate
+bicuspids
+bicyanide
+bicycle
+bicycle-built-for-two
+bicycled
+bicycler
+bicyclers
+bicycles
+bicyclic
+bicyclical
+bicycling
+bicyclism
+bicyclist
+bicyclists
+bicyclo
+bicycloheptane
+bicycular
+bicylindrical
+BID
+bid
+Bida
+bid-a-bid
+bidactyl
+bidactyle
+bidactylous
+bid-ale
+bidar
+bidarka
+bidarkas
+bidarkee
+bidarkees
+Bidault
+bidcock
+biddability
+biddable
+biddableness
+biddably
+biddance
+Biddeford
+Biddelian
+bidden
+bidder
+bidders
+biddery
+Biddick
+Biddie
+biddie
+biddies
+bidding
+biddings
+Biddle
+Biddulphia
+Biddulphiaceae
+Biddy
+biddy
+biddy-bid
+biddy-biddy
+bide
+bided
+bidene
+Bidens
+bident
+bidental
+bidentalia
+bidentate
+bidented
+bidential
+bidenticulate
+bider
+biders
+bidery
+bides
+bidet
+bidets
+bidgee-widgee
+Bidget
+bidget
+bidi
+bidiagonal
+bidialectal
+bidialectalism
+bidigitate
+bidimensional
+biding
+bidirectional
+bidirectionally
+bidiurnal
+Bidle
+bidonville
+Bidpai
+bidree
+bidri
+bidry
+bids
+bidstand
+biduous
+Bidwell
+BIE
+Biebel
+Bieber
+bieberite
+Biedermann
+Biedermeier
+bieennia
+Biegel
+Biel
+Biela
+bielbrief
+bielby
+bield
+bielded
+bielding
+bields
+bieldy
+bielectrolysis
+Bielefeld
+bielenite
+Bielersee
+Bielid
+Bielka
+Bielorouss
+Bielo-russian
+Bielsko-Biala
+bien
+bienly
+biennale
+biennales
+Bienne
+bienne
+bienness
+biennia
+biennial
+biennially
+biennials
+biennium
+bienniums
+biens
+bienseance
+bientt
+bienvenu
+bienvenue
+Bienville
+bier
+bierbalk
+Bierce
+bierkeller
+Bierman
+Biernat
+biers
+bierstube
+bierstuben
+bierstubes
+biestings
+biethnic
+bietle
+biface
+bifaces
+bifacial
+bifanged
+bifara
+bifarious
+bifariously
+bifer
+biferous
+biff
+Biffar
+biffed
+biffies
+biffin
+biffing
+biffins
+biffs
+biffy
+bifid
+bifidate
+bifidated
+bifidities
+bifidity
+bifidly
+bifilar
+bifilarly
+bifistular
+biflabellate
+biflagelate
+biflagellate
+biflecnode
+biflected
+biflex
+biflorate
+biflorous
+bifluorid
+bifluoride
+bifocal
+bifocals
+bifoil
+bifold
+bifolia
+bifoliate
+bifoliolate
+bifolium
+bifollicular
+biforate
+biforin
+biforine
+biforked
+biforking
+biform
+biformed
+biformity
+biforous
+bifront
+bifrontal
+bifronted
+Bifrost
+bifrost
+bifteck
+bifunctional
+bifurcal
+bifurcate
+bifurcated
+bifurcately
+bifurcates
+bifurcating
+bifurcation
+bifurcations
+bifurcous
+big
+biga
+bigae
+bigam
+bigamic
+bigamies
+bigamist
+bigamistic
+bigamistically
+bigamists
+bigamize
+bigamized
+bigamizing
+bigamous
+bigamously
+bigamy
+big-antlered
+bigarade
+bigarades
+big-armed
+bigaroon
+bigaroons
+Bigarreau
+bigarreau
+bigas
+bigate
+big-bearded
+big-bellied
+bigbloom
+big-bodied
+big-boned
+big-bosomed
+big-breasted
+big-bulked
+bigbury
+big-chested
+big-eared
+Bigelow
+bigemina
+bigeminal
+bigeminate
+bigeminated
+bigeminies
+bigeminum
+bigeminy
+Big-endian
+big-endian
+bigener
+bigeneric
+bigential
+bigeye
+big-eyed
+bigeyes
+bigfeet
+bigfoot
+big-footed
+bigfoots
+Bigford
+big-framed
+Bigg
+bigg
+biggah
+big-gaited
+bigged
+biggen
+biggened
+biggening
+bigger
+biggest
+biggety
+biggie
+biggies
+biggin
+bigging
+biggings
+biggins
+biggish
+biggishness
+biggity
+biggonet
+Biggs
+biggy
+bigha
+big-handed
+bighead
+big-headed
+bigheaded
+bigheads
+big-hearted
+bighearted
+bigheartedly
+bigheartedness
+big-hoofed
+Bighorn
+bighorn
+Bighorns
+bighorns
+bight
+bighted
+bighting
+bights
+big-jawed
+big-laden
+biglandular
+big-league
+big-leaguer
+big-leaved
+biglenoid
+Bigler
+big-looking
+biglot
+bigly
+bigmitt
+bigmouth
+big-mouthed
+bigmouthed
+bigmouths
+big-name
+Bigner
+bigness
+bignesses
+Bignonia
+bignonia
+Bignoniaceae
+bignoniaceous
+bignoniad
+bignonias
+big-nosed
+big-note
+bignou
+Bigod
+bigoniac
+bigonial
+Bigot
+bigot
+bigoted
+bigotedly
+bigotedness
+bigothero
+bigotish
+bigotries
+bigotry
+bigots
+bigotty
+bigram
+big-rich
+bigroot
+big-souled
+big-sounding
+big-swollen
+Bigtha
+bigthatch
+big-ticket
+big-time
+big-timer
+biguanide
+biguttate
+biguttulate
+bi-guy
+big-voiced
+big-waisted
+bigwig
+bigwigged
+bigwiggedness
+bigwiggery
+bigwiggism
+bigwigs
+Bihai
+bihalve
+Biham
+bihamate
+Bihar
+Bihari
+bihari
+biharmonic
+bihourly
+bihydrazine
+Bihzad
+bi-iliac
+bi-ischiadic
+bi-ischiatic
+Biisk
+bija
+Bijapur
+bijasal
+bijection
+bijections
+bijective
+bijectively
+bijou
+bijous
+bijouterie
+bijoux
+bijugate
+bijugous
+bijugular
+bijwoner
+Bik
+Bikales
+Bikaner
+bike
+biked
+biker
+bikers
+bikes
+bikeway
+bikeways
+bikh
+bikhaconitine
+bikie
+bikies
+Bikila
+biking
+Bikini
+bikini
+bikinied
+bikinis
+bikkurim
+Bikol
+Bikols
+Bikram
+Bikukulla
+Bil
+Bilaan
+bilabe
+bilabial
+bilabials
+bilabiate
+Bilac
+bilaciniate
+bilalo
+bilamellar
+bilamellate
+bilamellated
+bilaminar
+bilaminate
+bilaminated
+biland
+bilander
+bilanders
+bilateral
+bilateralism
+bilateralistic
+bilateralities
+bilaterality
+bilaterally
+bilateralness
+Bilati
+bilayer
+bilayers
+Bilbao
+Bilbe
+bilberries
+bilberry
+bilbi
+bilbie
+bilbies
+bilbo
+bilboa
+bilboas
+bilboes
+bilboquet
+bilbos
+bilby
+bilch
+bilcock
+Bildad
+bildar
+bilder
+bilders
+Bildungsroman
+bile
+bilection
+Bilek
+bilertinned
+Biles
+biles
+bilestone
+bileve
+bilewhit
+bilge
+bilged
+bilge-hoop
+bilge-keel
+bilges
+bilge-water
+bilgewater
+bilgeway
+bilgier
+bilgiest
+bilging
+bilgy
+Bilhah
+Bilharzia
+bilharzia
+bilharzial
+bilharziasis
+bilharzic
+bilharziosis
+Bili
+bili-
+bilianic
+biliary
+biliate
+biliation
+bilic
+Bilicki
+bilicyanin
+bilifaction
+biliferous
+bilification
+bilifuscin
+bilify
+bilihumin
+bilimbi
+bilimbing
+bilimbis
+biliment
+Bilin
+bilinear
+bilineate
+bilineated
+bilingual
+bilingualism
+bilinguality
+bilingually
+bilinguar
+bilinguist
+bilinigrin
+bilinite
+bilio
+bilious
+biliously
+biliousness
+biliousnesses
+biliprasin
+bilipurpurin
+bilipyrrhin
+bilirubin
+bilirubinemia
+bilirubinic
+bilirubinuria
+biliteral
+biliteralism
+bilith
+bilithon
+biliverdic
+biliverdin
+bilixanthin
+bilk
+bilked
+bilker
+bilkers
+bilking
+bilkis
+bilks
+Bill
+bill
+billa
+billable
+billabong
+billage
+bill-and-cooers
+billard
+Billat
+billback
+billbeetle
+Billbergia
+billbergia
+billboard
+billboards
+bill-broker
+billbroking
+billbug
+billbugs
+Bille
+billed
+Billen
+biller
+Billerica
+billers
+billet
+billet-doux
+billete
+billeted
+billeter
+billeters
+billethead
+billeting
+billets
+billets-doux
+billette
+billetty
+billetwood
+billety
+billfish
+billfishes
+billfold
+billfolds
+billhead
+billheading
+billheads
+billholder
+bill-hook
+billhook
+billhooks
+Billi
+billian
+billiard
+billiardist
+billiardly
+billiards
+Billie
+billie
+billies
+Billiken
+billikin
+billing
+Billings
+billings
+Billingsgate
+billingsgate
+Billingsley
+billion
+billionaire
+billionaires
+billionism
+billions
+billionth
+billionths
+Billiton
+billitonite
+Billjim
+bill-like
+billman
+billmen
+Billmyre
+billon
+billons
+billot
+billow
+billowed
+billowier
+billowiest
+billowiness
+billowing
+Billows
+billows
+billowy
+bill-patched
+billposter
+billposting
+Billroth
+Bills
+bills
+bill-shaped
+billsticker
+billsticking
+billtong
+Billy
+billy
+billyboy
+billy-button
+billycan
+billycans
+billycock
+Billye
+billyer
+billy-goat
+billyhood
+billyo
+billywix
+bilo
+bilobate
+bilobated
+bilobe
+bilobed
+bilobiate
+bilobular
+bilocation
+bilocellate
+bilocular
+biloculate
+Biloculina
+biloculine
+bilophodont
+biloquist
+bilos
+Bilow
+Biloxi
+bilsh
+Bilski
+Bilskirnir
+bilsted
+bilsteds
+Biltmore
+biltong
+biltongs
+biltongue
+BIM
+Bim
+bim
+BIMA
+bima
+bimaculate
+bimaculated
+bimah
+bimahs
+bimalar
+Bimana
+bimana
+bimanal
+bimane
+bimanous
+bimanual
+bimanually
+bimarginate
+bimarine
+bimas
+bimastic
+bimastism
+bimastoid
+bimasty
+bimaxillary
+bimbashi
+bimbil
+Bimbisara
+Bimble
+bimbo
+bimboes
+bimbos
+bimeby
+bimedial
+bimensal
+bimester
+bimesters
+bimestrial
+bimetal
+bimetalic
+bimetalism
+bimetallic
+bimetallism
+bimetallist
+bimetallistic
+bimetallists
+bimetals
+bimethyl
+bimethyls
+bimillenary
+bimillenial
+bimillenium
+bimillennia
+bimillennium
+bimillenniums
+bimillionaire
+bimilllennia
+Bimini
+Biminis
+Bimmeler
+bimodal
+bimodality
+bimodule
+bimodulus
+bimolecular
+bimolecularly
+bimong
+bimonthlies
+bimonthly
+bimorph
+bimorphemic
+bimorphs
+bimotor
+bimotored
+bimotors
+bimucronate
+bimuscular
+bin
+bin-
+Bina
+Binah
+binal
+Binalonen
+binaphthyl
+binapthyl
+binaries
+binarium
+binary
+binate
+binately
+bination
+binational
+binationalism
+binationalisms
+binaural
+binaurally
+binauricular
+binbashi
+bin-burn
+Binchois
+BIND
+bind
+bindable
+bind-days
+BIndEd
+binder
+binderies
+binders
+bindery
+bindheimite
+bindi
+bindi-eye
+binding
+bindingly
+bindingness
+bindings
+bindis
+bindle
+bindles
+bindlet
+Bindman
+bindoree
+binds
+bindweb
+bindweed
+bindweeds
+bindwith
+bindwood
+bine
+binervate
+bines
+Binet
+Binetta
+Binette
+bineweed
+Binford
+binful
+Bing
+bing
+binge
+binged
+bingee
+bingeing
+Bingen
+Binger
+binges
+bingey
+bingeys
+Bingham
+Binghamton
+binghi
+bingies
+binging
+bingle
+bingo
+bingos
+bingy
+binh
+Binhdinh
+Bini
+biniodide
+biniou
+binit
+Binitarian
+Binitarianism
+binits
+Bink
+bink
+Binky
+binman
+binmen
+binna
+binnacle
+binnacles
+binned
+Binni
+Binnie
+binning
+Binnings
+binnite
+binnogue
+Binny
+binny
+bino
+binocle
+binocles
+binocs
+binocular
+binocularity
+binocularly
+binoculars
+binoculate
+binodal
+binode
+binodose
+binodous
+binomen
+binomenclature
+binomial
+binomialism
+binomially
+binomials
+binominal
+binominated
+binominous
+binomy
+binormal
+binotic
+binotonous
+binous
+binoxalate
+binoxide
+bins
+bint
+bintangor
+bints
+binturong
+binuclear
+binucleate
+binucleated
+binucleolate
+binukau
+Binyon
+Binzuru
+bio
+bio-
+bioaccumulation
+bioacoustics
+bioactivities
+bioactivity
+bio-aeration
+bio-assay
+bioassay
+bioassayed
+bioassaying
+bioassays
+bioastronautical
+bioastronautics
+bioavailability
+biobibliographer
+biobibliographic
+biobibliographical
+biobibliographies
+biobibliography
+bioblast
+bioblastic
+BIOC
+biocatalyst
+biocatalytic
+biocellate
+biocenology
+biocenosis
+biocenotic
+biocentric
+biochemic
+biochemical
+biochemically
+biochemicals
+biochemics
+biochemist
+biochemistries
+biochemistry
+biochemists
+biochemy
+biochore
+biochron
+biocidal
+biocide
+biocides
+bioclean
+bioclimatic
+bioclimatician
+bioclimatological
+bioclimatologically
+bioclimatologies
+bioclimatologist
+bioclimatology
+biocoenose
+biocoenoses
+biocoenosis
+biocoenotic
+biocontrol
+biocycle
+biocycles
+biod
+biodegradabilities
+biodegradability
+biodegradable
+biodegradation
+biodegradations
+biodegrade
+biodegraded
+biodegrades
+biodegrading
+biodynamic
+biodynamical
+biodynamics
+biodyne
+bioecologic
+bioecological
+bioecologically
+bioecologies
+bioecologist
+bioecology
+bio-economic
+bio-electric
+bioelectric
+bioelectrical
+bioelectricities
+bioelectricity
+bio-electrogenesis
+bioelectrogenesis
+bioelectrogenetic
+bioelectrogenetically
+bioelectronics
+bio-energetics
+bioenergetics
+bioengineering
+bioenvironmental
+bioenvironmentaly
+bioethic
+bioethics
+biofeedback
+bioflavinoid
+bioflavonoid
+biofog
+biog
+biog.
+biogas
+biogases
+biogasses
+biogen
+biogenase
+biogenesis
+biogenesist
+biogenetic
+biogenetical
+biogenetically
+biogenetics
+biogenic
+biogenies
+biogenous
+biogens
+biogeny
+biogeochemical
+biogeochemistry
+biogeographer
+biogeographers
+biogeographic
+biogeographical
+biogeographically
+biogeography
+biognosis
+biograph
+biographee
+biographer
+biographers
+biographic
+biographical
+biographically
+biographies
+biographist
+biographize
+biography
+biohazard
+bioherm
+bioherms
+bioinstrument
+bioinstrumentation
+biokinetics
+biol
+biol.
+Biola
+biolinguistics
+biolite
+biolith
+biologese
+biologic
+biological
+biologically
+biologicohumanistic
+biologics
+biologies
+biologism
+biologist
+biologistic
+biologists
+biologize
+biology
+bioluminescence
+bioluminescent
+biolyses
+biolysis
+biolytic
+biomagnetic
+biomagnetism
+biomass
+biomasses
+biomaterial
+biomathematics
+biome
+biomechanical
+biomechanics
+biomedical
+biomedicine
+biomes
+biometeorology
+biometer
+biometric
+biometrical
+biometrically
+biometrician
+biometricist
+biometrics
+biometries
+Biometrika
+biometrist
+biometry
+biomicroscope
+biomicroscopies
+biomicroscopy
+biomorphic
+Bion
+bion
+bionditional
+Biondo
+bionergy
+bionic
+bionics
+bionomic
+bionomical
+bionomically
+bionomics
+bionomies
+bionomist
+bionomy
+biont
+biontic
+bionts
+bio-osmosis
+bio-osmotic
+biophagism
+biophagous
+biophagy
+biophilous
+biophor
+biophore
+biophotometer
+biophotophone
+biophysic
+biophysical
+biophysically
+biophysicist
+biophysicists
+biophysicochemical
+biophysics
+biophysiography
+biophysiological
+biophysiologist
+biophysiology
+biophyte
+biopic
+bioplasm
+bioplasmic
+bioplasms
+bioplast
+bioplastic
+biopoesis
+biopoiesis
+biopotential
+bioprecipitation
+biopsic
+biopsies
+biopsy
+biopsychic
+biopsychical
+biopsychological
+biopsychologies
+biopsychologist
+biopsychology
+bioptic
+biopyribole
+bioral
+biorbital
+biordinal
+bioreaction
+bioresearch
+biorgan
+biorhythm
+biorhythmic
+biorhythmicities
+biorhythmicity
+biorythmic
+BIOS
+bios
+Biosatellite
+biosatellite
+biosatellites
+bioscience
+biosciences
+bioscientific
+bioscientist
+bioscope
+bioscopes
+bioscopic
+bioscopies
+bioscopy
+biose
+biosensor
+bioseston
+-biosis
+biosis
+biosocial
+biosociological
+biosociology
+biosome
+biospeleology
+biosphere
+biospheres
+biostatic
+biostatical
+biostatics
+biostatistic
+biostatistics
+biosterin
+biosterol
+biostratigraphy
+biostrome
+biosyntheses
+biosynthesis
+biosynthesize
+biosynthetic
+biosynthetically
+biosystematic
+biosystematics
+biosystematist
+biosystematy
+Biot
+Biota
+biota
+biotas
+biotaxy
+biotech
+biotechnics
+biotechnological
+biotechnologically
+biotechnologicaly
+biotechnologies
+biotechnology
+biotechs
+biotelemetric
+biotelemetries
+biotelemetry
+biotherapy
+-biotic
+biotic
+biotical
+biotically
+biotics
+biotin
+biotins
+biotite
+biotites
+biotitic
+biotome
+biotomy
+biotope
+biotopes
+biotoxin
+biotoxins
+biotransformation
+biotron
+biotrons
+biotype
+biotypes
+biotypic
+biotypology
+biovular
+biovulate
+bioxalate
+bioxide
+biozone
+bipack
+bipacks
+bipaleolate
+Bipaliidae
+Bipalium
+bipalmate
+biparasitic
+biparental
+biparentally
+biparietal
+biparous
+biparted
+bipartible
+bipartient
+bipartile
+bipartisan
+bipartisanism
+bipartisanship
+bipartite
+bipartitely
+bipartition
+bipartizan
+biparty
+bipaschal
+bipectinate
+bipectinated
+biped
+bipedal
+bipedality
+bipedism
+bipeds
+bipeltate
+bipennate
+bipennated
+bipenniform
+biperforate
+bipersonal
+bipetalous
+biphase
+biphasic
+biphenol
+biphenyl
+biphenylene
+biphenyls
+bipinnaria
+bipinnariae
+bipinnarias
+bipinnate
+bipinnated
+bipinnately
+bipinnatifid
+bipinnatiparted
+bipinnatipartite
+bipinnatisect
+bipinnatisected
+biplace
+biplanal
+biplanar
+biplane
+biplanes
+biplicate
+biplicity
+biplosion
+biplosive
+bipod
+bipods
+bipolar
+bipolarity
+bipolarization
+bipolarize
+Bipont
+bipont
+Bipontine
+biporose
+biporous
+bipotentialities
+bipotentiality
+Bippus
+biprism
+biprong
+bipropellant
+bipunctal
+bipunctate
+bipunctual
+bipupillate
+bipyramid
+bipyramidal
+bipyridine
+bipyridyl
+biquadrantal
+biquadrate
+biquadratic
+biquarterly
+biquartz
+biquintile
+biracial
+biracialism
+biracially
+biradial
+biradiate
+biradiated
+biramose
+biramous
+birational
+Birch
+birch
+Birchard
+birchbark
+Birchdale
+birched
+birchen
+Bircher
+bircher
+birchers
+Birches
+birches
+birching
+Birchism
+birchism
+Birchite
+Birchleaf
+birchman
+Birchrunville
+Birchtree
+Birchwood
+birchwood
+Birck
+Bird
+bird
+birdbander
+birdbanding
+birdbath
+birdbaths
+bird-batting
+birdberry
+birdbrain
+bird-brained
+birdbrained
+birdbrains
+bird-cage
+birdcage
+birdcages
+birdcall
+birdcalls
+birdcatcher
+birdcatching
+birdclapper
+birdcraft
+bird-dog
+bird-dogged
+bird-dogging
+birddom
+birde
+birded
+birdeen
+Birdell
+Birdella
+birder
+birders
+Birdeye
+birdeye
+bird-eyed
+bird-faced
+birdfarm
+birdfarms
+bird-fingered
+bird-foot
+bird-foots
+birdglue
+birdhood
+birdhouse
+birdhouses
+Birdie
+birdie
+birdieback
+birdied
+birdieing
+birdies
+birdikin
+birding
+birdings
+Birdinhand
+bird-in-the-bush
+birdland
+birdless
+birdlet
+birdlife
+birdlike
+bird-lime
+birdlime
+birdlimed
+birdlimes
+birdliming
+birdling
+birdlore
+birdman
+birdmen
+birdmouthed
+bird-nest
+birdnest
+birdnester
+bird-nesting
+bird-ridden
+Birds
+birds
+birdsall
+Birdsboro
+birdseed
+birdseeds
+Birdseye
+bird's-eye
+birdseye
+bird's-eyes
+birdseyes
+bird's-foot
+bird's-foots
+birdshot
+birdshots
+birds-in-the-bush
+bird's-nest
+birdsnest
+birdsong
+birdstone
+Birdt
+bird-watch
+birdwatch
+bird-watcher
+birdweed
+birdwise
+bird-witted
+birdwitted
+birdwoman
+birdwomen
+birdy
+birdyback
+Birecree
+birectangular
+birefracting
+birefraction
+birefractive
+birefringence
+birefringent
+bireme
+biremes
+biretta
+birettas
+birgand
+Birgit
+Birgitta
+Birgus
+biri
+biriani
+biriba
+birimose
+Birk
+birk
+Birkbeck
+birken
+Birkenhead
+Birkenia
+Birkeniidae
+Birkett
+Birkhoff
+birkie
+birkies
+Birkle
+Birkner
+birkremite
+birks
+birky
+birl
+birle
+birled
+birler
+birlers
+birles
+birlie
+birlieman
+birling
+birlings
+birlinn
+birls
+birma
+Birmingham
+birmingham
+Birminghamize
+birn
+Birnamwood
+birne
+Birney
+birny
+Biro
+Birobidzhan
+Birobijan
+Birobizhan
+birodo
+Birome
+Biron
+birostrate
+birostrated
+birota
+birotation
+birotatory
+birr
+birred
+Birrell
+birretta
+birrettas
+birri
+birring
+birrotch
+birrs
+birrus
+birse
+birses
+birsit
+birsle
+birsy
+Birt
+birt
+birth
+birthbed
+birthdate
+birthdates
+birthday
+birthdays
+birthdom
+birthed
+birthing
+birthland
+birthless
+birthmark
+birthmarks
+birthmate
+birthnight
+birthplace
+birthplaces
+birthrate
+birthrates
+birthright
+birthrights
+birthroot
+births
+birthstone
+birthstones
+birthstool
+birthwort
+birthy
+Birtwhistle
+Birzai
+BIS
+bis
+bis-
+bisabol
+bisaccate
+bisacromial
+bisagre
+bisalt
+Bisaltae
+bisannual
+bisantler
+bisaxillary
+Bisayan
+bisayan
+Bisayans
+Bisayas
+Bisbee
+bisbeeite
+biscacha
+Biscanism
+Biscay
+Biscayan
+biscayan
+Biscayanism
+biscayen
+Biscayner
+bischofite
+Biscoe
+biscot
+biscotin
+biscuit
+biscuit-brained
+biscuit-colored
+biscuit-fired
+biscuiting
+biscuitlike
+biscuitmaker
+biscuitmaking
+biscuitroot
+biscuitry
+biscuits
+biscuit-shaped
+biscutate
+bisdiapason
+bisdimethylamino
+BISDN
+bise
+bisect
+bisected
+bisecting
+bisection
+bisectional
+bisectionally
+bisections
+bisector
+bisectors
+bisectrices
+bisectrix
+bisects
+bisegment
+bisellia
+bisellium
+biseptate
+biserial
+biserially
+biseriate
+biseriately
+biserrate
+bises
+biset
+bisetose
+bisetous
+bisexed
+bisext
+bisexual
+bisexualism
+bisexuality
+bisexually
+bisexuals
+bisexuous
+bisglyoxaline
+Bish
+bish
+Bishareen
+Bishari
+Bisharin
+Bishop
+bishop
+bishopbird
+bishopdom
+bishoped
+bishopess
+bishopful
+bishophood
+bishoping
+bishopless
+bishoplet
+bishoplike
+bishopling
+bishopric
+bishoprics
+bishops
+bishop's-cap
+bishopscap
+bishopship
+bishopstool
+bishop's-weed
+Bishopville
+bishopweed
+bishydroxycoumarin
+bisie
+bisiliac
+bisilicate
+bisiliquous
+bisimine
+bisinuate
+bisinuation
+bisischiadic
+bisischiatic
+Bisitun
+Bisk
+bisk
+biskop
+Biskra
+bisks
+Bisley
+bislings
+bismanol
+bismar
+Bismarck
+bismarck
+Bismarckian
+Bismarckianism
+bismarine
+Bismark
+bismark
+bisme
+bismer
+bismerpund
+bismethyl
+bismillah
+bismite
+Bismosol
+bismuth
+bismuthal
+bismuthate
+bismuthic
+bismuthide
+bismuthiferous
+bismuthine
+bismuthinite
+bismuthite
+bismuthous
+bismuths
+bismuthyl
+bismutite
+bismutoplagionite
+bismutosmaltite
+bismutosphaerite
+bisnaga
+bisnagas
+bisognio
+bison
+bisonant
+bisons
+bisontine
+BISP
+bisphenoid
+bispinose
+bispinous
+bispore
+bisporous
+bisque
+bisques
+bisquette
+bissabol
+Bissau
+Bissell
+bissellia
+Bisset
+bissext
+bissextile
+bissextus
+bisso
+bisson
+bissonata
+bist
+bistable
+bistate
+bistephanic
+bister
+bistered
+bisters
+bistetrazole
+bisti
+bistipular
+bistipulate
+bistipuled
+bistort
+Bistorta
+bistorts
+bistouries
+bistournage
+bistoury
+bistratal
+bistratose
+bistre
+bistred
+bistres
+bistriate
+bistriazole
+bistro
+bistroic
+bistros
+bisubstituted
+bisubstitution
+bisulc
+bisulcate
+bisulcated
+bisulfate
+bisulfid
+bisulfide
+bisulfite
+bisulphate
+bisulphide
+bisulphite
+Bisutun
+bisyllabic
+bisyllabism
+bisymmetric
+bisymmetrical
+bisymmetrically
+bisymmetry
+BISYNC
+bisync
+BIT
+bit
+bitable
+bitake
+bitangent
+bitangential
+bitanhol
+bitartrate
+bitbrace
+Bitburg
+bit-by-bit
+bitch
+bitched
+bitcheries
+bitchery
+bitches
+bitchier
+bitchiest
+bitchily
+bitchiness
+bitching
+bitch-kitty
+bitchy
+bite
+biteable
+biteche
+bited
+biteless
+Bitely
+bitemporal
+bitentaculate
+biter
+biternate
+biternately
+biters
+bites
+bite-sheep
+bitesheep
+bite-tongue
+bitewing
+bitewings
+bitheism
+Bithia
+Bithynia
+Bithynian
+biti
+biting
+bitingly
+bitingness
+Bitis
+bitless
+bitmap
+bitmapped
+BITNET
+bitnet
+bito
+Bitolj
+bitolyl
+Biton
+bitonal
+bitonalities
+bitonality
+bitore
+bitreadle
+bi-tri-
+bitripartite
+bitripinnatifid
+bitriseptate
+bitrochanteric
+BITS
+bits
+bitser
+bitstalk
+bitstock
+bitstocks
+bitstone
+bitsy
+bitt
+bittacle
+bitte
+bitted
+bitten
+Bittencourt
+bitter
+bitter-
+bitterbark
+bitter-biting
+bitterblain
+bitterbloom
+bitterbrush
+bitterbump
+bitterbur
+bitterbush
+bittered
+bitter-end
+bitter-ender
+bitterender
+bitter-enderism
+bitter-endism
+bitterer
+bitterest
+bitterful
+bitterhead
+bitterhearted
+bitterheartedness
+bittering
+bitterish
+bitterishness
+bitterless
+bitterling
+bitterly
+bittern
+bitterness
+bitternesses
+bitterns
+bitternut
+bitter-rinded
+bitterroot
+bitters
+bitter-sweet
+bittersweet
+bitter-sweeting
+bittersweetly
+bittersweetness
+bittersweets
+bitter-tasting
+bitter-tongued
+bitterweed
+bitterwood
+bitterworm
+bitterwort
+bitthead
+Bitthia
+bittie
+bittier
+bittiest
+bitting
+Bittinger
+bittings
+Bittium
+Bittner
+Bitto
+bittock
+bittocks
+bittor
+bitts
+bitty
+bitubercular
+bituberculate
+bituberculated
+Bitulithic
+bitulithic
+bitume
+bitumed
+bitumen
+bitumens
+bituminate
+bituminiferous
+bituminisation
+bituminise
+bituminised
+bituminising
+bituminization
+bituminize
+bituminized
+bituminizing
+bituminoid
+bituminosis
+bituminous
+bit-wise
+bitwise
+bityite
+bitypic
+BIU
+biune
+biunial
+biunique
+biuniquely
+biuniqueness
+biunity
+biunivocal
+biurate
+biurea
+biuret
+bivalence
+bivalencies
+bivalency
+bivalent
+bivalents
+bivalve
+bivalved
+bivalves
+Bivalvia
+bivalvian
+bivalvous
+bivalvular
+bivane
+bivariant
+bivariate
+bivascular
+bivaulted
+bivector
+biventer
+biventral
+biverb
+biverbal
+bivial
+Bivins
+bivinyl
+bivinyls
+bivious
+bivittate
+bivium
+bivocal
+bivocalized
+bivoltine
+bivoluminous
+bivouac
+bivouaced
+bivouacked
+bivouacking
+bivouacks
+bivouacs
+bivvy
+biw-
+biwa
+Biwabik
+biweeklies
+biweekly
+biwinter
+BIX
+Bixa
+bixa
+Bixaceae
+bixaceous
+Bixby
+bixbyite
+bixin
+Bixler
+biyearly
+Biysk
+biz
+bizant
+bizardite
+bizarre
+bizarrely
+bizarreness
+bizarrerie
+bizarres
+bizcacha
+bize
+bizel
+Bizen
+Bizerta
+Bizerte
+bizes
+Bizet
+bizet
+biznaga
+biznagas
+bizonal
+bizone
+bizones
+Bizonia
+Biztha
+bizygomatic
+bizz
+bizzarro
+Bjart
+Bjneborg
+Bjoerling
+Bjork
+Bjorn
+Bjornson
+Bk
+bk
+bk.
+bkbndr
+bkcy
+bkcy.
+bkg
+bkg.
+bkgd
+bklr
+bkpr
+bkpt
+bks
+bks.
+bkt
+B.L.
+B/L
+BL
+b/l
+bl
+bl.
+BLA
+blaasop
+blab
+blabbed
+blabber
+blabbered
+blabberer
+blabbering
+blabbermouth
+blabbermouths
+blabbers
+blabbing
+blabby
+blabmouth
+blabs
+Blacher
+Blachly
+blachong
+Black
+black
+blackacre
+blackamoor
+blackamoors
+black-and-blue
+black-and-tan
+black-and-white
+black-aproned
+blackarm
+black-a-viced
+black-a-visaged
+black-a-vised
+blackback
+black-backed
+black-ball
+blackball
+blackballed
+blackballer
+blackballing
+blackballs
+blackband
+black-banded
+Blackbeard
+black-bearded
+blackbeetle
+black-bellied
+blackbelly
+black-belt
+black-berried
+blackberries
+blackberry
+blackberrylike
+black-billed
+blackbine
+blackbird
+blackbirder
+blackbirding
+blackbirds
+black-blooded
+black-blue
+blackboard
+blackboards
+black-bodied
+black-boding
+blackbody
+black-bordered
+black-boughed
+blackboy
+blackboys
+blackbreast
+black-breasted
+black-browed
+black-brown
+blackbrush
+blackbuck
+Blackburn
+blackbush
+blackbutt
+blackcap
+black-capped
+blackcaps
+black-chinned
+black-clad
+blackcoat
+black-coated
+blackcock
+blackcod
+blackcods
+black-colored
+black-cornered
+black-crested
+black-crowned
+blackcurrant
+blackdamp
+Blackduck
+black-eared
+black-ears
+blacked
+black-edged
+blacken
+blackened
+blackener
+blackeners
+blackening
+blackens
+blacker
+blackest
+blacketeer
+Blackett
+Blackey
+blackey
+blackeye
+black-eyed
+blackeyes
+blackface
+black-faced
+black-favored
+black-feathered
+Blackfeet
+blackfeet
+blackfellow
+blackfellows
+black-figure
+black-figured
+blackfigured
+blackfin
+blackfins
+blackfire
+blackfish
+blackfisher
+blackfishes
+blackfishing
+blackflies
+blackfly
+Blackfoot
+blackfoot
+black-footed
+Blackford
+Blackfriars
+black-fruited
+black-gowned
+blackguard
+blackguardism
+blackguardize
+blackguardly
+blackguardry
+blackguards
+blackgum
+blackgums
+black-hafted
+black-haired
+Blackhander
+blackhander
+Blackhawk
+black-head
+blackhead
+black-headed
+blackheads
+blackheart
+black-hearted
+blackhearted
+blackheartedly
+blackheartedness
+black-hilted
+black-hole
+black-hooded
+black-hoofed
+blackie
+blackies
+blacking
+blackings
+Blackington
+blackish
+blackishly
+blackishness
+blackit
+blackjack
+blackjacked
+blackjacking
+blackjacks
+blackland
+blacklead
+black-leg
+blackleg
+black-legged
+blacklegged
+blackleggery
+blacklegging
+blacklegism
+blacklegs
+black-letter
+Blacklick
+black-lidded
+blacklight
+black-lipped
+blacklist
+blacklisted
+blacklister
+blacklisting
+blacklists
+black-locked
+black-looking
+blackly
+blackmail
+blackmailed
+blackmailer
+blackmailers
+blackmailing
+blackmails
+Blackman
+blackman
+black-maned
+black-margined
+black-market
+black-marketeer
+Blackmore
+black-mouth
+black-mouthed
+Blackmun
+Blackmur
+black-neb
+blackneb
+blackneck
+black-necked
+blackness
+blacknesses
+blacknob
+black-nosed
+black-out
+blackout
+blackouts
+blackpatch
+black-peopled
+blackplate
+black-plumed
+blackpoll
+Blackpool
+black-pot
+blackpot
+blackprint
+blackrag
+black-red
+black-robed
+blackroot
+black-rooted
+blacks
+black-sander
+Blacksburg
+blackseed
+Blackshear
+Blackshirt
+blackshirt
+blackshirted
+black-shouldered
+black-skinned
+blacksmith
+blacksmithing
+blacksmiths
+black-snake
+blacksnake
+black-spotted
+blackstick
+Blackstock
+black-stoled
+Blackstone
+blackstrap
+Blacksville
+black-tail
+blacktail
+black-tailed
+black-thorn
+blackthorn
+blackthorns
+black-throated
+black-tie
+black-toed
+blacktongue
+black-tongued
+blacktop
+blacktopped
+blacktopping
+blacktops
+blacktree
+black-tressed
+black-tufted
+black-veiled
+Blackville
+black-visaged
+blackware
+black-wash
+blackwash
+blackwasher
+blackwashing
+Blackwater
+blackwater
+blackweed
+Blackwell
+black-whiskered
+Blackwood
+black-wood
+blackwood
+blackwork
+blackwort
+blacky
+blad
+bladder
+bladderet
+bladderless
+bladderlike
+bladdernose
+bladdernut
+bladderpod
+bladders
+bladderseed
+bladderweed
+bladderwort
+bladderwrack
+bladdery
+blade
+bladebone
+bladed
+bladeless
+bladelet
+bladelike
+Bladen
+Bladenboro
+Bladensburg
+blade-point
+Blader
+blader
+blades
+bladesmith
+bladewise
+blading
+bladish
+Bladon
+blady
+bladygrass
+blae
+blaeberries
+blaeberry
+blaeness
+Blaeu
+Blaeuw
+Blaew
+blaewort
+blaff
+blaffert
+blaflum
+Blagg
+blaggard
+Blagonravov
+Blagoveshchensk
+blague
+blagueur
+blah
+blah-blah
+blahlaut
+blahs
+Blain
+blain
+Blaine
+Blainey
+blains
+Blair
+blair
+Blaire
+blairmorite
+Blairs
+Blairsburg
+Blairsden
+Blairstown
+Blairsville
+Blaisdell
+Blaise
+Blake
+blake
+blakeberyed
+blakeite
+Blakelee
+Blakeley
+Blakely
+Blakemore
+Blakesburg
+Blakeslee
+Blalock
+blam
+blamability
+blamable
+blamableness
+blamably
+blame
+blameable
+blameableness
+blameably
+blamed
+blameful
+blamefully
+blamefulness
+blameless
+blamelessly
+blamelessness
+blamer
+blamers
+blames
+blame-shifting
+blameworthiness
+blameworthinesses
+blameworthy
+Blamey
+blaming
+blamingly
+blams
+blan
+Blanc
+blanc
+Blanca
+blanca
+Blancanus
+blancard
+Blanch
+blanch
+Blancha
+Blanchard
+Blanchardville
+Blanche
+blanche
+blanched
+blancher
+blanchers
+blanches
+Blanchester
+Blanchette
+blanchi
+blanchimeter
+blanching
+blanchingly
+Blanchinus
+blancmange
+blancmanger
+blancmanges
+Blanco
+blanco
+blancs
+Bland
+bland
+blanda
+BLandArch
+blandation
+Blandburg
+blander
+blandest
+Blandford
+Blandfordia
+blandiloquence
+blandiloquious
+blandiloquous
+Blandina
+Blanding
+Blandinsville
+blandish
+blandished
+blandisher
+blandishers
+blandishes
+blandishing
+blandishingly
+blandishment
+blandishments
+blandly
+blandness
+blandnesses
+Blandon
+Blandville
+Blandy-les-Tours
+Blane
+Blanford
+Blank
+blank
+Blanka
+blankard
+blankbook
+blanked
+blankeel
+Blankenship
+blanker
+blankest
+blanket
+blanketed
+blanketeer
+blanketer
+blanketers
+blanket-flower
+blanketflower
+blanketing
+blanketless
+blanketlike
+blanketmaker
+blanketmaking
+blanketry
+blankets
+blanket-stitch
+blanketweed
+blankety
+blankety-blank
+blank-eyed
+blanking
+blankish
+Blankit
+blankite
+blank-looking
+blankly
+blank-minded
+blankminded
+blankmindedness
+blankness
+blanknesses
+Blanks
+blanks
+blanky
+blanque
+blanquette
+blanquillo
+blanquillos
+Blantyre
+Blantyre-Limbe
+blaoner
+blaoners
+blare
+blared
+blares
+Blarina
+blarina
+blaring
+blarney
+blarneyed
+blarneyer
+blarneying
+blarneys
+blarnid
+blarny
+blart
+BLAS
+Blas
+blas
+Blasdell
+Blase
+blase
+Blaseio
+blaseness
+blash
+blashy
+Blasia
+Blasien
+Blasius
+blason
+blaspheme
+blasphemed
+blasphemer
+blasphemers
+blasphemes
+blasphemies
+blaspheming
+blasphemous
+blasphemously
+blasphemousness
+blasphemy
+-blast
+BLAST
+blast
+blast-
+blastaea
+blast-borne
+blasted
+blastema
+blastemal
+blastemas
+blastemata
+blastematic
+blastemic
+blaster
+blasters
+blast-freeze
+blast-freezing
+blast-frozen
+blastful
+blast-furnace
+blasthole
+-blastic
+blastid
+blastide
+blastie
+blastier
+blasties
+blastiest
+blasting
+blastings
+blastman
+blastment
+blasto-
+blastocarpous
+blastocele
+blastocheme
+blastochyle
+blastocoel
+blastocoele
+blastocoelic
+blastocolla
+blastocyst
+blastocyte
+blastoderm
+blastodermatic
+blastodermic
+blastodisc
+blastodisk
+blast-off
+blastoff
+blastoffs
+blastogenesis
+blastogenetic
+blastogenic
+blastogeny
+blastogranitic
+blastoid
+Blastoidea
+blastoma
+blastomas
+blastomata
+blastomere
+blastomeric
+Blastomyces
+blastomycete
+Blastomycetes
+blastomycetic
+blastomycetous
+blastomycin
+blastomycosis
+blastomycotic
+blastoneuropore
+Blastophaga
+blastophitic
+blastophoral
+blastophore
+blastophoric
+blastophthoria
+blastophthoric
+blastophyllum
+blastoporal
+blastopore
+blastoporic
+blastoporphyritic
+blastosphere
+blastospheric
+blastostylar
+blastostyle
+blastozooid
+blastplate
+blasts
+blastula
+blastulae
+blastular
+blastulas
+blastulation
+blastule
+blasty
+blat
+blatancies
+blatancy
+blatant
+blatantly
+blatch
+blatchang
+blate
+blately
+blateness
+blateration
+blateroon
+blather
+blathered
+blatherer
+blathering
+blathers
+blatherskite
+blatherskites
+blathery
+blatiform
+blatjang
+Blatman
+blats
+Blatt
+Blatta
+blatta
+Blattariae
+blatted
+blatter
+blattered
+blatterer
+blattering
+blatters
+blatti
+blattid
+Blattidae
+blattiform
+blatting
+Blattodea
+blattoid
+Blattoidea
+Blatz
+Blau
+blaubok
+blauboks
+Blaugas
+blaunner
+blautok
+Blauvelt
+blauwbok
+Blavatsky
+blaver
+blaw
+blawed
+Blawenburg
+blawing
+blawn
+blawort
+blaws
+blay
+Blaydon
+blayk
+Blayne
+Blayze
+Blaze
+blaze
+blazed
+blazer
+blazers
+blazes
+blazing
+blazingly
+blazon
+blazoned
+blazoner
+blazoners
+blazoning
+blazonment
+blazonries
+blazonry
+blazons
+blazy
+Blcher
+bld
+bldg
+bldg.
+BldgE
+bldr
+BLDS
+-ble
+BLE
+blea
+bleaberry
+bleach
+bleachability
+bleachable
+bleached
+bleached-blond
+bleacher
+bleacheries
+bleacherite
+bleacherman
+bleachers
+bleachery
+bleaches
+bleachfield
+bleachground
+bleachhouse
+bleaching
+bleachman
+bleachs
+bleachworks
+bleachyard
+bleak
+bleaker
+bleakest
+bleakish
+bleakly
+bleakness
+bleaknesses
+bleaks
+bleaky
+blear
+bleared
+blearedness
+bleareye
+blear-eyed
+bleareyed
+blear-eyedness
+blearier
+bleariest
+blearily
+bleariness
+blearing
+blearness
+blears
+blear-witted
+bleary
+bleary-eyed
+blearyeyedness
+bleat
+bleated
+bleater
+bleaters
+bleating
+bleatingly
+bleats
+bleaty
+bleaunt
+bleb
+blebby
+blebs
+blechnoid
+Blechnum
+bleck
+bled
+Bledsoe
+blee
+bleed
+bleeder
+bleeders
+bleeding
+bleedings
+bleeds
+bleekbok
+Bleeker
+bleep
+bleeped
+bleeping
+bleeps
+bleery
+bleeze
+bleezy
+Bleiblerville
+Bleier
+bleinerite
+blellum
+blellums
+blemish
+blemished
+blemisher
+blemishes
+blemishing
+blemishment
+blemmatrope
+Blemmyes
+Blen
+blench
+blenched
+blencher
+blenchers
+blenches
+blenching
+blenchingly
+Blencoe
+blencorn
+blend
+Blenda
+blendcorn
+blende
+blended
+blender
+blenders
+blendes
+blending
+blendor
+blends
+blendure
+blendwater
+blend-word
+Blenheim
+blenheim
+blenk
+Blenker
+blennadenitis
+blennemesis
+blennenteria
+blennenteritis
+blennies
+blenniid
+Blenniidae
+blenniiform
+Blenniiformes
+blennioid
+Blennioidea
+blenno-
+blennocele
+blennocystitis
+blennoemesis
+blennogenic
+blennogenous
+blennoid
+blennoma
+blennometritis
+blennophlogisma
+blennophlogosis
+blennophobia
+blennophthalmia
+blennoptysis
+blennorhea
+blennorrhagia
+blennorrhagic
+blennorrhea
+blennorrheal
+blennorrhinia
+blennorrhoea
+blennosis
+blennostasis
+blennostatic
+blennothorax
+blennotorrhea
+blennuria
+blenny
+blennymenitis
+blens
+blent
+bleo
+bleomycin
+blephar-
+blephara
+blepharadenitis
+blepharal
+blepharanthracosis
+blepharedema
+blepharelcosis
+blepharemphysema
+Blephariglottis
+blepharism
+blepharitic
+blepharitis
+blepharo-
+blepharoadenitis
+blepharoadenoma
+blepharoatheroma
+blepharoblennorrhea
+blepharocarcinoma
+Blepharocera
+Blepharoceridae
+blepharochalasis
+blepharochromidrosis
+blepharoclonus
+blepharocoloboma
+blepharoconjunctivitis
+blepharodiastasis
+blepharodyschroia
+blepharohematidrosis
+blepharolithiasis
+blepharomelasma
+blepharoncosis
+blepharoncus
+blepharophimosis
+blepharophryplasty
+blepharophthalmia
+blepharophyma
+blepharoplast
+blepharoplastic
+blepharoplasty
+blepharoplegia
+blepharoptosis
+blepharopyorrhea
+blepharorrhaphy
+blepharospasm
+blepharospath
+blepharosphincterectomy
+blepharostat
+blepharostenosis
+blepharosymphysis
+blepharosyndesmitis
+blepharosynechia
+blepharotomy
+blepharydatis
+Blephillia
+BLER
+blere
+Bleriot
+BLERT
+bles-bok
+blesbok
+blesboks
+blesbuck
+blesbucks
+blesmol
+bless
+blesse
+blessed
+blesseder
+blessedest
+blessedly
+blessedness
+blessednesses
+blesser
+blessers
+blesses
+Blessing
+blessing
+blessingly
+blessings
+Blessington
+blest
+blet
+blethe
+blether
+bletheration
+blethered
+blethering
+blethers
+bletherskate
+Bletia
+Bletilla
+bletonism
+blets
+bletted
+bletting
+bleu
+Bleuler
+Blevins
+blew
+blewits
+bleymes
+BLF
+BLFE
+BLI
+bliaut
+blibe
+blick
+blickey
+blickeys
+blickie
+blickies
+blicky
+Blida
+blier
+bliest
+Bligh
+Blighia
+Blight
+blight
+blightbird
+blighted
+blighter
+blighters
+blighties
+blighting
+blightingly
+blights
+Blighty
+blighty
+blijver
+Blim
+blimbing
+blimey
+Blimp
+blimp
+blimpish
+blimpishly
+blimpishness
+blimps
+blimy
+blin
+blind
+blindage
+blindages
+blind-alley
+blindball
+blindcat
+blinded
+blindedly
+blinder
+blinders
+blindest
+blindeyes
+blindfast
+blindfish
+blindfishes
+blindfold
+blindfolded
+blindfoldedly
+blindfoldedness
+blindfolder
+blindfolding
+blindfoldly
+blindfolds
+blind-head
+Blindheim
+blinding
+blindingly
+blindish
+blindism
+blindless
+blindling
+blind-loaded
+blindly
+blindman
+blind-man's-buff
+blind-nail
+blindness
+blindnesses
+blind-nettle
+blind-pigger
+blind-pigging
+blind-punch
+blinds
+blind-stamp
+blind-stamped
+blindstitch
+blindstorey
+blindstories
+blindstory
+blind-tool
+blind-tooled
+blindweed
+blind-worm
+blindworm
+blind-your-eyes
+blinger
+blini
+blinis
+blink
+blinkard
+blinkards
+blinked
+blinker
+blinkered
+blinkering
+blinkers
+blink-eyed
+blinking
+blinkingly
+blinks
+blinky
+Blinn
+Blinni
+Blinnie
+Blinny
+blinter
+blintz
+blintze
+blintzes
+bliny
+blip
+blipped
+blippers
+blipping
+blips
+blirt
+Bliss
+bliss
+Blisse
+blissed
+blisses
+Blissfield
+blissful
+blissfully
+blissfulness
+blissing
+blissless
+blissom
+blist
+blister
+blistered
+blistering
+blisteringly
+blisterous
+blisters
+blisterweed
+blisterwort
+blistery
+BLit
+blit
+blite
+blites
+Blithe
+blithe
+blithebread
+blitheful
+blithefully
+blithehearted
+blithelike
+blithe-looking
+blithely
+blithemeat
+blithen
+blitheness
+blither
+blithered
+blithering
+blithers
+blithesome
+blithesomely
+blithesomeness
+blithest
+B.Litt.
+BLitt
+blitter
+Blitum
+Blitz
+blitz
+blitzbuggy
+blitzed
+blitzes
+blitzing
+blitzkrieg
+blitzkrieged
+blitzkrieging
+blitzkriegs
+Blitzstein
+Blixen
+blizz
+blizzard
+blizzardly
+blizzardous
+blizzards
+blizzardy
+blk
+blk.
+blksize
+BLL
+BLM
+blo
+bloat
+bloated
+bloatedness
+bloater
+bloaters
+bloating
+bloats
+blob
+blobbed
+blobber
+blobber-lipped
+blobbier
+blobbiest
+blobbiness
+blobbing
+blobby
+BLOBS
+blobs
+bloc
+blocage
+Bloch
+Block
+block
+blockade
+blockaded
+blockader
+blockaders
+blockade-runner
+blockade-running
+blockaderunning
+blockades
+blockading
+blockage
+blockages
+blockboard
+block-book
+blockbuster
+blockbusters
+blockbusting
+block-caving
+blocked
+blocked-out
+Blocker
+blocker
+blocker-out
+blockers
+blockhead
+blockheaded
+blockheadedly
+blockheadedness
+blockheadish
+blockheadishness
+blockheadism
+blockheads
+blockhole
+blockholer
+blockhouse
+blockhouses
+blockier
+blockiest
+blockiness
+blocking
+blockish
+blockishly
+blockishness
+blocklayer
+blocklike
+blockline
+blockmaker
+blockmaking
+blockman
+blockout
+blockpate
+block-printed
+blocks
+block-saw
+Blocksburg
+block-serifed
+blockship
+Blockton
+Blockus
+blockwood
+blocky
+blocs
+Blodenwedd
+Blodget
+Blodgett
+blodite
+bloedite
+Bloem
+Bloemfontein
+Blois
+Blok
+blok
+bloke
+blokes
+blolly
+bloman
+Blomberg
+Blomkest
+Blomquist
+blomstrandine
+blond
+blonde
+Blondel
+Blondell
+Blondelle
+blondeness
+blonder
+blondes
+blondest
+blond-haired
+blond-headed
+Blondie
+blondine
+blondish
+blondness
+blonds
+Blondy
+Blood
+blood
+bloodalley
+bloodalp
+blood-and-guts
+blood-and-thunder
+bloodbath
+bloodbeat
+blood-bedabbled
+bloodberry
+blood-bespotted
+blood-besprinkled
+bloodbird
+blood-boltered
+blood-bought
+blood-cemented
+blood-colored
+blood-consuming
+bloodcurdler
+bloodcurdling
+bloodcurdlingly
+blood-defiled
+blood-discolored
+blood-drenched
+blooddrop
+blooddrops
+blood-drunk
+blood-dyed
+blooded
+bloodedness
+blood-extorting
+blood-faced
+blood-filled
+bloodfin
+bloodfins
+blood-fired
+blood-flecked
+bloodflower
+blood-frozen
+bloodguilt
+bloodguiltiness
+bloodguiltless
+blood-guilty
+bloodguilty
+blood-gushing
+blood-heat
+blood-hot
+bloodhound
+bloodhounds
+blood-hued
+bloodied
+bloodier
+bloodies
+bloodiest
+bloodily
+bloodiness
+blooding
+bloodings
+bloodleaf
+bloodless
+bloodlessly
+bloodlessness
+blood-letter
+bloodletter
+blood-letting
+bloodletting
+bloodlettings
+bloodlike
+bloodline
+bloodlines
+blood-loving
+bloodlust
+bloodlusting
+blood-mad
+bloodmobile
+bloodmobiles
+blood-money
+bloodmonger
+bloodnoun
+blood-plashed
+blood-polluted
+blood-polluting
+blood-raw
+blood-red
+bloodred
+blood-relation
+bloodripe
+bloodripeness
+blood-root
+bloodroot
+bloodroots
+bloods
+blood-scrawled
+blood-shaken
+bloodshed
+bloodshedder
+bloodshedding
+bloodsheds
+blood-shot
+bloodshot
+blood-shotten
+bloodshotten
+blood-sized
+blood-spattered
+blood-spavin
+bloodspiller
+bloodspilling
+blood-stain
+bloodstain
+bloodstained
+bloodstainedness
+bloodstains
+bloodstanch
+blood-stirring
+blood-stirringness
+bloodstock
+blood-stone
+bloodstone
+bloodstones
+blood-strange
+bloodstream
+bloodstreams
+bloodstroke
+blood-suck
+bloodsuck
+blood-sucker
+bloodsucker
+bloodsuckers
+bloodsucking
+bloodsuckings
+blood-swelled
+blood-swoln
+bloodtest
+bloodthirst
+bloodthirster
+bloodthirstier
+bloodthirstiest
+bloodthirstily
+bloodthirstiness
+bloodthirstinesses
+bloodthirsting
+bloodthirsty
+blood-tinctured
+blood-type
+blood-vascular
+blood-vessel
+blood-warm
+bloodweed
+bloodwit
+blood-wite
+bloodwite
+blood-won
+bloodwood
+blood-worm
+bloodworm
+blood-wort
+bloodwort
+bloodworthy
+bloody
+bloody-back
+bloody-bones
+bloodybones
+bloody-eyed
+bloody-faced
+bloody-handed
+bloody-hearted
+bloodying
+bloody-minded
+bloody-mindedness
+bloody-mouthed
+bloody-nosed
+bloody-red
+bloody-sceptered
+bloody-veined
+blooey
+blooie
+Bloom
+bloom
+bloomage
+Bloomburg
+bloom-colored
+Bloomdale
+bloomed
+Bloomer
+bloomer
+Bloomeria
+bloomeries
+bloomerism
+bloomers
+Bloomery
+bloomery
+bloom-fell
+bloomfell
+Bloomfield
+Bloomfieldian
+bloomier
+bloomiest
+blooming
+Bloomingburg
+Bloomingdale
+bloomingly
+bloomingness
+Bloomingrose
+Bloomington
+bloomkin
+bloomless
+blooms
+Bloomsburg
+Bloomsburian
+Bloomsbury
+Bloomsdale
+bloom-shearing
+Bloomville
+bloomy
+bloomy-down
+bloop
+blooped
+blooper
+bloopers
+blooping
+bloops
+blooth
+blore
+blosmy
+Blossburg
+Blossom
+blossom
+blossom-bearing
+blossombill
+blossom-billed
+blossom-bordered
+blossom-crested
+blossomed
+blossom-faced
+blossomhead
+blossom-headed
+blossoming
+blossom-laden
+blossomless
+blossom-nosed
+blossomry
+blossoms
+blossomtime
+blossomy
+Blossvale
+blot
+blotch
+blotched
+blotches
+blotchier
+blotchiest
+blotchily
+blotchiness
+blotching
+blotch-shaped
+blotchy
+blote
+blotless
+blotlessness
+blots
+blotted
+blotter
+blotters
+blottesque
+blottesquely
+blottier
+blottiest
+blotting
+blottingly
+blotto
+blottto
+blotty
+bloubiskop
+Blount
+Blountstown
+Blountsville
+Blountville
+blouse
+bloused
+blouselike
+blouses
+blousier
+blousiest
+blousily
+blousing
+blouson
+blousons
+blousy
+blout
+bloviate
+bloviated
+bloviates
+bloviating
+Blow
+blow
+blow-
+blowback
+blowbacks
+blowball
+blowballs
+blow-bies
+blow-by
+blowby
+blow-by-blow
+blowbys
+blowcase
+blowcock
+blowdown
+blow-dry
+blowed
+blowen
+blower
+blowers
+blower-up
+blowess
+blowfish
+blowfishes
+blowflies
+blow-fly
+blowfly
+blowgun
+blowguns
+blow-hard
+blowhard
+blowhards
+blow-hole
+blowhole
+blowholes
+blowie
+blowier
+blowiest
+blow-in
+blowiness
+blowing
+blowings
+blow-iron
+blowiron
+blowjob
+blowjobs
+blowlamp
+blowline
+blow-molded
+blown
+blown-in-the-bottle
+blown-mold
+blown-molded
+blown-out
+blown-up
+blowoff
+blowoffs
+blowout
+blowouts
+blow-pipe
+blowpipe
+blowpipes
+blowpit
+blowpoint
+blowproof
+blows
+blowse
+blowsed
+blowsier
+blowsiest
+blowsily
+blowspray
+blowsy
+blowth
+blow-through
+blowtorch
+blowtorches
+blowtube
+blowtubes
+blow-up
+blowup
+blowups
+blow-wave
+blowy
+blowze
+blowzed
+blowzier
+blowziest
+blowzily
+blowziness
+blowzing
+blowzy
+Bloxberg
+Bloxom
+Blriot
+BLS
+bls
+BLT
+blub
+blubbed
+blubber
+blubber-cheeked
+blubbered
+blubberer
+blubberers
+blubber-fed
+blubberhead
+blubbering
+blubberingly
+blubberman
+blubberous
+blubbers
+blubbery
+blubbing
+Blucher
+blucher
+bluchers
+bludge
+bludged
+bludgeon
+bludgeoned
+bludgeoneer
+bludgeoner
+bludgeoning
+bludgeons
+bludger
+bludging
+Blue
+blue
+blue-annealed
+blue-aproned
+blueback
+blue-backed
+Blueball
+blueball
+blueballs
+blue-banded
+bluebead
+Bluebeard
+bluebeard
+Bluebeardism
+Bluebell
+bluebell
+bluebelled
+blue-bellied
+bluebells
+blue-belt
+blue-berried
+blueberries
+blueberry
+bluebill
+blue-billed
+bluebills
+blue-bird
+bluebird
+bluebirds
+blue-black
+blueblack
+blue-blackness
+blueblaw
+blue-blind
+blueblood
+blue-blooded
+blue-blossom
+blueblossom
+blue-bloused
+bluebonnet
+bluebonnets
+bluebook
+bluebooks
+blue-bottle
+bluebottle
+bluebottles
+bluebreast
+blue-breasted
+bluebuck
+bluebush
+bluebutton
+blue-cap
+bluecap
+bluecaps
+blue-checked
+blue-cheeked
+blue-chip
+bluecoat
+blue-coated
+bluecoated
+bluecoats
+blue-collar
+blue-colored
+blue-crested
+blue-cross
+bluecup
+blue-curls
+bluecurls
+blued
+blue-devilage
+blue-devilism
+blue-eared
+Blueeye
+blue-eye
+blue-eyed
+blue-faced
+Bluefarb
+Bluefield
+Bluefields
+bluefin
+bluefins
+blue-fish
+bluefish
+bluefishes
+blue-flowered
+blue-footed
+blue-fronted
+bluegill
+bluegills
+blue-glancing
+blue-glimmering
+bluegown
+bluegrass
+blue-gray
+blue-green
+bluegum
+bluegums
+blue-haired
+bluehead
+blue-headed
+blueheads
+bluehearted
+blue-hearts
+bluehearts
+Bluehole
+blue-hot
+blueing
+blueings
+blueish
+bluejack
+bluejacket
+bluejackets
+bluejacks
+Bluejay
+bluejay
+bluejays
+blue-john
+bluejoint
+blue-leaved
+blueleg
+bluelegs
+blueline
+blue-lined
+bluelines
+bluely
+blue-mantled
+blue-molded
+blue-molding
+Bluemont
+blue-mottled
+blue-mouthed
+blueness
+bluenesses
+blue-nose
+bluenose
+blue-nosed
+bluenosed
+Bluenoser
+bluenoses
+blue-pencil
+blue-penciled
+blue-penciling
+blue-pencilled
+blue-pencilling
+bluepoint
+bluepoints
+blueprint
+blueprinted
+blueprinter
+blueprinting
+blueprints
+bluer
+blue-rayed
+blue-red
+blue-ribbon
+blue-ribboner
+blue-ribbonism
+blue-ribbonist
+blue-roan
+blue-rolled
+blues
+blue-sailors
+bluesides
+bluesier
+blue-sighted
+blue-sky
+blue-slate
+bluesman
+bluesmen
+blue-spotted
+bluest
+blue-stained
+blue-starry
+bluestem
+blue-stemmed
+bluestems
+blue-stocking
+bluestocking
+bluestockingish
+bluestockingism
+bluestockings
+bluestone
+bluestoner
+blue-striped
+bluesy
+Bluet
+bluet
+blue-tailed
+blueth
+bluethroat
+blue-throated
+bluetick
+blue-tinted
+bluetit
+bluetongue
+blue-tongued
+bluetop
+bluetops
+bluets
+blue-veined
+blue-washed
+Bluewater
+blue-water
+blue-wattled
+blueweed
+blueweeds
+blue-white
+bluewing
+blue-winged
+bluewood
+bluewoods
+Bluey
+bluey
+blue-yellow
+blue-yellow-blind
+blueys
+bluff
+bluffable
+bluff-bowed
+Bluffdale
+bluffed
+bluffer
+bluffers
+bluffest
+bluff-headed
+bluffing
+bluffly
+bluffness
+Bluffs
+bluffs
+Bluffton
+bluffy
+Bluford
+blufter
+bluggy
+Bluh
+Bluhm
+bluing
+bluings
+bluish
+bluish-green
+bluishness
+bluism
+bluisness
+Blum
+Bluma
+blume
+Blumea
+blumed
+Blumenfeld
+Blumenthal
+blumes
+bluming
+blunder
+Blunderbore
+blunderbuss
+blunderbusses
+blundered
+blunderer
+blunderers
+blunderful
+blunderhead
+blunderheaded
+blunderheadedness
+blundering
+blunderingly
+blunderings
+blunders
+blundersome
+blunge
+blunged
+blunger
+blungers
+blunges
+blunging
+Blunk
+blunk
+blunker
+blunket
+blunks
+blunnen
+Blunt
+blunt
+blunt-angled
+blunted
+blunt-edged
+blunt-ended
+blunter
+bluntest
+blunt-faced
+blunthead
+blunt-headed
+blunthearted
+bluntie
+blunting
+bluntish
+bluntishness
+blunt-leaved
+blunt-lobed
+bluntly
+bluntness
+bluntnesses
+blunt-nosed
+blunt-pointed
+blunts
+blunt-spoken
+blunt-witted
+blup
+blur
+blurb
+blurbed
+blurbing
+blurbist
+blurbs
+blurping
+blurred
+blurredly
+blurredness
+blurrer
+blurrier
+blurriest
+blurrily
+blurriness
+blurring
+blurringly
+blurry
+blurs
+blurt
+blurted
+blurter
+blurters
+blurting
+blurts
+Blus
+blush
+blush-colored
+blush-compelling
+blushed
+blusher
+blushers
+blushes
+blushet
+blush-faced
+blushful
+blushfully
+blushfulness
+blushiness
+blushing
+blushingly
+blushless
+blush-suffused
+blusht
+blush-tinted
+blushwort
+blushy
+bluster
+blusteration
+blustered
+blusterer
+blusterers
+blustering
+blusteringly
+blusterous
+blusterously
+blusters
+blustery
+blutwurst
+BLV
+Blvd
+blvd
+Bly
+Blynn
+blype
+blypes
+Blyth
+Blythe
+Blythedale
+Blytheville
+Blythewood
+B.M.
+BM
+bm
+BMA
+BMarE
+BME
+Bme
+BMEd
+BMet
+BMetE
+BMEWS
+BMG
+BMgtE
+BMI
+BMJ
+BMO
+BMOC
+BMP
+BMR
+BMS
+BMT
+B.Mus.
+BMus
+BMV
+BMW
+BN
+Bn
+Bn.
+bn
+BNC
+BNET
+BNF
+bnf
+BNFL
+BNS
+BNSC
+BNU
+B.O.
+B/O
+B/o
+BO
+Bo
+b.o.
+bo
+boa
+Boabdil
+BOAC
+boa-constrictor
+Boadicea
+Boaedon
+boagane
+Boak
+Boalsburg
+Boanbura
+boanergean
+Boanerges
+boanerges
+boanergism
+boanthropy
+Boar
+boar
+boarcite
+board
+boardable
+board-and-roomer
+board-and-shingle
+boardbill
+boarded
+boarder
+boarders
+boarder-up
+boarding
+boardinghouse
+boardinghouses
+boardings
+boardlike
+boardly
+Boardman
+boardman
+boardmanship
+boardmen
+boardroom
+boards
+board-school
+boardsmanship
+board-wages
+boardwalk
+boardwalks
+boardy
+Boarer
+boar-fish
+boarfish
+boarfishes
+boarhound
+boar-hunting
+boarish
+boarishly
+boarishness
+boars
+boarship
+boarskin
+boarspear
+boarstaff
+boart
+boarts
+boarwood
+Boas
+boas
+boast
+boasted
+boaster
+boasters
+boastful
+boastfully
+boastfulness
+boasting
+boastingly
+boastings
+boastive
+boastless
+boasts
+boat
+boatable
+boatage
+boat-bill
+boatbill
+boatbills
+boatbuilder
+boatbuilding
+boated
+boatel
+boatels
+Boaten
+boater
+boaters
+boatfalls
+boat-fly
+boatful
+boat-green
+boat-handler
+boathead
+boatheader
+boathook
+boathouse
+boathouses
+boatie
+boating
+boatings
+boation
+boatkeeper
+boatless
+boatlike
+boatlip
+boatload
+boatloader
+boatloading
+boatloads
+boat-lowering
+boatly
+boatman
+boatmanship
+boatmaster
+boatmen
+boatowner
+boat-race
+boats
+boatsetter
+boat-shaped
+boatshop
+boatside
+boatsman
+boatsmanship
+boatsmen
+boatsteerer
+boatswain
+boatswains
+boattail
+boat-tailed
+boatward
+boatwise
+boat-woman
+boatwoman
+Boatwright
+boatwright
+boatyard
+boatyards
+Boaz
+Bob
+bob
+boba
+bobac
+bobache
+bobachee
+Bobadil
+bobadil
+Bobadilian
+Bobadilish
+Bobadilism
+Bobadilla
+bobance
+Bobbe
+bobbed
+Bobbee
+bobbejaan
+bobber
+bobberies
+bobbers
+bobbery
+Bobbette
+Bobbi
+Bobbie
+bobbie
+Bobbielee
+bobbies
+bobbin
+bobbiner
+bobbinet
+bobbinets
+bobbing
+Bobbinite
+bobbin-net
+bobbins
+bobbinwork
+bobbish
+bobbishly
+bobble
+bobbled
+bobbles
+bobbling
+Bobby
+bobby
+bobby-dazzler
+Bobbye
+bobby-socker
+bobbysocks
+bobby-soxer
+bobbysoxer
+bobbysoxers
+bobcat
+bobcats
+bob-cherry
+bobcoat
+bobeche
+bobeches
+bobet
+Bobette
+bobflies
+bobfloat
+bobfly
+bob-haired
+bobierrite
+Bobina
+Bobine
+Bobinette
+bobization
+bobjerom
+Bobker
+boblet
+Bo-Bo
+Bobo
+bobo
+Bobo-Dioulasso
+bobol
+bobolink
+bobolinks
+bobooti
+bobotee
+bobotie
+bobowler
+bobs
+Bobseine
+bob-sled
+bobsled
+bobsledded
+bobsledder
+bobsledders
+bobsledding
+bobsleded
+bobsleding
+bobsleds
+bobsleigh
+bobstay
+bobstays
+bobsy-die
+bob-tail
+bobtail
+bobtailed
+bobtailing
+bobtails
+Bobtown
+Bobwhite
+bob-white
+bobwhite
+bobwhites
+bob-wig
+bobwood
+BOC
+boc
+Boca
+boca
+bocaccio
+bocaccios
+bocage
+bocal
+bocardo
+bocasin
+bocasine
+bocca
+Boccaccio
+boccaccio
+boccale
+boccarella
+boccaro
+bocce
+bocces
+Boccherini
+bocci
+boccia
+boccias
+boccie
+boccies
+Boccioni
+boccis
+Bocconia
+bocconia
+boce
+bocedization
+Boche
+boche
+bocher
+boches
+Bochism
+bochism
+Bochum
+bochur
+Bock
+bock
+bockerel
+bockeret
+bockey
+bocking
+bocklogged
+bocks
+Bockstein
+Bocock
+bocoy
+bocstaff
+B.O.D.
+BOD
+bod
+bodach
+bodacious
+bodaciously
+Bodanzky
+Bodb
+bodd-
+boddagh
+boddhisattva
+boddle
+Bode
+bode
+boded
+bodeful
+bodefully
+bodefulness
+Bodega
+bodega
+bodegas
+bodegon
+bodegones
+bodement
+bodements
+boden
+bodenbenderite
+Bodenheim
+Bodensee
+boder
+bodes
+bodewash
+bodeword
+Bodfish
+bodge
+bodger
+bodgery
+bodgie
+bodhi
+Bodhidharma
+bodhisat
+Bodhisattva
+bodhisattva
+bodhisattwa
+Bodi
+bodice
+bodiced
+bodicemaker
+bodicemaking
+bodices
+-bodied
+bodied
+bodier
+bodieron
+bodies
+bodikin
+bodiless
+bodilessness
+bodiliness
+bodilize
+bodily
+bodiment
+Bodine
+boding
+bodingly
+bodings
+bodken
+Bodkin
+bodkin
+bodkins
+bodkinwise
+bodle
+Bodleian
+bodleian
+Bodley
+Bodmin
+Bodnar
+Bodo
+bodock
+Bodoni
+bodoni
+bodonid
+bodrag
+bodrage
+Bodrogi
+bods
+bodstick
+Bodwell
+bodword
+Body
+body
+bodybending
+body-breaking
+body-build
+bodybuild
+bodybuilder
+bodybuilders
+bodybuilding
+body-centered
+body-centred
+bodycheck
+body-guard
+bodyguard
+bodyguards
+bodyhood
+bodying
+body-killing
+bodykins
+bodyless
+body-line
+bodymaker
+bodymaking
+body-mind
+bodyplate
+bodyshirt
+body-snatching
+bodysuit
+bodysuits
+bodysurf
+bodysurfed
+bodysurfer
+bodysurfing
+bodysurfs
+bodywear
+bodyweight
+bodywise
+bodywood
+bodywork
+bodyworks
+boe
+Boebera
+Boece
+Boedromion
+Boedromius
+Boehike
+Boehme
+Boehmenism
+boehmenism
+Boehmenist
+Boehmenite
+Boehmer
+Boehmeria
+Boehmian
+Boehmist
+Boehmite
+boehmite
+boehmites
+Boeing
+boeing
+Boeke
+Boelter
+Boelus
+boeotarch
+Boeotia
+boeotia
+Boeotian
+boeotian
+Boeotic
+Boeotus
+Boer
+boer
+Boerdom
+Boerhavia
+Boerne
+boers
+Boesch
+Boeschen
+Boethian
+Boethius
+Boethusian
+Boetius
+Boettiger
+boettner
+BOF
+Boff
+boff
+Boffa
+boffin
+boffins
+boffo
+boffola
+boffolas
+boffos
+boffs
+Bofors
+bog
+boga
+bogach
+Bogalusa
+Bogan
+bogan
+bogans
+Bogard
+bogard
+Bogarde
+Bogart
+bogart
+Bogata
+bogatyr
+bogbean
+bogbeans
+bogberries
+bogberry
+bog-bred
+bog-down
+boget
+Bogey
+bogey
+bog-eyed
+bogeyed
+bogey-hole
+bogeying
+bogeyman
+bogeymen
+bogeys
+bogfern
+boggard
+boggart
+bogged
+Boggers
+boggier
+boggiest
+boggin
+bogginess
+bogging
+boggish
+boggishness
+boggle
+bogglebo
+boggled
+boggle-dy-botch
+boggler
+bogglers
+boggles
+boggling
+bogglingly
+bogglish
+Boggs
+Boggstown
+boggy
+Boghazkeui
+Boghazkoy
+boghole
+bog-hoose
+Bogie
+bogie
+bogieman
+bogier
+bogies
+Bogijiab
+bogland
+boglander
+bogle
+bogled
+bogledom
+bogles
+boglet
+bogman
+bogmire
+Bogo
+bogo
+Bogoch
+Bogomil
+Bogomile
+Bogomilian
+Bogomilism
+bogong
+Bogor
+Bogosian
+Bogot
+Bogota
+bogota
+bogotana
+bog-rush
+bogs
+bogsucker
+bog-trot
+bogtrot
+bog-trotter
+bogtrotter
+bogtrotting
+Bogue
+bogue
+Boguechitto
+bogued
+boguing
+bogum
+bogus
+Boguslawsky
+bogusness
+Bogusz
+bogway
+bogwood
+bogwoods
+bogwort
+bogy
+bogydom
+bogyism
+bogyisms
+bogyland
+bogyman
+bogymen
+bogys
+boh
+Bohairic
+Bohannon
+Bohaty
+bohawn
+Bohea
+bohea
+boheas
+Bohemia
+bohemia
+Bohemia-Moravia
+Bohemian
+bohemian
+Bohemianism
+bohemianism
+bohemians
+Bohemian-tartar
+bohemias
+bohemium
+bohereen
+Bohi
+bohireen
+Bohlen
+Bohlin
+Bohm
+Bohman
+Bohme
+Bohmerwald
+bohmite
+Bohnenberger
+Bohner
+boho
+Bohol
+Bohon
+bohor
+bohora
+bohorok
+Bohr
+Bohrer
+Bohs
+Bohun
+bohunk
+bohunks
+Bohuslav
+Boiardo
+Boice
+Boiceville
+boid
+Boidae
+Boieldieu
+boiette
+boigid
+Boigie
+boiguacu
+Boii
+Boiko
+boil
+boilable
+boildown
+Boileau
+boiled
+boiler
+boiler-cleaning
+boilerful
+boilerhouse
+boilerless
+boilermaker
+boilermakers
+boilermaking
+boilerman
+boiler-off
+boiler-out
+boilerplate
+boilers
+boilersmith
+boiler-testing
+boiler-washing
+boilerworks
+boilery
+boiling
+boiling-house
+boilinglike
+boilingly
+boil-off
+boiloff
+boiloffs
+boilover
+boils
+boily
+Boiney
+boing
+Bois
+bois-brl
+Boisdarc
+Boise
+boise
+boiserie
+boiseries
+Bois-le-Duc
+boisseau
+boisseaux
+Boissevain
+boist
+boisterous
+boisterously
+boisterousness
+boistous
+boistously
+boistousness
+boite
+boites
+boithrin
+Boito
+Bojardo
+Bojer
+Bojig-ngiji
+bojite
+bojo
+Bok
+bokadam
+bokard
+bokark
+Bokchito
+boke
+Bokeelia
+Bokhara
+Bokharan
+Bokm'
+bokmakierie
+boko
+bokom
+bokos
+Bokoshe
+Bokoto
+Bol
+Bol.
+bol
+bola
+Bolag
+Bolan
+Boland
+Bolanger
+bolar
+bolas
+bolases
+bolbanac
+bolbonac
+Bolboxalis
+Bolckow
+bold
+boldacious
+bold-beating
+bolded
+bolden
+bolder
+Bolderian
+boldest
+bold-face
+boldface
+bold-faced
+boldfaced
+bold-facedly
+boldfacedly
+bold-facedness
+boldfacedness
+boldfaces
+boldfacing
+bold-following
+boldhearted
+boldheartedly
+boldheartedness
+boldin
+boldine
+bolding
+bold-looking
+boldly
+bold-minded
+boldness
+boldnesses
+boldo
+boldoine
+boldos
+bold-spirited
+Boldu
+bole
+bolection
+bolectioned
+boled
+boleite
+Bolelia
+bolelike
+Bolen
+bolero
+boleros
+Boles
+boles
+Boleslaw
+Boletaceae
+boletaceous
+bolete
+boletes
+boleti
+boletic
+Boletus
+boletus
+boletuses
+boleweed
+bolewort
+Boley
+Boleyn
+Bolger
+boliche
+bolide
+bolides
+Boligee
+bolimba
+Bolinas
+Boling
+Bolingbroke
+Bolinger
+bolis
+bolita
+Bolitho
+Bolivar
+bolivar
+bolivares
+bolivarite
+bolivars
+Bolivia
+bolivia
+Bolivian
+bolivian
+boliviano
+bolivianos
+bolivians
+bolivias
+bolk
+Boll
+boll
+Bolland
+Bollandist
+bollandist
+Bollandus
+bollard
+bollards
+Bollay
+bolled
+Bollen
+bollen
+boller
+bollies
+Bolling
+bolling
+Bollinger
+bollito
+bollix
+bollixed
+bollixes
+bollixing
+bollock
+bollocks
+bollox
+bolloxed
+bolloxes
+bolloxing
+bolls
+bollworm
+bollworms
+bolly
+Bolme
+Bolo
+bolo
+boloball
+bolo-bolo
+boloed
+Bologna
+bologna
+Bolognan
+bolognas
+Bologne
+Bolognese
+bolograph
+bolographic
+bolographically
+bolography
+boloing
+Boloism
+boloism
+boloman
+bolomen
+bolometer
+bolometric
+bolometrically
+boloney
+boloneys
+boloroot
+bolos
+Bolshevik
+bolshevik
+Bolsheviki
+Bolshevikian
+Bolshevikism
+Bolsheviks
+bolsheviks
+Bolshevism
+bolshevism
+Bolshevist
+bolshevist
+Bolshevistic
+bolshevistic
+Bolshevistically
+bolshevistically
+bolshevists
+Bolshevization
+Bolshevize
+bolshevize
+Bolshevized
+bolshevized
+Bolshevizing
+bolshevizing
+Bolshie
+bolshie
+Bolshies
+bolshies
+Bolshoi
+Bolshy
+bolshy
+bolson
+bolsons
+bolster
+bolstered
+bolsterer
+bolsterers
+bolstering
+bolsters
+bolsterwork
+Bolt
+bolt
+bolt-action
+boltage
+boltant
+boltcutter
+bolt-cutting
+Bolte
+bolted
+boltel
+Bolten
+bolter
+bolter-down
+bolters
+bolters-down
+bolters-up
+bolter-up
+bolt-forging
+bolt-head
+bolthead
+boltheader
+boltheading
+boltheads
+bolt-hole
+bolthole
+boltholes
+bolti
+boltin
+bolting
+boltings
+boltless
+boltlike
+boltmaker
+boltmaking
+Bolton
+Boltonia
+boltonia
+boltonias
+boltonite
+bolt-pointing
+bolt-rope
+boltrope
+boltropes
+bolts
+bolt-shaped
+boltsmith
+boltspreet
+boltstrake
+bolt-threading
+bolt-turning
+boltuprightness
+boltwork
+bolty
+Boltzmann
+bolus
+boluses
+Bolyai
+Bolyaian
+Bolzano
+BOM
+bom
+Boma
+boma
+Bomarc
+Bomarea
+bomb
+bombable
+Bombacaceae
+bombacaceous
+bombace
+bombard
+bombarde
+bombarded
+bombardelle
+bombarder
+bombardier
+bombardiers
+bombarding
+bombardman
+bombardmen
+bombardment
+bombardments
+bombardo
+bombardon
+bombards
+bombasine
+bombast
+bombaster
+bombastic
+bombastical
+bombastically
+bombasticness
+bombastry
+bombasts
+Bombax
+bombax
+Bombay
+bombay
+bombazeen
+bombazet
+bombazette
+bombazine
+bombe
+bombed
+bomber
+bombernickel
+bombers
+bombes
+bombesin
+bombesins
+bombic
+bombiccite
+Bombidae
+bombilate
+bombilation
+bombilla
+bombillas
+Bombinae
+bombinate
+bombinating
+bombination
+bombing
+bombings
+bomb-ketch
+bomble
+bombline
+bombload
+bombloads
+bombo
+bombola
+bombonne
+bombora
+bombous
+bomb-proof
+bombproof
+bombs
+bomb-shell
+bombshell
+bombshells
+bombsight
+bombsights
+bomb-throwing
+Bombus
+bombus
+bombycid
+Bombycidae
+bombycids
+bombyciform
+Bombycilla
+Bombycillidae
+Bombycina
+bombycine
+bombycinous
+Bombyliidae
+bombylious
+Bombyx
+bombyx
+bombyxes
+BOMFOG
+bomi
+Bomke
+Bomont
+bomos
+Bomoseen
+Bomu
+Bon
+bon
+Bona
+bona
+Bonacci
+bon-accord
+bonace
+bonaci
+bonacis
+Bonadoxin
+bona-fide
+bonagh
+bonaght
+bonailie
+Bonair
+bonair
+Bonaire
+bonaire
+bonairly
+bonairness
+bonally
+bonamano
+bonang
+bonanza
+bonanzas
+Bonaparte
+Bonapartean
+Bonapartism
+bonapartism
+Bonapartist
+bonapartist
+Bonaqua
+Bonar
+bona-roba
+Bonasa
+bonassus
+bonasus
+bonaught
+bonav
+Bonaventura
+Bonaventure
+bonaventure
+Bonaventurism
+Bonaveria
+bonavist
+Bonbo
+bon-bon
+bonbon
+bonbonniere
+bonbonnieres
+bonbons
+Boncarbo
+bonce
+bonchief
+Bond
+bond
+bondable
+bondage
+bondager
+bondages
+bondar
+bonded
+Bondelswarts
+bonder
+bonderize
+bonderman
+bonders
+Bondes
+bondfolk
+bondhold
+bondholder
+bondholders
+bondholding
+Bondie
+bondieuserie
+bonding
+bondings
+bond-land
+bondland
+bondless
+bondmaid
+bondmaids
+bondman
+bondmanship
+bondmen
+bondminder
+bondoc
+Bondon
+bondon
+bonds
+bond-servant
+bondservant
+bondship
+bondslave
+bondsman
+bondsmen
+bondstone
+Bondsville
+bondswoman
+bondswomen
+bonduc
+bonducnut
+bonducs
+Bonduel
+Bondurant
+Bondville
+bondwoman
+bondwomen
+Bondy
+Bone
+bone
+bone-ace
+boneache
+bonebinder
+boneblack
+bonebreaker
+bone-breaking
+bone-bred
+bone-bruising
+bone-carving
+bone-crushing
+boned
+bonedog
+bone-dry
+bonedry
+bone-dryness
+bone-eater
+boneen
+bonefish
+bonefishes
+boneflower
+bone-grinding
+bone-hard
+bonehead
+boneheaded
+boneheadedness
+boneheads
+bone-idle
+bone-lace
+bone-laced
+bone-lazy
+boneless
+bonelessly
+bonelessness
+bonelet
+bonelike
+Bonellia
+bonemeal
+bone-piercing
+boner
+bone-rotting
+boners
+bones
+boneset
+bonesets
+bone-setter
+bonesetter
+bonesetting
+boneshaker
+boneshave
+boneshaw
+Bonesteel
+bonetail
+bonete
+bone-tired
+bonetta
+Boneville
+bone-weary
+bone-white
+bonewood
+bonework
+bone-wort
+bonewort
+Boney
+boney
+boneyard
+boneyards
+Bonfield
+bonfire
+bonfires
+bong
+bongar
+bonged
+bonging
+Bongo
+bongo
+bongoes
+bongoist
+bongoists
+bongos
+bongrace
+bongs
+Bonham
+Bonheur
+bonheur-du-jour
+bonheurs-du-jour
+Bonhoeffer
+bonhomie
+bonhomies
+Bonhomme
+bonhomme
+bonhommie
+bonhomous
+bonhomously
+Boni
+boniata
+bonier
+boniest
+Boniface
+boniface
+bonifaces
+Bonifay
+bonification
+boniform
+bonify
+bonilass
+Bonilla
+Bonina
+Bonine
+boniness
+boninesses
+boning
+Bonington
+boninite
+Bonis
+bonism
+Bonita
+bonita
+bonitarian
+bonitary
+bonitas
+bonito
+bonitoes
+bonitos
+bonity
+bonjour
+bonk
+bonked
+bonkers
+bonking
+bonks
+Bonlee
+Bonn
+Bonnard
+Bonnaz
+bonnaz
+Bonne
+bonne
+Bonneau
+Bonnee
+Bonnell
+Bonner
+Bonnerdale
+bonnering
+Bonnes
+bonnes
+Bonnesbosq
+Bonnet
+bonnet
+bonneted
+bonneter
+Bonneterre
+bonnethead
+bonnet-headed
+bonnetiere
+bonnetieres
+bonneting
+bonnetless
+bonnetlike
+bonnetman
+bonnetmen
+bonnets
+Bonnette
+Bonneville
+Bonney
+Bonni
+bonnibel
+Bonnibelle
+Bonnice
+Bonnie
+bonnie
+bonnier
+bonniest
+Bonnieville
+bonnily
+bonniness
+bonnive
+bonnne
+bonnnes
+bonnock
+bonnocks
+Bonns
+bonnwis
+Bonny
+bonny
+bonny-clabber
+bonnyclabber
+bonnyish
+Bonnyman
+bonnyvis
+Bono
+bono
+Bononcini
+Bononian
+bonorum
+bonos
+Bonpa
+Bonpland
+bons
+bonsai
+Bonsall
+Bonsecour
+bonsela
+bonser
+bonsoir
+bonspell
+bonspells
+bonspiel
+bonspiels
+bontebok
+bonteboks
+bontebuck
+bontebucks
+bontee
+Bontempelli
+bontequagga
+Bontoc
+Bontocs
+Bontok
+Bontoks
+bon-ton
+Bonucci
+bonum
+bonus
+bonuses
+bon-vivant
+Bonwier
+bonxie
+bony
+bonyfish
+bonytail
+bonze
+bonzer
+bonzery
+bonzes
+bonzian
+boo
+boob
+boobed
+boobery
+boobialla
+boobie
+boobies
+boobily
+boobing
+boobish
+boobishness
+booboisie
+boo-boo
+booboo
+boobook
+boo-boos
+booboos
+boobs
+booby
+boobyalla
+boobyish
+boobyism
+booby-trap
+booby-trapped
+booby-trapping
+bood
+boodh
+boodie
+Boodin
+boodle
+boodled
+boodledom
+boodleism
+boodleize
+boodler
+boodlers
+boodles
+boodling
+Boody
+boody
+booed
+boof
+boogaloo
+booger
+boogerman
+boogers
+boogeyman
+boogeymen
+boogie
+boogied
+boogies
+boogie-woogie
+boogiewoogie
+boogum
+boogy
+boogying
+boogyman
+boogymen
+boohoo
+boohooed
+boohooing
+boohoos
+booing
+boojum
+Book
+book
+bookable
+bookbind
+bookbinder
+bookbinderies
+bookbinders
+bookbindery
+bookbinding
+bookboard
+book-case
+bookcase
+bookcases
+book-craft
+bookcraft
+bookdealer
+bookdom
+booked
+bookend
+bookends
+Booker
+booker
+bookers
+bookery
+bookfair
+book-fed
+book-fell
+book-flat
+bookfold
+book-folder
+bookful
+bookfuls
+bookholder
+bookhood
+bookie
+bookies
+bookiness
+booking
+bookings
+bookish
+bookishly
+bookishness
+bookism
+bookit
+bookkeep
+book-keeper
+bookkeeper
+bookkeepers
+book-keeping
+bookkeeping
+bookkeepings
+bookkeeps
+bookland
+book-latin
+booklear
+book-learned
+book-learning
+bookless
+booklet
+booklets
+booklice
+booklift
+booklike
+book-lined
+bookling
+booklists
+book-lore
+booklore
+booklores
+booklouse
+booklover
+book-loving
+book-maker
+bookmaker
+bookmakers
+bookmaking
+bookmakings
+Bookman
+bookman
+bookmark
+bookmarker
+bookmarks
+book-match
+bookmate
+bookmen
+book-minded
+bookmobile
+bookmobiles
+bookmonger
+book-plate
+bookplate
+bookplates
+bookpress
+bookrack
+bookracks
+book-read
+bookrest
+bookrests
+bookroom
+books
+bookseller
+booksellerish
+booksellerism
+booksellers
+bookselling
+book-sewer
+book-sewing
+bookshelf
+bookshelfs
+bookshelves
+bookshop
+bookshops
+bookstack
+bookstall
+bookstand
+book-stealer
+book-stitching
+bookstore
+bookstores
+booksy
+book-taught
+bookward
+bookwards
+book-ways
+bookways
+book-wing
+book-wise
+bookwise
+book-work
+bookwork
+book-worm
+bookworm
+bookworms
+bookwright
+booky
+bool
+Boole
+boolean
+booleans
+booley
+booleys
+Boolian
+boolies
+booly
+boolya
+boom
+Booma
+boomable
+boomage
+boomah
+boom-and-bust
+boomboat
+boombox
+boomboxes
+boomdas
+boomed
+boom-ended
+Boomer
+boomer
+boomerang
+boomeranged
+boomeranging
+boomerangs
+boomers
+boomier
+boomiest
+boominess
+booming
+boomingly
+boomkin
+boomkins
+boomless
+boomlet
+boomlets
+boomorah
+booms
+boomslang
+boomslange
+boomster
+boomtown
+boomtowns
+boomy
+boon
+boondock
+boondocker
+boondocks
+boondoggle
+boondoggled
+boondoggler
+boondogglers
+boondoggles
+boondoggling
+Boone
+Booneville
+boonfellow
+boong
+boongary
+Boonie
+boonies
+boonk
+boonless
+boons
+Boonsboro
+Boonton
+Boonville
+Boony
+Boophilus
+boopic
+boopis
+Boor
+boor
+boordly
+Boorer
+boorga
+boorish
+boorishly
+boorishness
+Boorman
+boors
+boort
+boos
+boose
+boosies
+boost
+boosted
+booster
+boosterism
+boosters
+boosting
+boosts
+boosy
+Boot
+boot
+bootable
+bootblack
+bootblacks
+bootboy
+boot-cleaning
+Boote
+booted
+bootee
+bootees
+booter
+booteries
+bootery
+Bootes
+bootes
+bootful
+Booth
+booth
+boothage
+boot-hale
+boothale
+Boothe
+bootheel
+boother
+boothes
+Boothia
+Boothian
+boothite
+Boothman
+bootholder
+boothose
+booths
+Boothville
+Bootid
+bootie
+bootied
+booties
+bootikin
+bootikins
+booting
+bootjack
+bootjacks
+bootlace
+bootlaces
+Bootle
+bootle
+bootle-blade
+boot-leg
+bootleg
+bootleger
+bootlegged
+bootlegger
+bootleggers
+bootlegging
+bootlegs
+bootless
+bootlessly
+bootlessness
+bootlick
+bootlicked
+bootlicker
+bootlickers
+bootlicking
+bootlicks
+bootloader
+bootmaker
+bootmaking
+bootman
+bootprint
+Boots
+boots
+bootstrap
+bootstrapped
+bootstrapping
+bootstraps
+boottop
+boot-topping
+boottopping
+booty
+bootyless
+Booz
+Booze
+booze
+boozed
+boozehound
+boozer
+boozers
+boozes
+booze-up
+boozier
+booziest
+boozify
+boozily
+booziness
+boozing
+boozy
+Bop
+bop
+Bo-peep
+Bopeep
+bo-peep
+bopeep
+Bophuthatswana
+Bopp
+bopped
+bopper
+boppers
+bopping
+boppist
+bops
+bopster
+bopyrid
+Bopyridae
+bopyridian
+Bopyrus
+BOQ
+Boqueron
+BOR
+Bor
+Bor'
+bor
+bor-
+bor.
+Bora
+bora
+borable
+boraces
+borachio
+boracic
+boraciferous
+boracite
+boracites
+boracium
+boracous
+borage
+borages
+Boraginaceae
+boraginaceous
+boragineous
+Borago
+Borah
+Borak
+borak
+boral
+borals
+Boran
+Borana
+borane
+boranes
+Borani
+boras
+borasca
+borasco
+borasque
+borasqueborate
+Borassus
+borassus
+borate
+borated
+borates
+borating
+borax
+boraxes
+borazon
+borazons
+Borboridae
+Borborus
+borborygm
+borborygmatic
+borborygmi
+borborygmic
+borborygmies
+borborygmus
+Borchers
+Borchert
+Bord
+bord
+Borda
+bordage
+bord-and-pillar
+bordar
+bordarius
+Bordeaux
+bordeaux
+bordel
+Bordelais
+Bordelaise
+bordelaise
+bordello
+bordellos
+Bordelonville
+bordels
+Borden
+Bordentown
+Border
+border
+bordereau
+bordereaux
+bordered
+borderer
+borderers
+Borderies
+bordering
+borderings
+borderism
+border-land
+borderland
+borderlander
+borderlands
+borderless
+borderlight
+borderline
+borderlines
+bordermark
+borders
+Borderside
+Bordet
+Bordie
+Bordiuk
+bord-land
+bord-lode
+bordman
+bordrag
+bordrage
+bordroom
+Bordulac
+bordun
+bordure
+bordured
+bordures
+Bordy
+Bore
+bore
+boreable
+boread
+Boreadae
+Boreades
+Boreal
+boreal
+Borealis
+borealis
+borean
+Boreas
+boreas
+borecole
+borecoles
+bored
+boredness
+boredom
+boredoms
+boree
+boreen
+boreens
+boregat
+borehole
+boreholes
+Boreiad
+boreism
+Borek
+Borel
+borel
+borele
+Borer
+borer
+borers
+Bores
+bores
+boresight
+boresome
+boresomely
+boresomeness
+Boreum
+Boreus
+Borg
+borg
+Borger
+Borgerhout
+Borges
+Borgeson
+borgh
+borghalpenny
+Borghese
+borghi
+Borghild
+Borgholm
+Borgia
+Borglum
+borh
+Bori
+bori
+boric
+borickite
+borid
+boride
+borides
+borine
+Boring
+boring
+boringly
+boringness
+borings
+Borinqueno
+Boris
+borish
+Borislav
+borism
+borith
+borities
+bority
+borize
+Bork
+Borlase
+borlase
+borley
+Borlow
+Borman
+Born
+born
+bornan
+bornane
+borne
+Bornean
+Borneo
+borneo
+borneol
+borneols
+Bornholm
+Bornie
+borning
+bornite
+bornites
+bornitic
+Bornstein
+Bornu
+bornyl
+Boro
+boro
+boro-
+Borocaine
+borocalcite
+borocarbide
+borocitrate
+Borodankov
+Borodin
+Borodino
+borofluohydric
+borofluoric
+borofluoride
+borofluorin
+boroglycerate
+boroglyceride
+boroglycerine
+borohydride
+borolanite
+boron
+boronatrocalcite
+Borongan
+Boronia
+boronia
+boronic
+borons
+borophenol
+borophenylic
+Bororo
+Bororoan
+borosalicylate
+borosalicylic
+borosilicate
+borosilicic
+Borotno
+borotungstate
+borotungstic
+borough
+Borough-english
+borough-English
+borough-english
+borough-holder
+boroughlet
+borough-man
+borough-master
+boroughmaster
+boroughmonger
+boroughmongering
+boroughmongery
+borough-reeve
+boroughs
+boroughship
+borough-town
+boroughwide
+borowolframic
+borracha
+borrachio
+Borras
+borrasca
+borrel
+Borrelia
+borrelia
+Borrell
+Borrelomycetaceae
+Borreri
+Borreria
+Borrichia
+Borries
+Borroff
+Borromean
+Borromini
+Borroughs
+Borrovian
+Borrow
+borrow
+borrowable
+borrowed
+borrower
+borrowers
+borrowing
+borrows
+Bors
+bors
+Borsalino
+borsch
+borsches
+borscht
+borschts
+borsholder
+borsht
+borshts
+borstal
+borstall
+borstals
+Borszcz
+bort
+Bortman
+borts
+bortsch
+borty
+Bortz
+bortz
+bortzes
+Boru
+Boruca
+Borup
+Borussian
+borwort
+boryl
+Borzicactus
+borzoi
+borzois
+BOS
+Bos
+bos
+Bosanquet
+Bosc
+boscage
+boscages
+Bosch
+bosch
+boschbok
+boschboks
+Boschneger
+boschvark
+boschveld
+Boscobel
+Boscovich
+Bose
+bose
+Boselaphus
+Boser
+boser
+bosey
+bosh
+Boshas
+boshbok
+boshboks
+bosher
+boshes
+boshvark
+boshvarks
+BOSIX
+Bosjesman
+bosjesman
+bosk
+boskage
+boskages
+bosker
+bosket
+boskets
+boskier
+boskiest
+boskiness
+Boskop
+boskopoid
+bosks
+bosky
+Bosler
+bo's'n
+bos'n
+bosn
+Bosnia
+Bosniac
+Bosniak
+Bosnian
+Bosnisch
+bosom
+bosom-breathing
+bosom-deep
+bosomed
+bosomer
+bosom-felt
+bosom-folded
+bosominess
+bosoming
+bosoms
+bosom-stricken
+bosomy
+boson
+Bosone
+bosonic
+bosons
+Bosphorus
+Bosporan
+Bosporanic
+Bosporian
+Bosporus
+bosporus
+Bosque
+bosque
+bosques
+bosquet
+bosquets
+BOSS
+boss
+bossa
+bossage
+bossboy
+bossdom
+bossdoms
+bossed
+bosselated
+bosselation
+bosser
+bosses
+bosset
+boss-eyed
+bosseyed
+bossier
+bossies
+bossiest
+bossily
+bossiness
+bossing
+bossism
+bossisms
+bosslet
+Bosson
+bossship
+Bossuet
+bossy
+bostal
+bostangi
+bostanji
+bosthoon
+Bostic
+Boston
+boston
+Bostonese
+Bostonian
+bostonian
+bostonians
+bostonite
+bostons
+Bostow
+bostrychid
+Bostrychidae
+bostrychoid
+bostrychoidal
+bostryx
+Bostwick
+bosun
+bosuns
+Boswall
+Boswell
+boswell
+Boswellia
+Boswellian
+boswellian
+Boswelliana
+Boswellism
+boswellism
+Boswellize
+boswellize
+boswellized
+boswellizing
+Bosworth
+BOT
+BoT
+bot
+bot.
+bota
+botan
+botanic
+botanica
+botanical
+botanically
+botanicas
+botanics
+botanies
+botanise
+botanised
+botaniser
+botanises
+botanising
+botanist
+botanists
+botanize
+botanized
+botanizer
+botanizes
+botanizing
+botano-
+botanomancy
+botanophile
+botanophilist
+botany
+botargo
+botargos
+botas
+Botaurinae
+Botaurus
+botch
+botched
+botchedly
+botched-up
+botcher
+botcheries
+botcherly
+botchers
+botchery
+botches
+botchier
+botchiest
+botchily
+botchiness
+botching
+botchka
+botchwork
+botchy
+bote
+Botein
+botel
+boteler
+botella
+botels
+boterol
+boteroll
+Botes
+botete
+botflies
+botfly
+both
+Botha
+Bothe
+Bothell
+bother
+botheration
+bothered
+botherer
+botherheaded
+bothering
+botherment
+bothers
+bothersome
+bothersomely
+bothersomeness
+both-handed
+both-handedness
+both-hands
+bothie
+bothies
+bothlike
+Bothnia
+Bothnian
+Bothnic
+bothrenchyma
+bothria
+bothridia
+bothridium
+bothridiums
+Bothriocephalus
+Bothriocidaris
+Bothriolepis
+bothriolepis
+bothrium
+bothriums
+Bothrodendron
+bothroi
+bothropic
+Bothrops
+bothros
+bothsided
+bothsidedness
+boththridia
+bothway
+Bothwell
+bothy
+boti
+Botkin
+Botkins
+botling
+Botnick
+Botocudo
+botone
+botonee
+botong
+botonn
+botonnee
+botonny
+botony
+botoyan
+bo-tree
+botry
+Botrychium
+botrycymose
+Botrydium
+botrylle
+Botryllidae
+Botryllus
+botryogen
+botryoid
+botryoidal
+botryoidally
+botryolite
+Botryomyces
+botryomycoma
+botryomycosis
+botryomycotic
+Botryopteriaceae
+botryopterid
+Botryopteris
+botryose
+botryotherapy
+Botrytis
+botrytis
+botrytises
+bots
+Botsares
+Botsford
+Botswana
+botswana
+bott
+Bottali
+botte
+bottega
+bottegas
+botteghe
+bottekin
+Bottger
+Botti
+Botticelli
+botticelli
+Botticellian
+bottier
+bottine
+Bottineau
+bottle
+bottle-bellied
+bottlebird
+bottle-blowing
+bottle-brush
+bottlebrush
+bottle-butted
+bottle-capping
+bottle-carrying
+bottle-cleaning
+bottle-corking
+bottled
+bottle-fed
+bottle-feed
+bottle-filling
+bottleflower
+bottleful
+bottlefuls
+bottle-green
+bottle-head
+bottlehead
+bottle-holder
+bottleholder
+bottlelike
+bottlemaker
+bottlemaking
+bottleman
+bottleneck
+bottlenecks
+bottlenest
+bottle-nose
+bottlenose
+bottle-nosed
+bottle-o
+bottler
+bottle-rinsing
+bottlers
+bottles
+bottlesful
+bottle-shaped
+bottle-soaking
+bottle-sterilizing
+bottlestone
+bottle-tailed
+bottle-tight
+bottle-washer
+bottle-washing
+bottling
+bottom
+bottomchrome
+bottomed
+bottomer
+bottomers
+bottoming
+bottomland
+bottomless
+bottomlessly
+bottomlessness
+bottommost
+bottomried
+bottomries
+bottomry
+bottomrying
+bottoms
+bottom-set
+bottonhook
+Bottrop
+botts
+bottstick
+bottu
+botuliform
+botulin
+botulinal
+botulins
+botulinum
+botulinus
+botulinuses
+botulism
+botulisms
+botulismus
+Botvinnik
+Botzow
+Bouak
+Bouake
+Bouar
+boubas
+boubou
+boubous
+boucan
+bouch
+bouchal
+bouchaleen
+Bouchard
+boucharde
+Bouche
+bouche
+bouchee
+bouchees
+Boucher
+boucher
+boucherism
+boucherize
+Bouches-du-Rh
+bouchette
+Bouchier
+bouchon
+bouchons
+Boucicault
+Bouckville
+boucl
+boucle
+boucles
+boud
+bouderie
+boudeuse
+Boudicca
+boudin
+boudoir
+boudoiresque
+boudoirs
+Boudreaux
+bouet
+Boufarik
+bouffage
+bouffancy
+bouffant
+bouffante
+bouffants
+bouffe
+bouffes
+bouffon
+Bougainvillaea
+bougainvillaea
+bougainvillaeas
+Bougainville
+Bougainvillea
+bougainvillea
+Bougainvillia
+Bougainvilliidae
+bougar
+bouge
+bougee
+bougeron
+bouget
+Bough
+bough
+boughed
+boughless
+bough-pot
+boughpot
+boughpots
+boughs
+bought
+boughten
+boughy
+bougie
+bougies
+Bouguer
+Bouguereau
+bouillabaisse
+bouilli
+bouillon
+bouillone
+bouillons
+bouk
+boukit
+boul
+Boulanger
+boulanger
+boulangerite
+Boulangism
+Boulangist
+Boulder
+boulder
+bouldered
+boulderhead
+bouldering
+boulders
+boulder-stone
+boulder-strewn
+bouldery
+Bouldon
+Boule
+boule
+Boule-de-suif
+boules
+bouleuteria
+bouleuterion
+boulevard
+boulevardier
+boulevardiers
+boulevardize
+boulevards
+bouleverse
+bouleversement
+boulework
+Bouley
+Boulez
+boulimia
+boulimy
+boulle
+boulles
+boullework
+Boulogne
+Boulogne-Billancourt
+Boulogne-sur-Mer
+Boulogne-sur-Seine
+Boult
+boult
+boultel
+boultell
+boulter
+boulterer
+Boumdienne
+boun
+bounce
+bounceable
+bounceably
+bounceback
+bounced
+bouncer
+bouncers
+bounces
+bouncier
+bounciest
+bouncily
+bounciness
+bouncing
+bouncingly
+bouncy
+Bound
+bound
+boundable
+boundaries
+boundary
+boundary-marking
+Boundbrook
+bounded
+boundedly
+boundedness
+bounden
+bounder
+bounderish
+bounderishly
+bounders
+bounding
+boundingly
+boundless
+boundlessly
+boundlessness
+boundlessnesses
+boundly
+boundness
+Bounds
+bounds
+boundure
+bounteous
+bounteously
+bounteousness
+bountied
+bounties
+Bountiful
+bountiful
+bountifully
+bountifulness
+bountihead
+bountiousness
+bountith
+bountree
+Bounty
+bounty
+bounty-fed
+bountyless
+Bouphonia
+bouquet
+bouquetiere
+bouquetin
+bouquets
+bouquiniste
+bour
+bourage
+bourasque
+Bourbaki
+Bourbon
+bourbon
+Bourbonesque
+Bourbonian
+Bourbonic
+Bourbonism
+bourbonism
+Bourbonist
+bourbonize
+Bourbonnais
+bourbons
+bourd
+bourder
+bourdis
+bourdon
+bourdons
+bourette
+Bourg
+bourg
+bourgade
+Bourgeois
+bourgeois
+bourgeoise
+bourgeoises
+bourgeoisie
+bourgeoisies
+bourgeoisify
+bourgeoisitic
+bourgeon
+bourgeoned
+bourgeoning
+bourgeons
+Bourges
+Bourget
+Bourgogne
+bourgs
+Bourguiba
+bourguignonne
+Bourignian
+Bourignianism
+Bourignianist
+Bourignonism
+Bourignonist
+Bourke
+bourkha
+bourlaw
+Bourn
+bourn
+Bourne
+bourne
+Bournemouth
+bournes
+Bourneville
+bournless
+bournonite
+bournous
+bourns
+bourock
+Bourout
+Bourque
+bourr
+bourran
+bourrasque
+bourre
+bourreau
+bourree
+bourrees
+bourrelet
+bourride
+bourrides
+Bourse
+bourse
+bourses
+Boursin
+bourtree
+bourtrees
+Bouse
+bouse
+boused
+bouser
+bouses
+bousing
+bousouki
+bousoukia
+bousoukis
+Boussingault
+Boussingaultia
+boussingaultite
+boustrophedon
+boustrophedonic
+bousy
+bout
+boutade
+boutefeu
+boutel
+boutell
+Bouteloua
+bouteria
+bouteselle
+boutique
+boutiques
+Boutis
+bouto
+Bouton
+bouton
+boutonniere
+boutonnieres
+boutons
+boutre
+bouts
+bouts-rimes
+Boutte
+Boutwell
+boutylka
+Bouvard
+Bouvardia
+bouvardia
+bouvier
+bouviers
+Bouvines
+bouw
+bouzouki
+bouzoukia
+bouzoukis
+Bouzoun
+Bovard
+bovarism
+bovarist
+bovaristic
+bovarysm
+bovate
+Bove
+bove
+bovenland
+Bovensmilde
+Bovet
+Bovey
+bovey
+Bovgazk
+bovicide
+boviculture
+bovid
+Bovidae
+bovids
+boviform
+Bovill
+Bovina
+bovine
+bovinely
+bovines
+bovinities
+bovinity
+Bovista
+bovld
+bovoid
+bovovaccination
+bovovaccine
+Bovril
+bovver
+Bow
+bow
+bowable
+bow-back
+bowback
+bow-backed
+bow-beaked
+bow-bearer
+Bow-bell
+bow-bell
+Bowbells
+bowbells
+bow-bending
+bowbent
+bowboy
+bow-compass
+Bowden
+bowden
+Bowdichia
+Bowditch
+bowditch
+Bowdle
+bowdlerisation
+bowdlerise
+bowdlerised
+bowdlerising
+bowdlerism
+bowdlerization
+bowdlerizations
+bowdlerize
+bowdlerized
+bowdlerizer
+bowdlerizes
+bowdlerizing
+Bowdoin
+Bowdoinham
+Bowdon
+bow-draught
+bowdrill
+bow-dye
+bow-dyer
+Bowe
+bowe
+bowed
+bowed-down
+bowedness
+bowel
+boweled
+boweling
+Bowell
+bowelled
+bowelless
+bowellike
+bowelling
+bowels
+Bowen
+bowenite
+Bower
+bower
+bower-bird
+bowerbird
+bowered
+boweries
+bowering
+bowerlet
+bowerlike
+bowerly
+bowermaiden
+Bowerman
+bowermay
+Bowers
+bowers
+Bowerston
+Bowersville
+bowerwoman
+Bowery
+bowery
+Boweryish
+Bowes
+bowess
+bowet
+bowfin
+bowfins
+bowfront
+bowge
+bowgrace
+bow-hand
+bowhead
+bowheads
+bow-houghd
+Bowie
+bowie
+bowieful
+bowie-knife
+bowing
+bowingly
+bowings
+bow-iron
+bowk
+bowkail
+bowker
+bowknot
+bowknots
+bowl
+bowla
+bowlder
+bowlderhead
+bowldering
+bowlders
+bowldery
+Bowlds
+bowle
+bowled
+bowleg
+bow-legged
+bowlegged
+bowleggedness
+Bowlegs
+bowlegs
+Bowler
+bowler
+bowlers
+Bowles
+bowles
+bow-less
+bowless
+bowlful
+bowlfuls
+bowlike
+bowlin
+bowline
+bowlines
+bowling
+bowlings
+bowllike
+bowlmaker
+bowls
+bowl-shaped
+Bowlus
+bowly
+bowmaker
+bowmaking
+Bowman
+bowman
+Bowmansdale
+Bowmanstown
+Bowmansville
+bowmen
+bown
+Bowne
+bowne
+bow-necked
+bow-net
+bowpin
+bowpot
+bowpots
+Bowra
+Bowrah
+bowralite
+Bowring
+bows
+bowsaw
+bowse
+bowsed
+bowser
+bowsery
+bowses
+bow-shaped
+bowshot
+bowshots
+bowsie
+bowsing
+bowsman
+bowsprit
+bowsprits
+bowssen
+bowstaff
+bowstave
+bow-street
+bow-string
+bowstring
+bowstringed
+bowstringing
+bowstrings
+bowstrung
+bowtel
+bowtell
+bowtie
+bow-window
+bow-windowed
+bowwoman
+bowwood
+bowwort
+bow-wow
+bowwow
+bowwowed
+bowwows
+bowyang
+bowyangs
+Bowyer
+bowyer
+bowyers
+Box
+box
+boxball
+boxberries
+boxberry
+boxboard
+boxboards
+box-bordered
+box-branding
+boxbush
+box-calf
+boxcar
+boxcars
+box-cleating
+box-covering
+boxed
+box-edged
+boxed-in
+Boxelder
+boxen
+Boxer
+boxer
+Boxerism
+boxer-off
+boxers
+boxer-up
+boxes
+boxfish
+boxfishes
+Boxford
+boxful
+boxfuls
+box-haul
+boxhaul
+boxhauled
+boxhauling
+boxhauls
+boxhead
+boxholder
+Boxholm
+boxiana
+boxier
+boxiest
+boxiness
+boxinesses
+boxing
+boxing-day
+boxing-in
+boxings
+boxkeeper
+box-leaved
+boxlike
+box-locking
+boxmaker
+boxmaking
+boxman
+box-nailing
+box-office
+box-plaited
+boxroom
+box-shaped
+box-strapping
+boxthorn
+boxthorns
+boxtop
+boxtops
+box-tree
+boxtree
+box-trimming
+box-turning
+boxty
+boxwallah
+boxwood
+boxwoods
+boxwork
+boxy
+Boy
+boy
+boyang
+boyar
+boyard
+boyardism
+boyardom
+boyards
+boyarism
+boyarisms
+boyars
+boyau
+boyaus
+boyaux
+Boyce
+Boyceville
+Boycey
+boychick
+boychicks
+boychik
+boychiks
+Boycie
+boycott
+boycottage
+boycotted
+boycotter
+boycotting
+boycottism
+boycotts
+Boyd
+boydekyn
+Boyden
+boydom
+Boyds
+Boydton
+Boyer
+boyer
+Boyers
+Boyertown
+Boyes
+boyfriend
+boyfriends
+boyg
+boyhood
+boyhoods
+boyish
+boyishly
+boyishness
+boyishnesses
+boyism
+Boykin
+Boykins
+boyla
+Boylan
+boylas
+Boyle
+boylike
+boylikeness
+Boylston
+boy-meets-girl
+Boyne
+Boynton
+boyo
+boyology
+boyos
+Boys
+boys
+Boyse
+boysenberries
+boysenberry
+boyship
+Boystown
+Boyt
+boyuna
+Boz
+boza
+bozal
+Bozcaada
+Bozeman
+Bozen
+bozine
+Bozman
+bozo
+Bozoo
+bozos
+Bozovich
+Bozrah
+Bozuwa
+Bozzaris
+bozze
+bozzetto
+B.P.
+B/P
+BP
+b.p.
+bp
+bp.
+BPA
+BPC
+BPDPA
+BPE
+BPetE
+BPH
+BPh
+BPharm
+B.Phil.
+BPhil
+BPI
+bpi
+BPOC
+BPOE
+BPPS
+BPS
+bps
+BPSS
+bpt
+B/R
+BR
+Br
+Br.
+br
+br.
+Bra
+bra
+Braasch
+braata
+brab
+brabagious
+Brabancon
+Brabant
+brabant
+Brabanter
+Brabantine
+Brabazon
+brabble
+brabbled
+brabblement
+brabbler
+brabblers
+brabbles
+brabbling
+brabblingly
+Brabejum
+Braca
+braca
+bracae
+braccae
+braccate
+Bracci
+braccia
+bracciale
+braccianite
+braccio
+Brace
+brace
+braced
+bracelet
+braceleted
+bracelets
+bracer
+bracero
+braceros
+bracers
+bracery
+braces
+Braceville
+Bracey
+brach
+brache
+Brachelytra
+brachelytrous
+bracherer
+brachering
+braches
+brachet
+brachets
+brachia
+brachial
+brachialgia
+brachialis
+brachials
+Brachiata
+brachiate
+brachiated
+brachiating
+brachiation
+brachiator
+brachiferous
+brachigerous
+Brachinus
+brachio-
+brachio-cephalic
+brachiocephalic
+brachiocrural
+brachiocubital
+brachiocyllosis
+brachiofacial
+brachiofaciolingual
+brachioganoid
+Brachioganoidei
+brachiolaria
+brachiolarian
+brachiopod
+Brachiopoda
+brachiopode
+brachiopodist
+brachiopodous
+brachioradial
+brachioradialis
+brachiorrhachidian
+brachiorrheuma
+brachiosaur
+Brachiosaurus
+brachiosaurus
+brachiostrophosis
+brachiotomy
+brachisto-
+brachistocephali
+brachistocephalic
+brachistocephalous
+brachistocephaly
+brachistochrone
+brachistochronic
+brachistochronous
+brachium
+brachman
+brachs
+brachtmema
+brachy-
+brachyaxis
+brachycardia
+brachycatalectic
+brachycephal
+brachycephales
+brachycephali
+brachycephalic
+brachycephalies
+brachycephalism
+brachycephalization
+brachycephalize
+brachycephalous
+brachycephaly
+Brachycera
+brachyceral
+brachyceric
+brachycerous
+brachychronic
+brachycnemic
+Brachycome
+brachycranial
+brachycranic
+brachycrany
+brachydactyl
+brachydactylia
+brachydactylic
+brachydactylism
+brachydactylous
+brachydactyly
+brachydiagonal
+brachydodrome
+brachydodromous
+brachydomal
+brachydomatic
+brachydome
+brachydont
+brachydontism
+brachyfacial
+brachyglossal
+brachygnathia
+brachygnathism
+brachygnathous
+brachygrapher
+brachygraphic
+brachygraphical
+brachygraphy
+brachyhieric
+brachylogies
+brachylogy
+brachymetropia
+brachymetropic
+Brachyoura
+brachyphalangia
+Brachyphyllum
+brachypinacoid
+brachypinacoidal
+brachypleural
+brachypnea
+brachypodine
+brachypodous
+brachyprism
+brachyprosopic
+brachypterous
+brachypyramid
+brachyrrhinia
+brachysclereid
+brachyskelic
+brachysm
+brachystaphylic
+Brachystegia
+brachystochrone
+Brachystomata
+brachystomatous
+brachystomous
+brachytic
+brachytmema
+brachytypous
+Brachyura
+brachyural
+brachyuran
+brachyuranic
+brachyure
+brachyurous
+Brachyurus
+bracing
+bracingly
+bracingness
+bracings
+braciola
+braciolas
+braciole
+bracioles
+brack
+brackebuschite
+bracked
+Brackely
+bracken
+brackened
+Brackenridge
+brackens
+bracker
+bracket
+bracketed
+bracketing
+brackets
+Brackett
+bracketted
+Brackettville
+bracketwise
+bracking
+brackish
+brackishness
+brackmard
+Bracknell
+Brackney
+bracky
+Bracon
+braconid
+Braconidae
+braconids
+braconniere
+bracozzo
+bract
+bractea
+bracteal
+bracteate
+bracted
+bracteiform
+bracteolate
+bracteole
+bracteose
+bractless
+bractlet
+bractlets
+bracts
+Brad
+brad
+Bradan
+bradawl
+bradawls
+Bradbury
+Bradburya
+bradded
+bradding
+Braddock
+Braddyville
+Brade
+Braden
+bradenhead
+Bradenton
+Bradenville
+Bradeord
+Brader
+Bradford
+Bradfordsville
+Bradlee
+Bradleianism
+Bradleigh
+Bradley
+Bradleyville
+Bradly
+bradmaker
+Bradman
+Bradner
+Bradney
+bradoon
+bradoons
+brads
+Bradshaw
+Bradski
+bradsot
+Bradstreet
+Bradway
+Bradwell
+Brady
+brady-
+bradyacousia
+bradyauxesis
+bradyauxetic
+bradyauxetically
+bradycardia
+bradycardic
+bradycauma
+bradycinesia
+bradycrotic
+bradydactylia
+bradyesthesia
+bradyglossia
+bradykinesia
+bradykinesis
+bradykinetic
+bradykinin
+bradylalia
+bradylexia
+bradylogia
+bradynosus
+bradypepsia
+bradypepsy
+bradypeptic
+bradyphagia
+bradyphasia
+bradyphemia
+bradyphrasia
+bradyphrenia
+bradypnea
+bradypnoea
+bradypod
+bradypode
+Bradypodidae
+bradypodoid
+Bradypus
+bradyseism
+bradyseismal
+bradyseismic
+bradyseismical
+bradyseismism
+bradyspermatism
+bradysphygmia
+bradystalsis
+bradyteleocinesia
+bradyteleokinesis
+bradytelic
+bradytely
+bradytocia
+bradytrophic
+bradyuria
+Bradyville
+brae
+braeface
+braehead
+braeman
+braes
+braeside
+Braeunig
+Brag
+brag
+Braga
+bragas
+Bragdon
+Brage
+brager
+Bragg
+braggadocian
+braggadocianism
+Braggadocio
+braggadocio
+braggadocios
+braggardism
+braggart
+braggartism
+braggartly
+braggartry
+braggarts
+braggat
+bragged
+bragger
+braggers
+braggery
+braggest
+bragget
+braggier
+braggiest
+bragging
+braggingly
+braggish
+braggishly
+braggite
+braggle
+Braggs
+braggy
+Bragi
+bragi
+bragite
+bragless
+bragly
+bragozzo
+brags
+braguette
+bragwort
+Braham
+Brahe
+Brahear
+Brahm
+brahm
+Brahma
+brahma
+brahmachari
+Brahmahood
+Brahmaic
+Brahmajnana
+Brahmaloka
+Brahman
+brahman
+Brahmana
+Brahmanaspati
+Brahmanda
+Brahmanee
+Brahmaness
+Brahmanhood
+Brahmani
+Brahmanic
+Brahmanical
+Brahmanis
+Brahmanism
+brahmanism
+Brahmanist
+brahmanist
+Brahmanistic
+brahmanists
+Brahmanize
+Brahmans
+brahmans
+Brahmany
+brahmapootra
+Brahmaputra
+brahmas
+Brahmi
+Brahmic
+brahmic
+Brahmin
+brahmin
+brahminee
+Brahminic
+Brahminical
+Brahminism
+brahminism
+Brahminist
+brahminist
+brahminists
+Brahmins
+brahmins
+brahmism
+Brahmoism
+Brahms
+brahms
+Brahmsian
+Brahmsite
+Brahui
+braid
+braided
+braider
+braiders
+braiding
+braidings
+Braidism
+braidism
+Braidist
+braids
+Braidwood
+braies
+brail
+Braila
+brailed
+brailing
+Braille
+braille
+Brailled
+brailled
+brailler
+brailles
+Braillewriter
+braillewriter
+Brailling
+brailling
+Braillist
+Brailowsky
+brails
+brain
+brainache
+Brainard
+Brainardsville
+brain-begot
+brain-born
+brain-breaking
+brain-bred
+braincap
+braincase
+brain-child
+brainchild
+brainchildren
+brain-cracked
+braincraft
+brain-crazed
+brain-crumpled
+brain-damaged
+brained
+brainer
+Brainerd
+brainfag
+brain-fevered
+brain-fretting
+brainge
+brainier
+brainiest
+brainily
+braininess
+braining
+brain-injured
+brainish
+brainless
+brainlessly
+brainlessness
+brainlike
+brainpan
+brainpans
+brainpower
+brain-purging
+brains
+brainsick
+brainsickly
+brainsickness
+brain-smoking
+brain-spattering
+brain-spun
+brainstem
+brainstems
+brainstone
+brainstorm
+brainstormer
+brainstorming
+brainstorms
+brain-strong
+brain-teaser
+brainteaser
+brainteasers
+brain-tire
+Braintree
+brain-trust
+brainward
+brain-wash
+brainwash
+brainwashed
+brainwasher
+brainwashers
+brainwashes
+brain-washing
+brainwashing
+brainwashjng
+brainwater
+brainwave
+brainwood
+brainwork
+brainworker
+brainy
+braird
+brairded
+brairding
+braireau
+brairo
+braise
+braised
+braises
+braising
+Braithwaite
+braize
+braizes
+brake
+brakeage
+brakeages
+braked
+brakehand
+brakehead
+brakeless
+brakeload
+brakemaker
+brakemaking
+brakeman
+brakemen
+braker
+brakeroot
+brakes
+brakesman
+brakesmen
+brake-testing
+brake-van
+brakie
+brakier
+brakiest
+braking
+Brakpan
+braky
+Brale
+braless
+Bram
+Bramah
+bramah
+Braman
+Bramante
+Bramantesque
+Bramantip
+bramantip
+bramble
+brambleberries
+brambleberry
+bramblebush
+brambled
+brambles
+bramblier
+brambliest
+brambling
+brambly
+brambrack
+brame
+Bramia
+Bramley
+Bramwell
+Bran
+bran
+Brana
+Branca
+brancard
+brancardier
+-branch
+Branch
+branch
+branchage
+branch-bearing
+branch-building
+branch-charmed
+branch-climber
+Branchdale
+branched
+branchedness
+Branchellion
+branch-embellished
+brancher
+branchery
+branches
+branchful
+branchi
+branchia
+branchiae
+branchial
+Branchiata
+branchiate
+branchicolous
+branchier
+branchiest
+branchiferous
+branchiform
+branchihyal
+branchiness
+branching
+branchings
+branchio-
+Branchiobdella
+branchiocardiac
+branchiogenous
+branchiomere
+branchiomeric
+branchiomerism
+branchiopallial
+branchiopneustic
+branchiopod
+Branchiopoda
+branchiopodan
+branchiopodous
+branchiopoo
+Branchiopulmonata
+branchiopulmonate
+branchiosaur
+Branchiosauria
+branchiosaurian
+Branchiosaurus
+branchiostegal
+branchiostegan
+branchiostege
+Branchiostegidae
+branchiostegite
+branchiostegous
+Branchiostoma
+branchiostomid
+Branchiostomidae
+branchiostomous
+Branchipodidae
+Branchipus
+branchireme
+Branchiura
+branchiurous
+Branchland
+branchless
+branchlet
+branchlike
+branchling
+branchman
+Branchport
+branch-rent
+branchstand
+branch-strewn
+Branchton
+Branchus
+Branchville
+branchway
+branchy
+Brancusi
+Brand
+brand
+brandade
+Brandais
+Brandamore
+Brande
+Brandea
+branded
+bran-deer
+Brandeis
+Branden
+Brandenburg
+Brandenburger
+brandenburgh
+brandenburgs
+Brander
+brander
+brandering
+branders
+Brandes
+brand-goose
+Brandi
+Brandice
+Brandie
+brandied
+brandies
+brandify
+branding
+brandiron
+Brandise
+brandise
+brandish
+brandished
+brandisher
+brandishers
+brandishes
+brandishing
+brandisite
+brandle
+brandless
+brandling
+brand-mark
+brand-new
+brand-newness
+Brando
+Brandon
+brandon
+Brandonville
+brandreth
+brandrith
+brands
+brandsolder
+Brandsville
+Brandt
+Brandtr
+Brandwein
+Brandy
+brandy
+brandyball
+brandy-bottle
+brandy-burnt
+brandy-faced
+brandying
+brandyman
+Brandyn
+brandy-pawnee
+Brandywine
+brandywine
+Branen
+Branford
+Branger
+brangle
+brangled
+branglement
+brangler
+brangling
+Brangus
+Branguses
+Branham
+branial
+Braniff
+brank
+brankie
+brankier
+brankiest
+brank-new
+branks
+brank-ursine
+brankursine
+branky
+branle
+branles
+branned
+branner
+brannerite
+branners
+bran-new
+brannier
+branniest
+brannigan
+branniness
+branning
+Brannon
+branny
+Brans
+brans
+Branscum
+Bransford
+bransle
+bransles
+bransolder
+Branson
+Branstock
+Brant
+brant
+Branta
+brantail
+brantails
+brantcorn
+Brantford
+brant-fox
+Branting
+Brantingham
+brantle
+Brantley
+brantness
+brants
+Brantsford
+Brantwood
+branular
+Branwen
+Braque
+braquemard
+brarow
+bras
+Brasca
+bras-dessus-bras-dessous
+Braselton
+brasen
+Brasenia
+brasero
+braseros
+brash
+Brashear
+brasher
+brashes
+brashest
+brashier
+brashiest
+brashiness
+brashly
+brashness
+brashy
+Brasia
+brasier
+brasiers
+Brasil
+brasil
+brasilein
+brasilete
+brasiletto
+Brasilia
+brasilia
+brasilin
+brasilins
+brasils
+Brasov
+brasque
+brasqued
+brasquing
+Brass
+brass
+brassage
+brassages
+brassard
+brassards
+brass-armed
+brassart
+brassarts
+brassate
+Brassavola
+brass-bold
+brassbound
+brassbounder
+brass-browed
+brass-cheeked
+brass-colored
+brasse
+brassed
+brasser
+brasserie
+brasseries
+brasses
+brasset
+brassey
+brass-eyed
+brasseys
+brass-finishing
+brass-fitted
+brass-footed
+brass-fronted
+brass-handled
+brass-headed
+brass-hilted
+brass-hooved
+Brassia
+brassic
+Brassica
+brassica
+Brassicaceae
+brassicaceous
+brassicas
+brassidic
+brassie
+brassier
+brassiere
+brassieres
+brassies
+brassiest
+brassily
+brassiness
+brassing
+brassish
+brasslike
+brass-lined
+brass-melting
+brass-mounted
+Brasso
+brass-plated
+brass-renting
+brass-shapen
+brass-smith
+brass-tipped
+Brasstown
+brass-visaged
+brassware
+brasswork
+brassworker
+brass-working
+brassworks
+brassy
+brassylic
+brast
+Braswell
+BRAT
+brat
+bratchet
+Brathwaite
+Bratianu
+bratina
+Bratislava
+bratling
+brats
+bratstva
+bratstvo
+brattach
+Brattain
+brattice
+bratticed
+bratticer
+brattices
+bratticing
+brattie
+brattier
+brattiest
+brattiness
+brattish
+brattishing
+brattle
+Brattleboro
+brattled
+brattles
+brattling
+Bratton
+bratty
+Bratwurst
+bratwurst
+Brauhaus
+Brauhauser
+braula
+Braun
+brauna
+Brauneberger
+Brauneria
+Braunfels
+braunite
+braunites
+Braunschweig
+Braunschweiger
+braunschweiger
+Braunstein
+Brauronia
+Brauronian
+Brause
+Brautlied
+Brava
+brava
+bravade
+bravado
+bravadoed
+bravadoes
+bravadoing
+bravadoism
+bravados
+Bravar
+bravas
+brave
+braved
+bravehearted
+brave-horsed
+brave-looking
+bravely
+brave-minded
+braveness
+braver
+braveries
+bravers
+bravery
+braves
+brave-sensed
+brave-showing
+brave-souled
+brave-spirited
+brave-spiritedness
+bravest
+bravi
+Bravin
+braving
+bravish
+bravissimo
+bravo
+bravoed
+bravoes
+bravoing
+bravoite
+bravos
+bravura
+bravuraish
+bravuras
+bravure
+braw
+brawer
+brawest
+brawl
+brawled
+brawler
+brawlers
+Brawley
+brawlie
+brawlier
+brawliest
+brawling
+brawlingly
+brawlis
+brawls
+brawlsome
+brawly
+brawlys
+brawn
+brawned
+brawnedness
+Brawner
+brawner
+brawnier
+brawniest
+brawnily
+brawniness
+brawns
+brawny
+braws
+braxies
+Braxton
+braxy
+Bray
+bray
+braye
+brayed
+brayer
+brayera
+brayerin
+brayers
+brayette
+braying
+Brayley
+Braymer
+Braynard
+brays
+braystone
+Brayton
+Braz
+Braz.
+braza
+brazas
+braze
+Brazeau
+brazed
+Brazee
+brazee
+braze-jointed
+brazen
+brazen-barking
+brazen-browed
+brazen-clawed
+brazen-colored
+brazened
+brazen-face
+brazenface
+brazen-faced
+brazenfaced
+brazen-facedly
+brazenfacedly
+brazenfacedness
+brazen-fisted
+brazen-floored
+brazen-footed
+brazen-fronted
+brazen-gated
+brazen-headed
+brazen-hilted
+brazen-hoofed
+brazen-imaged
+brazening
+brazen-leaved
+brazen-lunged
+brazenly
+brazen-mailed
+brazen-mouthed
+brazenness
+brazennesses
+brazen-pointed
+brazens
+brazer
+brazera
+brazers
+brazes
+brazier
+braziers
+braziery
+Brazil
+brazil
+brazilein
+brazilette
+braziletto
+Brazilian
+brazilian
+brazilianite
+brazilians
+brazilin
+brazilins
+brazilite
+Brazil-nut
+brazils
+brazilwood
+brazing
+Brazoria
+Brazos
+Brazzaville
+BRC
+BRCA
+B.R.C.S.
+BRCS
+BRE
+Bre
+Brea
+breach
+breached
+breacher
+breachers
+breaches
+breachful
+breaching
+breachy
+bread
+bread-and-butter
+bread-baking
+bread-basket
+breadbasket
+breadbaskets
+breadberry
+breadboard
+breadboards
+breadbox
+breadboxes
+bread-corn
+bread-crumb
+bread-crumbing
+bread-cutting
+breadearner
+breadearning
+bread-eating
+breaded
+breaden
+bread-faced
+bread-fruit
+breadfruit
+breadfruits
+breading
+breadless
+breadlessness
+breadline
+bread-liner
+breadmaker
+breadmaking
+breadman
+breadness
+breadnut
+breadnuts
+breadroot
+breads
+breadseller
+bread-stitch
+breadstitch
+bread-stuff
+breadstuff
+breadstuffs
+breadth
+breadthen
+breadthless
+breadthriders
+breadths
+breadthways
+breadthwise
+bread-tree
+bread-winner
+breadwinner
+breadwinners
+breadwinning
+bread-wrapping
+breaghe
+break
+break-
+breakability
+breakable
+breakableness
+breakables
+breakably
+breakage
+breakages
+breakaway
+breakax
+breakaxe
+break-back
+breakback
+breakbone
+breakbones
+break-circuit
+break-down
+breakdown
+breakdowns
+breaker
+breaker-down
+breakerman
+breakermen
+breaker-off
+breakers
+breaker-up
+break-even
+breakfast
+breakfasted
+breakfaster
+breakfasters
+breakfasting
+breakfastless
+breakfasts
+break-front
+breakfront
+breakfronts
+break-in
+breaking
+breaking-in
+breakings
+breakless
+breaklist
+break-neck
+breakneck
+break-off
+breakoff
+breakout
+breakouts
+breakover
+breakpoint
+breakpoints
+break-promise
+Breaks
+breaks
+breakshugh
+breakstone
+break-through
+breakthrough
+breakthroughes
+breakthroughs
+break-up
+breakup
+breakups
+breakwater
+breakwaters
+breakweather
+breakwind
+Bream
+bream
+breamed
+breaming
+breams
+Breana
+Breanne
+Brear
+breards
+breast
+breastband
+breast-beam
+breastbeam
+breast-beater
+breast-beating
+breast-board
+breastbone
+breastbones
+breast-deep
+Breasted
+breasted
+breaster
+breastfast
+breast-fed
+breast-feed
+breast-feeding
+breastfeeding
+breastful
+breastheight
+breast-high
+breast-hook
+breasthook
+breastie
+breasting
+breastless
+breastmark
+breastpiece
+breastpin
+breast-plate
+breastplate
+breastplates
+breast-plough
+breastplough
+breastplow
+breastrail
+breast-rending
+breastrope
+breasts
+breaststroke
+breaststroker
+breaststrokes
+breastsummer
+breastweed
+breast-wheel
+breastwise
+breastwood
+breastwork
+breastworks
+breath
+breathability
+breathable
+breathableness
+breathalyse
+Breathalyzer
+breath-bereaving
+breath-blown
+breathe
+breatheableness
+breathed
+breather
+breathers
+breathes
+breathful
+breath-giving
+breathier
+breathiest
+breathily
+breathiness
+breathing
+breathingly
+Breathitt
+breathless
+breathlessly
+breathlessness
+breaths
+breathseller
+breath-stopping
+breath-sucking
+breath-tainted
+breath-taking
+breathtaking
+breathtakingly
+breathy
+breba
+Breban
+Brebner
+breccia
+breccial
+breccias
+brecciate
+brecciated
+brecciating
+brecciation
+brecham
+brechams
+brechan
+brechans
+Brecher
+Brechites
+Brecht
+brecht
+Brechtel
+brechtian
+brecia
+breck
+brecken
+Breckenridge
+Breckinridge
+Brecknockshire
+Brecksville
+Brecon
+Breconshire
+Bred
+bred
+Breda
+bredbergite
+brede
+bredes
+bredestitch
+bredi
+bred-in-the-bone
+bredstitch
+Bree
+bree
+Breech
+breech
+breechblock
+breechcloth
+breechcloths
+breechclout
+breeched
+breeches
+breechesflower
+breechesless
+breeching
+breechless
+breech-loader
+breechloader
+breech-loading
+breechloading
+Breed
+breed
+breedable
+breedbate
+Breeden
+breeder
+breeders
+breediness
+Breeding
+breeding
+breedings
+breedling
+breeds
+Breedsville
+breedy
+breek
+breekless
+breeks
+breekums
+Breen
+Breena
+breenge
+breenger
+brees
+Breese
+Breesport
+Breeze
+breeze
+breeze-borne
+breezed
+breeze-fanned
+breezeful
+breezeless
+breeze-lifted
+breezelike
+breezes
+breeze-shaken
+breeze-swept
+breezeway
+breezeways
+Breezewood
+breeze-wooing
+breezier
+breeziest
+breezily
+breeziness
+breezing
+breezy
+Bregenz
+Breger
+bregma
+bregmata
+bregmate
+bregmatic
+brehon
+brehonia
+brehonship
+brei
+Breinigsville
+breird
+Breislak
+breislakite
+Breithablik
+breithauptite
+brekkle
+brekky
+brelan
+brelaw
+Brelje
+breloque
+brember
+Bremble
+breme
+bremely
+Bremen
+bremeness
+Bremer
+Bremerhaven
+Bremerton
+Bremia
+Bremond
+Bremser
+bremsstrahlung
+Bren
+bren
+Brena
+Brenan
+Brenda
+Brendan
+brended
+Brendel
+Brenden
+brendice
+Brendin
+Brendis
+Brendon
+Brengun
+Brenham
+Brenk
+Brenn
+Brenna
+brennage
+Brennan
+Brennen
+Brenner
+Brennschluss
+brennschluss
+brens
+Brent
+brent
+Brentano
+Brentford
+Brenthis
+brent-new
+Brenton
+brents
+Brentt
+Brentwood
+Brenza
+brephic
+brepho-
+br'er
+brerd
+brere
+Bres
+Brescia
+Brescian
+Bresee
+Breshkovsky
+Breskin
+Breslau
+Bress
+bressomer
+Bresson
+bressummer
+Brest
+brest
+Bret
+bret
+Bretagne
+bretelle
+bretesse
+bret-full
+breth
+brethel
+brethren
+brethrenism
+Breton
+breton
+Bretonian
+bretons
+Bretschneideraceae
+Brett
+brett
+Bretta
+brettice
+Bretwalda
+bretwalda
+Bretwaldadom
+Bretwaldaship
+Bretz
+breu-
+Breuer
+Breugel
+Breughel
+breunnerite
+brev
+breva
+Brevard
+breve
+breves
+brevet
+brevetcies
+brevetcy
+brevete
+breveted
+breveting
+brevets
+brevetted
+brevetting
+brevi
+brevi-
+breviaries
+breviary
+breviate
+breviature
+brevicauda
+brevicaudate
+brevicipitid
+Brevicipitidae
+brevicomis
+breviconic
+brevier
+breviers
+brevifoliate
+breviger
+brevilingual
+breviloquence
+breviloquent
+breviped
+brevipen
+brevipennate
+breviradiate
+brevirostral
+brevirostrate
+Brevirostrines
+brevis
+brevit
+brevities
+brevity
+Brew
+brew
+brewage
+brewages
+brewed
+Brewer
+brewer
+breweries
+brewers
+brewership
+Brewerton
+brewery
+brewhouse
+brewhouses
+brewing
+brewings
+brewis
+brewises
+brewmaster
+brews
+brewst
+Brewster
+brewster
+brewsterite
+Brewton
+Brey
+brey
+Brezhnev
+brezhnev
+Brezin
+BRG
+BRI
+Bria
+Brian
+brian
+Briana
+Briand
+Brianhead
+Brianna
+Brianne
+Briano
+Briant
+briar
+briarberry
+Briard
+briard
+briards
+Briarean
+briared
+Briareus
+briareus
+briar-hopper
+briarroot
+briars
+briarwood
+briary
+bribability
+bribable
+bribe
+bribeability
+bribeable
+bribed
+bribe-devouring
+bribee
+bribees
+bribe-free
+bribegiver
+bribegiving
+bribeless
+bribemonger
+briber
+briberies
+bribers
+bribery
+bribes
+bribetaker
+bribetaking
+bribeworthy
+bribing
+Bribri
+bric-a-brac
+bric-a-brackery
+Brice
+Bricelyn
+Briceville
+brichen
+brichette
+Brick
+brick
+brick-barred
+brickbat
+brickbats
+brickbatted
+brickbatting
+brick-bound
+brick-building
+brick-built
+brick-burning
+brick-colored
+brickcroft
+brick-cutting
+brick-drying
+brick-dust
+brick-earth
+bricked
+brickel
+bricken
+Bricker
+bricker
+Brickeys
+brick-field
+brickfield
+brickfielder
+brick-fronted
+brick-grinding
+brick-hemmed
+brickhood
+brickier
+brickiest
+bricking
+brickish
+brick-kiln
+brickkiln
+bricklay
+bricklayer
+bricklayers
+bricklaying
+bricklayings
+brickle
+brickleness
+brickles
+bricklike
+brickliner
+bricklining
+brickly
+brickmaker
+brickmaking
+brickmason
+brick-nogged
+brick-paved
+brick-red
+brickred
+bricks
+brickset
+bricksetter
+brick-testing
+bricktimber
+bricktop
+brickwall
+brick-walled
+brickwise
+brickwork
+bricky
+brickyard
+bricole
+bricoles
+brid
+bridal
+bridale
+bridaler
+bridally
+bridals
+bridalty
+Bridalveil
+Bride
+bride
+bride-ale
+bridebed
+bridebowl
+bridecake
+bridechamber
+bride-cup
+bridecup
+bridegod
+bridegroom
+bridegrooms
+bridegroomship
+bridehead
+bridehood
+bridehouse
+brideknot
+bride-lace
+bridelace
+brideless
+bridelike
+bridelope
+bridely
+bridemaid
+bridemaiden
+bridemaidship
+brideman
+brides
+brideship
+bridesmaid
+bridesmaiding
+bridesmaids
+bridesman
+bridesmen
+bridestake
+bride-to-be
+bridewain
+brideweed
+bridewell
+bridewort
+Bridey
+Bridge
+bridge
+bridgeable
+bridgeables
+bridgeboard
+bridgebote
+bridgebuilder
+bridgebuilding
+bridged
+Bridgehampton
+bridgehead
+bridgeheads
+bridge-house
+bridgekeeper
+Bridgeland
+bridgeless
+bridgelike
+bridgemaker
+bridgemaking
+bridgeman
+bridgemaster
+bridgemen
+Bridgeport
+bridgeport
+bridgepot
+Bridger
+bridger
+Bridges
+bridges
+Bridget
+bridgetin
+Bridgeton
+Bridgetown
+bridgetree
+Bridgette
+Bridgeville
+bridgewall
+bridgeward
+bridgewards
+Bridgewater
+bridgewater
+bridgeway
+bridgework
+Bridgid
+bridging
+bridgings
+Bridgman
+Bridgton
+Bridgwater
+Bridie
+bridie
+bridle
+bridled
+bridleless
+bridleman
+bridler
+bridlers
+bridles
+bridle-wise
+bridlewise
+bridling
+bridoon
+bridoons
+Bridport
+Bridwell
+Brie
+brie
+BRIEF
+brief
+briefcase
+briefcases
+briefed
+briefer
+briefers
+briefest
+briefing
+briefings
+briefless
+brieflessly
+brieflessness
+briefly
+briefness
+briefnesses
+briefs
+Brielle
+Brien
+Brier
+brier
+brierberry
+briered
+Brierfield
+brierroot
+briers
+brierwood
+briery
+bries
+Brieta
+Brietta
+Brieux
+brieve
+Brig
+Brig.
+brig
+brigade
+brigaded
+brigades
+brigadier
+brigadiers
+brigadiership
+brigading
+brigalow
+brigand
+brigandage
+brigander
+brigandine
+brigandish
+brigandishly
+brigandism
+brigands
+Brigantes
+Brigantia
+Brigantine
+brigantine
+brigantinebrigantines
+brigantines
+brigatry
+brigbote
+Brigette
+brigetty
+Brigg
+Briggs
+Briggsdale
+Briggsian
+Briggsville
+Brigham
+Brighella
+Brighid
+Brighouse
+Bright
+bright
+bright-bloomed
+bright-cheeked
+bright-colored
+bright-dyed
+brighten
+brightened
+brightener
+brighteners
+brightening
+brightens
+brighter
+brightest
+bright-eyed
+Brighteyes
+brighteyes
+bright-faced
+bright-featured
+bright-field
+bright-flaming
+bright-haired
+bright-headed
+bright-hued
+brightish
+bright-leaved
+brightly
+Brightman
+bright-minded
+brightness
+brightnesses
+Brighton
+bright-robed
+brights
+brightsmith
+brightsome
+brightsomeness
+bright-spotted
+bright-striped
+bright-studded
+bright-tinted
+Brightwaters
+bright-witted
+Brightwood
+brightwork
+Brigid
+Brigida
+Brigit
+Brigitta
+Brigitte
+Brigittine
+brigous
+brig-rigged
+brigs
+brigsail
+brigue
+brigued
+briguer
+briguing
+Brihaspati
+brike
+Brill
+brill
+brillante
+Brillat-Savarin
+brilliance
+brilliances
+brilliancies
+brilliancy
+brilliandeer
+Brilliant
+brilliant
+brilliant-cut
+brilliantine
+brilliantined
+brilliantly
+brilliantness
+brilliants
+brilliantwise
+brilliolette
+Brillion
+brillolette
+Brillouin
+brills
+brim
+brimborion
+brimborium
+Brimfield
+brimful
+brimfull
+brimfullness
+brimfully
+brimfulness
+Brimhall
+briming
+brimless
+Brimley
+brimly
+brimmed
+brimmer
+brimmered
+brimmering
+brimmers
+brimmimg
+brimming
+brimmingly
+Brimo
+brims
+brimse
+Brimson
+brimstone
+brimstones
+brimstonewort
+brimstony
+brin
+Brina
+brince
+brinded
+Brindell
+Brindisi
+brindisi
+Brindle
+brindle
+brindled
+brindles
+brindlish
+Brine
+brine
+brine-bound
+brine-cooler
+brine-cooling
+brined
+brine-dripping
+brinehouse
+brineless
+brineman
+brine-pumping
+briner
+briners
+brines
+brine-soaked
+Briney
+Bring
+bring
+bringal
+bringall
+bringdown
+bringed
+bringela
+bringer
+bringers
+bringer-up
+bringeth
+Bringhurst
+bringing
+bringing-up
+brings
+bringsel
+brinie
+brinier
+brinies
+briniest
+brininess
+brininesses
+brining
+brinish
+brinishness
+brinjal
+brinjaree
+brinjarries
+brinjarry
+brinjaul
+Brinje
+Brink
+brink
+Brinkema
+brinkless
+Brinkley
+Brinklow
+brinkmanship
+brinks
+brinksmanship
+Brinktown
+Brinn
+Brinna
+Brinnon
+brinny
+brins
+brinsell
+Brinsmade
+Brinson
+brinston
+Briny
+briny
+brio
+brioche
+brioches
+briolet
+briolette
+briolettes
+Brion
+Brioni
+brionies
+brionine
+briony
+brios
+Brioschi
+brique
+briquet
+briquets
+briquette
+briquetted
+briquettes
+briquetting
+bris
+brisa
+brisance
+brisances
+brisant
+Brisbane
+brisbane
+Brisbin
+Briscoe
+briscola
+brise
+Briseis
+briseis
+brisement
+brises
+brise-soleil
+Briseus
+Brisingamen
+brisk
+brisked
+brisken
+briskened
+briskening
+brisker
+briskest
+brisket
+briskets
+brisking
+briskish
+briskly
+briskness
+brisknesses
+brisks
+brisky
+brisling
+brislings
+brisque
+briss
+brisses
+Brissotin
+Brissotine
+brist
+bristle
+bristlebird
+bristlecone
+bristled
+bristle-faced
+bristle-grass
+bristleless
+bristlelike
+bristlemouth
+bristlemouths
+bristle-pointed
+bristler
+bristles
+bristle-stalked
+bristletail
+bristle-tailed
+bristle-thighed
+bristle-toothed
+bristlewort
+bristlier
+bristliest
+bristliness
+bristling
+bristly
+Bristo
+Bristol
+bristol
+bristols
+Bristolville
+Bristow
+brisure
+Brit
+Brit.
+brit
+Brita
+Britain
+britain
+Britannia
+britannia
+Britannian
+Britannic
+britannic
+Britannica
+britannica
+Britannically
+Britannicus
+britany
+britchel
+britches
+britchka
+brite
+Brith
+brith
+brither
+Briticism
+briticism
+British
+british
+Britisher
+britisher
+britishers
+Britishhood
+Britishism
+British-israel
+Britishly
+Britishness
+Britney
+Britni
+Brito-icelandic
+Britomartis
+Briton
+briton
+Britoness
+britons
+brits
+britska
+britskas
+Britt
+britt
+Britta
+Brittain
+Brittan
+Brittaney
+Brittani
+Brittany
+Britte
+Britten
+britten
+Britteny
+brittle
+brittlebush
+brittled
+brittlely
+brittleness
+brittler
+brittles
+brittlest
+brittle-star
+brittlestem
+brittlewood
+brittlewort
+brittling
+brittly
+Brittne
+Brittnee
+Brittney
+Brittni
+Britton
+Brittonic
+brittonic
+britts
+britzka
+britzkas
+britzska
+britzskas
+Brix
+Brixey
+Briza
+briza
+Brize
+Brizo
+brizz
+BRL
+brl
+BRM
+BRN
+Brnaba
+Brnaby
+Brno
+Bro
+bro
+broach
+broached
+broacher
+broachers
+broaches
+broaching
+Broad
+broad
+broadacre
+Broadalbin
+broad-arrow
+broadax
+broad-axe
+broadaxe
+broadaxes
+broad-backed
+broadband
+broad-based
+broad-beamed
+Broadbent
+broadbill
+broad-billed
+broad-bladed
+broad-blown
+broad-bodied
+broad-bosomed
+broad-bottomed
+broad-boughed
+broad-bowed
+broad-breasted
+Broadbrim
+broad-brim
+broadbrim
+broad-brimmed
+Broadbrook
+broad-built
+broadcast
+broadcasted
+broadcaster
+broadcasters
+broadcasting
+broadcastings
+broadcasts
+broad-chested
+broad-chinned
+broadcloth
+broadcloths
+broad-crested
+Broaddus
+broad-eared
+broaden
+broadened
+broadener
+broadeners
+broadening
+broadenings
+broadens
+broader
+broadest
+broad-eyed
+broad-faced
+broad-flapped
+Broadford
+broad-fronted
+broad-gage
+broadgage
+broad-gaged
+broad-gauge
+broad-gauged
+broad-guage
+broad-handed
+broadhead
+broad-headed
+broadhearted
+broad-hoofed
+broadhorn
+broad-horned
+broadish
+broad-jump
+Broadlands
+Broadleaf
+broadleaf
+broad-leafed
+broad-leaved
+broadleaves
+broad-limbed
+broadling
+broadlings
+broad-lipped
+broad-listed
+broadloom
+broadlooms
+broadly
+broad-margined
+broad-minded
+broad-mindedly
+broadmindedly
+broad-mindedness
+Broadmoor
+broadmouth
+broad-mouthed
+broadness
+broadnesses
+broad-nosed
+broad-piece
+broadpiece
+broad-ribbed
+broad-roomed
+Broadrun
+Broads
+broads
+broad-set
+broadshare
+broadsheet
+broad-shouldered
+broadside
+broadsided
+broadsider
+broadsides
+broadsiding
+broad-skirted
+broad-souled
+broad-spectrum
+broad-spoken
+broadspread
+broad-spreading
+broad-sterned
+broad-striped
+broadsword
+broadswords
+broadtail
+broad-tailed
+broad-thighed
+broadthroat
+broad-tired
+broad-toed
+broad-toothed
+Broadus
+Broadview
+Broadwater
+Broadway
+broadway
+broad-wayed
+Broadwayite
+broadways
+Broadwell
+broad-wheeled
+broadwife
+broad-winged
+broadwise
+broadwives
+brob
+Brobdingnag
+brobdingnag
+Brobdingnagian
+brobdingnagian
+Broca
+brocade
+brocaded
+brocades
+brocading
+brocage
+brocard
+brocardic
+brocatel
+brocatelle
+brocatello
+brocatels
+Broccio
+broccoli
+broccolis
+broch
+brochan
+brochant
+brochantite
+broche
+brochette
+brochettes
+brochidodromous
+brocho
+brochophony
+brocht
+brochure
+brochures
+Brock
+brock
+brockage
+brockages
+brocked
+Brocken
+Brocket
+brocket
+brockets
+brock-faced
+Brockie
+brockish
+brockle
+Brocklin
+Brockport
+brocks
+Brockton
+Brockway
+Brockwell
+Brocky
+brocoli
+brocolis
+Brocton
+Brod
+brod
+brodder
+Broddie
+broddle
+Broddy
+brodee
+brodeglass
+Brodehurst
+brodekin
+Brodench
+brodequin
+Broder
+broderer
+Broderic
+Broderick
+broderie
+Brodeur
+Brodhead
+Brodheadsville
+Brodiaea
+Brodie
+brodie
+Brodnax
+Brodsky
+Brody
+brodyaga
+brodyagi
+broeboe
+Broeder
+Broederbond
+Broek
+Broeker
+brog
+Brogan
+brogan
+brogans
+brogger
+broggerite
+broggle
+brogh
+Brogle
+Broglie
+Brogue
+brogue
+brogued
+brogueful
+brogueneer
+broguer
+brogueries
+broguery
+brogues
+broguing
+broguish
+Brohard
+Brohman
+broid
+Broida
+broiden
+broider
+broidered
+broiderer
+broideress
+broideries
+broidering
+broiders
+broidery
+broigne
+broil
+broiled
+broiler
+broilers
+broilery
+broiling
+broilingly
+broils
+Brok
+brokage
+brokages
+Brokaw
+broke
+broken
+broken-arched
+broken-backed
+broken-bellied
+Brokenbow
+broken-check
+broken-down
+broken-ended
+broken-footed
+broken-fortuned
+broken-handed
+broken-headed
+broken-hearted
+brokenhearted
+broken-heartedly
+brokenheartedly
+broken-heartedness
+brokenheartedness
+broken-hipped
+broken-hoofed
+broken-in
+broken-kneed
+broken-legged
+brokenly
+broken-minded
+broken-mouthed
+brokenness
+broken-nosed
+broken-paced
+broken-record
+broken-shanked
+broken-spirited
+broken-winded
+broken-winged
+broker
+brokerage
+brokerages
+brokered
+brokeress
+brokerly
+brokers
+brokership
+brokery
+brokes
+broking
+broletti
+broletto
+brolga
+broll
+brollies
+brolly
+brolly-hop
+Brom
+brom-
+broma
+bromacetanilide
+bromacetate
+bromacetic
+bromacetone
+bromal
+bromalbumin
+bromals
+bromamide
+bromargyrite
+bromate
+bromated
+bromates
+bromating
+bromatium
+bromatology
+bromaurate
+bromauric
+brombenzamide
+brombenzene
+brombenzyl
+Bromberg
+bromcamphor
+bromcresol
+Brome
+brome
+bromegrass
+bromeigon
+Bromeikon
+bromeikon
+Bromelia
+Bromeliaceae
+bromeliaceous
+bromeliad
+bromelin
+bromelins
+bromellite
+bromeosin
+bromes
+bromethyl
+bromethylene
+Bromfield
+bromgelatin
+bromhidrosis
+bromhydrate
+bromhydric
+Bromian
+bromic
+bromid
+bromide
+bromides
+bromidic
+bromidically
+bromidrosiphobia
+bromidrosis
+bromids
+bromin
+brominate
+brominated
+brominating
+bromination
+bromindigo
+bromine
+bromines
+brominism
+brominize
+bromins
+bromiodide
+Bromios
+bromisation
+bromise
+bromised
+bromising
+bromism
+bromisms
+bromite
+Bromius
+bromization
+bromize
+bromized
+bromizer
+bromizes
+bromizing
+Bromleigh
+Bromley
+bromlite
+bromo
+bromo-
+bromoacetone
+bromoaurate
+bromoaurates
+bromoauric
+bromobenzene
+bromobenzyl
+bromocamphor
+bromochloromethane
+bromochlorophenol
+bromocresol
+bromocyanid
+bromocyanidation
+bromocyanide
+bromocyanogen
+bromodeoxyuridine
+bromoethylene
+bromoform
+bromogelatin
+bromohydrate
+bromohydrin
+bromoil
+bromoiodid
+bromoiodide
+bromoiodism
+bromoiodized
+bromoketone
+bromol
+bromomania
+bromomenorrhea
+bromomethane
+bromometric
+bromometrical
+bromometrically
+bromometry
+bromonaphthalene
+bromophenol
+bromopicrin
+bromopikrin
+bromopnea
+bromoprotein
+bromos
+bromothymol
+bromouracil
+bromous
+bromphenol
+brompicrin
+Bromsgrove
+bromthymol
+bromuret
+Bromus
+bromvoel
+bromvogel
+bromyrite
+Bron
+Bronaugh
+bronc
+bronch-
+bronchadenitis
+bronchi
+bronchia
+bronchial
+bronchially
+bronchiarctia
+bronchiectasis
+bronchiectatic
+bronchiloquy
+bronchio-
+bronchiocele
+bronchiocrisis
+bronchiogenic
+bronchiolar
+bronchiole
+bronchioles
+bronchioli
+bronchiolitis
+bronchiolus
+bronchiospasm
+bronchiostenosis
+bronchitic
+bronchitis
+bronchium
+broncho
+broncho-
+bronchoadenitis
+bronchoalveolar
+bronchoaspergillosis
+bronchoblennorrhea
+bronchobuster
+bronchocavernous
+bronchocele
+bronchocephalitis
+bronchoconstriction
+bronchoconstrictor
+bronchodilatation
+bronchodilator
+bronchoegophony
+bronchoesophagoscopy
+bronchogenic
+bronchographic
+bronchography
+bronchohemorrhagia
+broncholemmitis
+broncholith
+broncholithiasis
+bronchomotor
+bronchomucormycosis
+bronchomycosis
+bronchopathy
+bronchophonic
+bronchophony
+bronchophthisis
+bronchoplasty
+bronchoplegia
+bronchopleurisy
+bronchopneumonia
+bronchopneumonic
+bronchopulmonary
+bronchorrhagia
+bronchorrhaphy
+bronchorrhea
+bronchos
+bronchoscope
+bronchoscopic
+bronchoscopically
+bronchoscopist
+Bronchoscopy
+bronchoscopy
+bronchospasm
+bronchostenosis
+bronchostomies
+bronchostomy
+bronchotetany
+bronchotome
+bronchotomist
+bronchotomy
+bronchotracheal
+bronchotyphoid
+bronchotyphus
+bronchovesicular
+bronchus
+bronco
+broncobuster
+broncobusters
+broncobusting
+broncos
+broncs
+Bronder
+Bronez
+brongniardite
+Bronislaw
+Bronk
+bronk
+Bronnie
+Bronny
+Bronson
+Bronston
+bronstrops
+Bront
+Bronte
+Bronteana
+bronteon
+brontephobia
+Brontes
+Brontesque
+bronteum
+brontide
+brontides
+brontogram
+brontograph
+brontolite
+brontolith
+brontology
+brontometer
+brontophobia
+Brontops
+brontops
+brontosaur
+brontosauri
+brontosaurs
+Brontosaurus
+brontosaurus
+brontosauruses
+brontoscopy
+brontothere
+Brontotherium
+Brontozoum
+Bronwen
+Bronwood
+Bronwyn
+Bronx
+bronx
+Bronxite
+Bronxville
+bronze
+bronze-bearing
+bronze-bound
+bronze-brown
+bronze-casting
+bronze-clad
+bronze-colored
+bronze-covered
+bronzed
+bronze-foreheaded
+bronze-gilt
+bronze-gleaming
+bronze-golden
+bronze-haired
+bronzelike
+bronzen
+bronze-purple
+bronzer
+bronzers
+bronzes
+bronze-shod
+bronzesmith
+bronzewing
+bronze-winged
+bronze-yellow
+bronzier
+bronziest
+bronzify
+bronzine
+bronzing
+bronzings
+Bronzino
+bronzite
+bronzitite
+bronzy
+broo
+brooch
+brooched
+brooches
+brooching
+brood
+brooded
+brooder
+brooders
+broodier
+broodiest
+broodily
+broodiness
+brooding
+broodingly
+broodless
+broodlet
+broodling
+broodmare
+broods
+broodsac
+broody
+Brook
+brook
+brookable
+Brookdale
+Brooke
+brooked
+Brookeland
+Brooker
+Brookes
+Brookesmith
+Brookeville
+Brookfield
+brookflower
+Brookhaven
+Brookhouse
+brookie
+brookier
+brookiest
+Brooking
+brooking
+Brookings
+brookite
+brookites
+Brookland
+Brooklandville
+Brooklawn
+brookless
+Brooklet
+brooklet
+brooklets
+brooklike
+brooklime
+Brooklin
+Brookline
+brookline
+Brooklyn
+brooklyn
+Brooklynese
+Brooklynite
+Brookneal
+Brookner
+Brookport
+Brooks
+brooks
+Brookshire
+brookside
+Brookston
+Brooksville
+Brookton
+Brooktondale
+Brookview
+Brookville
+brookweed
+Brookwood
+brooky
+brool
+broom
+Broomall
+broomball
+broomballer
+broombush
+broomcorn
+Broome
+broomed
+broomer
+Broomfield
+broomier
+broomiest
+brooming
+broom-leaved
+broommaker
+broommaking
+broomrape
+broomroot
+brooms
+broom-sewing
+broomshank
+broomsquire
+broomstaff
+broomstick
+broomsticks
+broomstraw
+broomtail
+broomweed
+broomwood
+broomwort
+broomy
+broon
+Broonzy
+broos
+broose
+Brooten
+broozled
+broquery
+broquineer
+Bros
+bros
+bros.
+Brose
+brose
+Broseley
+broses
+Brosimum
+Brosine
+brosot
+brosse
+Brost
+Brosy
+brosy
+brot
+brotan
+brotany
+brotchen
+Brote
+Broteas
+brotel
+broth
+brothe
+brothel
+brotheler
+brothellike
+brothelry
+brothels
+Brother
+brother
+brothered
+brother-german
+brotherhood
+brotherhoods
+brother-in-arms
+brothering
+brother-in-law
+brotherless
+brotherlike
+brotherliness
+brotherlinesses
+brotherly
+brotherred
+Brothers
+brothers
+brothership
+brothers-in-law
+Brotherson
+Brotherton
+brotherwort
+brothier
+brothiest
+broths
+brothy
+brotocrystal
+Brott
+brott
+Brottman
+Brotula
+brotula
+brotulid
+Brotulidae
+brotuliform
+Broucek
+brouette
+brough
+brougham
+brougham-landaulet
+broughams
+brought
+broughta
+broughtas
+Broughton
+brouhaha
+brouhahas
+brouille
+brouillon
+Broun
+Broussard
+Broussonetia
+Brout
+Brouwer
+brouze
+brow
+browache
+Browallia
+browallia
+browband
+browbands
+browbeat
+browbeaten
+browbeater
+browbeating
+browbeats
+brow-bent
+browbound
+browd
+browden
+Browder
+browed
+Brower
+Browerville
+browet
+browis
+browless
+browman
+Brown
+brown
+brown-armed
+brownback
+brown-backed
+brown-banded
+brown-barreled
+brown-bearded
+brown-berried
+brown-colored
+brown-complexioned
+Browne
+browned
+browned-off
+Brownell
+browner
+brownest
+brown-eyed
+brown-faced
+Brownfield
+brown-green
+brown-haired
+brown-headed
+Brownian
+brownian
+Brownie
+brownie
+brownier
+brownies
+browniest
+browniness
+Browning
+browning
+Browningesque
+brownish
+brownishness
+brownish-red
+brownish-yellow
+Brownism
+brownism
+Brownist
+Brownistic
+Brownistical
+brown-leaved
+Brownlee
+Brownley
+brown-locked
+brownly
+brownness
+brown-nose
+brownnose
+brown-nosed
+brown-noser
+brownnoser
+brown-nosing
+brownout
+brownouts
+brownprint
+brown-purple
+brown-red
+brown-roofed
+Browns
+browns
+brown-sailed
+Brownsboro
+Brownsburg
+Brownsdale
+brownshirt
+brown-skinned
+brown-sleeve
+Brownson
+brown-spotted
+brown-state
+brown-stemmed
+brownstone
+brownstones
+Brownstown
+brown-strained
+Brownsville
+browntail
+brown-tailed
+Brownton
+browntop
+Browntown
+Brownville
+brown-washed
+brownweed
+Brownwood
+brownwort
+browny
+browpiece
+browpost
+brows
+browsability
+browsage
+browse
+browsed
+browser
+browsers
+browses
+browsick
+browsing
+browst
+brow-wreathed
+browzer
+Broxton
+Broz
+Brozak
+brr
+brrr
+BRS
+BRT
+bruang
+Bruant
+Brubaker
+Brubeck
+brubru
+brubu
+Bruce
+bruce
+Brucella
+brucella
+brucellae
+brucellas
+brucellosis
+Bruceton
+Brucetown
+Bruceville
+Bruch
+bruchid
+Bruchidae
+Bruchus
+bruchus
+brucia
+Brucie
+brucin
+brucina
+brucine
+brucines
+brucins
+brucite
+bruckle
+bruckled
+bruckleness
+Bruckner
+Bructeri
+Bruegel
+Brueghel
+Bruell
+bruet
+Brufsky
+Bruges
+bruges
+Brugge
+brugh
+brughs
+brugnatellite
+Bruhn
+Bruin
+bruin
+Bruington
+bruins
+Bruis
+bruise
+bruised
+bruiser
+bruisers
+bruises
+bruisewort
+bruising
+bruisingly
+bruit
+bruited
+bruiter
+bruiters
+bruiting
+bruits
+bruja
+brujas
+brujeria
+brujo
+brujos
+bruke
+Brule
+brule
+brulee
+brules
+brulot
+brulots
+brulyie
+brulyiement
+brulyies
+brulzie
+brulzies
+brum
+Brumaire
+brumaire
+brumal
+Brumalia
+brumbee
+brumbie
+brumbies
+brumby
+brume
+brumes
+Brumidi
+Brumley
+Brummagem
+brummagem
+brummagen
+Brummell
+brummer
+Brummie
+brummy
+brumous
+brumstane
+brumstone
+Brunanburh
+brunch
+brunched
+brunches
+brunching
+brunch-word
+Brundidge
+Brundisium
+brune
+Bruneau
+Brunei
+Brunel
+brunel
+Brunell
+Brunella
+Brunelle
+Brunelleschi
+Brunellesco
+Brunellia
+Brunelliaceae
+brunelliaceous
+Bruner
+brunet
+Brunetiere
+brunetness
+brunets
+brunette
+brunetteness
+brunettes
+Brunfelsia
+Brunhild
+brunhild
+Brunhilda
+Brunhilde
+Bruni
+Bruning
+brunion
+brunissure
+Brunistic
+brunizem
+brunizems
+Brunk
+Brunn
+brunneous
+Brunner
+Brunnhilde
+Brunnichia
+Bruno
+Brunonia
+Brunoniaceae
+Brunonian
+brunonian
+Brunonism
+Bruns
+Brunson
+Brunsville
+Brunswick
+brunswick
+brunt
+brunts
+Brusa
+bruscha
+bruscus
+Brusett
+Brush
+brush
+brushability
+brushable
+brushback
+brushball
+brushbird
+brush-breaking
+brushbush
+brushcut
+brushed
+brusher
+brusher-off
+brushers
+brusher-up
+brushes
+brushet
+brush-fire
+brushfire
+brushfires
+brush-footed
+brushful
+brushier
+brushiest
+brushiness
+brushing
+brushite
+brushland
+brushless
+brushlessness
+brushlet
+brushlike
+brushmaker
+brushmaking
+brushman
+brushmen
+brush-off
+brushoff
+brushoffs
+brushpopper
+brushproof
+brush-shaped
+brush-tail
+brush-tailed
+Brushton
+brush-tongued
+brush-treat
+brushup
+brushups
+brushwood
+brushwork
+brushy
+brusk
+brusker
+bruskest
+bruskly
+bruskness
+Brusly
+brusque
+brusquely
+brusqueness
+brusquer
+brusquerie
+brusquest
+Brussel
+brussel
+Brussels
+brussels
+brustle
+brustled
+brustling
+brusure
+Brut
+brut
+Bruta
+brutage
+brutal
+brutalisation
+brutalise
+brutalised
+brutalising
+brutalism
+brutalist
+brutalitarian
+brutalitarianism
+brutalities
+brutality
+brutalization
+brutalize
+brutalized
+brutalizes
+brutalizing
+brutally
+brutalness
+brute
+bruted
+brutedom
+brutelike
+brutely
+bruteness
+brutes
+brutification
+brutified
+brutifies
+brutify
+brutifying
+bruting
+brutish
+brutishly
+brutishness
+brutism
+brutisms
+brutter
+Brutus
+brutus
+Bruxelles
+bruxism
+bruxisms
+bruyere
+Bruyeres
+Bruyn
+bruzz
+bry-
+Bryaceae
+bryaceous
+Bryales
+Bryan
+bryan
+Bryana
+Bryanism
+Bryanite
+Bryansk
+Bryant
+Bryanthus
+Bryantown
+Bryantsville
+Bryantville
+Bryanty
+Bryce
+Bryceland
+Bryceville
+Bryn
+Bryna
+Brynathyn
+bryndza
+Bryner
+Brynhild
+brynhild
+Brynmawr
+Brynn
+Brynna
+Brynne
+Brynza
+brynza
+bryogenin
+bryological
+bryologies
+bryologist
+bryology
+Bryon
+bryon
+Bryonia
+bryonia
+bryonidin
+bryonies
+bryonin
+bryony
+Bryophyllum
+Bryophyta
+bryophyta
+bryophyte
+bryophytes
+bryophytic
+Bryozoa
+bryozoa
+bryozoan
+bryozoans
+bryozoon
+bryozoum
+brys-
+Bryson
+Brython
+brython
+Brythonic
+brythonic
+Bryum
+Brzegiem
+B.S.
+B/S
+BS
+b.s.
+b/s
+bs
+BSA
+BSAA
+BSAdv
+BSAE
+BSAeE
+BSAgE
+BSAgr
+BSArch
+BSArchE
+BSArchEng
+BSBA
+BSBH
+BSBus
+BSBusMgt
+B.Sc.
+BSC
+BSc
+BSCE
+BSCh
+BSChE
+BSchMusic
+BSCM
+BSCom
+B-scope
+BSCP
+BSD
+BSDes
+BSDHyg
+BSE
+BSEc
+BSEd
+BSEE
+BSEEngr
+BSElE
+BSEM
+BSEng
+BSEP
+BSES
+BSF
+bsf
+BSFM
+BSFMgt
+BSFS
+BSFT
+BSGE
+BSGeNEd
+BSGeolE
+BSGMgt
+BSGph
+bsh
+BSHA
+B-shaped
+BSHE
+BSHEc
+BSHEd
+BSHyg
+BSI
+BSIE
+BSIndEd
+BSIndEngr
+BSIndMgt
+BSIR
+BSIT
+BSJ
+bskt
+BSL
+Bs/L
+BSLabRel
+BSLArch
+BSLM
+BSLS
+BSM
+BSME
+BSMedTech
+BSMet
+BSMetE
+BSMin
+BSMT
+BSMTP
+BSMusEd
+BSN
+BSNA
+BSO
+BSOC
+BSOrNHort
+BSOT
+BSP
+BSPA
+BSPE
+BSPH
+BSPhar
+BSPharm
+BSPHN
+BSPhTh
+BSPT
+BSRec
+BSRet
+BSRFS
+BSRT
+B.S.S.
+BSS
+BSSA
+BSSc
+BSSE
+BSSS
+BST
+BSTIE
+BSTJ
+BSTrans
+BSW
+BT
+Bt
+Bt.
+bt
+BTAM
+BTCh
+BTE
+BTh
+BTHU
+BThU
+btise
+BTL
+btl
+btl.
+BTN
+BTO
+BTOL
+btry
+btry.
+BTS
+B.T.U.
+BTU
+Btu
+btu
+BTW
+B-type
+BU
+Bu
+bu
+bu.
+BuAer
+bual
+buat
+Buatti
+buaze
+Bub
+bub
+buba
+bubal
+bubale
+bubales
+bubaline
+Bubalis
+bubalis
+bubalises
+Bubalo
+bubals
+bubas
+Bubastid
+Bubastite
+Bubb
+Bubba
+bubba
+bubber
+bubbies
+bubble
+bubble-and-squeak
+bubble-bow
+bubblebow
+bubbled
+bubbleless
+bubblelike
+bubblement
+bubbler
+bubblers
+bubbles
+bubbletop
+bubbletops
+bubblier
+bubblies
+bubbliest
+bubbliness
+bubbling
+bubblingly
+bubblish
+bubbly
+bubbly-jock
+bubby
+bubbybush
+Bube
+Buber
+bubinga
+bubingas
+Bubo
+bubo
+buboed
+buboes
+Bubona
+bubonalgia
+bubonic
+Bubonidae
+bubonocele
+bubonoceze
+bubos
+bubs
+bubukle
+Bucaramanga
+bucare
+bucayo
+bucca
+buccal
+buccally
+buccan
+buccaned
+buccaneer
+buccaneering
+buccaneerish
+buccaneers
+buccaning
+buccanned
+buccanning
+buccaro
+buccate
+Buccellarius
+bucchero
+buccheros
+buccin
+buccina
+buccinae
+buccinal
+buccinator
+buccinatory
+Buccinidae
+bucciniform
+buccinoid
+Buccinum
+buccinum
+Bucco
+buccobranchial
+buccocervical
+buccogingival
+buccolabial
+buccolingual
+bucconasal
+Bucconidae
+Bucconinae
+buccopharyngeal
+buccula
+bucculae
+Bucculatrix
+Bucelas
+Bucella
+bucellas
+bucentaur
+bucentur
+Bucephala
+Bucephalus
+bucephalus
+Buceros
+Bucerotes
+Bucerotidae
+Bucerotinae
+Buch
+Buchalter
+Buchan
+Buchanan
+buchanan
+Buchanite
+Bucharest
+bucharest
+Buchbinder
+Buchenwald
+Bucher
+Buchheim
+buchite
+Buchloe
+Buchman
+Buchmanism
+Buchmanite
+Buchner
+Buchnera
+buchnerite
+buchonite
+Buchtel
+buchu
+Buchwald
+Buck
+buck
+buck-and-wing
+buckaroo
+buckaroos
+buckass
+Buckatunna
+buckayro
+buckayros
+buck-bean
+buckbean
+buckbeans
+buckberry
+buckboard
+buckboards
+buckbrush
+buckbush
+Buckden
+bucked
+buckeen
+buckeens
+Buckels
+bucker
+buckeroo
+buckeroos
+buckers
+bucker-up
+bucket
+bucketed
+bucketeer
+bucketer
+bucket-eyed
+bucketful
+bucketfull
+bucketfuls
+bucketing
+bucketmaker
+bucketmaking
+bucketman
+buckets
+bucketsful
+bucket-shaped
+bucket-shop
+bucketshop
+buckety
+buck-eye
+buckeye
+buck-eyed
+buckeyed
+buckeyes
+Buckeystown
+Buckfield
+Buckhannon
+Buckhead
+Buckholts
+buck-horn
+buckhorn
+buck-hound
+buckhound
+buckhounds
+Buckie
+buckie
+bucking
+Buckingham
+Buckinghamshire
+buckish
+buckishly
+buckishness
+buckism
+buck-jump
+buckjump
+buckjumper
+Buckland
+buckland
+bucklandite
+Buckle
+buckle
+buckle-beggar
+buckled
+buckleless
+Buckler
+buckler
+bucklered
+buckler-fern
+buckler-headed
+bucklering
+bucklers
+buckler-shaped
+buckles
+Buckley
+Buckleya
+Bucklin
+buckling
+bucklum
+Buckman
+buck-mast
+Bucknell
+Buckner
+bucko
+buckoes
+buck-one
+buckone
+buck-passing
+buckplate
+buckpot
+buckra
+buckram
+buckramed
+buckraming
+buckrams
+buckras
+Bucks
+bucks
+bucksaw
+bucksaws
+bucks-beard
+buckshee
+buckshees
+buck's-horn
+buck-shot
+buckshot
+buckshots
+buckskin
+buckskinned
+buckskins
+Bucksport
+buck-stall
+buckstall
+buckstay
+buckstone
+bucktail
+bucktails
+buckteeth
+buckthorn
+buck-tooth
+bucktooth
+buck-toothed
+bucktoothed
+bucktooths
+bucku
+buckwagon
+buckwash
+buckwasher
+buck-washing
+buckwashing
+buckwheat
+buckwheater
+buckwheatlike
+buckwheats
+Bucky
+bucky
+Bucoda
+bucoliast
+bucolic
+bucolical
+bucolically
+bucolicism
+Bucolics
+bucolics
+Bucolion
+Bucorvinae
+Bucorvus
+Bucovina
+bucrane
+bucrania
+bucranium
+bucrnia
+Bucure
+Bucuresti
+Bucyrus
+Bud
+bud
+Buda
+buda
+Budapest
+budapest
+budbreak
+Budd
+buddage
+buddah
+Budde
+budded
+Buddenbrooks
+budder
+budders
+Buddh
+Buddha
+buddha
+Buddha-field
+Buddhahood
+buddhahood
+Buddhaship
+buddhi
+Buddhic
+Buddhism
+buddhism
+Buddhist
+buddhist
+Buddhistic
+Buddhistical
+Buddhistically
+buddhists
+Buddhological
+Buddhology
+Buddie
+buddie
+buddied
+buddies
+Budding
+budding
+buddings
+buddle
+buddled
+Buddleia
+buddleia
+buddleias
+buddleman
+buddler
+buddles
+buddling
+Buddy
+buddy
+buddy-boy
+buddy-buddy
+buddying
+Bude
+bude
+Budennovsk
+Budenny
+Buderus
+Budge
+budge
+budge-barrel
+budged
+budger
+budgeree
+budgereegah
+budgerigah
+budgerigar
+budgerigars
+budgero
+budgerow
+budgers
+budgerygah
+budges
+Budget
+budget
+budgetary
+budgeted
+budgeteer
+budgeter
+budgeters
+budgetful
+budgeting
+budgets
+budgie
+budgies
+budging
+budgy
+Budh
+budless
+budlet
+budlike
+budling
+budmash
+Budorcas
+buds
+budtime
+Budukha
+Buduma
+Budweis
+Budweiser
+Budwig
+budwood
+budworm
+budworms
+Budworth
+budzart
+budzat
+Bueche
+Buehler
+Buehrer
+Buell
+Buellton
+Buena
+buenas
+Buenaventura
+Bueno
+bueno
+Buenos
+buenos
+Buerger
+Bueschel
+Buettneria
+Buettneriaceae
+Bueyeros
+BUF
+bufagin
+Buff
+buff
+buffa
+buffability
+buffable
+Buffalo
+buffalo
+buffaloback
+buffaloed
+buffaloes
+buffalofish
+buffalofishes
+buffalo-headed
+buffaloing
+buffalos
+buff-backed
+buffball
+buffbar
+buff-bare
+buff-breasted
+buff-citrine
+buffcoat
+buff-colored
+buffe
+buffed
+buffer
+buffered
+Bufferin
+buffering
+bufferrer
+bufferrers
+buffers
+Buffet
+buffet
+buffeted
+buffeter
+buffeters
+buffeting
+buffetings
+buffets
+buffi
+buffier
+buffiest
+buffin
+buffing
+buffle
+bufflehead
+buffle-headed
+buffleheaded
+bufflehorn
+Buffo
+buffo
+Buffon
+buffone
+buffont
+buffoon
+buffooneries
+buffoonery
+buffoonesque
+buffoonish
+buffoonishness
+buffoonism
+buffoons
+buff-orange
+buffos
+buffs
+buff-tipped
+Buffum
+buffware
+buff-washed
+Buffy
+buffy
+buff-yellow
+bufidin
+bufo
+bufonid
+Bufonidae
+bufonite
+Buford
+bufotalin
+bufotenin
+bufotenine
+bufotoxin
+Bug
+bug
+bugaboo
+bugaboos
+bugala
+bugan
+Buganda
+bugara
+Bugas
+Bugayev
+bugbane
+bugbanes
+bugbear
+bugbeardom
+bugbearish
+bugbears
+Bugbee
+bugbite
+bugdom
+bugeye
+bug-eyed
+bugeyed
+bug-eyes
+bugeyes
+bugfish
+buggane
+bugged
+bugger
+buggered
+buggeries
+buggering
+buggers
+buggery
+buggess
+buggier
+buggies
+buggiest
+bugginess
+bugging
+buggy
+buggyman
+buggymen
+bughead
+bughouse
+bughouses
+bught
+Bugi
+Buginese
+Buginvillaea
+bug-juice
+bugle
+bugled
+bugle-horn
+bugler
+buglers
+bugles
+buglet
+bugle-weed
+bugleweed
+buglewort
+bugling
+bugloss
+buglosses
+bugologist
+bugology
+bugong
+bugout
+bugproof
+bugre
+bugs
+bugseed
+bugseeds
+bugsha
+bugshas
+bugweed
+bug-word
+bugwort
+Buhl
+buhl
+buhlbuhl
+Buhler
+buhls
+buhlwork
+buhlworks
+buhr
+buhrmill
+buhrs
+buhrstone
+Bui
+Buia
+buibui
+Buick
+buick
+buicks
+build
+buildable
+builded
+builder
+builders
+building
+buildingless
+buildings
+buildress
+builds
+build-up
+buildup
+buildups
+built
+built-in
+builtin
+built-up
+Buine
+buirdly
+Buiron
+Buisson
+buisson
+buist
+Buitenzorg
+Bujumbura
+Buka
+Bukat
+Bukavu
+Buke
+Bukeyef
+bukh
+Bukhara
+Bukharin
+Bukidnon
+Bukittinggi
+bukk-
+Bukovina
+bukshee
+bukshi
+Bukum
+Bul
+bul
+bul.
+Bula
+Bulacan
+bulak
+Bulan
+Bulanda
+Bulawayo
+bulb
+bulbaceous
+bulbar
+bulbed
+bulbel
+bulbels
+bulbier
+bulbiest
+bulbiferous
+bulbiform
+bulbil
+Bulbilis
+bulbilla
+bulbils
+bulbine
+bulbless
+bulblet
+bulblets
+bulblike
+bulbo-
+bulbocapnin
+bulbocapnine
+bulbocavernosus
+bulbocavernous
+Bulbochaete
+Bulbocodium
+bulbomedullary
+bulbomembranous
+bulbonuclear
+Bulbophyllum
+bulborectal
+bulbose
+bulbospinal
+bulbotuber
+bulbo-urethral
+bulbourethral
+bulbous
+bulbously
+bulbous-rooted
+bulbs
+bulb-tee
+bulbul
+bulbule
+bulbuls
+bulbus
+bulby
+bulchin
+bulder
+Bulfinch
+Bulg
+Bulg.
+Bulganin
+Bulgar
+bulgar
+Bulgari
+Bulgaria
+bulgaria
+Bulgarian
+bulgarian
+bulgarians
+Bulgaric
+Bulgarophil
+Bulge
+bulge
+bulged
+Bulger
+bulger
+bulgers
+bulges
+bulgier
+bulgiest
+bulginess
+bulging
+bulgingly
+bulgur
+bulgurs
+bulgy
+bulies
+bulimia
+bulimiac
+bulimias
+bulimic
+bulimiform
+bulimoid
+Bulimulidae
+Bulimus
+bulimus
+bulimy
+bulk
+bulkage
+bulkages
+bulked
+bulker
+bulkhead
+bulkheaded
+bulkheading
+bulkheads
+bulkier
+bulkiest
+bulkily
+bulkin
+bulkiness
+bulking
+bulkish
+bulk-pile
+bulks
+bulky
+Bull
+bull
+bull-
+bull.
+bulla
+bullace
+bullaces
+bullae
+bullalaria
+bullamacow
+bullan
+Bullard
+bullaria
+bullaries
+bullarium
+bullary
+bullate
+bullated
+bullation
+bullback
+bull-bait
+bull-baiter
+bull-baiting
+bullbaiting
+bullbat
+bullbats
+bull-bearing
+bull-beggar
+bullbeggar
+bullberry
+bullbird
+bull-bitch
+bullboat
+bull-bragging
+bull-browed
+bullcart
+bullcomber
+bull-dog
+bulldog
+bulldogged
+bulldoggedness
+bulldogger
+bulldogging
+bulldoggish
+bulldoggishly
+bulldoggishness
+bulldoggy
+bulldogism
+bulldogs
+bull-dose
+bulldoze
+bulldozed
+bulldozer
+bulldozers
+bulldozes
+bulldozing
+bulldust
+bulled
+Bullen
+bullen-bullen
+Buller
+buller
+bullescene
+bullet
+bulleted
+bullet-head
+bullethead
+bulletheaded
+bulletheadedness
+bullet-hole
+bulletin
+bulletined
+bulleting
+bulletining
+bulletins
+bulletless
+bulletlike
+bulletmaker
+bulletmaking
+bulletproof
+bulletproofed
+bulletproofing
+bulletproofs
+bullets
+bulletwood
+bullety
+Bulley
+bull-faced
+bullfeast
+bullfice
+bull-fight
+bullfight
+bullfighter
+bullfighters
+bullfighting
+bullfights
+bullfinch
+bullfinches
+bullfist
+bullflower
+bullfoot
+bull-frog
+bullfrog
+bullfrogs
+bull-fronted
+bullgine
+bull-god
+bull-grip
+bullhead
+bull-headed
+bullheaded
+bullheadedly
+bullheadedness
+bullheads
+bullhide
+bullhoof
+bull-horn
+bullhorn
+bullhorns
+Bullialdus
+Bullidae
+bullied
+bullier
+bullies
+bulliest
+bulliform
+bullimong
+bulling
+Bullion
+bullion
+bullionism
+bullionist
+bullionless
+bullions
+Bullis
+bullish
+bullishly
+bullishness
+bullism
+bullit
+bullition
+Bullitt
+Bullivant
+bull-like
+bulllike
+bull-man
+bull-mastiff
+bull-mouthed
+bullneck
+bull-necked
+bullnecked
+bullnecks
+bullnose
+bull-nosed
+bullnoses
+bullnut
+Bullock
+bullock
+bullocker
+Bullockite
+bullockman
+bullocks
+bullock's-heart
+bullocky
+Bullom
+bullose
+Bullough
+bullous
+bullpates
+bullpen
+bullpens
+bullpoll
+bullpout
+bullpouts
+Bullpup
+bullpup
+bullragged
+bullragging
+bullring
+bullrings
+bull-roarer
+bullroarer
+bull-roaring
+bull-run
+bull-running
+bullrush
+bullrushes
+bulls
+bull's-eye
+bullseye
+bull's-eyed
+bull's-eyes
+bullshit
+bullshits
+bullshitted
+bullshitting
+Bullshoals
+bullshot
+bullshots
+bullskin
+bullsnake
+bullsticker
+bullsucker
+bullswool
+bull-terrier
+bullterrier
+bulltoad
+bull-tongue
+bull-tongued
+bull-tonguing
+bull-trout
+bullule
+Bullville
+bull-voiced
+bullweed
+bullweeds
+bull-whack
+bullwhack
+bullwhacker
+bull-whip
+bullwhip
+bullwhipped
+bullwhipping
+bullwhips
+bullwork
+bullwort
+Bully
+bully
+bullyable
+bullyboy
+bullyboys
+bullydom
+bullyhuff
+bullying
+bullyingly
+bullyism
+bully-off
+bullyrag
+bullyragged
+bullyragger
+bullyragging
+bullyrags
+bully-rock
+bullyrock
+bullyrook
+Bulmer
+bulnbuln
+Bulolo
+Bulow
+Bulpitt
+bulreedy
+bulrush
+bulrushes
+bulrushlike
+bulrushy
+bulse
+bult
+bultell
+bulten
+bulter
+bultey
+Bultman
+Bultmann
+bultong
+bultow
+bulwand
+bulwark
+bulwarked
+bulwarking
+bulwarks
+Bulwer
+Bulwer-Lytton
+Bum
+bum
+bum-
+bumaloe
+bumaree
+bumbailiff
+bumbailiffship
+bumbard
+bumbarge
+bumbass
+bumbaste
+bumbaze
+bumbee
+bumbelo
+bumbershoot
+bumble
+bumble-bee
+bumblebee
+bumblebeefish
+bumblebeefishes
+bumblebees
+bumbleberry
+bumblebomb
+bumbled
+Bumbledom
+bumbledom
+bumblefoot
+bumblekite
+bumble-puppy
+bumblepuppy
+bumbler
+bumblers
+bumbles
+bumbling
+bumblingly
+bumblingness
+bumblings
+bumbo
+bumboat
+bumboatman
+bumboatmen
+bumboats
+bumboatwoman
+bumclock
+Bumelia
+bumf
+bumfeg
+bumfs
+bumfuzzle
+Bumgardner
+bumicky
+bumkin
+bumkins
+bummack
+bummalo
+bummalos
+bummaree
+bummed
+bummel
+bummer
+bummerish
+bummers
+bummery
+bummest
+bummie
+bummil
+bumming
+bummle
+bummler
+bummock
+bump
+bumped
+bumpee
+bumper
+bumpered
+bumperette
+bumpering
+bumpers
+bumph
+bumphs
+bumpier
+bumpiest
+bumpily
+bumpiness
+bumping
+bumpingly
+bumping-off
+bumpity
+bumpkin
+bumpkinet
+bumpkinish
+bumpkinly
+bumpkins
+bump-off
+bumpoff
+bumpology
+bumps
+bump-start
+bumpsy
+bumptious
+bumptiously
+bumptiousness
+bumpy
+bums
+bumsucking
+bumtrap
+bumwood
+bun
+Buna
+buna
+Bunaea
+buncal
+Bunce
+bunce
+Bunceton
+Bunch
+bunch
+bunch-backed
+bunchbacked
+bunchberries
+bunchberry
+Bunche
+bunched
+buncher
+bunches
+bunchflower
+bunchier
+bunchiest
+bunchily
+bunchiness
+bunching
+bunch-word
+bunchy
+bunco
+buncoed
+buncoing
+Buncombe
+buncombe
+buncombes
+buncos
+Bund
+bund
+Bunda
+Bundaberg
+Bundahish
+Bunde
+Bundeli
+Bundelkhand
+Bunder
+bunder
+Bundesrat
+Bundesrath
+Bundestag
+bundh
+bundies
+Bundist
+bundist
+bundists
+bundle
+bundled
+bundler
+bundle-rooted
+bundlerooted
+bundlers
+bundles
+bundlet
+bundling
+bundlings
+bundobust
+bundoc
+bundocks
+bundook
+Bundoora
+bunds
+bundt
+bundts
+Bundu
+bundu
+bundweed
+Bundy
+bundy
+bunemost
+bung
+Bunga
+bungaloid
+bungalow
+bungalows
+bungarum
+Bungarus
+bunged
+bungee
+bunger
+bungerly
+bungey
+bungfu
+bung-full
+bungfull
+bunghole
+bungholes
+bunging
+bungle
+bungled
+bungler
+bunglers
+bungles
+bunglesome
+bungling
+bunglingly
+bunglings
+bungmaker
+bungo
+bungos
+bungs
+bungstarter
+bungtown
+bungwall
+bungy
+Bunia
+Bunin
+Buninahua
+bunion
+bunions
+bunjara
+bunji-bunji
+bunk
+bunked
+Bunker
+bunker
+bunkerage
+bunkered
+bunkering
+bunkerman
+bunkermen
+bunkers
+Bunkerville
+bunkery
+bunkhouse
+bunkhouses
+Bunkie
+bunkie
+bunking
+bunkload
+bunkmate
+bunkmates
+bunko
+bunkoed
+bunkoing
+bunkos
+bunks
+bunkum
+bunkums
+Bunky
+bunky
+Bunn
+bunn
+Bunnell
+bunnell
+Bunni
+bunnia
+Bunnie
+bunnies
+bunning
+Bunns
+bunns
+Bunny
+bunny
+bunnymouth
+bunodont
+Bunodonta
+Bunola
+bunolophodont
+Bunomastodontidae
+bunoselenodont
+Bunow
+bunraku
+bunrakus
+buns
+Bunsen
+bunsen
+bunsenite
+bunt
+buntal
+bunted
+Bunter
+bunter
+bunters
+buntine
+Bunting
+bunting
+buntings
+buntline
+buntlines
+bunton
+bunts
+bunty
+Bunuel
+bunuelo
+Bunus
+bunya
+bunya-bunya
+bunyah
+Bunyan
+bunyan
+Bunyanesque
+bunyas
+bunyip
+Bunyoro
+buonamani
+buonamano
+Buonaparte
+Buonarroti
+Buonomo
+Buononcini
+Buote
+buoy
+buoyage
+buoyages
+buoyance
+buoyances
+buoyancies
+buoyancy
+buoyant
+buoyantly
+buoyantness
+buoyed
+buoyed-up
+buoying
+buoys
+buoy-tender
+Buphaga
+Buphagus
+Buphonia
+buphthalmia
+buphthalmic
+buphthalmos
+Buphthalmum
+bupleurol
+Bupleurum
+buplever
+buprestid
+Buprestidae
+buprestidan
+Buprestis
+buprestis
+buqsha
+buqshas
+BUR
+Bur
+Bur.
+bur
+bura
+Burack
+Buran
+buran
+burans
+burao
+Buraq
+Buras
+buras
+Burayan
+Buraydah
+Burbage
+Burbank
+burbank
+burbankian
+Burbankism
+burbark
+Burberries
+Burberry
+burberry
+burble
+burbled
+burbler
+burblers
+burbles
+burblier
+burbliest
+burbling
+burbly
+burbolt
+burbot
+burbots
+burbs
+burbush
+Burch
+Burchard
+Burchett
+Burchfield
+Burck
+Burckhardt
+Burd
+burd
+burd-alone
+burdalone
+burdash
+Burdelle
+burden
+burdenable
+burdened
+burdener
+burdeners
+burdening
+burdenless
+burdenous
+burdens
+burdensome
+burdensomely
+burdensomeness
+Burdett
+Burdette
+Burdick
+burdie
+burdies
+Burdigalian
+Burdine
+burdock
+burdocks
+burdon
+burds
+Bure
+bure
+bureau
+bureaucracies
+bureaucracy
+bureaucrat
+bureaucratese
+bureaucratic
+bureaucratical
+bureaucratically
+bureaucratism
+bureaucratist
+bureaucratization
+bureaucratize
+bureaucratized
+bureaucratizes
+bureaucratizing
+bureaucrats
+bureaus
+bureaux
+burel
+burelage
+burele
+burelle
+burelly
+burely
+Buren
+buret
+burets
+burette
+burettes
+burez
+burfish
+Burford
+Burfordville
+Burg
+burg
+burga
+burgage
+burgages
+burgality
+burgall
+burgamot
+burganet
+Burgas
+burgau
+burgaudine
+Burgaw
+burg-bryce
+burge
+burgee
+burgees
+Burgener
+Burgenland
+burgensic
+burgeon
+burgeoned
+burgeoning
+burgeons
+Burger
+burger
+burgers
+Burgess
+burgess
+burgessdom
+burgesses
+burgess-ship
+Burget
+Burgettstown
+burggrave
+burgh
+burghal
+burghal-penny
+burghalpenny
+burghbote
+burghemot
+burgh-english
+burgher
+burgherage
+burgherdom
+burgheress
+burgherhood
+burgheristh
+burghermaster
+burghers
+burghership
+Burghley
+burghmaster
+burghmoot
+burghmote
+burghs
+Burgin
+burglar
+burglaries
+burglarious
+burglariously
+burglarise
+burglarised
+burglarising
+burglarize
+burglarized
+burglarizes
+burglarizing
+burglarproof
+burglarproofed
+burglarproofing
+burglarproofs
+burglars
+burglary
+burgle
+burgled
+burgles
+burgling
+burgomaster
+burgomasters
+burgomastership
+burgonet
+burgonets
+burgoo
+Burgoon
+burgoos
+Burgos
+burgout
+burgouts
+Burgoyne
+burgoyne
+burgrave
+burgraves
+burgraviate
+burgs
+burgul
+burgullian
+Burgundian
+burgundian
+Burgundies
+burgundies
+Burgundy
+burgundy
+burgus
+burgware
+Burgwell
+burgwere
+burh
+Burhans
+burhead
+burhel
+Burhinidae
+Burhinus
+burhmoot
+Buri
+buri
+buriable
+burial
+burial-ground
+burial-place
+burials
+burian
+Buriat
+buried
+buriels
+burier
+buriers
+buries
+burin
+burinist
+burins
+burion
+buriti
+Burk
+burk
+burka
+Burkburnett
+Burke
+burke
+burked
+burkei
+burker
+burkers
+burkes
+Burkesville
+Burket
+Burkett
+Burkettsville
+Burkeville
+burkha
+Burkhard
+Burkhardt
+Burkhart
+burking
+burkite
+burkites
+Burkitt
+Burkittsville
+Burkle
+Burkley
+burkundauze
+burkundaz
+Burkville
+Burl
+burl
+burlace
+burladero
+burlap
+burlaps
+burlecue
+burled
+Burleigh
+burler
+burlers
+burlesk
+burlesks
+Burleson
+burlesque
+burlesqued
+burlesquely
+burlesquer
+burlesques
+burlesquing
+burlet
+burletta
+Burley
+burley
+burleycue
+burleys
+Burlie
+burlier
+burlies
+burliest
+burlily
+burliness
+burling
+Burlingame
+Burlingham
+Burlington
+Burlison
+burls
+burly
+burly-boned
+burly-faced
+burly-headed
+Burma
+burma
+Burman
+Burmannia
+Burmanniaceae
+burmanniaceous
+Burmans
+Burmese
+burmese
+burmite
+Burmo-chinese
+Burn
+burn
+burn-
+Burna
+burnable
+Burnaby
+Burnard
+burn-beat
+burnbeat
+Burne
+burned
+burned-out
+burned-over
+Burne-Jones
+Burner
+burner
+burner-off
+burners
+Burnet
+burnet
+burnetize
+burnets
+Burnett
+burnettize
+burnettized
+burnettizing
+Burnettsville
+burnewin
+Burney
+Burneyville
+burnfire
+Burnham
+Burnie
+burnie
+burniebee
+burnies
+Burnight
+burning
+burning-bush
+burning-glass
+burningly
+burnings
+burning-wood
+Burnips
+burnish
+burnishable
+burnished
+burnished-gold
+burnisher
+burnishers
+burnishes
+burnishing
+burnishment
+Burnley
+burn-nose
+burnoose
+burnoosed
+burnooses
+burnous
+burnoused
+burnouses
+burnout
+burnouts
+burnover
+Burns
+burns
+Burnsed
+Burnsian
+Burnside
+burnside
+burnsides
+Burnsville
+burnt
+burnt-child
+Burntcorn
+burn-the-wind
+burntly
+burntness
+burnt-out
+burnt-umber
+burnt-up
+burntweed
+burn-up
+burnup
+burnut
+burnweed
+Burnwell
+burnwood
+Burny
+burny
+buro
+Buroker
+buroo
+BURP
+burp
+burped
+burping
+burps
+Burr
+burr
+Burra
+burrah
+burras-pipe
+burratine
+burrawang
+burrbark
+burred
+burree
+bur-reed
+burrel
+burrel-fly
+Burrell
+burrel-shot
+burrer
+burrers
+burrfish
+burrfishes
+burrgrailer
+burrhead
+burrheaded
+burrheadedness
+burrhel
+burrier
+burriest
+Burrill
+burring
+burrio
+Burris
+burrish
+burrito
+burritos
+burrknot
+burro
+burro-back
+burrobrush
+burrock
+burros
+Burroughs
+burroughs
+Burrow
+burrow
+burrow-duck
+burrowed
+burroweed
+burrower
+burrowers
+burrowing
+Burrows
+burrows
+burrows-town
+burrowstown
+burr-pump
+burrs
+burr-stone
+burrstone
+Burrton
+Burrus
+burry
+burs
+Bursa
+bursa
+bursae
+bursal
+bursar
+bursarial
+bursaries
+bursars
+bursarship
+bursary
+bursas
+bursate
+bursati
+bursattee
+bursautee
+bursch
+Burschenschaft
+Burschenschaften
+burse
+bursectomy
+burseed
+burseeds
+Bursera
+bursera
+Burseraceae
+Burseraceous
+burseraceous
+burses
+bursicle
+bursiculate
+bursiform
+bursitis
+bursitises
+bursitos
+Burson
+burst
+burst-cow
+bursted
+burster
+bursters
+burstiness
+bursting
+burstone
+burstones
+bursts
+burstwort
+bursty
+bursula
+Burt
+burt
+Burta
+burthen
+burthened
+burthening
+burthenman
+burthens
+burthensome
+Burtie
+Burtis
+Burton
+burton
+burtonization
+burtonize
+burtons
+Burtonsville
+Burton-upon-Trent
+burtree
+Burtrum
+Burtt
+Burty
+burucha
+Burundi
+burundi
+burundians
+Burushaski
+Burut
+burweed
+burweeds
+Burwell
+Bury
+bury
+Buryat
+Buryats
+burying
+burying-ground
+burying-place
+burys
+BUS
+bus
+bus.
+Busaos
+busbar
+busbars
+busbies
+busboy
+busboys
+Busby
+busby
+buscarl
+buscarle
+Busch
+Buschi
+Busching
+Buseck
+bused
+busera
+buses
+Busey
+Bush
+bush
+bushbaby
+bushbashing
+bushbeater
+bushbeck
+bushbodies
+bushbody
+bushboy
+bushbuck
+bushbucks
+bushcraft
+bushed
+Bushel
+bushel
+bushelage
+bushelbasket
+busheled
+busheler
+bushelers
+bushelful
+bushelfuls
+busheling
+bushelled
+busheller
+bushelling
+bushelman
+bushelmen
+bushels
+bushelwoman
+busher
+bushers
+bushes
+bushet
+Bushey
+bush-fighter
+bushfighter
+bushfighting
+bushfire
+bushfires
+bushful
+bushgoat
+bushgoats
+bushgrass
+bush-grown
+bush-haired
+bush-hammer
+bushhammer
+bush-harrow
+bush-head
+bush-headed
+bushi
+Bushido
+bushido
+bushidos
+bushie
+bushier
+bushiest
+bushily
+bushiness
+bushing
+bushings
+Bushire
+Bushkill
+Bushland
+bushland
+bushlands
+bush-league
+bushless
+bushlet
+bushlike
+bushmaker
+bushmaking
+Bushman
+bushman
+bushmanship
+bushmaster
+bushmasters
+bushmen
+bushment
+Bushnell
+Bushongo
+Bushore
+bushpig
+bush-ranger
+bushranger
+bushranging
+bush-rope
+bushrope
+bush-shrike
+bush-skirted
+bush-tailed
+bushtit
+bushtits
+Bushton
+Bushveld
+bushveld
+bushwa
+bushwack
+bushwah
+bushwahs
+bushwalking
+bushwas
+Bushweller
+bushwhack
+bushwhacked
+bushwhacker
+bushwhackers
+bushwhacking
+bushwhacks
+bushwife
+bushwoman
+Bushwood
+bushwood
+bushy
+bushy-bearded
+bushy-browed
+bushy-eared
+bushy-haired
+bushy-headed
+bushy-legged
+bushy-tailed
+bushy-whiskered
+bushy-wigged
+busied
+Busiek
+busier
+busies
+busiest
+busily
+busine
+business
+businesses
+businessese
+businesslike
+businesslikeness
+businessman
+businessmen
+businesswoman
+businesswomen
+busing
+busings
+Busiris
+busk
+busked
+busker
+buskers
+busket
+buskin
+buskined
+busking
+buskins
+Buskirk
+buskle
+busks
+Buskus
+busky
+busload
+busman
+busmen
+Busoni
+Busra
+Busrah
+buss
+bussed
+busser
+busser-in
+busses
+Bussey
+bussing
+bussings
+bussock
+bussu
+Bussy
+bussy
+Bust
+bust
+bustard
+bustards
+busted
+bustee
+Buster
+buster
+busters
+busthead
+busti
+bustian
+bustic
+busticate
+bustics
+bustier
+bustiers
+bustiest
+busting
+bustle
+bustled
+bustler
+bustlers
+bustles
+bustling
+bustlingly
+busto
+busts
+bust-up
+busty
+busulfan
+busulfans
+busuuti
+busway
+busy
+busybodied
+busybodies
+busybody
+busybodyish
+busybodyism
+busybodyness
+busy-brained
+Busycon
+busy-fingered
+busyhead
+busy-headed
+busy-idle
+busying
+busyish
+busyness
+busynesses
+busy-tongued
+busywork
+busyworks
+BUT
+but
+but-
+butacaine
+butadiene
+butadiyne
+butanal
+but-and-ben
+butane
+butanes
+butanoic
+butanol
+butanolid
+butanolide
+butanols
+butanone
+butanones
+butat
+Butazolidin
+Butch
+butch
+butcha
+Butcher
+butcher
+butcher-bird
+butcherbird
+butcherbroom
+butcherdom
+butchered
+butcherer
+butcheress
+butcheries
+butchering
+butcherless
+butcherliness
+butcherly
+butcherous
+butcher-row
+butchers
+butcher's-broom
+butchery
+butches
+Bute
+Butea
+butein
+Butenandt
+but-end
+butene
+butenes
+butenyl
+Buteo
+buteo
+buteonine
+buteos
+Butes
+Buteshire
+butic
+butin
+butine
+butle
+butled
+Butler
+butler
+butlerage
+butlerdom
+butleress
+butleries
+butlerism
+butlerlike
+butlers
+butlership
+Butlerville
+butlery
+butles
+butling
+butment
+Butner
+butolism
+Butomaceae
+butomaceous
+Butomus
+butoxy
+butoxyl
+buts
+buts-and-bens
+Butsu
+butsudan
+Butt
+butt
+Butta
+buttal
+buttals
+Buttaro
+Butte
+butte
+butted
+butter
+butteraceous
+butter-and-eggs
+butterback
+butterball
+butterbill
+butter-billed
+butterbird
+butterboat-bill
+butterboat-billed
+butterbough
+butter-box
+butterbox
+butter-bump
+butterbump
+butterbur
+butterburr
+butterbush
+butter-colored
+buttercup
+buttercups
+butter-cutting
+buttered
+butterer
+butterers
+butterfat
+butterfats
+Butterfield
+butter-fingered
+butterfingered
+butterfingers
+butterfish
+butterfishes
+butterflied
+butterflies
+butterflower
+butterfly
+butterflyer
+butterflyfish
+butterflyfishes
+butterfly-flower
+butterflying
+butterflylike
+butterfly-pea
+butterhead
+butterier
+butteries
+butteriest
+butterine
+butteriness
+buttering
+butteris
+butterjags
+butterless
+butterlike
+buttermaker
+buttermaking
+butterman
+Buttermere
+buttermilk
+buttermonger
+buttermouth
+butter-mouthed
+butternose
+butter-nut
+butternut
+butternuts
+butterpaste
+butter-print
+butter-rigged
+butterroot
+butter-rose
+Butters
+butters
+butterscotch
+butterscotches
+butter-smooth
+butter-toothed
+butterweed
+butterwife
+butterwoman
+butterworker
+butterwort
+Butterworth
+butterwright
+buttery
+butteryfingered
+buttes
+buttgenbachite
+butt-headed
+butties
+butt-in
+butting
+butting-in
+butting-joint
+buttinski
+buttinskies
+buttinsky
+buttle
+buttled
+buttling
+buttock
+buttocked
+buttocker
+buttocks
+Button
+button
+buttonball
+buttonbur
+buttonbush
+button-covering
+button-down
+button-eared
+buttoned
+buttoner
+buttoners
+buttoner-up
+button-fastening
+button-headed
+button-hold
+buttonhold
+button-holder
+buttonholder
+button-hole
+buttonhole
+buttonholed
+buttonholer
+buttonholes
+buttonholing
+buttonhook
+buttoning
+buttonless
+buttonlike
+buttonmold
+buttonmould
+buttons
+button-sewing
+button-shaped
+button-slitting
+button-tufting
+buttonweed
+Buttonwillow
+buttonwood
+buttony
+buttress
+buttressed
+buttresses
+buttressing
+buttressless
+buttresslike
+Buttrick
+butts
+butt-stock
+buttstock
+buttstrap
+buttstrapped
+buttstrapping
+buttwoman
+buttwomen
+buttwood
+butty
+buttyman
+Buttzville
+Butung
+butut
+bututs
+Butyl
+butyl
+butylamine
+butylate
+butylated
+butylates
+butylating
+butylation
+butyl-chloral
+butylene
+butylenes
+butylic
+butyls
+Butyn
+butyne
+butyr
+butyr-
+butyraceous
+butyral
+butyraldehyde
+butyrals
+butyrate
+butyrates
+butyric
+butyrically
+butyrin
+butyrinase
+butyrins
+butyro-
+butyrochloral
+butyrolactone
+butyrometer
+butyrometric
+butyrone
+butyrous
+butyrousness
+butyryl
+butyryls
+Butzbach
+buvette
+Buxaceae
+buxaceous
+Buxbaumia
+Buxbaumiaceae
+buxeous
+buxerries
+buxerry
+buxine
+buxom
+buxomer
+buxomest
+buxomly
+buxomness
+Buxtehude
+Buxton
+Buxus
+buy
+buyable
+buyback
+buybacks
+Buyer
+buyer
+Buyers
+buyers
+Buyides
+buying
+buyout
+buyouts
+buys
+Buyse
+buz
+buzane
+buzuki
+buzukia
+buzukis
+buzylene
+Buzz
+buzz
+Buzzard
+buzzard
+buzzardlike
+buzzardly
+buzzards
+buzzbomb
+buzzed
+Buzzell
+buzzer
+buzzerphone
+buzzers
+buzzes
+buzzgloak
+buzzier
+buzzies
+buzziest
+buzzing
+buzzingly
+buzzle
+buzzsaw
+buzzwig
+buzzwigs
+buzzword
+buzzwords
+buzzy
+B.V.
+BV
+bv
+BVA
+BVC
+BVD
+BVDs
+BVE
+B.V.M.
+BVM
+bvt
+BVY
+B/W
+BW
+bwana
+bwanas
+BWC
+BWG
+BWI
+BWM
+BWR
+BWT
+BWTS
+BWV
+BX
+bx
+bx.
+bxs
+-by
+by
+by-
+by-alley
+by-altar
+Byam
+by-and-by
+by-and-large
+byard
+Byars
+Bybee
+by-bid
+by-bidder
+by-bidding
+Byblidaceae
+Byblis
+Byblos
+by-blow
+by-boat
+by-channel
+by-child
+by-chop
+by-cock
+bycoket
+by-common
+by-corner
+by-day
+by-dependency
+by-design
+Bydgoszcz
+by-doing
+by-doingby-drinking
+by-drinking
+by-dweller
+bye
+bye-blow
+bye-bye
+bye-byes
+byee
+bye-election
+by-effect
+byegaein
+byelaw
+byelaws
+by-election
+Byelgorod-Dnestrovski
+Byelorussia
+byelorussia
+Byelorussian
+byelorussian
+byelorussians
+Byelostok
+Byelovo
+bye-low
+byeman
+by-end
+byepath
+byerite
+byerlite
+Byers
+byes
+bye-stake
+byestreet
+Byesville
+bye-turn
+bye-water
+bye-wood
+byeworker
+byeworkman
+by-fellow
+by-fellowship
+Byfield
+by-form
+bygane
+byganging
+bygo
+bygoing
+by-gold
+bygone
+bygones
+Byhalia
+byhand
+by-hour
+by-interest
+by-issue
+by-job
+by-land
+byland
+bylander
+by-lane
+Bylas
+by-law
+bylaw
+bylawman
+bylaws
+by-lead
+Byler
+bylina
+by-line
+byline
+bylined
+byliner
+byliners
+bylines
+bylining
+byliny
+by-live
+by-matter
+by-motive
+by-name
+byname
+bynames
+bynedestin
+Byng
+Bynin
+bynin
+Bynum
+BYO
+by-office
+byon
+byordinar
+byordinary
+byous
+byously
+byp
+by-pass
+bypass
+by-passage
+by-passed
+bypassed
+by-passer
+bypasser
+bypasses
+by-passing
+bypassing
+by-past
+bypast
+by-path
+bypath
+by-paths
+bypaths
+by-place
+byplace
+by-play
+byplay
+byplays
+by-plot
+Bypro
+by-product
+byproduct
+byproducts
+by-purpose
+Byram
+Byran
+Byrann
+Byrd
+Byrdie
+Byrdstown
+byre
+by-reaction
+byre-man
+byreman
+byre-men
+byres
+by-respect
+by-result
+byrewards
+byrewoman
+Byrgius
+Byrl
+byrl
+byrlady
+byrlakin
+byrlaw
+byrlawman
+byrlawmen
+Byrle
+byrled
+byrling
+byrls
+Byrn
+Byrne
+Byrnedale
+Byrnes
+byrnie
+byrnies
+by-road
+byroad
+byroads
+Byrom
+Byromville
+Byron
+byron
+Byronesque
+Byronian
+Byroniana
+Byronic
+byronic
+Byronically
+Byronics
+Byronish
+Byronism
+Byronist
+Byronite
+Byronize
+by-room
+by-route
+Byrrh
+byrri
+byrrus
+Byrsonima
+byrthynsak
+bys
+Bysacki
+bysen
+by-sitter
+bysmalith
+by-speech
+by-spel
+byspell
+byss
+byssaceous
+byssal
+Bysshe
+byssi
+byssiferous
+byssin
+byssine
+Byssinosis
+byssinosis
+byssogenous
+byssoid
+byssolite
+byssus
+byssuses
+by-stake
+bystander
+bystanders
+by-street
+bystreet
+bystreets
+by-stroke
+by-talk
+bytalk
+bytalks
+byte
+by-term
+bytes
+byth
+by-the-bye
+by-the-way
+by-thing
+by-throw
+by-thrust
+by-time
+bytime
+Bytom
+by-tone
+bytownite
+bytownitite
+by-track
+by-trail
+by-turning
+BYU
+by-view
+by-walk
+bywalk
+bywalker
+by-walking
+bywalking
+byward
+by-wash
+by-water
+Bywaters
+by-way
+byway
+byways
+by-west
+by-wipe
+bywoner
+by-wood
+Bywoods
+by-word
+byword
+bywords
+by-work
+bywork
+byworks
+by-your-leave
+Byz
+Byz.
+byzant
+Byzantian
+byzantian
+Byzantine
+byzantine
+Byzantinesque
+Byzantinism
+Byzantinize
+Byzantium
+byzantium
+byzants
+Byzas
+Bz
+bz
+Bziers
+&c
+C
+C.
+c
+c.
+c/-
+C3
+C.A.
+C/A
+CA
+Ca
+ca
+ca'
+ca.
+CAA
+Caaba
+caaba
+caam
+caama
+caaming
+Caanthus
+caapeba
+caatinga
+CAB
+cab
+caba
+cabaa
+cabaan
+caback
+Cabaeus
+cabaho
+Cabal
+cabal
+cabala
+cabalas
+cabalassou
+cabaletta
+cabalic
+cabalism
+cabalisms
+cabalist
+cabalistic
+cabalistical
+cabalistically
+cabalists
+Caball
+caball
+caballed
+caballer
+caballeria
+caballero
+caballeros
+caballine
+caballing
+Caballo
+caballo
+caballos
+cabals
+caban
+cabana
+cabanas
+Cabanatuan
+cabane
+Cabanis
+cabaret
+cabaretier
+cabarets
+cabas
+cabasa
+cabasset
+cabassou
+Cabazon
+cabbage
+cabbaged
+cabbagehead
+cabbageheaded
+cabbageheadedness
+cabbagelike
+cabbages
+cabbagetown
+cabbage-tree
+cabbagewood
+cabbageworm
+cabbaging
+cabbagy
+cabbala
+cabbalah
+cabbalahs
+cabbalas
+cabbalism
+cabbalist
+cabbalistic
+cabbalistical
+cabbalistically
+cabbalize
+cabbed
+cabber
+cabbie
+cabbies
+cabbing
+cabble
+cabbled
+cabbler
+cabbling
+cabby
+cabda
+cabdriver
+cabdriving
+Cabe
+cabecera
+cabecudo
+Cabeiri
+cabeliau
+Cabell
+cabellerote
+caber
+Cabernet
+cabernet
+cabernets
+cabers
+Cabery
+cabestro
+cabestros
+Cabet
+cabezon
+cabezone
+cabezones
+cabezons
+cabful
+cabiai
+cabildo
+cabildos
+cabilliau
+Cabimas
+cabin
+cabin-class
+Cabinda
+cabined
+cabinet
+cabineted
+cabineting
+cabinetmake
+cabinet-maker
+cabinetmaker
+cabinetmakers
+cabinetmaking
+cabinetmakings
+cabinetry
+cabinets
+cabinetted
+cabinetwork
+cabinetworker
+cabinetworking
+cabinetworks
+cabining
+cabinlike
+Cabins
+cabins
+cabio
+Cabirean
+Cabiri
+Cabiria
+Cabirian
+Cabiric
+Cabiritic
+Cable
+cable
+cable-car
+cablecast
+cabled
+cablegram
+cablegrams
+cable-laid
+cablelaid
+cableless
+cablelike
+cableman
+cablemen
+cabler
+cables
+cablese
+cable-stitch
+cablet
+cablets
+cableway
+cableways
+cabling
+cablish
+cabman
+cabmen
+cabob
+cabobs
+caboceer
+caboche
+caboched
+cabochon
+cabochons
+cabocle
+caboclo
+caboclos
+Cabomba
+cabomba
+Cabombaceae
+cabombas
+caboodle
+caboodles
+cabook
+Cabool
+caboose
+cabooses
+Caborojo
+caboshed
+cabossed
+Cabot
+cabot
+cabotage
+cabotages
+cabotin
+cabotinage
+cabots
+cabouca
+Cabral
+cabre
+cabree
+Cabrera
+cabrerite
+cabresta
+cabrestas
+cabresto
+cabrestos
+cabret
+cabretta
+cabrettas
+cabreuva
+cabrie
+cabrilla
+cabrillas
+Cabrini
+cabriole
+cabrioles
+cabriolet
+cabriolets
+cabrit
+cabrito
+CABS
+cabs
+cabstand
+cabstands
+cabuja
+cabulla
+cabureiba
+caburn
+cabuya
+cabuyas
+CAC
+cac-
+Caca
+ca-ca
+caca
+cacaesthesia
+cacafuego
+cacafugo
+Cacajao
+Cacak
+Cacalia
+cacam
+Cacan
+Cacana
+cacanapa
+ca'canny
+cacanthrax
+cacao
+cacaos
+Cacara
+cacas
+Cacatua
+Cacatuidae
+Cacatuinae
+cacaxte
+Caccabis
+caccagogue
+caccia
+caccias
+cacciatora
+cacciatore
+Caccini
+Cacciocavallo
+cace
+cacei
+cacemphaton
+cacesthesia
+cacesthesis
+cachaca
+cachaemia
+cachaemic
+cachalot
+cachalote
+cachalots
+cachaza
+cache
+cache-cache
+cachectic
+cachectical
+cached
+cachemia
+cachemic
+cachepot
+cachepots
+caches
+cachespell
+cachet
+cacheted
+cachetic
+cacheting
+cachets
+cachexia
+cachexias
+cachexic
+cachexies
+cachexy
+cachibou
+cachila
+cachimailla
+cachina
+cachinate
+caching
+cachinnate
+cachinnated
+cachinnating
+cachinnation
+cachinnator
+cachinnatory
+cachoeira
+cacholong
+cachot
+cachou
+cachous
+cachrys
+cachua
+cachucha
+cachuchas
+cachucho
+cachunde
+caci
+Cacia
+Cacicus
+cacidrosis
+Cacie
+Cacilia
+Cacilie
+cacimbo
+cacimbos
+caciocavallo
+cacique
+caciques
+caciqueship
+caciquism
+cack
+Cacka
+cacked
+cackerel
+cack-handed
+cacking
+cackle
+cackled
+cackler
+cacklers
+cackles
+cackling
+cacks
+CACM
+caco-
+cacocholia
+cacochroia
+cacochylia
+cacochymia
+cacochymic
+cacochymical
+cacochymy
+cacocnemia
+cacodaemon
+cacodaemoniac
+cacodaemonial
+cacodaemonic
+cacodemon
+cacodemonia
+cacodemoniac
+cacodemonial
+cacodemonic
+cacodemonize
+cacodemonomania
+cacodontia
+cacodorous
+cacodoxian
+cacodoxical
+cacodoxy
+cacodyl
+cacodylate
+cacodylic
+cacodyls
+cacoeconomy
+cacoenthes
+cacoepist
+cacoepistic
+cacoepy
+cacoethes
+cacoethic
+cacogalactia
+cacogastric
+cacogenesis
+cacogenic
+cacogenics
+cacogeusia
+cacoglossia
+cacographer
+cacographic
+cacographical
+cacography
+cacolet
+cacolike
+cacological
+cacology
+cacomagician
+cacomelia
+cacomistle
+cacomixl
+cacomixle
+cacomixls
+cacomorphia
+cacomorphosis
+caconychia
+caconym
+caconymic
+cacoon
+cacopathy
+cacopharyngia
+cacophonia
+cacophonic
+cacophonical
+cacophonically
+cacophonies
+cacophonist
+cacophonists
+cacophonize
+cacophonous
+cacophonously
+cacophony
+cacophthalmia
+cacoplasia
+cacoplastic
+cacoproctia
+cacorhythmic
+cacorrhachis
+cacorrhinia
+cacosmia
+cacospermia
+cacosplanchnia
+cacostomia
+cacothansia
+cacothelin
+cacotheline
+cacothes
+cacothesis
+cacothymia
+cacotopia
+cacotrichia
+cacotrophia
+cacotrophic
+cacotrophy
+cacotype
+cacoxene
+cacoxenite
+caco-zeal
+cacozeal
+cacozealous
+cacozyme
+cacqueteuse
+cacqueteuses
+Cactaceae
+cactaceous
+cactal
+Cactales
+cacti
+cactiform
+cactoid
+Cactus
+cactus
+cactuses
+cactuslike
+cacumen
+cacuminal
+cacuminate
+cacumination
+cacuminous
+cacur
+Cacus
+CAD
+Cad
+cad
+Cadal
+cadalene
+cadamba
+cadaster
+cadasters
+cadastral
+cadastrally
+cadastration
+cadastre
+cadastres
+cadaver
+cadaveric
+cadaverin
+cadaverine
+cadaverize
+cadaverous
+cadaverously
+cadaverousness
+cadavers
+cadbait
+cadbit
+cadbote
+CADD
+Caddaric
+cadded
+caddesse
+caddice
+caddiced
+caddicefly
+caddices
+Caddie
+caddie
+caddied
+caddies
+caddiing
+cadding
+caddis
+caddised
+caddises
+caddisflies
+caddisfly
+caddish
+caddishly
+caddishness
+caddishnesses
+caddisworm
+caddle
+Caddo
+Caddoan
+caddow
+Caddric
+caddy
+caddying
+-cade
+Cade
+cade
+cadeau
+cadee
+Cadel
+Cadell
+cadelle
+cadelles
+Cadena
+Cadence
+cadence
+cadenced
+cadences
+cadencies
+cadencing
+cadency
+cadenette
+cadent
+cadential
+Cadenza
+cadenza
+cadenzas
+cader
+caderas
+cadere
+Cades
+cades
+cadesse
+Cadet
+cadet
+cadetcy
+cadets
+cadetship
+cadette
+cadettes
+cadew
+cadge
+cadged
+cadger
+cadgers
+cadges
+cadgily
+cadginess
+cadging
+cadgy
+cadi
+cadie
+cadilesker
+Cadillac
+cadillac
+cadillacs
+cadillo
+cadinene
+cadis
+cadish
+cadism
+cadiueio
+Cadiz
+cadjan
+cadlock
+Cadman
+Cadmann
+Cadmar
+Cadmarr
+Cadmean
+cadmean
+cadmia
+cadmic
+cadmide
+cadmiferous
+cadmium
+cadmiumize
+cadmiums
+Cadmopone
+Cadmus
+cadmus
+Cadogan
+Cadorna
+cados
+Cadott
+cadouk
+cadrans
+cadre
+cadres
+cads
+cadua
+caduac
+caduca
+caducary
+caducean
+caducecaducean
+caducecei
+caducei
+caduceus
+caduciaries
+caduciary
+caducibranch
+Caducibranchiata
+caducibranchiate
+caducicorn
+caducities
+caducity
+caducous
+caduke
+cadus
+CADV
+Cadwal
+Cadwallader
+cadweed
+Cadwell
+cadwell
+Cady
+cady
+cadying
+Cadyville
+Cadzand
+CAE
+cae-
+caeca
+caecal
+caecally
+caecectomy
+caecias
+caeciform
+Caecilia
+Caeciliae
+caecilian
+Caeciliidae
+caecitis
+caecity
+caecocolic
+caecostomy
+caecotomy
+caecum
+Caedmon
+Caedmonian
+Caedmonic
+Caeli
+Caelian
+caelometer
+Caelum
+caelum
+Caelus
+Caen
+caen-
+Caeneus
+Caenis
+Caenogaea
+Caenogaean
+caenogenesis
+caenogenetic
+caenogenetically
+Caenolestes
+caenostylic
+caenostyly
+Caenozoic
+caenozoic
+caen-stone
+caeoma
+caeomas
+caeremoniarius
+Caerleon
+Caernarfon
+Caernarvon
+Caernarvonshire
+Caerphilly
+Caesalpinia
+Caesalpiniaceae
+caesalpiniaceous
+Caesar
+caesar
+Caesaraugusta
+Caesardom
+Caesarea
+Caesarean
+caesarean
+Caesareanize
+caesareans
+Caesaria
+Caesarian
+caesarian
+Caesarism
+caesarism
+Caesarist
+caesarists
+Caesarize
+caesaropapacy
+caesaropapism
+caesaropapist
+caesaropopism
+Caesarotomy
+caesars
+Caesarship
+caesious
+caesium
+caesiums
+caespitose
+caespitosely
+caestus
+caestuses
+caesura
+caesurae
+caesural
+caesuras
+caesuric
+Caetano
+C.A.F.
+CAF
+caf
+cafard
+cafardise
+CAFE
+cafe
+cafeneh
+cafenet
+cafes
+cafe-society
+cafetal
+cafeteria
+cafeterias
+cafetiere
+cafetorium
+caff
+caffa
+caffeate
+caffeic
+caffein
+caffeina
+caffeine
+caffeines
+caffeinic
+caffeinism
+caffeins
+caffeism
+caffeol
+caffeone
+caffetannic
+caffetannin
+caffiaceous
+caffiso
+caffle
+caffled
+caffling
+caffoline
+caffoy
+caffre
+Caffrey
+cafh
+Cafiero
+cafila
+cafiz
+cafoy
+caftan
+caftaned
+caftans
+cafuso
+cag
+Cagayan
+cagayan
+cagayans
+Cage
+cage
+caged
+cageful
+cagefuls
+cageless
+cagelike
+cageling
+cagelings
+cageman
+cageot
+cager
+cager-on
+cagers
+cages
+cagester
+cagework
+cagey
+cageyness
+caggy
+cag-handed
+cagier
+cagiest
+cagily
+caginess
+caginesses
+caging
+cagit
+Cagle
+Cagliari
+Cagliostro
+cagmag
+Cagn
+Cagney
+cagot
+Cagoulard
+Cagoulards
+cagoule
+CAGR
+Caguas
+cagui
+cagy
+Cahan
+Cahenslyism
+cahier
+cahiers
+Cahill
+cahill
+Cahilly
+cahincic
+Cahita
+cahiz
+Cahn
+Cahnite
+Cahokia
+Cahone
+cahoot
+cahoots
+Cahors
+cahot
+cahow
+cahows
+Cahra
+Cahuapana
+Cahuilla
+cahuita
+cahuy
+CAI
+Cai
+cai
+Caia
+Caiaphas
+caiarara
+caic
+caickle
+Caicos
+caid
+caids
+cailcedra
+Cailean
+caille
+Cailleac
+cailleach
+cailliach
+Cailly
+caimacam
+caimakam
+caiman
+caimans
+caimitillo
+caimito
+Cain
+cain
+Cain-colored
+-caine
+Caine
+Caines
+Caingang
+Caingangs
+caingin
+Caingua
+ca'ing-whale
+Cainian
+Cainish
+Cainism
+Cainite
+Cainitic
+cainogenesis
+Cainozoic
+cainozoic
+cains
+Cainsville
+caiper-callie
+caique
+caiquejee
+caiques
+cair
+Cairba
+Caird
+caird
+cairds
+Cairene
+cairene
+Cairistiona
+cairn
+Cairnbrook
+cairned
+cairngorm
+cairngorum
+cairn-headed
+Cairns
+cairns
+cairny
+Cairo
+cairo
+CAIS
+caisse
+caisson
+caissoned
+caissons
+Caitanyas
+Caite
+Caithness
+caitif
+caitiff
+caitiffs
+caitifty
+Caitlin
+Caitrin
+Caius
+caixinha
+Cajan
+cajan
+cajang
+Cajanus
+cajaput
+cajaputs
+cajava
+cajeput
+cajeputol
+cajeputole
+cajeputs
+cajeta
+cajole
+cajoled
+cajolement
+cajolements
+cajoler
+cajoleries
+cajolers
+cajolery
+cajoles
+cajoling
+cajolingly
+cajon
+cajones
+cajou
+cajuela
+Cajun
+cajun
+cajuns
+cajuput
+cajuputene
+cajuputol
+cajuputs
+Cakavci
+Cakchikel
+cake
+cakebox
+cakebread
+caked
+cake-eater
+cakehouse
+cakemaker
+cakemaking
+cake-mixing
+caker
+cakes
+cakette
+cakewalk
+cakewalked
+cakewalker
+cakewalking
+cakewalks
+cakey
+cakier
+cakiest
+Cakile
+caking
+cakra
+cakravartin
+caky
+Cal
+Cal.
+cal
+cal.
+calaba
+Calabar
+calabar
+calabar-bean
+Calabari
+Calabasas
+calabash
+calabashes
+calabaza
+calabazilla
+calaber
+calaboose
+calabooses
+calabozo
+calabrasella
+Calabrese
+calabrese
+Calabresi
+Calabria
+Calabrian
+calabrian
+calabrians
+calabur
+calade
+Caladium
+caladium
+caladiums
+Calah
+calahan
+Calais
+calais
+calaite
+Calakmul
+calalu
+Calama
+Calamagrostis
+calamanco
+calamancoes
+calamancos
+calamander
+calamansi
+calamar
+calamari
+Calamariaceae
+calamariaceous
+Calamariales
+calamarian
+calamaries
+calamarioid
+calamarmar
+calamaroid
+calamars
+calamary
+calambac
+calambour
+calami
+calamiferious
+calamiferous
+calamiform
+calaminaris
+calaminary
+calamine
+calamined
+calamines
+calamining
+calamint
+Calamintha
+calamints
+calamistral
+calamistrate
+calamistrum
+calamite
+calamitean
+Calamites
+calamites
+calamities
+calamitoid
+calamitous
+calamitously
+calamitousness
+calamitousnesses
+calamity
+Calamodendron
+calamondin
+Calamopitys
+Calamospermae
+Calamostachys
+calamumi
+calamus
+Calan
+calander
+calando
+Calandra
+calandre
+Calandria
+calandria
+Calandridae
+Calandrinae
+Calandrinia
+calangay
+calanid
+calanque
+calantas
+Calantha
+Calanthe
+calanthe
+Calapan
+calapite
+calapitte
+Calappa
+Calappidae
+Calas
+calascione
+calash
+calashes
+calastic
+Calathea
+calathea
+calathi
+calathian
+calathidia
+calathidium
+calathiform
+calathisci
+calathiscus
+calathos
+calaththi
+calathus
+Calatrava
+calavance
+calaverite
+Calbert
+calbroben
+calc
+calc-
+calcaemia
+calcaire
+calcanea
+calcaneal
+calcanean
+calcanei
+calcaneoastragalar
+calcaneoastragaloid
+calcaneocuboid
+calcaneofibular
+calcaneonavicular
+calcaneoplantar
+calcaneoscaphoid
+calcaneotibial
+calcaneum
+calcaneus
+calcannea
+calcannei
+calc-aphanite
+calcar
+calcarate
+calcarated
+Calcarea
+calcareo-
+calcareoargillaceous
+calcareobituminous
+calcareocorneous
+calcareosiliceous
+calcareosulphurous
+calcareous
+calcareously
+calcareousness
+calcaria
+calcariferous
+calcariform
+calcarine
+calcarium
+calcars
+calcate
+calcavella
+calceate
+calced
+calcedon
+calcedony
+calceiform
+calcemia
+Calceolaria
+calceolaria
+calceolate
+calceolately
+calces
+calce-scence
+calceus
+Calchaqui
+Calchaquian
+Calchas
+calchas
+calche
+calci
+calci-
+calcic
+calciclase
+calcicole
+calcicolous
+calcicosis
+calciferol
+Calciferous
+calciferous
+calcific
+calcification
+calcifications
+calcified
+calcifies
+calciform
+calcifugal
+calcifuge
+calcifugous
+calcify
+calcifying
+calcigenous
+calcigerous
+calcimeter
+calcimine
+calcimined
+calciminer
+calcimines
+calcimining
+calcinable
+calcinate
+calcination
+calcinator
+calcinatory
+calcine
+calcined
+calciner
+calcines
+calcining
+calcinize
+calcino
+calcinosis
+calcio-
+calciobiotite
+calciocarnotite
+calcioferrite
+calcioscheelite
+calciovolborthite
+calcipexy
+calciphile
+calciphilia
+calciphilic
+calciphilous
+calciphobe
+calciphobic
+calciphobous
+calciphylactic
+calciphylactically
+calciphylaxis
+calciphyre
+calciprivic
+calcisponge
+Calcispongiae
+calcite
+calcites
+calcitestaceous
+calcitic
+calcitonin
+calcitrant
+calcitrate
+calcitration
+calcitreation
+calcium
+calciums
+calcivorous
+calco-
+calcographer
+calcographic
+calcography
+calcomp
+calcrete
+calc-sinter
+calcsinter
+calc-spar
+calcspar
+calcspars
+calc-tufa
+calctufa
+calctufas
+calc-tuff
+calctuff
+calctuffs
+calculabilities
+calculability
+calculable
+calculableness
+calculably
+Calculagraph
+calcular
+calculary
+calculate
+calculated
+calculatedly
+calculatedness
+calculates
+calculating
+calculatingly
+calculation
+calculational
+calculations
+calculative
+calculator
+calculators
+calculatory
+calculer
+calculi
+calculiform
+calculifrage
+calculist
+calculous
+calculus
+calculuses
+Calcutta
+calcutta
+Calcydon
+caldadaria
+caldaria
+caldarium
+Caldeira
+calden
+Calder
+Caldera
+caldera
+calderas
+Calderca
+calderium
+Calderon
+calderon
+CaldoraCaldwell
+caldron
+caldrons
+Caldwell
+Cale
+calean
+Caleb
+Calebite
+calebite
+calebites
+caleche
+caleches
+Caledonia
+Caledonian
+caledonian
+caledonite
+calef
+calefacient
+calefaction
+calefactive
+calefactor
+calefactories
+calefactory
+calefy
+calelectric
+calelectrical
+calelectricity
+calembour
+Calemes
+Calen
+calenda
+calendal
+calendar
+calendared
+calendarer
+calendarial
+calendarian
+calendaric
+calendaring
+calendarist
+calendar-making
+calendars
+calendas
+Calender
+calender
+calendered
+calenderer
+calendering
+calenders
+Calendra
+Calendre
+calendric
+calendrical
+calendry
+calends
+Calendula
+calendula
+calendulas
+calendulin
+calentural
+calenture
+calentured
+calenturing
+calenturish
+calenturist
+calepin
+Calera
+calesa
+calesas
+calescence
+calescent
+calesero
+calesin
+Calesta
+Caletor
+Calexico
+calf
+calfbound
+calfdozer
+calfhood
+calfish
+calfkill
+calfless
+calflike
+calfling
+calfret
+calfs
+calf's-foot
+calf-skin
+calfskin
+calfskins
+Calgary
+calgary
+calgon
+Calhan
+Calhoun
+Cali
+cali-
+Calia
+Caliban
+caliban
+Calibanism
+caliber
+calibered
+calibers
+calibogus
+calibrate
+calibrated
+calibrater
+calibrates
+calibrating
+calibration
+calibrations
+calibrator
+calibrators
+calibre
+calibred
+calibres
+Caliburn
+caliburn
+Caliburno
+calic
+Calica
+calicate
+calices
+caliche
+caliches
+caliciform
+calicle
+calicles
+calico
+calicoback
+calicoed
+calicoes
+calicos
+calicular
+caliculate
+caliculi
+caliculus
+Calicut
+calid
+Calida
+calidity
+caliduct
+Calie
+Caliente
+Calif
+Calif.
+calif
+califate
+califates
+Califon
+California
+california
+Californian
+californian
+californiana
+californians
+californicus
+californite
+Californium
+californium
+califs
+caliga
+caligate
+caligated
+caligation
+caliginosity
+caliginous
+caliginously
+caliginousness
+caligo
+caligrapher
+caligraphy
+Caligula
+caligulism
+calili
+calimanco
+calimancos
+Calimere
+Calimeris
+calin
+calina
+Calinago
+calinda
+calindas
+caline
+Calinog
+calinut
+Calio
+caliological
+caliologist
+caliology
+Calion
+calipash
+calipashes
+Calipatria
+calipee
+calipees
+caliper
+calipered
+caliperer
+calipering
+calipers
+calipeva
+caliph
+caliphal
+caliphate
+caliphates
+caliphs
+caliphship
+calippic
+Calippus
+Calisa
+calisaya
+calisayas
+Calise
+Calista
+calistheneum
+calisthenic
+calisthenical
+calisthenics
+Calistoga
+Calite
+caliver
+calix
+Calixtin
+calixtin
+Calixtine
+Calixto
+Calixtus
+calk
+calkage
+calked
+calker
+calkers
+calkin
+calking
+Calkins
+calkins
+calks
+Call
+call
+Calla
+calla
+calla-
+callable
+callaesthetic
+Callaghan
+Callahan
+callainite
+callais
+callaloo
+callaloos
+Callan
+callan
+Callands
+callans
+callant
+callants
+Callao
+Callas
+callas
+callat
+callate
+Callaway
+callback
+callbacks
+call-board
+callboy
+callboys
+call-down
+Calle
+Callean
+called
+Callender
+Callensburg
+caller
+callers
+Callery
+Calles
+calles
+callet
+callets
+Calley
+call-fire
+Calli
+calli
+calli-
+Callianassa
+Callianassidae
+Calliandra
+Callicarpa
+Callicebus
+Callicoon
+Callicrates
+callid
+Callida
+Callidice
+callidity
+callidness
+Callie
+calligram
+calligraph
+calligrapha
+calligrapher
+calligraphers
+calligraphic
+calligraphical
+calligraphically
+calligraphist
+calligraphy
+Calliham
+Callimachus
+calling
+calling-down
+calling-over
+callings
+Callionymidae
+Callionymus
+Calliope
+calliope
+calliopean
+calliopes
+calliophone
+Calliopsis
+calliopsis
+callipash
+callipee
+callipees
+calliper
+callipered
+calliperer
+callipering
+callipers
+Calliphora
+calliphorid
+Calliphoridae
+calliphorine
+Callipolis
+callippic
+Callippus
+Callipus
+callipygian
+callipygous
+Callirrhoe
+Callisaurus
+callisection
+callis-sand
+Callista
+Calliste
+callisteia
+Callistemon
+Callistephus
+callisthenic
+callisthenics
+Callisto
+callisto
+Callithrix
+callithrix
+callithump
+callithumpian
+Callitrichaceae
+callitrichaceous
+Callitriche
+callitriche
+Callitrichidae
+Callitris
+callitype
+callityped
+callityping
+callo
+call-off
+calloo
+callop
+Callorhynchidae
+Callorhynchus
+callosal
+callose
+calloses
+callosities
+callosity
+callosomarginal
+callosum
+Callot
+callot
+callous
+calloused
+callouses
+callousing
+callously
+callousness
+callousnesses
+call-out
+callout
+call-over
+Callovian
+callow
+Calloway
+callower
+callowest
+callowman
+callowness
+callownesses
+calls
+Callum
+callum
+Calluna
+Calluori
+call-up
+callus
+callused
+calluses
+callusing
+Cally
+Callynteria
+calm
+calmant
+Calmar
+Calmas
+calmative
+calmato
+calmecac
+calmed
+calmer
+calmest
+calm-eyed
+calmier
+calmierer
+calmiest
+calming
+calmingly
+calmly
+calm-minded
+calmness
+calmnesses
+calms
+calm-throated
+calmy
+calo-
+Calocarpum
+Calochortaceae
+Calochortus
+calodaemon
+calodemon
+calodemonial
+calogram
+calography
+calomba
+calombigas
+calombo
+calomel
+calomels
+calomorphic
+Calondra
+Calonectria
+Calon-segur
+Calonyction
+calool
+Calophyllum
+Calopogon
+calor
+Calore
+caloreceptor
+calorescence
+calorescent
+caloric
+calorically
+caloricity
+calorics
+caloriduct
+Calorie
+calorie
+calorie-counting
+calories
+calorifacient
+calorific
+calorifical
+calorifically
+calorification
+calorifics
+calorifier
+calorify
+calorigenic
+calorimeter
+calorimeters
+calorimetric
+calorimetrical
+calorimetrically
+calorimetry
+calorimotor
+caloris
+calorisator
+calorist
+Calorite
+calorize
+calorized
+calorizer
+calorizes
+calorizing
+calory
+Calosoma
+calosoma
+Calotermes
+calotermitid
+Calotermitidae
+Calothrix
+calotin
+calotte
+calottes
+calotype
+calotypic
+calotypist
+caloyer
+caloyers
+calp
+calpac
+calpack
+calpacked
+calpacks
+calpacs
+Calpe
+calpolli
+calpul
+calpulli
+Calpurnia
+calque
+calqued
+calques
+calquing
+CALRS
+CALS
+cals
+calsouns
+Caltanissetta
+Caltech
+Caltha
+caltha
+calthrop
+calthrops
+caltrap
+caltraps
+caltrop
+caltrops
+calumba
+Calumet
+calumet
+calumets
+calumnia
+calumniate
+calumniated
+calumniates
+calumniating
+calumniation
+calumniations
+calumniative
+calumniator
+calumniators
+calumniatory
+calumnies
+calumnious
+calumniously
+calumniousness
+calumny
+caluptra
+Calusa
+calusar
+calutron
+calutrons
+Calv
+Calva
+Calvados
+calvados
+calvadoses
+calvaire
+Calvano
+calvaria
+calvarial
+calvarias
+Calvaries
+calvaries
+calvarium
+Calvary
+calvary
+Calvatia
+Calve
+calve
+calved
+calver
+Calvert
+Calverton
+calves
+Calvin
+calvin
+Calvina
+calving
+Calvinian
+calvinian
+Calvinism
+calvinism
+Calvinist
+calvinist
+Calvinistic
+calvinistic
+Calvinistical
+Calvinistically
+calvinists
+Calvinize
+calvinize
+Calvinna
+calvish
+calvities
+calvity
+Calvo
+calvous
+calvus
+calx
+calxes
+calybite
+calycanth
+Calycanthaceae
+calycanthaceous
+calycanthemous
+calycanthemy
+calycanthin
+calycanthine
+Calycanthus
+calycanthus
+calycate
+Calyce
+calyceal
+Calyceraceae
+calyceraceous
+calyces
+calyciferous
+calycifloral
+calyciflorate
+calyciflorous
+calyciform
+calycinal
+calycine
+calycle
+calycled
+calycles
+calycli
+Calycocarpum
+calycoid
+calycoideous
+Calycophora
+Calycophorae
+calycophoran
+Calycozoa
+calycozoan
+calycozoic
+calycozoon
+calycular
+calyculate
+calyculated
+calycule
+calyculi
+calyculus
+Calydon
+Calydonian
+Calymene
+calymma
+calyon
+calyphyomy
+calypsist
+Calypso
+calypso
+calypsoes
+calypsonian
+Calypsos
+calypsos
+calypter
+Calypterae
+calypters
+Calyptoblastea
+calyptoblastic
+Calyptorhynchus
+calyptra
+Calyptraea
+Calyptranthes
+calyptras
+Calyptrata
+Calyptratae
+calyptrate
+calyptriform
+calyptrimorphous
+calyptro
+calyptrogen
+Calyptrogyne
+Calysta
+Calystegia
+calyx
+calyxes
+calzada
+calzone
+calzoneras
+calzones
+calzoons
+CAM
+Cam
+cam
+CAMA
+CAMAC
+camaca
+Camacan
+camacey
+camachile
+Camacho
+Camag
+camagon
+Camaguey
+camaieu
+camail
+camaile
+camailed
+camails
+Camak
+camaka
+Camala
+Camaldolensian
+Camaldolese
+Camaldolesian
+Camaldolite
+camaldolite
+Camaldule
+Camaldulian
+camalig
+camalote
+caman
+camanay
+camanchaca
+Camanche
+camansi
+camara
+camarada
+camarade
+camaraderie
+camaraderies
+Camarasaurus
+camarasaurus
+Camarata
+camarera
+Camargo
+camarilla
+camarillas
+Camarillo
+camarin
+camarine
+camaron
+Camas
+camas
+camases
+camass
+camasses
+Camassia
+camata
+camatina
+camauro
+camauros
+Camaxtli
+camay
+Camb
+Camb.
+camb
+Camball
+Cambalo
+Cambarus
+Cambay
+cambaye
+camber
+cambered
+cambering
+camber-keeled
+cambers
+Camberwell
+Cambeva
+cambia
+cambial
+cambiata
+cambibia
+cambiform
+cambio
+cambiogenetic
+cambion
+cambism
+cambisms
+cambist
+cambistry
+cambists
+cambium
+cambiums
+camblet
+Cambodia
+cambodia
+Cambodian
+cambodian
+cambodians
+camboge
+cambogia
+cambogias
+Cambon
+camboose
+Camborne-Redruth
+cambouis
+Cambra
+Cambrai
+cambrel
+cambresine
+Cambria
+Cambrian
+cambrian
+Cambric
+cambric
+cambricleaf
+cambrics
+Cambridge
+cambridge
+Cambridgeport
+Cambridgeshire
+Cambro-briton
+Cambs
+cambuca
+Cambuscan
+Camby
+Cambyses
+Cambyuskan
+Camden
+camden
+Camdenton
+Came
+came
+cameist
+Camel
+camel
+camelback
+camel-backed
+cameleer
+cameleers
+cameleon
+camel-faced
+camel-grazing
+camel-hair
+camelhair
+camel-haired
+camelia
+camelias
+Camelid
+Camelidae
+Camelina
+cameline
+camelion
+camelish
+camelishness
+camelkeeper
+camel-kneed
+Camella
+Camellia
+camellia
+Camelliaceae
+camellias
+camellike
+camellin
+Camellus
+camelman
+cameloid
+Cameloidea
+camelopard
+Camelopardalis
+camelopardel
+Camelopardid
+Camelopardidae
+camelopards
+Camelopardus
+Camelot
+camelot
+camelry
+camels
+camel's-hair
+camel-shaped
+Camelus
+camel-yarn
+Camembert
+camembert
+Camena
+Camenae
+Camenes
+camenes
+Cameo
+cameo
+cameoed
+cameograph
+cameography
+cameoing
+cameos
+camera
+camerae
+camera-eye
+cameral
+cameralism
+cameralist
+cameralistic
+cameralistics
+cameraman
+cameramen
+cameras
+camera-shy
+Camerata
+camerate
+camerated
+cameration
+camerawork
+camerier
+cameriera
+camerieri
+Camerina
+camerine
+Camerinidae
+camerist
+camerlengo
+camerlengos
+camerlingo
+camerlingos
+Cameron
+Cameronian
+cameronian
+cameronians
+Cameroon
+cameroon
+cameroonian
+cameroonians
+Cameroons
+Cameroun
+camery
+cames
+Camestres
+camestres
+Camey
+Camfort
+Cami
+camias
+Camiguin
+camiknickers
+Camila
+Camile
+Camilia
+Camilla
+camilla
+Camille
+Camillo
+Camillus
+camillus
+Camilo
+Camino
+camino
+camion
+camions
+Camirus
+camis
+camisa
+camisade
+camisades
+camisado
+camisadoes
+camisados
+Camisard
+camisard
+camisas
+camiscia
+camise
+camises
+camisia
+camisias
+camisole
+camisoles
+camister
+camize
+camla
+camlet
+camleted
+camleteen
+camletine
+camleting
+camlets
+camletted
+camletting
+CAMM
+Camm
+Cammaerts
+Cammal
+Cammarum
+cammas
+cammed
+Cammi
+Cammie
+cammock
+cammocky
+Cammy
+camoca
+Camoens
+camogie
+camois
+camomile
+camomiles
+camooch
+camoodi
+camoodie
+Camorist
+Camorra
+camorra
+camorras
+Camorrism
+camorrism
+Camorrist
+Camorrista
+camorrista
+camorristi
+camote
+camoudie
+camouflage
+camouflageable
+camouflaged
+camouflager
+camouflagers
+camouflages
+camouflagic
+camouflaging
+camouflet
+camoufleur
+camoufleurs
+CAMP
+Camp
+camp
+Campa
+campagi
+Campagna
+campagna
+Campagne
+campagne
+campagnol
+campagnols
+campagus
+campaign
+campaigned
+campaigner
+campaigners
+campaigning
+campaigns
+campal
+campana
+campane
+campanella
+campanero
+Campania
+campania
+Campanian
+campaniform
+campanile
+campaniles
+campanili
+campaniliform
+campanilla
+campanini
+campanist
+campanistic
+campanologer
+campanological
+campanologically
+campanologist
+campanologists
+campanology
+Campanula
+campanula
+Campanulaceae
+campanulaceous
+Campanulales
+campanular
+Campanularia
+Campanulariae
+campanularian
+Campanularidae
+Campanulatae
+campanulate
+campanulated
+campanulous
+Campanus
+Campari
+Campaspe
+Campball
+Campbell
+campbell
+Campbell-Bannerman
+Campbellism
+campbellism
+campbellisms
+Campbellite
+campbellite
+campbellites
+Campbellsburg
+Campbellsville
+Campbellton
+Campbelltown
+Campbeltown
+campcraft
+Campe
+Campeche
+campeche
+camped
+campement
+Campephagidae
+campephagine
+Campephilus
+camper
+campers
+campership
+campesino
+campesinos
+campestral
+campestrian
+camp-fight
+campfight
+campfire
+campfires
+campground
+campgrounds
+camph-
+camphane
+camphanic
+camphanone
+camphanyl
+camphene
+camphenes
+camphine
+camphines
+camphire
+camphires
+campho
+camphocarboxylic
+camphoid
+camphol
+campholic
+campholide
+camphols
+campholytic
+camphor
+camphoraceous
+camphorate
+camphorated
+camphorates
+camphorating
+camphoric
+camphorize
+camphorone
+camphoronic
+camphoroyl
+camphorphorone
+camphors
+camphorweed
+camphorwood
+camphory
+camphoryl
+camphylene
+campi
+campier
+campiest
+Campignian
+campilan
+campily
+campimeter
+campimetrical
+campimetry
+Campinas
+Campine
+campiness
+camping
+campings
+Campion
+campion
+campions
+campit
+cample
+Campman
+campman
+campmaster
+camp-meeting
+Campney
+Campo
+campo
+Campobello
+Campodea
+campodean
+campodeid
+Campodeidae
+campodeiform
+campodeoid
+campody
+Campoformido
+campong
+campongs
+Camponotus
+campoo
+campoody
+Camporeale
+camporee
+camporees
+Campos
+campos
+camp-out
+campout
+camps
+campshed
+camp-shedding
+campshedding
+campsheeting
+camp-shot
+campshot
+camp-site
+campsite
+campsites
+campstool
+campstools
+Campti
+camptodrome
+Campton
+camptonite
+Camptonville
+Camptosorus
+Camptown
+campulitropal
+campulitropous
+campus
+campused
+campuses
+campusses
+campward
+Campwood
+Campy
+campy
+campylite
+campylodrome
+campylometer
+Campyloneuron
+campylospermous
+campylotropal
+campylotropous
+CAMRA
+cams
+camshach
+camshachle
+camshaft
+camshafts
+camstane
+camsteary
+camsteery
+camstone
+camstrary
+camuning
+Camus
+camus
+camuse
+camused
+camuses
+Camuy
+cam-wood
+camwood
+CAN
+Can
+Can.
+can
+can.
+Cana
+Canaan
+canaan
+Canaanite
+canaanite
+canaanites
+Canaanitess
+Canaanitic
+Canaanitish
+canaba
+canabae
+Canace
+Canacee
+canacuas
+Canad
+Canad.
+Canada
+canada
+Canadensis
+Canadian
+canadian
+Canadianism
+canadianisms
+Canadianization
+Canadianize
+Canadianized
+Canadianizing
+canadians
+canadine
+canadite
+canadol
+Canadys
+canafistola
+canafistolo
+canafistula
+canafistulo
+canaglia
+canaigre
+canaille
+canailles
+Canajoharie
+canajong
+canakin
+canakins
+Canakkale
+canal
+canalage
+canalatura
+canalboat
+canal-bone
+canal-built
+Canale
+canale
+canaled
+canaler
+canales
+canalete
+Canaletto
+canali
+canalicular
+canaliculate
+canaliculated
+canaliculation
+canaliculi
+canaliculization
+canaliculus
+canaliferous
+canaliform
+canaling
+canalis
+canalisation
+canalise
+canalised
+canalises
+canalising
+canalization
+canalizations
+canalize
+canalized
+canalizes
+canalizing
+canalla
+canalled
+canaller
+canallers
+canalling
+canalman
+Canalou
+canals
+canalside
+Canamary
+canamo
+Cananaean
+Canandaigua
+Canandelabrum
+Cananea
+Cananean
+Cananga
+Canangium
+canap
+canape
+canapes
+canapina
+Canara
+canard
+canards
+Canarese
+Canari
+canari
+Canarian
+Canaries
+canaries
+canarin
+canarine
+Canariote
+Canarium
+Canarsee
+Canary
+canary
+canary-bird
+canary-yellow
+Canaseraga
+canasta
+canastas
+canaster
+Canastota
+canaut
+Canavali
+Canavalia
+canavalin
+Canaveral
+can-beading
+Canberra
+canberra
+can-boxing
+can-buoy
+can-burnishing
+Canby
+canc
+canc.
+can-can
+cancan
+cancans
+can-capping
+canccelli
+cancel
+cancelability
+cancelable
+cancelation
+canceled
+canceleer
+canceler
+cancelers
+cancelier
+canceling
+cancellability
+cancellable
+cancellarian
+cancellarius
+cancellate
+cancellated
+cancellation
+cancellations
+cancelled
+canceller
+cancelli
+cancelling
+cancellous
+cancellus
+cancelment
+cancels
+Cancer
+cancer
+cancerate
+cancerated
+cancerating
+canceration
+cancerdrops
+cancered
+cancerigenic
+cancerin
+cancerism
+cancerite
+cancerization
+cancerlog
+cancerogenic
+cancerophobe
+cancerophobia
+cancerous
+cancerously
+cancerousness
+cancerphobia
+cancerroot
+cancers
+cancerweed
+cancerwort
+canch
+cancha
+canchalagua
+canchas
+Canchi
+canchito
+cancion
+cancionero
+canciones
+can-cleaning
+can-closing
+Cancri
+Cancrid
+cancrid
+cancriform
+can-crimping
+cancrine
+cancrinite
+cancrinite-syenite
+cancrisocial
+cancrivorous
+cancrizans
+cancroid
+cancroids
+cancrophagous
+cancrum
+cancrums
+Cancun
+Cand
+cand
+Candace
+candareen
+Candee
+candela
+candelabra
+candelabras
+candelabrum
+candelabrums
+candelas
+candelilla
+candency
+candent
+candescence
+candescent
+candescently
+Candi
+Candia
+Candice
+candid
+Candida
+candida
+candidacies
+candidacy
+candidas
+candidate
+candidated
+candidates
+candidateship
+candidating
+candidature
+candidatures
+Candide
+candide
+candider
+candidest
+candidiasis
+candidly
+candidness
+candidnesses
+candids
+Candie
+candied
+candiel
+candier
+candies
+candify
+candil
+Candiot
+Candiote
+candiru
+Candis
+candite
+candle
+candleball
+candle-beam
+candlebeam
+candle-bearing
+candleberries
+candleberry
+candlebomb
+candlebox
+candle-branch
+candled
+candle-dipper
+candle-end
+candlefish
+candlefishes
+candle-foot
+candle-holder
+candleholder
+candle-hour
+candlelight
+candlelighted
+candle-lighter
+candlelighter
+candlelighting
+candlelights
+candlelit
+candlemaker
+candlemaking
+Candlemas
+candlemas
+candle-meter
+candlenut
+candlepin
+candlepins
+candlepower
+Candler
+candler
+candle-rent
+candlerent
+candlers
+candles
+candle-shaped
+candleshine
+candleshrift
+candle-snuff
+candlesnuffer
+Candless
+candlestand
+candlestick
+candlesticked
+candlesticks
+candlestickward
+candle-tapering
+candle-tree
+candle-waster
+candlewaster
+candlewasting
+candlewick
+candlewicking
+candlewicks
+candle-wood
+candlewood
+candlewright
+candling
+Cando
+can-dock
+candock
+Candolle
+Candollea
+Candolleaceae
+candolleaceous
+Candor
+candor
+candors
+candour
+candours
+Candra
+candroy
+candroys
+canduc
+Candy
+candy
+Candyce
+candyfloss
+candyh
+candying
+candylike
+candymaker
+candymaking
+candys
+candystick
+candy-striped
+candytuft
+candyweed
+cane
+Canea
+Caneadea
+cane-backed
+cane-bottomed
+Canebrake
+canebrake
+canebrakes
+caned
+Caneghem
+canel
+canela
+canelas
+canelike
+canell
+canella
+Canellaceae
+canellaceous
+canellas
+canelle
+Canelo
+canelo
+canelos
+Canens
+caneology
+canephor
+canephora
+canephorae
+canephore
+canephori
+canephoroe
+canephoroi
+canephoros
+canephors
+cane-phorus
+canephorus
+canephroi
+canepin
+caner
+caners
+canes
+canescence
+canescene
+canescent
+cane-seated
+Canestrato
+caneton
+canette
+caneva
+Canevari
+caneware
+canewares
+canewise
+canework
+Caney
+Caneyville
+canezou
+CanF
+Canfield
+canfield
+canfieldite
+canfields
+can-filling
+can-flanging
+canful
+canfuls
+cangan
+cangenet
+cangia
+cangica-wood
+cangle
+cangler
+cangue
+cangues
+cangy
+canham
+can-heading
+can-hook
+canhoop
+Canica
+Canice
+Canichana
+Canichanan
+canicide
+canicola
+Canicula
+canicula
+canicular
+canicule
+canid
+Canidae
+Canidia
+canids
+Caniff
+canikin
+canikins
+canille
+caninal
+canine
+canines
+caning
+caniniform
+caninities
+caninity
+caninus
+canion
+canioned
+canions
+Canis
+Canisiana
+canistel
+Canisteo
+canister
+canisters
+Canistota
+canities
+canjac
+Canjilon
+cank
+canker
+cankerberry
+cankerbird
+canker-bit
+canker-bitten
+cankereat
+canker-eaten
+cankered
+cankeredly
+cankeredness
+cankerflower
+cankerfret
+canker-hearted
+cankering
+canker-mouthed
+cankerous
+cankerroot
+cankers
+canker-toothed
+cankerweed
+cankerworm
+cankerworms
+cankerwort
+cankery
+can-labeling
+can-lacquering
+canli
+can-lining
+canmaker
+canmaking
+canman
+can-marking
+Canmer
+Cann
+cann
+Canna
+canna
+cannabic
+cannabidiol
+cannabin
+Cannabinaceae
+cannabinaceous
+cannabine
+cannabinol
+cannabins
+Cannabis
+cannabis
+cannabises
+cannabism
+Cannaceae
+cannaceous
+cannach
+canna-down
+Cannae
+cannaled
+cannalling
+Cannanore
+cannas
+cannat
+canned
+cannel
+cannelated
+cannel-bone
+Cannelburg
+cannele
+Cannell
+cannellate
+cannellated
+cannelle
+cannelloni
+cannelon
+cannelons
+cannels
+Cannelton
+cannelure
+cannelured
+cannequin
+canner
+canneries
+canners
+cannery
+Cannes
+cannet
+cannetille
+cannibal
+cannibalean
+cannibalic
+cannibalish
+cannibalism
+cannibalisms
+cannibalistic
+cannibalistically
+cannibality
+cannibalization
+cannibalize
+cannibalized
+cannibalizes
+cannibalizing
+cannibally
+cannibals
+Cannice
+cannie
+cannier
+canniest
+cannikin
+cannikins
+cannily
+canniness
+canninesses
+Canning
+canning
+cannings
+cannister
+cannisters
+Cannizzaro
+Cannock
+cannoli
+Cannon
+cannon
+cannonade
+cannonaded
+cannonades
+cannonading
+cannonarchy
+cannon-ball
+cannonball
+cannonballed
+cannonballing
+cannonballs
+cannoned
+cannoneer
+cannoneering
+cannoneers
+cannonier
+cannoning
+Cannonism
+cannonism
+cannon-proof
+cannonproof
+cannonries
+cannon-royal
+cannonry
+cannons
+Cannonsburg
+cannon-shot
+Cannonville
+cannophori
+cannot
+Cannstatt
+cannula
+cannulae
+cannular
+cannulas
+Cannulate
+cannulate
+cannulated
+cannulating
+cannulation
+canny
+canoe
+canoed
+canoeing
+Canoeiro
+canoeist
+canoeists
+canoeload
+canoeman
+canoes
+canoewood
+Canoga
+canoing
+Canon
+canon
+canoncito
+Canones
+canones
+canoness
+canonesses
+canonic
+canonical
+canonicalization
+canonicalize
+canonicalized
+canonicalizes
+canonicalizing
+canonically
+canonicalness
+canonicals
+canonicate
+canonici
+canonicity
+canonics
+canonisation
+canonise
+canonised
+canoniser
+canonises
+canonising
+canonist
+canonistic
+canonistical
+canonists
+canonizant
+canonization
+canonizations
+canonize
+canonized
+canonizer
+canonizes
+canonizing
+canonlike
+canonries
+canonry
+canons
+Canonsburg
+canonship
+canoodle
+canoodled
+canoodler
+canoodles
+canoodling
+can-opener
+can-opening
+Canopic
+canopic
+canopid
+canopied
+canopies
+Canopus
+canopus
+canopy
+canopying
+canorous
+canorously
+canorousness
+canos
+Canossa
+Canotas
+canotier
+Canova
+Canovanas
+can-polishing
+can-quaffing
+canreply
+Canrobert
+canroy
+canroyer
+cans
+can-salting
+can-scoring
+can-sealing
+can-seaming
+cansful
+can-slitting
+Canso
+canso
+can-soldering
+cansos
+can-squeezing
+canst
+can-stamping
+can-sterilizing
+canstick
+Cant
+Cant.
+can't
+cant
+Cantab
+cantab
+cantabank
+cantabile
+Cantabri
+Cantabrian
+Cantabrigian
+cantabrigian
+Cantabrize
+Cantacuzene
+cantador
+Cantal
+cantala
+cantalas
+cantalever
+cantalite
+cantaliver
+cantaloup
+cantaloupe
+cantaloupes
+cantando
+cantankerous
+cantankerously
+cantankerousness
+cantankerousnesses
+cantar
+cantara
+cantare
+cantaro
+cantata
+cantatas
+Cantate
+cantate
+cantation
+cantative
+cantator
+cantatory
+cantatrice
+cantatrices
+cantatrici
+cantboard
+cantdog
+cantdogs
+canted
+canteen
+canteens
+cantefable
+cantel
+Canter
+canter
+Canterburian
+canterburian
+Canterburianism
+canterburies
+Canterbury
+canterbury
+cantered
+canterelle
+canterer
+cantering
+canters
+can-testing
+canthal
+Cantharellus
+canthari
+cantharic
+Cantharidae
+cantharidal
+cantharidate
+cantharidated
+cantharidating
+cantharidean
+cantharides
+cantharidian
+cantharidin
+cantharidism
+cantharidize
+cantharidized
+cantharidizing
+cantharis
+cantharophilous
+cantharus
+canthathari
+canthectomy
+canthi
+canthitis
+cantholysis
+canthoplasty
+canthorrhaphy
+canthotomy
+Canthus
+canthus
+canthuthi
+cantic
+canticle
+Canticles
+canticles
+cantico
+cantiga
+Cantigny
+Cantil
+cantil
+cantilated
+cantilating
+cantilena
+cantilene
+cantilenes
+cantilever
+cantilevered
+cantilevering
+cantilevers
+cantillate
+cantillated
+cantillating
+cantillation
+Cantillon
+cantily
+cantina
+cantinas
+cantiness
+canting
+cantingly
+cantingness
+cantinier
+cantino
+cantion
+cantish
+cantle
+cantles
+cantlet
+cantline
+cantling
+Cantlon
+canto
+Canton
+canton
+cantonal
+cantonalism
+Cantone
+cantoned
+cantoner
+Cantonese
+cantonese
+cantoning
+cantonize
+Cantonment
+cantonment
+cantonments
+cantons
+cantoon
+Cantor
+cantor
+cantoral
+cantoria
+cantorial
+Cantorian
+cantoris
+cantorous
+cantors
+cantorship
+Cantos
+cantos
+cantraip
+cantraips
+Cantrall
+cantrap
+cantraps
+cantred
+cantref
+Cantril
+cantrip
+cantrips
+cants
+Cantu
+Cantuar
+cantus
+cantut
+cantuta
+cantwise
+Canty
+canty
+Canuck
+canuck
+canula
+canulae
+canular
+canulas
+canulate
+canulated
+canulates
+canulating
+canun
+Canute
+Canutillo
+canvas
+canvasado
+canvas-back
+canvasback
+canvasbacks
+canvas-covered
+canvased
+canvaser
+canvasers
+canvases
+canvasing
+canvaslike
+canvasman
+canvass
+canvassed
+canvasser
+canvassers
+canvasses
+canvassing
+canvassy
+can-washing
+can-weighing
+can-wiping
+can-wrapping
+cany
+Canyon
+canyon
+canyons
+canyonside
+Canyonville
+canzo
+canzon
+canzona
+canzonas
+canzone
+canzones
+canzonet
+canzonets
+canzonetta
+canzoni
+canzos
+caoba
+Caodaism
+Caodaist
+caoine
+caon
+caoutchin
+caoutchouc
+caoutchoucin
+CAP
+cap
+cap.
+capa
+capabilities
+capability
+Capablanca
+capable
+capableness
+capabler
+capablest
+capably
+Capac
+capacify
+capacious
+capaciously
+capaciousness
+capacitance
+capacitances
+capacitate
+capacitated
+capacitates
+capacitating
+capacitation
+capacitations
+capacitative
+capacitativly
+capacitator
+capacities
+capacitive
+capacitively
+capacitor
+capacitors
+capacity
+Capaneus
+capanna
+capanne
+cap-a-pie
+caparison
+caparisoned
+caparisoning
+caparisons
+capataces
+capataz
+capax
+cap-case
+capcase
+Cape
+cape
+capeador
+capeadores
+capeadors
+caped
+Capefair
+Capek
+capel
+capelan
+capelans
+capelet
+capelets
+capelin
+capeline
+capelins
+Capella
+capella
+capellane
+capellet
+capelline
+Capello
+capelocracy
+Capels
+Capemay
+cape-merchant
+Capeneddick
+caper
+caperbush
+capercaillie
+capercailye
+capercailzie
+capercally
+caper-cut
+capercut
+caperdewsie
+capered
+caperer
+caperers
+capering
+caperingly
+Capernaism
+Capernaite
+capernaite
+Capernaitic
+Capernaitical
+Capernaitically
+Capernaitish
+Capernaum
+capernoited
+capernoitie
+capernoity
+capernutie
+capers
+capersome
+capersomeness
+caperwort
+capes
+capeskin
+capeskins
+Capet
+Capetian
+capetian
+Capetonian
+Capetown
+capetown
+capette
+Capeville
+capeweed
+capewise
+capework
+capeworks
+cap-flash
+capful
+capfuls
+Caph
+caph
+Cap-Haitien
+caphar
+capharnaism
+Caphaurus
+caphite
+caphs
+Caphtor
+Caphtorim
+capias
+capiases
+capiatur
+capibara
+capicha
+capilaceous
+capillaceous
+capillaire
+capillament
+capillarectasia
+capillaries
+capillarily
+capillarimeter
+capillariness
+capillariomotor
+capillarities
+capillaritis
+capillarity
+capillary
+capillation
+capillatus
+capilli
+capilliculture
+capilliform
+capillitia
+capillitial
+capillitium
+capillose
+capillus
+capilotade
+caping
+cap-in-hand
+Capistrano
+capistrate
+capita
+capital
+capitaldom
+capitaled
+capitaling
+capitalisable
+capitalise
+capitalised
+capitaliser
+capitalising
+capitalism
+capitalist
+capitalistic
+capitalistically
+capitalists
+capitalizable
+capitalization
+capitalizations
+capitalize
+capitalized
+capitalizer
+capitalizers
+capitalizes
+capitalizing
+capitally
+capitalness
+capitals
+Capitan
+capitan
+capitana
+capitano
+capitare
+capitasti
+capitate
+capitated
+capitatim
+capitation
+capitations
+capitative
+capitatum
+capite
+capiteaux
+capitella
+capitellar
+capitellate
+capitelliform
+capitellum
+capitle
+Capito
+Capitol
+capitol
+Capitola
+Capitolian
+Capitoline
+capitoline
+Capitolium
+capitols
+Capitonidae
+Capitoninae
+capitoul
+capitoulate
+capitula
+capitulant
+capitular
+capitularies
+capitularly
+capitulars
+capitulary
+capitulate
+capitulated
+capitulates
+capitulating
+capitulation
+capitulations
+capitulator
+capitulatory
+capituliform
+capitulum
+capiturlary
+capivi
+Capiz
+capkin
+Caplan
+caplan
+capless
+caplet
+caplets
+caplin
+capling
+caplins
+caplock
+capmaker
+capmakers
+capmaking
+capman
+capmint
+Cap'n
+Capnodium
+Capnoides
+capnomancy
+capnomor
+capo
+capoc
+capocchia
+capoche
+Capodacqua
+capomo
+Capon
+capon
+caponata
+caponatas
+Capone
+capone
+caponette
+caponier
+caponiere
+caponiers
+caponisation
+caponise
+caponised
+caponiser
+caponising
+caponization
+caponize
+caponized
+caponizer
+caponizes
+caponizing
+caponniere
+capons
+caporal
+caporals
+Caporetto
+capos
+capot
+capotasto
+capotastos
+Capote
+capote
+capotes
+capouch
+capouches
+CAPP
+Capp
+cappadine
+cappadochio
+Cappadocia
+Cappadocian
+cappae
+cappagh
+cap-paper
+capparid
+Capparidaceae
+capparidaceous
+Capparis
+capped
+cappelenite
+Cappella
+cappella
+cappelletti
+Cappello
+capper
+cappers
+cappie
+cappier
+cappiest
+capping
+cappings
+capple
+capple-faced
+Cappotas
+Capps
+cappuccino
+cappy
+Capra
+caprate
+Caprella
+Caprellidae
+caprelline
+capreol
+capreolar
+capreolary
+capreolate
+capreoline
+Capreolus
+capreomycin
+capretto
+Capri
+capric
+capriccetto
+capriccettos
+capricci
+capriccio
+capriccios
+capriccioso
+Caprice
+caprice
+caprices
+capricious
+capriciously
+capriciousness
+Capricorn
+capricorn
+Capricorni
+Capricornid
+capricorns
+Capricornus
+caprid
+caprificate
+caprification
+caprificator
+caprifig
+caprifigs
+caprifoil
+caprifole
+Caprifoliaceae
+caprifoliaceous
+Caprifolium
+caprifolium
+capriform
+caprigenous
+Caprimulgi
+Caprimulgidae
+Caprimulgiformes
+caprimulgine
+Caprimulgus
+caprin
+caprine
+caprinic
+Capriola
+capriole
+caprioled
+caprioles
+caprioling
+Capriote
+capriped
+capripede
+Capris
+capris
+caprizant
+caproate
+caprock
+caprocks
+caproic
+caproin
+Capromys
+Capron
+capron
+caprone
+capronic
+capronyl
+caproyl
+capryl
+caprylate
+caprylene
+caprylic
+caprylin
+caprylone
+caprylyl
+caps
+caps.
+capsa
+capsaicin
+Capsella
+Capshaw
+capsheaf
+capshore
+Capsian
+capsian
+capsicin
+capsicins
+Capsicum
+capsicum
+capsicums
+capsid
+Capsidae
+capsidal
+capsids
+capsizable
+capsizal
+capsize
+capsized
+capsizes
+capsizing
+capsomer
+capsomere
+capsomers
+capstan
+capstan-headed
+capstans
+cap-stone
+capstone
+capstones
+capsula
+capsulae
+capsular
+capsulate
+capsulated
+capsulation
+capsule
+capsulectomy
+capsuled
+capsuler
+capsules
+capsuli-
+capsuliferous
+capsuliform
+capsuligerous
+capsuling
+capsulitis
+capsulize
+capsulized
+capsulizing
+capsulociliary
+capsulogenous
+capsulolenticular
+capsulopupillary
+capsulorrhaphy
+capsulotome
+capsulotomy
+capsumin
+Capt
+Capt.
+captacula
+captaculum
+CAPTAIN
+captain
+captaincies
+Captaincook
+captaincy
+captained
+captainess
+captain-generalcy
+captaining
+captain-lieutenant
+captainly
+captainries
+captainry
+captains
+captainship
+captainships
+captan
+captance
+captandum
+captans
+captate
+captation
+caption
+captioned
+captioning
+captionless
+captions
+captious
+captiously
+captiousness
+Captiva
+captivance
+captivate
+captivated
+captivately
+captivates
+captivating
+captivatingly
+captivation
+captivations
+captivative
+captivator
+captivators
+captivatrix
+captive
+captived
+captives
+captiving
+captivities
+captivity
+captor
+captors
+captress
+capturable
+capture
+captured
+capturer
+capturers
+captures
+capturing
+Capua
+Capuan
+Capuanus
+capuche
+capuched
+capuches
+Capuchin
+capuchin
+capuchins
+capucine
+Capulet
+capulet
+capuli
+Capulin
+capulin
+caput
+Caputa
+caputium
+Caputo
+Caputto
+Capuzzo
+Capwell
+capybara
+capybaras
+Capys
+caque
+Caquet
+caquet
+caqueterie
+caqueteuse
+caqueteuses
+Caquetio
+caquetoire
+caquetoires
+CAR
+Car
+car
+Cara
+Carabancel
+carabao
+carabaos
+carabeen
+carabid
+Carabidae
+carabidan
+carabideous
+carabidoid
+carabids
+carabin
+carabine
+carabineer
+carabiner
+carabinero
+carabineros
+carabines
+Carabini
+carabinier
+carabiniere
+carabinieri
+carabins
+caraboa
+caraboid
+Carabus
+carabus
+caracal
+Caracalla
+caracals
+caracara
+caracaras
+Caracas
+caracas
+carack
+caracks
+caraco
+caracoa
+caracol
+caracole
+caracoled
+caracoler
+caracoles
+caracoli
+caracoling
+caracolite
+caracolled
+caracoller
+caracolling
+caracols
+caracora
+caracore
+caract
+Caractacus
+caracter
+caracul
+caraculs
+Caradoc
+Caradon
+carafe
+carafes
+carafon
+Caragana
+caragana
+caraganas
+carageen
+carageens
+caragheen
+Caraguata
+caraguata
+Caraho
+caraibe
+Caraipa
+caraipe
+caraipi
+Caraja
+Carajas
+carajo
+carajura
+Caralie
+caramba
+carambola
+carambole
+caramboled
+caramboling
+caramel
+caramelan
+caramelen
+caramelin
+caramelisation
+caramelise
+caramelised
+caramelising
+caramelization
+caramelize
+caramelized
+caramelizes
+caramelizing
+caramels
+caramoussal
+Caramuel
+carancha
+carancho
+caranda
+Carandas
+caranday
+carane
+Caranga
+carangid
+Carangidae
+carangids
+carangin
+carangoid
+Carangus
+caranna
+Caranx
+caranx
+carap
+Carapa
+carapa
+carapace
+carapaced
+carapaces
+Carapache
+Carapacho
+carapacial
+carapacic
+carapato
+carapax
+carapaxes
+Carapidae
+carapine
+carapo
+Carapus
+Carara
+Caras
+carassow
+carassows
+carat
+caratacus
+caratch
+carate
+carates
+Caratinga
+carats
+Caratunk
+carauna
+caraunda
+Caravaggio
+caravan
+caravaned
+caravaneer
+caravaner
+caravaning
+caravanist
+caravanned
+caravanner
+caravanning
+caravans
+caravansaries
+caravansary
+caravanserai
+caravanserial
+caravel
+caravelle
+caravels
+Caravette
+Caraviello
+caraway
+caraways
+Carayan
+Caraz
+carb
+carb-
+carbachol
+carbacidometer
+carbamate
+carbamic
+carbamide
+carbamidine
+carbamido
+carbamine
+carbamino
+carbamoyl
+carbamyl
+carbamyls
+carbanil
+carbanilic
+carbanilid
+carbanilide
+carbanion
+carbarn
+carbarns
+carbaryl
+carbaryls
+carbasus
+carbazic
+carbazide
+carbazin
+carbazine
+carbazole
+carbazylic
+carbeen
+carbene
+Carberry
+carberry
+carbethoxy
+carbethoxyl
+carbide
+carbides
+carbimide
+carbin
+carbine
+carbineer
+carbineers
+carbines
+carbinol
+carbinols
+carbinyl
+Carbo
+carbo
+carbo-
+carboazotine
+carbocer
+carbocinchomeronic
+carbocyclic
+carbodiimide
+carbodynamite
+carbogelatin
+carbohemoglobin
+carbohydrase
+carbo-hydrate
+carbohydrate
+carbohydrates
+carbohydraturia
+carbohydrazide
+carbohydride
+carbohydrogen
+carbolate
+carbolated
+carbolating
+carbolfuchsin
+carbolic
+carbolics
+carboline
+carbolineate
+Carbolineum
+carbolise
+carbolised
+carbolising
+carbolize
+carbolized
+carbolizes
+carbolizing
+Carboloy
+carboluria
+carbolxylol
+carbomethene
+carbomethoxy
+carbomethoxyl
+carbomycin
+carbon
+Carbona
+carbona
+carbonaceous
+carbonade
+Carbonado
+carbonado
+carbonadoed
+carbonadoes
+carbonadoing
+carbonados
+Carbonari
+carbonari
+Carbonarism
+Carbonarist
+Carbonaro
+carbonatation
+carbonate
+carbonated
+carbonates
+carbonating
+carbonation
+carbonations
+carbonatization
+carbonator
+carbonators
+Carboncliff
+Carbondale
+carbondale
+Carbone
+carbone
+carboned
+carbonemia
+carbonero
+carbones
+Carboni
+carbonic
+carbonide
+Carboniferous
+carboniferous
+carbonification
+carbonify
+carbonigenous
+carbonimeter
+carbonimide
+carbonisable
+carbonisation
+carbonise
+carbonised
+carboniser
+carbonising
+carbonite
+carbonitride
+carbonium
+carbonizable
+carbonization
+carbonize
+carbonized
+carbonizer
+carbonizers
+carbonizes
+carbonizing
+carbonless
+Carbonnieux
+carbonometer
+carbonometry
+carbonous
+carbons
+carbonuria
+carbonyl
+carbonylate
+carbonylated
+carbonylating
+carbonylation
+carbonylene
+carbonylic
+carbonyls
+carbophilous
+carbora
+carboras
+car-borne
+Carborundum
+carborundum
+carbosilicate
+carbostyril
+carboxide
+carboxy
+Carboxydomonas
+carboxyhemoglobin
+carboxyl
+carboxylase
+carboxylate
+carboxylated
+carboxylating
+carboxylation
+carboxylic
+carboxyls
+carboxypeptidase
+carboy
+carboyed
+carboys
+Carbrey
+carbro
+carbromal
+carbs
+carbuilder
+carbuncle
+carbuncled
+carbuncles
+carbuncular
+carbunculation
+carbungi
+carburan
+carburant
+carburate
+carburated
+carburating
+carburation
+carburator
+carbure
+carburet
+carburetant
+carbureted
+carbureter
+carburetest
+carbureting
+carburetion
+carburetor
+carburetors
+carburets
+carburetted
+carburetter
+carburetting
+carburettor
+carburisation
+carburise
+carburised
+carburiser
+carburising
+carburization
+carburize
+carburized
+carburizer
+carburizes
+carburizing
+carburometer
+carby
+carbyl
+carbylamine
+carcajou
+carcajous
+carcake
+carcan
+carcanet
+carcaneted
+carcanets
+carcanetted
+Carcas
+carcase
+carcased
+carcases
+carcasing
+carcass
+carcassed
+carcasses
+carcassing
+carcassless
+Carcassonne
+Carcavelhos
+Carce
+carceag
+carcel
+carcels
+carcer
+carceral
+carcerate
+carcerated
+carcerating
+carceration
+carcerist
+Carcharhinus
+Carcharias
+carchariid
+Carchariidae
+carcharioid
+Carcharodon
+carcharodont
+Carchemish
+carcin-
+carcinemia
+carcinogen
+carcinogeneses
+carcinogenesis
+carcinogenic
+carcinogenicity
+carcinogenics
+carcinogens
+carcinoid
+carcinological
+carcinologist
+carcinology
+carcinolysin
+carcinolytic
+carcinoma
+carcinomas
+carcinomata
+carcinomatoid
+carcinomatosis
+carcinomatous
+carcinomorphic
+carcinophagous
+carcinophobia
+carcinopolypus
+carcinosarcoma
+carcinosarcomas
+carcinosarcomata
+Carcinoscorpius
+carcinosis
+carcinus
+carcoon
+Card
+Card.
+card
+cardaissin
+Cardale
+Cardamine
+cardamine
+cardamom
+cardamoms
+cardamon
+cardamons
+cardamum
+cardamums
+Cardanic
+cardanol
+Cardanus
+cardboard
+cardboards
+card-carrier
+card-carrying
+cardcase
+cardcases
+cardcastle
+card-counting
+card-cut
+card-cutting
+card-devoted
+Cardea
+cardecu
+carded
+cardel
+Cardenas
+Carder
+carder
+carders
+Cardew
+cardholder
+cardholders
+cardhouse
+cardi-
+-cardia
+cardia
+cardiac
+cardiacal
+Cardiacea
+cardiacean
+cardiacle
+cardiacs
+cardiae
+cardiagra
+cardiagram
+cardiagraph
+cardiagraphy
+cardial
+cardialgia
+cardialgic
+cardialgy
+cardiameter
+cardiamorphia
+cardianesthesia
+cardianeuria
+cardiant
+cardiaplegia
+cardiarctia
+cardias
+cardiasthenia
+cardiasthma
+cardiataxia
+cardiatomy
+cardiatrophia
+cardiauxe
+Cardiazol
+cardicentesis
+Cardie
+cardiectasis
+cardiectomize
+cardiectomy
+cardielcosis
+cardiemphraxia
+Cardiff
+cardiform
+Cardiga
+Cardigan
+cardigan
+cardigans
+Cardiganshire
+Cardiidae
+Cardijn
+Cardin
+cardin
+Cardinal
+cardinal
+cardinalate
+cardinalated
+cardinalates
+cardinal-bishop
+cardinal-deacon
+cardinalfish
+cardinalfishes
+cardinal-flower
+cardinalic
+Cardinalis
+cardinalism
+cardinalist
+cardinalitial
+cardinalitian
+cardinalities
+cardinality
+cardinally
+cardinal-priest
+cardinal-red
+cardinals
+cardinalship
+Cardinas
+card-index
+cardines
+carding
+cardings
+Cardington
+cardio-
+cardioaccelerator
+cardio-aortic
+cardioarterial
+cardioblast
+cardiocarpum
+cardiocele
+cardiocentesis
+cardiocirrhosis
+cardioclasia
+cardioclasis
+cardiod
+cardiodilator
+cardiodynamics
+cardiodynia
+cardiodysesthesia
+cardiodysneuria
+cardiogenesis
+cardiogenic
+cardiogram
+cardiograms
+cardiograph
+cardiographer
+cardiographic
+cardiographies
+cardiographs
+cardiography
+cardiohepatic
+cardioid
+cardioids
+cardio-inhibitory
+cardiokinetic
+cardiolith
+cardiologic
+cardiological
+cardiologies
+cardiologist
+cardiologists
+cardiology
+cardiolysis
+cardiomalacia
+cardiomegalia
+cardiomegaly
+cardiomelanosis
+cardiometer
+cardiometric
+cardiometry
+cardiomotility
+cardiomyoliposis
+cardiomyomalacia
+cardiomyopathy
+cardioncus
+cardionecrosis
+cardionephric
+cardioneural
+cardioneurosis
+cardionosus
+cardioparplasis
+cardiopath
+cardiopathic
+cardiopathy
+cardiopericarditis
+cardiophobe
+cardiophobia
+cardiophrenia
+cardioplasty
+cardioplegia
+cardiopneumatic
+cardiopneumograph
+cardioptosis
+cardiopulmonary
+cardiopuncture
+cardiopyloric
+cardiorenal
+cardiorespiratory
+cardiorrhaphy
+cardiorrheuma
+cardiorrhexis
+cardioschisis
+cardiosclerosis
+cardioscope
+cardiospasm
+Cardiospermum
+cardiosphygmogram
+cardiosphygmograph
+cardiosymphysis
+cardiotherapies
+cardiotherapy
+cardiotomy
+cardiotonic
+cardiotoxic
+cardiotoxicities
+cardiotoxicity
+cardiotrophia
+cardiotrophotherapy
+cardiovascular
+cardiovisceral
+cardipaludism
+cardipericarditis
+cardisophistical
+cardita
+carditic
+carditis
+carditises
+Cardito
+Cardium
+cardlike
+cardmaker
+cardmaking
+cardo
+cardol
+Cardon
+cardon
+cardona
+cardoncillo
+cardooer
+cardoon
+cardoons
+cardophagus
+cardosanto
+Cardozo
+card-perforating
+cardplayer
+cardplaying
+card-printing
+cardroom
+cards
+cardshark
+cardsharp
+cardsharper
+cardsharping
+cardsharps
+card-sorting
+cardstock
+Carduaceae
+carduaceous
+Carducci
+cardueline
+Carduelis
+car-dumping
+Carduus
+carduus
+Cardville
+Cardwell
+CARE
+Care
+care
+Careaga
+care-bewitching
+care-bringing
+care-charming
+care-cloth
+carecloth
+care-crazed
+care-crossed
+cared
+care-defying
+care-dispelling
+care-eluding
+careen
+careenage
+care-encumbered
+careened
+careener
+careeners
+careening
+careens
+career
+careered
+careerer
+careerers
+careering
+careeringly
+careerism
+careerist
+careeristic
+careers
+carefox
+care-fraught
+carefree
+carefreeness
+careful
+carefull
+carefuller
+carefullest
+carefully
+carefulness
+carefulnesses
+care-killing
+Carel
+care-laden
+careless
+carelessly
+carelessness
+carelessnesses
+care-lined
+careme
+Caren
+Carena
+Carencro
+carene
+Carenton
+carer
+carers
+cares
+Caresa
+care-scorched
+caress
+Caressa
+caressable
+caressant
+Caresse
+caressed
+caresser
+caressers
+caresses
+caressing
+caressingly
+caressive
+caressively
+carest
+caret
+caretake
+caretaken
+care-taker
+caretaker
+caretakers
+caretakes
+caretaking
+care-tired
+caretook
+carets
+Caretta
+Carettochelydidae
+care-tuned
+Carew
+careworn
+care-wounded
+Carex
+carex
+Carey
+carey
+careys
+Careywood
+carf
+carfare
+carfares
+carfax
+carfloat
+carfour
+carfuffle
+carfuffled
+carfuffling
+carful
+carfuls
+carga
+cargador
+cargadores
+cargason
+Cargian
+Cargill
+cargo
+cargoes
+cargoose
+cargos
+cargued
+Carhart
+carhop
+carhops
+carhouse
+Cari
+Caria
+cariacine
+Cariacus
+cariama
+Cariamae
+Carian
+Carib
+carib
+Caribal
+Cariban
+cariban
+Caribbean
+caribbean
+caribbeans
+Caribbee
+Caribbees
+caribe
+caribed
+Caribees
+caribes
+Caribi
+caribing
+Caribisi
+Caribou
+caribou
+Caribou-eater
+caribous
+Caribs
+Carica
+Caricaceae
+caricaceous
+caricatura
+caricaturable
+caricatural
+caricature
+caricatured
+caricatures
+caricaturing
+caricaturist
+caricaturists
+carices
+caricetum
+caricographer
+caricography
+caricologist
+caricology
+caricous
+carid
+Carida
+Caridea
+caridean
+carideer
+caridoid
+Caridomorpha
+Carie
+caried
+carien
+caries
+cariform
+CARIFTA
+Carignan
+Carijona
+Caril
+Carilla
+carillon
+carilloneur
+carillonned
+carillonneur
+carillonneurs
+carillonning
+carillons
+Carilyn
+Carin
+Carina
+carina
+carinae
+carinal
+Carinaria
+carinaria
+carinas
+Carinatae
+carinate
+carinated
+carination
+Carine
+caring
+Cariniana
+cariniform
+Carinthia
+Carinthian
+carinula
+carinulate
+carinule
+Carioca
+carioca
+Cariocan
+cariocas
+cariogenic
+cariole
+carioles
+carioling
+cariosity
+Cariotta
+carious
+cariousness
+caripeta
+Caripuna
+Cariri
+Caririan
+Carisa
+carisoprodol
+Carissa
+Carissimi
+Carita
+caritas
+caritative
+carites
+caritive
+Caritta
+carity
+Carius
+Cariyo
+cark
+carked
+carking
+carkingly
+carkled
+carks
+Carl
+carl
+Carla
+carlage
+Carland
+carle
+Carlee
+Carleen
+Carlen
+Carlene
+carles
+carless
+carlet
+Carleta
+Carleton
+Carley
+Carli
+carli
+Carlick
+Carlie
+carlie
+Carlile
+Carlin
+carlin
+Carlina
+carlina
+Carline
+carline
+carlines
+Carling
+carling
+carlings
+Carlini
+carlino
+carlins
+Carlinville
+carlish
+carlishness
+Carlisle
+Carlism
+carlism
+Carlist
+carlist
+Carlita
+Carlo
+carlo
+carload
+carloading
+carloadings
+carloads
+Carlock
+carlock
+Carlos
+carlot
+Carlota
+Carlotta
+Carlovingian
+carlovingian
+Carlow
+carls
+Carlsbad
+Carlsborg
+Carlson
+Carlstadt
+Carlstrom
+Carlton
+Carludovica
+Carly
+Carlye
+Carlyle
+Carlylean
+Carlyleian
+Carlylese
+Carlylesque
+Carlylian
+Carlylism
+carlylism
+Carlyn
+Carlyne
+Carlynn
+Carlynne
+Carma
+carmagnole
+carmagnoles
+carmaker
+carmakers
+carmalum
+Carman
+carman
+Carmania
+Carmanians
+Carmanor
+Carmarthen
+Carmarthenshire
+Carme
+Carmel
+carmel
+Carmela
+carmele
+Carmelia
+Carmelina
+Carmelita
+Carmelite
+carmelite
+Carmelitess
+Carmella
+Carmelle
+Carmelo
+carmeloite
+Carmen
+carmen
+Carmena
+Carmencita
+Carmenta
+Carmentis
+carmetta
+Carmi
+Carmichael
+Carmichaels
+car-mile
+Carmina
+carminate
+carminative
+carminatives
+Carmine
+carmine
+carmines
+carminette
+carminic
+carminite
+carminophilous
+Carmita
+carmoisin
+Carmon
+carmot
+Carn
+carn
+Carnac
+carnac
+Carnacian
+carnage
+carnaged
+carnages
+Carnahan
+carnal
+carnalism
+carnalite
+carnalities
+carnality
+carnalize
+carnalized
+carnalizing
+carnallite
+carnally
+carnal-minded
+carnal-mindedness
+carnalness
+Carnap
+carnaptious
+Carnaria
+Carnarvon
+Carnarvonshire
+carnary
+carnassial
+carnate
+Carnatic
+Carnation
+carnation
+carnationed
+carnationist
+carnation-red
+carnations
+carnauba
+carnaubas
+carnaubic
+carnaubyl
+Carnay
+carne
+Carneades
+carneau
+Carnegie
+carnegie
+Carnegiea
+carnel
+carnelian
+carnelians
+carneol
+carneole
+carneous
+Carnes
+Carnesville
+carnet
+carnets
+Carneus
+Carney
+carney
+carneyed
+carneys
+carnic
+carnie
+carnied
+carnies
+carniferous
+carniferrin
+carnifex
+carnifexes
+carnification
+carnifices
+carnificial
+carnified
+carnifies
+carniform
+carnify
+carnifying
+Carniola
+Carniolan
+carnitine
+Carnival
+carnival
+carnivaler
+carnivalesque
+carnivaller
+carnivallike
+carnivals
+Carnivora
+carnivora
+carnivoracity
+carnivoral
+carnivore
+carnivores
+carnivorism
+carnivority
+carnivorous
+carnivorously
+carnivorousness
+carnivorousnesses
+carnose
+carnosin
+carnosine
+carnosities
+carnosity
+carnoso-
+Carnot
+carnotite
+carnous
+Carnoustie
+Carnovsky
+carns
+Carnus
+Carny
+carny
+Caro
+caroa
+caroach
+caroaches
+carob
+caroba
+carobs
+caroch
+caroche
+caroches
+Caroid
+caroigne
+Carol
+carol
+Carola
+Carolan
+Carolann
+Carole
+carole
+Carolean
+carolean
+caroled
+Carolee
+Caroleen
+caroler
+carolers
+caroli
+Carolin
+carolin
+Carolina
+carolina
+carolinas
+Caroline
+caroline
+carolines
+Caroling
+caroling
+Carolingian
+carolingian
+Carolinian
+carolinian
+carolinians
+carolitic
+Carol-Jean
+Caroljean
+Carolle
+carolled
+caroller
+carollers
+carolling
+carols
+Carolus
+carolus
+caroluses
+Carolyn
+carolyn
+Carolyne
+Carolynn
+Carolynne
+carom
+carombolette
+caromed
+caromel
+caroming
+caroms
+Caron
+Carona
+carone
+caronic
+caroome
+caroon
+carosella
+carosse
+CAROT
+carot
+caroteel
+carotene
+carotenes
+carotenoid
+Carothers
+carotic
+carotid
+carotidal
+carotidean
+carotids
+carotin
+carotinaemia
+carotinemia
+carotinoid
+carotins
+carotol
+carotte
+carouba
+caroubier
+carousal
+carousals
+carouse
+caroused
+carousel
+carousels
+carouser
+carousers
+carouses
+carousing
+carousingly
+-carp
+carp
+carp-
+Carpaccio
+carpaine
+carpal
+carpale
+carpalia
+carpals
+Carpathia
+Carpathian
+Carpathians
+Carpatho-russian
+Carpatho-ruthenian
+Carpatho-Ukraine
+carpe
+Carpeaux
+carped
+carpel
+carpellary
+carpellate
+carpellum
+carpels
+carpent
+Carpentaria
+Carpenter
+carpenter
+carpentered
+Carpenteria
+carpentering
+carpenters
+carpentership
+Carpentersville
+carpenterworm
+Carpentier
+carpentries
+carpentry
+Carper
+carper
+carpers
+Carpet
+carpet
+carpet-bag
+carpetbag
+carpetbagged
+carpet-bagger
+carpetbagger
+carpetbaggers
+carpetbaggery
+carpetbagging
+carpetbaggism
+carpetbagism
+carpetbags
+carpetbeater
+carpet-covered
+carpet-cut
+carpeted
+carpeting
+carpet-knight
+carpetlayer
+carpetless
+carpetmaker
+carpetmaking
+carpetmonger
+carpets
+carpet-smooth
+carpet-sweeper
+carpetweb
+carpetweed
+carpetwork
+carpetwoven
+Carphiophiops
+carpholite
+carphology
+Carphophis
+carphosiderite
+carpi
+-carpic
+carpid
+carpidium
+carpincho
+carping
+carpingly
+carpings
+Carpinteria
+carpintero
+Carpinus
+Carpio
+Carpiodes
+carpitis
+carpium
+Carpo
+carpo-
+carpocace
+Carpocapsa
+carpocarpal
+carpocephala
+carpocephalum
+carpocerite
+carpocervical
+Carpocratian
+carpocratian
+Carpodacus
+Carpodetus
+carpogam
+carpogamy
+carpogenic
+carpogenous
+carpognia
+carpogone
+carpogonia
+carpogonial
+carpogonium
+Carpoidea
+carpolite
+carpolith
+carpological
+carpologically
+carpologist
+carpology
+carpomania
+carpometacarpal
+carpometacarpi
+carpometacarpus
+carpompi
+carpool
+carpo-olecranal
+carpools
+carpopedal
+Carpophaga
+carpophagous
+carpophalangeal
+carpophore
+Carpophorus
+carpophyl
+carpophyll
+carpophyte
+carpopodite
+carpopoditic
+carpoptosia
+carpoptosis
+carport
+carports
+carpos
+carposperm
+carposporangia
+carposporangial
+carposporangium
+carpospore
+carposporic
+carposporous
+carpostome
+-carpous
+carps
+carpsucker
+carpus
+carpuspi
+carquaise
+Carr
+carr
+Carrabelle
+Carracci
+carrack
+carracks
+carrageen
+carrageenan
+carrageenin
+carragheen
+carragheenin
+Carranza
+Carrara
+Carraran
+carrat
+carraway
+carraways
+Carrboro
+carreau
+Carree
+carree
+carrefour
+Carrel
+carrel
+carrell
+Carrelli
+carrells
+carrels
+car-replacing
+Carrere
+carreta
+carretela
+carretera
+carreton
+carretta
+Carrew
+Carri
+carri
+carriable
+carriage
+carriageable
+carriage-free
+carriageful
+carriageless
+carriages
+carriagesmith
+carriageway
+Carrick
+carrick
+Carrie
+carried
+Carrier
+carrier
+Carriere
+carrier-free
+carrier-pigeon
+carriers
+carries
+carrigeen
+Carrillo
+Carrington
+carriole
+carrioles
+carrion
+carrions
+Carrissa
+carritch
+carritches
+carriwitchet
+Carrizo
+carrizo
+Carrizozo
+Carrnan
+Carrobili
+carrocci
+carroccio
+carroch
+carroches
+Carrol
+Carroll
+carroll
+carrollite
+Carrolls
+Carrollton
+Carrolltown
+carrom
+carromata
+carromatas
+carromed
+carroming
+carroms
+carronade
+carroon
+carrosserie
+carrot
+carrotage
+carrot-colored
+carroter
+carrot-head
+carrot-headed
+Carrothers
+carrotier
+carrotiest
+carrotin
+carrotiness
+carroting
+carrotins
+carrot-pated
+carrots
+carrot-shaped
+carrot-top
+carrottop
+carrotweed
+carrotwood
+carroty
+carrousel
+carrousels
+carrow
+carrozza
+carrs
+Carrsville
+carrus
+Carruthers
+Carry
+carry
+carryable
+carry-all
+carryall
+carryalls
+carry-back
+carrycot
+carryed
+carry-forward
+carry-in
+carrying
+carrying-on
+carrying-out
+carryings
+carryings-on
+carryke
+carry-log
+carry-on
+carryon
+carryons
+carryout
+carryouts
+carry-over
+carryover
+carryovers
+carrys
+carry-tale
+carrytale
+cars
+carse
+carses
+carshop
+carshops
+carsick
+carsickness
+carsmith
+Carson
+carson
+Carsonville
+Carstensz
+carstone
+CART
+Cart
+cart
+cartable
+cartaceous
+cartage
+Cartagena
+cartages
+Cartago
+Cartan
+cartboot
+cartbote
+Carte
+carte
+carted
+carte-de-visite
+cartel
+cartelism
+cartelist
+cartelistic
+cartelization
+cartelize
+cartelized
+cartelizing
+cartellist
+cartels
+Carter
+carter
+Carteret
+carterly
+carters
+Cartersburg
+Cartersville
+Carterville
+cartes
+Cartesian
+cartesian
+Cartesianism
+cartful
+Carthage
+Carthaginian
+Carthal
+carthame
+carthamic
+carthamin
+Carthamus
+carthamus
+carthorse
+Carthusian
+carthusian
+Carthy
+Cartie
+Cartier
+cartier
+Cartier-Bresson
+cartiest
+cartilage
+cartilages
+cartilaginean
+Cartilaginei
+cartilagineous
+Cartilagines
+cartilaginification
+cartilaginoid
+cartilaginous
+carting
+cartisane
+Cartist
+cartload
+cartloads
+cartmaker
+cartmaking
+cartman
+cartobibliography
+cartogram
+cartograph
+cartographer
+cartographers
+cartographic
+cartographical
+cartographically
+cartographies
+cartography
+cartomancies
+cartomancy
+carton
+cartoned
+cartoner
+cartonful
+cartoning
+cartonnage
+cartonnier
+cartonniers
+carton-pierre
+cartons
+cartoon
+cartooned
+cartooning
+cartoonist
+cartoonists
+cartoons
+cartop
+cartopper
+cartouch
+cartouche
+cartouches
+cartridge
+cartridges
+cart-rutted
+carts
+cartsale
+cartularies
+cartulary
+cartware
+cartway
+Cartwell
+cart-wheel
+cartwheel
+cartwheeler
+cartwheels
+cartwhip
+Cartwright
+cartwright
+cartwrighting
+carty
+carua
+caruage
+carucage
+carucal
+carucarius
+carucate
+carucated
+Carum
+caruncle
+caruncles
+caruncula
+carunculae
+caruncular
+carunculate
+carunculated
+carunculous
+Carupano
+carus
+Caruso
+Caruthers
+Caruthersville
+carvacrol
+carvacryl
+carvage
+carval
+carve
+carved
+carvel
+carvel-built
+carvel-planked
+carvels
+carven
+carvene
+Carver
+carver
+carvers
+carvership
+Carversville
+carves
+carvestrene
+Carvey
+Carville
+carving
+carvings
+carvist
+carvoeira
+carvoepra
+carvol
+carvomenthene
+carvone
+carvy
+carvyl
+carwash
+carwashes
+carwitchet
+Cary
+cary-
+Carya
+caryatic
+caryatid
+caryatidal
+caryatidean
+caryatides
+caryatidic
+caryatids
+Caryatis
+Caryl
+caryl
+Caryll
+Caryn
+caryo-
+Caryocar
+Caryocaraceae
+caryocaraceous
+Caryophyllaceae
+caryophyllaceous
+caryophyllene
+caryophylleous
+caryophyllin
+caryophyllous
+Caryophyllus
+caryopilite
+caryopses
+caryopsides
+caryopsis
+Caryopteris
+Caryota
+caryotin
+caryotins
+Caryville
+carzey
+CAS
+Cas
+Casa
+casa
+casaba
+casabas
+casabe
+Casabianca
+Casablanca
+casablanca
+Casabonne
+Casadesus
+Casady
+casal
+Casaleggio
+Casals
+casalty
+Casamarca
+Casandra
+Casanova
+casanova
+Casanovanic
+casanovas
+casaque
+casaques
+casaquin
+Casar
+casas
+Casasia
+casate
+Casatus
+Casaubon
+casaun
+casava
+Casavant
+casavas
+casave
+casavi
+Casbah
+casbah
+casbahs
+cascabel
+cascabels
+cascable
+cascables
+cascadable
+cascade
+cascade-connect
+cascaded
+cascades
+Cascadia
+Cascadian
+cascading
+cascadite
+cascado
+Cascais
+cascalho
+cascalote
+cascan
+cascara
+cascaras
+cascarilla
+cascaron
+cascavel
+caschielawis
+caschrom
+Cascilla
+Casco
+casco
+cascol
+cascrom
+cascrome
+CASE
+Case
+case
+Casearia
+casease
+caseases
+caseate
+caseated
+caseates
+caseating
+caseation
+case-bearer
+casebearer
+casebook
+casebooks
+case-bound
+casebound
+casebox
+caseconv
+cased
+casefied
+casefies
+caseful
+casefy
+casefying
+case-harden
+caseharden
+case-hardened
+casehardened
+casehardening
+casehardens
+caseic
+casein
+caseinate
+caseine
+caseinogen
+caseins
+casekeeper
+case-knife
+Casel
+caseless
+caselessly
+caseload
+caseloads
+caselty
+casemaker
+casemaking
+casemate
+casemated
+casemates
+Casement
+casement
+casemented
+casements
+caseolysis
+caseose
+caseoses
+caseous
+caser
+caser-in
+caserio
+caserios
+casern
+caserne
+casernes
+caserns
+Caserta
+cases
+case-shot
+casette
+casettes
+caseum
+Caseville
+case-weed
+caseweed
+casewood
+casework
+case-worker
+caseworker
+caseworkers
+caseworks
+case-worm
+caseworm
+caseworms
+Casey
+Caseyville
+Cash
+cash
+casha
+cashable
+cashableness
+cash-and-carry
+cashaw
+cashaws
+cash-book
+cashbook
+cashbooks
+cashbox
+cashboxes
+cashboy
+cashcuttee
+cashdrawer
+cashed
+casheen
+cashel
+casher
+cashers
+cashes
+cashew
+cashews
+cashgirl
+Cashibo
+cashier
+cashiered
+cashierer
+cashiering
+cashierment
+Cashiers
+cashiers
+cashing
+Cashion
+cashkeeper
+cashless
+cashment
+Cashmere
+cashmere
+cashmeres
+cashmerette
+Cashmerian
+Cashmirian
+cashoo
+cashoos
+cashou
+Cashton
+Cashtown
+Casi
+Casia
+Casie
+Casilda
+Casilde
+casimere
+casimeres
+Casimir
+Casimire
+casimire
+casimires
+Casimiroa
+casina
+casinet
+casing
+casing-in
+casings
+casini
+casino
+casinos
+casiri
+casita
+casitas
+cask
+caskanet
+casked
+casket
+casketed
+casketing
+casketlike
+caskets
+casking
+casklike
+casks
+cask-shaped
+casky
+Caslon
+Casmalia
+Casmey
+Casnovia
+Cason
+Caspar
+Casparian
+Casper
+casper
+Caspian
+caspian
+casque
+casqued
+casques
+casquet
+casquetel
+casquette
+Cass
+cass
+cassaba
+cassabanana
+cassabas
+cassabully
+cassada
+Cassadaga
+Cassady
+cassady
+cassalty
+cassan
+Cassander
+Cassandra
+cassandra
+Cassandra-like
+Cassandran
+cassandras
+Cassandre
+Cassandrian
+Cassandry
+cassapanca
+cassare
+cassareep
+cassata
+cassatas
+cassate
+cassation
+Cassatt
+Cassaundra
+cassava
+cassavas
+Casscoe
+casse
+Cassegrain
+Cassegrainian
+Cassel
+Casselberry
+Cassell
+Cassella
+Casselton
+casselty
+cassena
+casserole
+casseroled
+casseroles
+casseroling
+casse-tete
+cassette
+cassettes
+Cassey
+casshe
+Cassi
+Cassia
+cassia
+Cassiaceae
+Cassian
+Cassiani
+cassias
+cassican
+Cassicus
+Cassida
+cassideous
+cassidid
+Cassididae
+Cassidinae
+cassidoine
+cassidony
+Cassidulina
+cassiduloid
+Cassiduloidea
+Cassidy
+Cassie
+cassie
+Cassiepea
+Cassiepean
+Cassiepeia
+Cassil
+Cassilda
+cassimere
+cassina
+cassine
+Cassinese
+cassinette
+Cassini
+Cassinian
+cassinian
+Cassino
+cassino
+cassinoid
+cassinos
+cassioberry
+Cassiodorus
+Cassiope
+Cassiopea
+Cassiopean
+Cassiopeia
+cassiopeia
+Cassiopeiae
+Cassiopeian
+cassiopeian
+Cassiopeid
+cassiopeium
+cassique
+Cassirer
+cassiri
+CASSIS
+Cassis
+cassis
+cassises
+Cassite
+cassiterite
+cassites
+Cassius
+cassius
+cassock
+cassocked
+cassocks
+Cassoday
+cassolette
+casson
+cassonade
+Cassondra
+cassone
+cassoni
+cassons
+cassoon
+Cassopolis
+cassoulet
+cassowaries
+cassowary
+Casstown
+cassumunar
+cassumuniar
+Cassville
+Cassy
+cassy
+Cassytha
+Cassythaceae
+cast
+Casta
+castable
+castagnole
+Castalia
+castalia
+Castalian
+Castalides
+Castalio
+Castana
+castana
+castane
+Castanea
+castanean
+castaneous
+castanet
+castanets
+castanian
+castano
+Castanopsis
+Castanospermum
+Castara
+castaway
+castaways
+cast-back
+cast-by
+caste
+Casteau
+casted
+Casteel
+casteism
+casteisms
+casteless
+castelet
+Castell
+Castella
+castellan
+castellanies
+castellano
+Castellanos
+castellans
+castellanship
+castellanus
+castellany
+castellar
+castellate
+castellated
+castellation
+castellatus
+castellet
+castelli
+Castellna
+castellum
+Castelnuovo-Tedesco
+Castelvetro
+casten
+Caster
+caster
+Castera
+caste-ridden
+casterless
+caster-off
+casters
+castes
+casteth
+casthouse
+castice
+castigable
+castigate
+castigated
+castigates
+castigating
+castigation
+castigations
+castigative
+castigator
+castigatories
+castigators
+castigatory
+Castiglione
+Castile
+castile
+Castilian
+castilian
+Castilla
+Castilleja
+Castillo
+castillo
+Castilloa
+Castine
+casting
+castings
+cast-iron
+cast-iron-plant
+Castle
+castle
+Castleberry
+castle-builder
+castle-building
+castle-built
+castle-buttressed
+castle-crowned
+castled
+Castledale
+Castleford
+castle-guard
+castle-guarded
+castlelike
+Castlereagh
+castlery
+castles
+castlet
+Castleton
+castleward
+castlewards
+castlewise
+Castlewood
+castling
+cast-me-down
+castock
+cast-off
+castoff
+castoffs
+Castor
+castor
+Castora
+castor-bean
+Castores
+castoreum
+castorial
+Castoridae
+castorin
+Castorina
+castorite
+castorized
+Castorland
+Castoroides
+castors
+castory
+Castra
+castra
+castral
+castrametation
+castrate
+castrated
+castrater
+castrates
+castrati
+castrating
+castration
+castrations
+castrato
+castrator
+castrators
+castratory
+castrensial
+castrensian
+Castries
+Castro
+castro
+Castroism
+Castroist
+Castroite
+Castrop-Rauxel
+Castroville
+castrum
+casts
+cast-steel
+castuli
+cast-weld
+CASU
+casual
+casualism
+casualist
+casuality
+casually
+casualness
+casualnesses
+casuals
+casualties
+casualty
+Casuariidae
+Casuariiformes
+Casuarina
+casuarina
+Casuarinaceae
+casuarinaceous
+Casuarinales
+Casuarius
+casuary
+casuist
+casuistess
+casuistic
+casuistical
+casuistically
+casuistries
+casuistry
+casuists
+casula
+casule
+casus
+casusistry
+Caswell
+caswellite
+Casziel
+CAT
+Cat
+cat
+cat.
+cata-
+catabaptist
+catabases
+catabasion
+catabasis
+catabatic
+catabibazon
+catabiotic
+catabolic
+catabolically
+catabolin
+catabolism
+catabolite
+catabolize
+catabolized
+catabolizing
+catacaustic
+catachreses
+catachresis
+catachresti
+catachrestic
+catachrestical
+catachrestically
+catachthonian
+catachthonic
+cataclasis
+cataclasm
+cataclasmic
+cataclastic
+cataclinal
+cataclysm
+cataclysmal
+cataclysmatic
+cataclysmatist
+cataclysmic
+cataclysmically
+cataclysmist
+cataclysms
+catacomb
+catacombic
+catacombs
+catacorner
+catacorolla
+catacoustics
+catacromyodian
+catacrotic
+catacrotism
+catacumba
+catacumbal
+catacylsmic
+catadicrotic
+catadicrotism
+catadioptric
+catadioptrical
+catadioptrics
+catadrome
+catadromous
+catadupe
+Cataebates
+catafalco
+catafalque
+catafalques
+catagenesis
+catagenetic
+catagmatic
+catagories
+Cataian
+cataian
+catakinesis
+catakinetic
+catakinetomer
+catakinomeric
+Catalan
+catalan
+Catalanganes
+Catalanist
+catalase
+catalases
+catalatic
+Catalaunian
+Cataldo
+catalecta
+catalectic
+catalecticant
+catalects
+catalepsies
+catalepsis
+catalepsy
+cataleptic
+cataleptically
+cataleptics
+cataleptiform
+cataleptize
+cataleptoid
+catalexes
+catalexis
+Catalin
+catalin
+Catalina
+catalina
+catalineta
+catalinite
+catallactic
+catallactically
+catallactics
+catallum
+catalo
+cataloes
+catalog
+cataloged
+cataloger
+catalogers
+catalogia
+catalogic
+catalogical
+cataloging
+catalogist
+catalogistic
+catalogize
+catalogs
+catalogue
+catalogued
+cataloguer
+cataloguers
+catalogues
+cataloguing
+cataloguish
+cataloguist
+cataloguize
+Catalonia
+Catalonian
+cataloon
+catalos
+catalowne
+Catalpa
+catalpa
+catalpas
+catalufa
+catalufas
+catalyse
+catalyses
+catalysis
+catalyst
+catalysts
+catalyte
+catalytic
+catalytical
+catalytically
+catalyzator
+catalyze
+catalyzed
+catalyzer
+catalyzers
+catalyzes
+catalyzing
+catamaran
+catamarans
+Catamarca
+Catamarcan
+Catamarenan
+catamenia
+catamenial
+catamite
+catamited
+catamites
+catamiting
+Catamitus
+catamneses
+catamnesis
+catamnestic
+catamount
+cat-a-mountain
+catamountain
+catamounts
+catan
+catanadromous
+Catananche
+cat-and-dog
+cat-and-doggish
+Catania
+Catano
+Catanzaro
+catapan
+catapasm
+catapetalous
+cataphasia
+cataphatic
+cataphonic
+cataphonics
+cataphora
+cataphoresis
+cataphoretic
+cataphoretically
+cataphoria
+cataphoric
+cataphract
+Cataphracta
+cataphracted
+Cataphracti
+cataphractic
+cataphrenia
+cataphrenic
+Cataphrygian
+cataphrygian
+cataphrygianism
+cataphyll
+cataphylla
+cataphyllary
+cataphyllum
+cataphysic
+cataphysical
+cataplane
+cataplasia
+cataplasis
+cataplasm
+cataplastic
+catapleiite
+cataplexy
+catapuce
+catapult
+catapulted
+catapultic
+catapultier
+catapulting
+catapults
+cataract
+cataractal
+cataracted
+cataracteg
+cataractine
+cataractous
+cataracts
+cataractwise
+cataria
+Catarina
+catarinite
+catarrh
+catarrhal
+catarrhally
+catarrhed
+Catarrhina
+catarrhine
+catarrhinian
+catarrhous
+catarrhs
+catasarka
+Catasauqua
+Catasetum
+cataspilite
+catasta
+catastaltic
+catastases
+catastasis
+catastate
+catastatic
+catasterism
+catastrophal
+catastrophe
+catastrophes
+catastrophic
+catastrophical
+catastrophically
+catastrophism
+catastrophist
+catathymic
+catatonia
+catatoniac
+catatonias
+catatonic
+catatonics
+catatony
+Cataula
+Cataumet
+Catavi
+catawampous
+catawampously
+catawamptious
+catawamptiously
+catawampus
+Catawba
+catawba
+catawbas
+Catawissa
+cat-bed
+catberry
+catbird
+catbirds
+catboat
+catboats
+catbrier
+catbriers
+cat-built
+catcall
+catcalled
+catcaller
+catcalling
+catcalls
+catch
+catch-
+catch-22
+catchable
+catch-all
+catchall
+catchalls
+catch-as-catch-can
+catch-cord
+catchcry
+catched
+catcher
+catchers
+catches
+catchflies
+catchfly
+catchie
+catchier
+catchiest
+catchiness
+catching
+catchingly
+catchingness
+catchland
+catchlight
+catchline
+catchment
+catchments
+cat-chop
+catchpennies
+catchpenny
+catchphrase
+catchplate
+catchpole
+catchpoled
+catchpolery
+catchpoleship
+catchpoling
+catchpoll
+catchpolled
+catchpollery
+catchpolling
+catch-up
+catchup
+catchups
+catchwater
+catchweed
+catchweight
+catchword
+catchwords
+catchwork
+catchy
+catclaw
+cat-clover
+catdom
+Cate
+cate
+catecheses
+catechesis
+catechetic
+catechetical
+catechetically
+catechin
+catechins
+catechisable
+catechisation
+catechise
+catechised
+catechiser
+catechising
+Catechism
+catechism
+catechismal
+catechisms
+catechist
+catechistic
+catechistical
+catechistically
+catechists
+catechizable
+catechization
+catechize
+catechized
+catechizer
+catechizes
+catechizing
+catechol
+catecholamine
+catecholamines
+catechols
+catechu
+catechumen
+catechumenal
+catechumenate
+catechumenical
+catechumenically
+catechumenism
+catechumens
+catechumenship
+catechus
+catechutannic
+categorem
+categorematic
+categorematical
+categorematically
+categorial
+categoric
+categorical
+categorically
+categoricalness
+categories
+categorisation
+categorise
+categorised
+categorising
+categorist
+categorization
+categorizations
+categorize
+categorized
+categorizer
+categorizers
+categorizes
+categorizing
+category
+catel
+catelectrode
+catelectrotonic
+catelectrotonus
+catella
+catena
+catenae
+catenane
+catenarian
+catenaries
+catenary
+catenas
+catenate
+catenated
+catenates
+catenating
+catenation
+catenative
+catenoid
+catenoids
+catenulate
+catepuce
+cater
+cateran
+caterans
+caterbrawl
+catercap
+cater-corner
+catercorner
+cater-cornered
+catercornered
+catercornerways
+cater-cousin
+catercousin
+cater-cousinship
+catered
+caterer
+caterers
+caterership
+cateress
+cateresses
+Caterina
+catering
+cateringly
+Caterpillar
+caterpillar
+caterpillared
+caterpillarlike
+caterpillars
+caters
+caterva
+caterwaul
+caterwauled
+caterwauler
+caterwauling
+caterwauls
+catery
+Cates
+cates
+Catesbaea
+catesbeiana
+Catesby
+cateye
+cat-eyed
+catface
+catfaced
+catfaces
+catfacing
+catfall
+catfalls
+catfight
+cat-fish
+catfish
+catfishes
+cat-foot
+catfoot
+catfooted
+catgut
+catguts
+Cath
+Cath.
+cath
+cath-
+Catha
+cat-hammed
+Cathar
+cathar
+catharan
+Cathari
+Catharina
+Catharine
+catharine
+Catharism
+Catharist
+catharist
+Catharistic
+catharization
+catharize
+catharized
+catharizing
+Catharpin
+cat-harpin
+cat-harpings
+Cathars
+catharses
+catharsis
+Catharsius
+Cathartae
+Cathartes
+cathartic
+cathartical
+cathartically
+catharticalness
+cathartics
+Cathartidae
+Cathartides
+cathartin
+Cathartolinum
+Cathay
+Cathayan
+Cathe
+cat-head
+cathead
+catheads
+cathect
+cathected
+cathectic
+cathecting
+cathection
+cathects
+cathedra
+cathedrae
+cathedral
+cathedraled
+cathedralesque
+cathedralic
+cathedral-like
+cathedrallike
+cathedrals
+cathedralwise
+cathedras
+cathedrated
+cathedratic
+cathedratica
+cathedratical
+cathedratically
+cathedraticum
+Cathee
+cathepsin
+catheptic
+Cather
+catheretic
+Catherin
+Catherina
+Catherine
+catherine
+cathern
+Catherwood
+Catheryn
+catheter
+catheterisation
+catheterise
+catheterised
+catheterising
+catheterism
+catheterization
+catheterize
+catheterized
+catheterizes
+catheterizing
+catheters
+catheti
+cathetometer
+cathetometric
+cathetus
+cathetusti
+cathexes
+cathexion
+cathexis
+Cathey
+Cathi
+cathidine
+Cathie
+cathin
+cathine
+cathinine
+cathion
+cathisma
+cathismata
+Cathlamet
+Cathleen
+Cathlene
+cathodal
+cathode
+cathodegraph
+cathodes
+cathodic
+cathodical
+cathodically
+cathodofluorescence
+cathodograph
+cathodography
+cathodoluminescence
+cathodo-luminescent
+cathodoluminescent
+cathograph
+cathography
+cat-hole
+cathole
+Catholic
+catholic
+catholical
+catholically
+catholicalness
+catholicate
+catholici
+catholicisation
+catholicise
+catholicised
+catholiciser
+catholicising
+Catholicism
+catholicism
+catholicist
+Catholicity
+catholicity
+catholicization
+catholicize
+catholicized
+catholicizer
+catholicizing
+catholicly
+catholicness
+catholico-
+catholicoi
+catholicon
+catholicos
+catholicoses
+catholics
+catholicus
+catholyte
+Cathomycin
+cathood
+cathop
+cathouse
+cathouses
+Cathrin
+Cathrine
+ca'-thro'
+cathro
+Cathryn
+cathud
+Cathy
+cathy
+Cathyleen
+Cati
+Catie
+Catilinarian
+Catiline
+catiline
+Catima
+Catina
+cating
+cation
+cation-active
+cationic
+cationically
+cations
+CATIS
+cativo
+catjang
+catkin
+catkinate
+catkins
+Catlaina
+cat-lap
+catlap
+CATLAS
+Catlee
+Catlett
+Catlettsburg
+cat-like
+catlike
+Catlin
+catlin
+catline
+catling
+catlings
+catlinite
+catlins
+cat-locks
+catmalison
+catmint
+catmints
+catnache
+catnap
+catnaper
+catnapers
+catnapped
+catnapper
+catnapping
+catnaps
+catnep
+catnip
+catnips
+Cato
+catoblepas
+Catocala
+catocalid
+catocarthartic
+catocathartic
+catochus
+Catoctin
+catoctin
+Catodon
+catodont
+catogene
+catogenic
+Catoism
+cat-o'-mountain
+Caton
+Catonian
+catonian
+Catonic
+Catonically
+cat-o'-nine-tails
+cat-o-nine-tails
+Catonism
+Catonsville
+Catoosa
+catoptric
+catoptrical
+catoptrically
+catoptrics
+catoptrite
+catoptromancy
+catoptromantic
+Catoquina
+catostomid
+Catostomidae
+catostomoid
+Catostomus
+catouse
+catpiece
+catpipe
+catproof
+Catreus
+cat-rigged
+catrigged
+Catrina
+Catriona
+Catron
+cats
+cat's-claw
+cat's-cradle
+cat's-ear
+cat's-eye
+cat's-eyes
+cat's-feet
+cat's-foot
+cat's-head
+Catskill
+catskill
+Catskills
+catskin
+catskinner
+catslide
+catso
+catsos
+cat's-paw
+catspaw
+catspaws
+cat's-tail
+catstane
+catstep
+cat-stick
+catstick
+catstitch
+catstitcher
+catstone
+catsup
+catsups
+Catt
+cattabu
+cattail
+cattails
+cattalo
+cattaloes
+cattalos
+Cattan
+cattan
+Cattaraugus
+catted
+Cattegat
+Cattell
+catter
+catteries
+cattery
+Catti
+cattie
+Cattier
+cattier
+catties
+cattiest
+cattily
+Cattima
+cattimandoo
+cattiness
+cattinesses
+catting
+cattish
+cattishly
+cattishness
+cattle
+cattlebush
+cattlefold
+cattlegate
+cattle-grid
+cattle-guard
+cattlehide
+cattleless
+cattleman
+cattlemen
+cattle-plague
+cattle-ranching
+cattleship
+cattle-specked
+Cattleya
+cattleya
+cattleyak
+cattleyas
+Catto
+Catton
+cat-train
+Catty
+catty
+catty-co
+catty-corner
+cattycorner
+catty-cornered
+cattycornered
+cattyman
+cattyphoid
+Catullian
+Catullus
+catur
+CATV
+catvine
+catwalk
+catwalks
+cat-whistles
+catwise
+cat-witted
+catwood
+catwort
+Caty
+catydid
+catzerie
+CAU
+caubeen
+cauboge
+Cauca
+Caucasia
+Caucasian
+caucasian
+caucasians
+Caucasic
+Caucasoid
+caucasoid
+caucasoids
+Caucasus
+caucasus
+Caucete
+cauch
+cauchemar
+cauchillo
+caucho
+Cauchy
+Caucon
+caucus
+caucused
+caucuses
+caucusing
+caucussed
+caucusses
+caucussing
+cauda
+caudad
+caudae
+caudaite
+caudal
+caudally
+caudalward
+Caudata
+caudata
+caudate
+caudated
+caudates
+caudation
+caudatolenticular
+caudatory
+caudatum
+Caudebec
+caudebeck
+caudex
+caudexes
+caudices
+caudicle
+caudiform
+caudillism
+Caudillo
+caudillo
+caudillos
+caudle
+caudles
+caudocephalad
+caudodorsal
+caudofemoral
+caudolateral
+caudotibial
+caudotibialis
+cauf
+caufle
+Caughey
+Caughnawaga
+caught
+cauk
+cauked
+cauking
+caul
+cauld
+cauldrife
+cauldrifeness
+cauldron
+cauldrons
+caulds
+Caulerpa
+Caulerpaceae
+caulerpaceous
+caules
+caulescent
+Caulfield
+cauli
+caulicle
+caulicles
+caulicole
+caulicolous
+caulicule
+cauliculi
+cauliculus
+cauliferous
+cauliflorous
+cauliflory
+cauliflower
+cauliflower-eared
+cauliflowers
+cauliform
+cauligenous
+caulinar
+caulinary
+cauline
+caulis
+Caulite
+caulivorous
+caulk
+caulked
+caulker
+caulkers
+caulking
+caulkings
+caulks
+caulo-
+caulocarpic
+caulocarpous
+caulome
+caulomer
+caulomic
+Caulonia
+caulophylline
+Caulophyllum
+Caulopteris
+caulopteris
+caulosarc
+caulotaxis
+caulotaxy
+caulote
+cauls
+caum
+cauma
+caumatic
+caunch
+Caundra
+Caunos
+caunter
+Caunus
+caup
+caupo
+cauponate
+cauponation
+caupones
+cauponize
+Cauquenes
+Cauqui
+caurale
+Caurus
+caus
+caus.
+causa
+causability
+causable
+causae
+causal
+causaless
+causalgia
+causalities
+causality
+causally
+causals
+causans
+causata
+causate
+causation
+causational
+causationism
+causationist
+causations
+causative
+causatively
+causativeness
+causativity
+causator
+causatum
+cause
+cause-and-effect
+caused
+causeful
+causeless
+causelessly
+causelessness
+causer
+causerie
+causeries
+causers
+causes
+causeur
+causeuse
+causeuses
+causeway
+causewayed
+causewaying
+causewayman
+causeways
+Causey
+causey
+causeys
+causidical
+causing
+causingness
+causon
+causse
+causson
+caustic
+caustical
+caustically
+causticiser
+causticism
+causticity
+causticization
+causticize
+causticized
+causticizer
+causticizing
+causticly
+causticness
+caustics
+caustification
+caustified
+caustify
+caustifying
+Causus
+cautel
+cautela
+cautelous
+cautelously
+cautelousness
+cauter
+cauterant
+cauteries
+cauterisation
+cauterise
+cauterised
+cauterising
+cauterism
+cauterization
+cauterizations
+cauterize
+cauterized
+cauterizer
+cauterizes
+cauterizing
+cautery
+Cauthornville
+cautio
+caution
+cautionaries
+cautionary
+cautioned
+cautioner
+cautioners
+cautiones
+cautioning
+cautionings
+cautionry
+cautions
+cautious
+cautiously
+cautiousness
+cautiousnesses
+cautivo
+Cauvery
+CAV
+Cav
+Cav.
+cav
+cava
+cavae
+cavaedia
+cavaedium
+Cavafy
+caval
+cavalcade
+cavalcaded
+cavalcades
+cavalcading
+Cavalerius
+cavalero
+cavaleros
+Cavalier
+cavalier
+cavaliere
+cavaliered
+cavalieres
+Cavalieri
+cavalieri
+cavaliering
+cavalierish
+cavalierishness
+cavalierism
+cavalierly
+cavalierness
+cavaliernesses
+cavaliero
+cavaliers
+cavaliership
+cavalla
+Cavallaro
+cavallas
+cavallies
+cavally
+cavalries
+cavalry
+cavalryman
+cavalrymen
+Cavan
+Cavanagh
+Cavanaugh
+cavascope
+cavate
+cavated
+cavatina
+cavatinas
+cavatine
+cavayard
+cavdia
+Cave
+cave
+cavea
+caveae
+caveat
+caveated
+caveatee
+caveating
+caveator
+caveators
+caveats
+caved
+cavefish
+cavefishes
+cave-guarded
+cave-in
+cavekeeper
+cave-keeping
+cavel
+cavelet
+cavelike
+Cavell
+cave-lodged
+cave-loving
+caveman
+cavemen
+Cavendish
+cavendish
+caver
+cavern
+cavernal
+caverned
+cavernicolous
+caverning
+cavernitis
+cavernlike
+cavernoma
+cavernous
+cavernously
+caverns
+cavernulous
+cavers
+Caves
+caves
+cavesson
+Cavetown
+cavetti
+cavetto
+cavettos
+cavey
+Cavia
+caviar
+caviare
+caviares
+caviars
+cavicorn
+Cavicornia
+Cavidae
+cavie
+cavies
+Cavil
+cavil
+caviled
+caviler
+cavilers
+caviling
+cavilingly
+cavilingness
+Cavill
+cavillation
+cavillatory
+cavilled
+caviller
+cavillers
+cavilling
+cavillingly
+cavillingness
+cavillous
+cavils
+cavin
+Cavina
+Caviness
+caving
+cavings
+cavi-relievi
+cavi-rilievi
+cavish
+Cavit
+cavitary
+cavitate
+cavitated
+cavitates
+cavitating
+cavitation
+cavitations
+Cavite
+caviteno
+cavitied
+cavities
+cavity
+caviya
+cavo-relievo
+cavo-relievos
+cavo-rilievo
+cavort
+cavorted
+cavorter
+cavorters
+cavorting
+cavorts
+Cavour
+CAVU
+cavu
+cavum
+Cavuoto
+cavus
+cavy
+cavyyard
+caw
+Cawdrey
+cawed
+cawing
+cawk
+cawker
+cawky
+cawl
+Cawley
+cawney
+cawnie
+Cawnpore
+cawny
+Cawood
+cawquaw
+caws
+c-axes
+Caxias
+caxiri
+c-axis
+caxon
+Caxton
+caxton
+Caxtonian
+cay
+Cayapa
+Cayapo
+Cayce
+Caye
+Cayenne
+cayenne
+cayenned
+cayennes
+Cayes
+Cayey
+Cayla
+Cayley
+Cayleyan
+cayleyan
+Caylor
+cayman
+caymans
+caynard
+cayos
+cays
+Cayser
+Cayubaba
+Cayubaban
+cayuca
+cayuco
+Cayucos
+Cayuga
+cayuga
+Cayugan
+Cayugas
+cayugas
+Cayuse
+cayuse
+cayuses
+Cayuta
+Cayuvava
+Caz
+caza
+Cazadero
+Cazenovia
+cazibi
+cazimi
+cazique
+caziques
+Cazzie
+C.B.
+CB
+Cb
+cb
+CBC
+C.B.D.
+CBD
+CBDS
+C.B.E.
+CBE
+CBEL
+CBEMA
+CBI
+C-bias
+CBR
+CBS
+CBW
+CBX
+C.C.
+CC
+Cc
+cc
+cc.
+CCA
+CCAFS
+CCC
+CCCCM
+CCCI
+CCD
+CCDS
+Cceres
+ccesser
+CCF
+CCH
+Cchaddie
+cchaddoorck
+Cchakri
+CCI
+ccid
+CCIM
+CCIP
+CCIR
+CCIS
+CCITT
+ccitt
+cckw
+CCL
+CCls
+ccm
+CCNC
+CCNY
+Ccoya
+CCP
+CCR
+CCRP
+CCS
+CCSA
+CCT
+CCTA
+CCTAC
+CCTV
+CCU
+Ccuta
+CCV
+CCW
+ccw
+ccws
+C.D.
+C/D
+CD
+Cd
+c.d.
+c/d
+cd
+cd.
+CDA
+CDAR
+CDB
+CDC
+CDCF
+Cdenas
+CDEV
+CDF
+cdf
+cdg
+CDI
+CDIAC
+Cdiz
+CDN
+Cdn
+CDO
+Cdoba
+CDP
+CDPR
+CDR
+Cdr
+Cdr.
+cdr
+Cdre
+CDROM
+CDS
+CDSF
+CDT
+CDU
+C.E.
+CE
+Ce
+ce
+CEA
+Ceanothus
+ceanothus
+Cear
+Ceara
+cearin
+cease
+ceased
+cease-fire
+ceaseless
+ceaselessly
+ceaselessness
+ceases
+ceasing
+ceasmic
+Ceausescu
+Ceb
+Cebalrai
+Cebatha
+cebell
+cebian
+cebid
+Cebidae
+cebids
+cebil
+cebine
+ceboid
+ceboids
+Cebolla
+cebollite
+Cebriones
+Cebu
+cebur
+Cebus
+cebus
+CEC
+ceca
+cecal
+cecally
+cecca
+cecchine
+Cece
+Cecelia
+Cechy
+cecidiologist
+cecidiology
+cecidium
+cecidogenous
+cecidologist
+cecidology
+cecidomyian
+cecidomyiid
+Cecidomyiidae
+cecidomyiidous
+Cecil
+cecil
+Cecile
+Ceciley
+Cecilia
+Cecilio
+cecilite
+Cecilius
+Cecilla
+Cecillia
+cecils
+Cecilton
+Cecily
+cecitis
+cecity
+cecograph
+Cecomorphae
+cecomorphic
+cecopexy
+cecostomy
+cecotomy
+Cecropia
+cecropia
+Cecrops
+cecum
+cecums
+cecutiency
+Cecyle
+CED
+Ced
+Cedalion
+Cedar
+cedar
+cedarbird
+Cedarbrook
+cedar-brown
+Cedarburg
+cedar-colored
+Cedarcrest
+cedared
+Cedaredge
+Cedarhurst
+Cedarkey
+Cedarlane
+cedarn
+Cedars
+cedars
+Cedartown
+Cedarvale
+Cedarville
+cedarware
+cedarwood
+cedary
+cede
+ceded
+Cedell
+cedens
+cedent
+ceder
+ceders
+cedes
+cedi
+cedilla
+cedillas
+ceding
+cedis
+cedr-
+cedrat
+cedrate
+cedre
+Cedreatis
+Cedrela
+cedrela
+cedrene
+Cedric
+cedrin
+cedrine
+cedriret
+cedrium
+cedrol
+cedron
+Cedrus
+cedry
+cedula
+cedulas
+cedule
+ceduous
+cee
+ceennacuelum
+CEERT
+cees
+Ceevah
+Ceevee
+CEF
+Cefis
+CEGB
+CEI
+Ceiba
+ceiba
+ceibas
+ceibo
+ceibos
+Ceil
+ceil
+ceile
+ceiled
+ceiler
+ceilers
+ceilidh
+ceilidhe
+ceiling
+ceilinged
+ceilings
+ceilingward
+ceilingwards
+ceilometer
+ceils
+ceint
+ceinte
+ceinture
+ceintures
+ceja
+Cela
+Celadon
+celadon
+celadonite
+celadons
+Celaeno
+celandine
+celandines
+Celanese
+Celarent
+celarent
+Celastraceae
+celastraceous
+Celastrus
+celation
+celative
+celature
+Celaya
+-cele
+Cele
+cele
+celeb
+celebe
+Celebes
+celebes
+Celebesian
+celebrant
+celebrants
+celebrate
+celebrated
+celebratedly
+celebratedness
+celebrater
+celebrates
+celebrating
+celebration
+celebrationis
+celebrations
+celebrative
+celebrator
+celebrators
+celebratory
+celebre
+celebres
+celebret
+Celebrezze
+celebrious
+celebrities
+celebrity
+celebs
+celemin
+celemines
+Celene
+celeomorph
+Celeomorphae
+celeomorphic
+celeriac
+celeriacs
+celeries
+celerities
+celerity
+celery
+celery-leaved
+celery-topped
+Celeski
+Celesta
+celesta
+celestas
+Celeste
+celeste
+celestes
+Celestia
+celestial
+celestiality
+celestialize
+celestialized
+celestially
+celestialness
+celestify
+Celestina
+celestina
+Celestine
+celestine
+Celestinian
+celestite
+celestitude
+Celestyn
+Celestyna
+celeusma
+Celeuthea
+Celia
+celiac
+celiacs
+celiadelphus
+celiagra
+celialgia
+celibacies
+celibacy
+celibataire
+celibatarian
+celibate
+celibates
+celibatic
+celibatist
+celibatory
+celidographer
+celidography
+Celie
+celiectasia
+celiectomy
+celiemia
+celiitis
+Celik
+Celin
+Celina
+Celinda
+Celine
+Celinka
+Celio
+celiocele
+celiocentesis
+celiocolpotomy
+celiocyesis
+celiodynia
+celioelytrotomy
+celioenterotomy
+celiogastrotomy
+celiohysterotomy
+celiolymph
+celiomyalgia
+celiomyodynia
+celiomyomectomy
+celiomyomotomy
+celiomyositis
+celioncus
+celioparacentesis
+celiopyosis
+celiorrhaphy
+celiorrhea
+celiosalpingectomy
+celiosalpingotomy
+celioschisis
+celioscope
+celioscopy
+celiotomies
+celiotomy
+Celisse
+celite
+Celka
+cell
+cella
+cellae
+cellager
+cellar
+cellarage
+cellared
+cellarer
+cellarers
+cellaress
+cellaret
+cellarets
+cellarette
+cellaring
+cellarless
+cellarman
+cellarmen
+cellarous
+cellars
+cellarway
+cellarwoman
+cellated
+cellblock
+cell-blockade
+cellblocks
+Celle
+celled
+Cellepora
+cellepore
+Cellfalcicula
+celli
+celliferous
+celliform
+cellifugal
+celling
+Cellini
+cellipetal
+cellist
+cellists
+Cellite
+cell-like
+cellmate
+cellmates
+Cello
+cello
+cellobiose
+cellocut
+celloid
+celloidin
+celloist
+cellophane
+cellophanes
+cellos
+cellose
+cells
+cell-shaped
+Cellucotton
+cellular
+cellularity
+cellularly
+cellulase
+cellulate
+cellulated
+cellulating
+cellulation
+cellule
+cellules
+cellulicidal
+celluliferous
+cellulifugal
+cellulifugally
+cellulin
+cellulipetal
+cellulipetally
+cellulitis
+cellulo-
+cellulocutaneous
+cellulofibrous
+Celluloid
+celluloid
+celluloided
+cellulolytic
+Cellulomonadeae
+Cellulomonas
+cellulose
+cellulosed
+celluloses
+cellulosic
+cellulosing
+cellulosities
+cellulosity
+cellulotoxic
+cellulous
+Cellvibrio
+Cel-o-Glass
+celom
+celomata
+celoms
+celo-navigation
+Celoron
+celoscope
+Celosia
+celosia
+celosias
+Celotex
+celotomies
+celotomy
+Cels
+Celsia
+celsian
+celsitude
+Celsius
+celsius
+CELSS
+Celt
+Celt.
+celt
+Celtdom
+Celtiberi
+Celtiberian
+Celtic
+celtic
+Celtically
+Celtic-Germanic
+Celticism
+Celticist
+celticist
+Celticize
+Celtidaceae
+celtiform
+Celtillyrians
+Celtis
+Celtish
+Celtism
+Celtist
+celtium
+Celtization
+celto-
+Celto-Germanic
+Celto-ligyes
+Celtologist
+Celtologue
+Celtomaniac
+Celtophil
+Celtophobe
+Celtophobia
+Celto-roman
+Celto-slavic
+Celto-thracians
+celts
+celtuce
+celure
+Cemal
+cembali
+cembalist
+cembalo
+cembalon
+cembalos
+cement
+cementa
+cemental
+cementation
+cementations
+cementatory
+cement-coated
+cement-covered
+cement-drying
+cemented
+cementer
+cementers
+cement-faced
+cement-forming
+cementification
+cementing
+cementite
+cementitious
+cementless
+cementlike
+cement-lined
+cement-lining
+cementmaker
+cementmaking
+cementoblast
+cementoma
+Cementon
+cements
+cement-temper
+cementum
+cementwork
+cemetaries
+cemetary
+cemeterial
+cemeteries
+cemetery
+CEN
+cen
+cen-
+cen.
+Cenac
+cenacle
+cenacles
+cenaculum
+Cenaean
+Cenaeum
+cenanthous
+cenanthy
+cenation
+cenatory
+Cence
+cencerro
+cencerros
+Cenchrias
+Cenchrus
+Cenci
+cendre
+-cene
+cene
+cenesthesia
+cenesthesis
+cenesthetic
+Cenis
+cenizo
+cenobe
+cenobian
+cenobies
+cenobite
+cenobites
+cenobitic
+cenobitical
+cenobitically
+cenobitism
+cenobium
+cenoby
+cenogamy
+cenogenesis
+cenogenetic
+cenogenetically
+cenogonous
+Cenomanian
+cenosite
+cenosity
+cenospecies
+cenospecific
+cenospecifically
+cenotaph
+cenotaphic
+cenotaphies
+cenotaphs
+cenotaphy
+cenote
+cenotes
+Cenozoic
+cenozoic
+cenozoology
+CENS
+cense
+censed
+censer
+censerless
+censers
+censes
+censing
+censitaire
+censive
+censor
+censorable
+censorate
+censored
+censorial
+censorian
+censoring
+Censorinus
+censorious
+censoriously
+censoriousness
+censoriousnesses
+censors
+censorship
+censorships
+censual
+censurability
+censurable
+censurableness
+censurably
+censure
+censured
+censureless
+censurer
+censurers
+censures
+censureship
+censuring
+census
+censused
+censuses
+censusing
+cent
+cent.
+centage
+centai
+cental
+centals
+centare
+centares
+centas
+centaur
+centaurdom
+Centaurea
+centaurea
+centauress
+Centauri
+centauri
+centaurial
+centaurian
+centauric
+Centaurid
+Centauridium
+centauries
+Centaurium
+centauromachia
+centauromachy
+centauro-triton
+centaurs
+Centaurus
+centaurus
+centaury
+centavo
+centavos
+centena
+centenar
+centenarian
+centenarianism
+centenarians
+centenaries
+Centenary
+centenary
+centenier
+centenionales
+centenionalis
+centennia
+centennial
+centennially
+centennials
+centennium
+Centeno
+Center
+center
+centerable
+centerboard
+centerboards
+centered
+centeredly
+centeredness
+centerer
+center-fire
+centerfold
+centerfolds
+centering
+centerless
+centerline
+centermost
+centerpiece
+centerpieces
+centerpunch
+centers
+center-sawed
+center-second
+centervelic
+Centerville
+centerward
+centerwise
+centeses
+centesimal
+centesimally
+centesimate
+centesimation
+centesimi
+centesimo
+centesimos
+centesis
+centesm
+Centetes
+centetid
+Centetidae
+centgener
+centgrave
+centi
+centi-
+centiar
+centiare
+centiares
+centibar
+centiday
+centifolious
+centigrade
+centigrado
+centigram
+centigramme
+centigrams
+centile
+centiles
+centiliter
+centiliters
+centilitre
+centillion
+centillions
+centillionth
+Centiloquy
+centiloquy
+Centimani
+centime
+centimes
+centimeter
+centimeter-gram
+centimeter-gram-second
+centimeters
+centimetre
+centimetre-gramme-second
+centimetre-gram-second
+centimetres
+centimo
+centimolar
+centimos
+centinel
+centinody
+centinormal
+centipedal
+centipede
+centipedes
+centiplume
+centipoise
+centistere
+centistoke
+centner
+centners
+CENTO
+cento
+centon
+centones
+centonical
+centonism
+centonization
+Centonze
+centos
+centr-
+centra
+centrad
+Centrahoma
+central
+centrale
+centraler
+Centrales
+centrales
+centralest
+central-fire
+Centralia
+centralia
+centralisation
+centralise
+centralised
+centraliser
+centralising
+centralism
+centralist
+centralistic
+centralists
+centralities
+centrality
+centralization
+centralizations
+centralize
+centralized
+centralizer
+centralizers
+centralizes
+centralizing
+centrally
+centralness
+centrals
+centranth
+Centranthus
+centrarchid
+Centrarchidae
+centrarchoid
+centration
+Centraxonia
+centraxonial
+Centre
+centre
+centreboard
+Centrechinoida
+centred
+centref
+centre-fire
+centrefold
+Centrehall
+centreless
+centremost
+centrepiece
+centrer
+centres
+centrev
+Centreville
+centrex
+centri-
+-centric
+centric
+Centricae
+centrical
+centricality
+centrically
+centricalness
+centricipital
+centriciput
+centricity
+centriffed
+centrifugal
+centrifugalisation
+centrifugalise
+centrifugalization
+centrifugalize
+centrifugalized
+centrifugalizing
+centrifugaller
+centrifugally
+centrifugate
+centrifugation
+centrifuge
+centrifuged
+centrifugence
+centrifuges
+centrifuging
+centring
+centrings
+centriole
+centripetal
+centripetalism
+centripetally
+centripetence
+centripetency
+centriscid
+Centriscidae
+centrisciform
+centriscoid
+Centriscus
+centrism
+centrisms
+centrist
+centrists
+centro
+centro-
+centroacinar
+centrobaric
+centrobarical
+centroclinal
+centrode
+centrodesmose
+centrodesmus
+centrodorsal
+centrodorsally
+centroid
+centroidal
+centroids
+centrolecithal
+Centrolepidaceae
+centrolepidaceous
+centrolinead
+centrolineal
+centromere
+centromeric
+centronote
+centronucleus
+centroplasm
+Centropomidae
+Centropomus
+Centrosema
+centrosome
+centrosomic
+Centrosoyus
+Centrospermae
+centrosphere
+centrosymmetric
+centrosymmetrical
+centrosymmetry
+Centrotus
+centrum
+centrums
+centrutra
+centry
+cents
+centum
+centums
+centumvir
+centumviral
+centumvirate
+Centunculus
+centuple
+centupled
+centuples
+centuplicate
+centuplicated
+centuplicating
+centuplication
+centupling
+centuply
+centure
+Centuria
+centuria
+centurial
+centuriate
+centuriation
+centuriator
+centuried
+centuries
+centurion
+centurions
+centurist
+Century
+century
+CEO
+ceonocyte
+ceorl
+ceorlish
+ceorls
+cep
+cepa
+cepaceous
+cepe
+cepes
+cephadia
+cephaeline
+Cephaelis
+cephal-
+cephala
+Cephalacanthidae
+Cephalacanthus
+cephalad
+cephalagra
+cephalalgia
+cephalalgic
+cephalalgy
+cephalanthium
+cephalanthous
+Cephalanthus
+Cephalaspis
+cephalaspis
+Cephalata
+cephalate
+cephaldemae
+cephalemia
+cephaletron
+Cephaleuros
+cephalexin
+cephalhematoma
+cephalhydrocele
+-cephalic
+cephalic
+cephalically
+cephalin
+Cephalina
+cephaline
+cephalins
+cephalism
+cephalitis
+cephalization
+cephalo-
+cephaloauricular
+cephalob
+Cephalobranchiata
+cephalobranchiate
+cephalocathartic
+cephalocaudal
+cephalocele
+cephalocentesis
+cephalocercal
+Cephalocereus
+cephalochord
+Cephalochorda
+cephalochordal
+Cephalochordata
+cephalochordate
+cephaloclasia
+cephaloclast
+cephalocone
+cephaloconic
+cephalocyst
+cephalodia
+cephalodiscid
+Cephalodiscida
+Cephalodiscus
+cephalodium
+cephalodymia
+cephalodymus
+cephalodynia
+cephalofacial
+cephalogenesis
+cephalogram
+cephalograph
+cephalohumeral
+cephalohumeralis
+cephaloid
+cephalology
+cephalom
+cephalomancy
+cephalomant
+cephalomelus
+cephalomenia
+cephalomeningitis
+cephalomere
+cephalometer
+cephalometric
+cephalometry
+cephalomotor
+cephalomyitis
+cephalon
+cephalonasal
+Cephalonia
+cephalopagus
+cephalopathy
+cephalopharyngeal
+cephalophine
+cephalophorous
+Cephalophus
+cephalophyma
+cephaloplegia
+cephaloplegic
+cephalopod
+Cephalopoda
+cephalopoda
+cephalopodan
+cephalopodic
+cephalopodous
+Cephalopterus
+cephalorachidian
+cephalorhachidian
+cephaloridine
+cephalosome
+cephalospinal
+cephalosporin
+Cephalosporium
+cephalostyle
+Cephalotaceae
+cephalotaceous
+Cephalotaxus
+cephalotheca
+cephalothecal
+cephalothoraces
+cephalothoracic
+cephalothoracopagus
+cephalothorax
+cephalothoraxes
+cephalotome
+cephalotomy
+cephalotractor
+cephalotribe
+cephalotripsy
+cephalotrocha
+Cephalotus
+cephalous
+-cephalus
+Cephalus
+Cephas
+Cephei
+Cepheid
+cepheid
+cepheids
+cephen
+Cepheus
+cepheus
+cephid
+Cephidae
+Cephus
+Cepolidae
+Ceporah
+cepous
+ceps
+cepter
+ceptor
+CEQ
+cequi
+cera
+ceraceous
+cerago
+ceral
+Cerallua
+Ceram
+ceramal
+ceramals
+Cerambus
+cerambycid
+Cerambycidae
+Ceramiaceae
+ceramiaceous
+ceramic
+ceramicist
+ceramicists
+ceramicite
+ceramics
+ceramidium
+ceramist
+ceramists
+Ceramium
+ceramium
+ceramographic
+ceramography
+cerargyrite
+ceras
+cerasein
+cerasin
+cerastes
+Cerastium
+Cerasus
+cerat
+cerat-
+cerata
+cerate
+ceratectomy
+cerated
+cerates
+ceratiasis
+ceratiid
+Ceratiidae
+ceratin
+ceratinous
+ceratins
+ceratioid
+ceration
+ceratite
+Ceratites
+ceratitic
+Ceratitidae
+Ceratitis
+ceratitoid
+Ceratitoidea
+Ceratium
+ceratium
+cerato-
+Ceratobatrachinae
+ceratoblast
+ceratobranchial
+ceratocricoid
+ceratocystis
+Ceratodidae
+Ceratodontidae
+Ceratodus
+ceratodus
+ceratoduses
+ceratofibrous
+ceratoglossal
+ceratoglossus
+ceratohyal
+ceratohyoid
+ceratoid
+ceratomandibular
+ceratomania
+Ceratonia
+Ceratophrys
+Ceratophyllaceae
+ceratophyllaceous
+Ceratophyllum
+Ceratophyta
+ceratophyte
+Ceratops
+Ceratopsia
+ceratopsian
+ceratopsid
+Ceratopsidae
+Ceratopteridaceae
+ceratopteridaceous
+Ceratopteris
+ceratorhine
+Ceratosa
+Ceratosaurus
+ceratosaurus
+Ceratospongiae
+ceratospongian
+Ceratostomataceae
+Ceratostomella
+ceratotheca
+ceratothecae
+ceratothecal
+Ceratozamia
+ceraunia
+ceraunics
+ceraunite
+ceraunogram
+ceraunograph
+ceraunomancy
+ceraunophone
+ceraunoscope
+ceraunoscopy
+Cerbberi
+Cerberean
+cerberean
+Cerberi
+Cerberic
+Cerberus
+cerberus
+Cerberuses
+-cercal
+cercal
+cercaria
+cercariae
+cercarial
+cercarian
+cercarias
+cercariform
+cercelee
+cerci
+Cercidiphyllaceae
+Cercis
+cercis
+cercises
+cercis-leaf
+cercle
+Cercocebus
+Cercolabes
+Cercolabidae
+cercomonad
+Cercomonadidae
+Cercomonas
+Cercopes
+cercopid
+Cercopidae
+cercopithecid
+Cercopithecidae
+Cercopithecoid
+cercopithecoid
+Cercopithecus
+cercopithecus
+cercopod
+Cercospora
+Cercosporella
+cercus
+Cercyon
+Cerdonian
+CerE
+cere
+cereal
+cerealian
+cerealin
+cerealism
+cerealist
+cerealose
+cereals
+cerebbella
+cerebella
+cerebellar
+cerebellifugal
+cerebellipetal
+cerebellitis
+cerebellocortex
+cerebello-olivary
+cerebellopontile
+cerebellopontine
+cerebellorubral
+cerebellospinal
+cerebellum
+cerebellums
+cerebr-
+cerebra
+cerebral
+cerebralgia
+cerebralism
+cerebralist
+cerebralization
+cerebralize
+cerebrally
+cerebrals
+cerebrasthenia
+cerebrasthenic
+cerebrate
+cerebrated
+cerebrates
+cerebrating
+cerebration
+cerebrational
+cerebrations
+Cerebratulus
+cerebri
+cerebric
+cerebricity
+cerebriform
+cerebriformly
+cerebrifugal
+cerebrin
+cerebripetal
+cerebritis
+cerebrize
+cerebro-
+cerebrocardiac
+cerebrogalactose
+cerebroganglion
+cerebroganglionic
+cerebroid
+cerebrology
+cerebroma
+cerebromalacia
+cerebromedullary
+cerebromeningeal
+cerebromeningitis
+cerebrometer
+cerebron
+cerebronic
+cerebro-ocular
+cerebroparietal
+cerebropathy
+cerebropedal
+cerebrophysiology
+cerebropontile
+cerebropsychosis
+cerebrorachidian
+cerebrosclerosis
+cerebroscope
+cerebroscopy
+cerebrose
+cerebrosensorial
+cerebroside
+cerebrosis
+cerebro-spinal
+cerebrospinal
+cerebrospinant
+cerebrosuria
+cerebrotomy
+cerebrotonia
+cerebrotonic
+cerebrovascular
+cerebrovisceral
+cerebrum
+cerebrums
+cerecloth
+cerecloths
+cered
+Ceredo
+cereless
+Cerelia
+Cerell
+Cerellia
+Cerelly
+cerement
+cerements
+ceremonial
+ceremonialism
+ceremonialist
+ceremonialists
+ceremonialize
+ceremonially
+ceremonialness
+ceremonials
+ceremoniary
+ceremonies
+ceremonious
+ceremoniously
+ceremoniousness
+ceremony
+Cerenkov
+cerenkov
+cereous
+cerer
+cererite
+Ceres
+ceres
+Ceresco
+ceresin
+ceresine
+Cereus
+cereus
+cereuses
+cerevis
+cerevisial
+cereza
+Cerf
+cerfoil
+ceria
+Cerialia
+cerianthid
+Cerianthidae
+cerianthoid
+Cerianthus
+cerias
+ceric
+ceride
+ceriferous
+cerigerous
+Cerigo
+cerilla
+cerillo
+ceriman
+cerimans
+cerin
+cerine
+cering
+Cerinthe
+Cerinthian
+cerinthian
+Ceriomyces
+Cerion
+Cerionidae
+ceriops
+Ceriornis
+ceriph
+ceriphs
+cerise
+cerises
+cerite
+cerites
+Cerithiidae
+cerithioid
+Cerithium
+cerium
+ceriums
+CERMET
+cermet
+cermets
+CERN
+Cern
+cern
+Cernauti
+cerned
+cerning
+cerniture
+Cernuda
+cernuous
+cero
+cero-
+cerograph
+cerographer
+cerographic
+cerographical
+cerographies
+cerographist
+cerography
+ceroid
+ceroline
+cerolite
+ceroma
+ceromancy
+ceromez
+ceroon
+cerophilous
+ceroplast
+ceroplastic
+ceroplastics
+ceroplasty
+ceros
+cerosin
+ceroso-
+cerotate
+cerote
+cerotene
+cerotic
+cerotin
+cerotype
+cerotypes
+cerous
+ceroxyle
+Ceroxylon
+Cerracchio
+cerrero
+cerre-tree
+cerrial
+Cerrillos
+cerris
+Cerritos
+Cerro
+Cerrogordo
+CERT
+cert
+cert.
+certain
+certainer
+certainest
+certainly
+certainness
+certainties
+certainty
+certes
+Certhia
+Certhiidae
+Certie
+certie
+certif
+certifiability
+certifiable
+certifiableness
+certifiably
+certificate
+certificated
+certificates
+certificating
+certification
+certifications
+certificative
+certificator
+certificatory
+certified
+certifier
+certifiers
+certifies
+certify
+certifying
+certiorari
+certiorate
+certiorating
+certioration
+certis
+certitude
+certitudes
+certosa
+certose
+certosina
+certosino
+certy
+cerule
+cerulean
+ceruleans
+cerulein
+ceruleite
+ceruleo-
+ceruleolactite
+ceruleous
+cerulescent
+ceruleum
+cerulific
+cerulignol
+cerulignone
+ceruloplasmin
+cerumen
+cerumens
+ceruminal
+ceruminiferous
+ceruminous
+cerumniparous
+ceruse
+ceruses
+cerusite
+cerusites
+cerussite
+cervalet
+Cervantes
+cervantes
+cervantic
+Cervantist
+cervantite
+cervelas
+cervelases
+cervelat
+cervelats
+cerveliere
+cervelliere
+Cerveny
+cervical
+Cervicapra
+cervicaprine
+cervicectomy
+cervices
+cervicicardiac
+cervicide
+cerviciplex
+cervicispinal
+cervicitis
+cervico-
+cervicoauricular
+cervicoaxillary
+cervicobasilar
+cervicobrachial
+cervicobregmatic
+cervicobuccal
+cervicodorsal
+cervicodynia
+cervicofacial
+cervicohumeral
+cervicolabial
+cervicolingual
+cervicolumbar
+cervicomuscular
+cerviconasal
+cervico-occipital
+cervico-orbicular
+cervicorn
+cervicoscapular
+cervicothoracic
+cervicovaginal
+cervicovesical
+cervid
+Cervidae
+Cervin
+Cervinae
+cervine
+cervisia
+cervisial
+cervix
+cervixes
+cervoid
+cervuline
+Cervulus
+Cervus
+Cery
+ceryl
+Cerynean
+Cerys
+Ceryx
+Cesar
+cesar
+Cesare
+cesare
+Cesarean
+cesarean
+cesareans
+cesarevitch
+Cesaria
+Cesarian
+cesarian
+cesarians
+Cesaro
+cesarolite
+Cesena
+cesious
+cesium
+cesiums
+cespititious
+cespititous
+cespitose
+cespitosely
+cespitulose
+cess
+cessant
+cessantly
+cessation
+cessations
+cessative
+cessavit
+cessed
+cesser
+cesses
+cessible
+cessing
+cessio
+cession
+cessionaire
+cessionaries
+cessionary
+cessionee
+cessions
+cessment
+Cessna
+cessor
+cesspipe
+cesspit
+cesspits
+cesspool
+cesspools
+cest
+cesta
+Cestar
+cestas
+ceste
+Cesti
+cesti
+Cestida
+Cestidae
+Cestoda
+Cestodaria
+cestode
+cestodes
+cestoi
+cestoid
+Cestoidea
+cestoidean
+cestoids
+ceston
+cestos
+Cestracion
+cestraciont
+Cestraciontes
+Cestraciontidae
+cestraction
+Cestrian
+cestrian
+Cestrinus
+Cestrum
+cestrum
+cestui
+cestus
+cestuses
+cestuy
+cesura
+cesurae
+cesural
+cesuras
+cesure
+Cesya
+CET
+cet-
+Ceta
+Cetacea
+cetacea
+cetacean
+cetaceans
+cetaceous
+cetaceum
+cetane
+cetanes
+Cete
+cete
+cetene
+ceteosaur
+cetera
+ceterach
+cetes
+Ceti
+ceti
+cetic
+ceticide
+Cetid
+cetin
+Cetinje
+Cetiosauria
+cetiosaurian
+Cetiosaurus
+cetiosaurus
+Ceto
+cetological
+cetologies
+cetologist
+cetology
+Cetomorpha
+cetomorphic
+Cetonia
+cetonian
+Cetoniides
+Cetoniinae
+cetorhinid
+Cetorhinidae
+cetorhinoid
+Cetorhinus
+cetotolite
+Cetraria
+cetraric
+cetrarin
+Cetura
+Cetus
+cetus
+cetyl
+cetylene
+cetylic
+Ceuta
+CEV
+cevadilla
+cevadilline
+cevadine
+Cevdet
+Cevennes
+Cevennian
+Cevenol
+Cevenole
+CEVI
+cevian
+ceviche
+ceviches
+cevine
+cevitamic
+ceylanite
+Ceylon
+ceylon
+Ceylonese
+ceylonese
+ceylonite
+ceyssatite
+Ceyx
+Cezanne
+Cezannesque
+C.F.
+CF
+Cf
+c/f
+cf
+cf.
+CFA
+CFB
+CFC
+CFCA
+CFD
+cfd
+CFE
+CFF
+cfh
+CFHT
+CFI
+cfi
+CFL
+cfm
+CFO
+CFP
+CFR
+cfs
+C.G.
+CG
+c.g.
+cg
+cg.
+CGA
+CGCT
+CGE
+CGI
+CGIAR
+CGM
+cgm
+CGN
+CGS
+cgs
+CGX
+CH
+Ch
+c.h.
+ch
+ch.
+CHA
+Cha
+cha
+chaa
+Cha'ah
+chab
+chabasie
+chabasite
+chabazite
+chaber
+Chabichou
+Chablis
+chablis
+Chabot
+chabot
+chabouk
+chabouks
+Chabrier
+Chabrol
+chabuk
+chabuks
+chabutra
+Chac
+chacate
+chac-chac
+chaccon
+Chace
+chace
+Cha-cha
+cha-cha
+cha-cha-cha
+cha-chaed
+cha-chaing
+chachalaca
+chachalakas
+Chachapuya
+cha-chas
+chack
+chack-bird
+Chackchiuma
+chacker
+chackle
+chackled
+chackler
+chackling
+chacma
+chacmas
+Chac-mool
+Chaco
+chaco
+chacoli
+Chacon
+chacona
+chaconne
+chaconnes
+chacra
+chacte
+chacun
+Chad
+chad
+Chadabe
+chadacryst
+chadar
+chadarim
+chadars
+Chadbourn
+Chadbourne
+Chadburn
+Chadd
+Chadderton
+Chaddie
+Chaddsford
+Chaddy
+chadelle
+Chader
+Chadic
+chadless
+chadlock
+chador
+chadors
+chadri
+Chadron
+chads
+Chadwick
+Chadwicks
+Chae
+Chaenactis
+Chaenolobus
+Chaenomeles
+Chaeronea
+chaeta
+chaetae
+chaetal
+Chaetangiaceae
+Chaetangium
+Chaetetes
+Chaetetidae
+Chaetifera
+chaetiferous
+Chaetites
+Chaetitidae
+Chaetochloa
+Chaetodon
+chaetodon
+chaetodont
+chaetodontid
+Chaetodontidae
+chaetognath
+Chaetognatha
+chaetognathan
+chaetognathous
+chaetophobia
+Chaetophora
+Chaetophoraceae
+chaetophoraceous
+Chaetophorales
+chaetophorous
+chaetopod
+Chaetopoda
+chaetopodan
+chaetopodous
+chaetopterin
+Chaetopterus
+chaetosema
+Chaetosoma
+Chaetosomatidae
+Chaetosomidae
+chaetotactic
+chaetotaxy
+Chaetura
+chafe
+chafed
+Chafee
+chafer
+chaferies
+chafers
+chafery
+chafes
+chafe-wax
+chafewax
+chafeweed
+chaff
+chaffcutter
+chaffed
+Chaffee
+chaffer
+chaffered
+chafferer
+chafferers
+chaffering
+chaffers
+chaffery
+chaffeur-ship
+chaff-flower
+chaffier
+chaffiest
+Chaffin
+Chaffinch
+chaffinch
+chaffinches
+chaffiness
+chaffing
+chaffingly
+chaffless
+chafflike
+chaffman
+chaffron
+chaffs
+chaffseed
+chaffwax
+chaff-weed
+chaffweed
+chaffy
+chafing
+chaft
+chafted
+Chaga
+chagal
+Chagall
+chagan
+Chagatai
+Chagga
+chagigah
+chagoma
+Chagres
+chagrin
+chagrined
+chagrining
+chagrinned
+chagrinning
+chagrins
+chaguar
+chagul
+Chahab
+Chahar
+chahar
+chahars
+chai
+Chaiken
+Chaikovski
+Chaille
+Chailletiaceae
+Chaillot
+Chaim
+Chain
+chain
+chainage
+chain-bag
+chainbearer
+chainbreak
+chain-bridge
+chain-driven
+chain-drooped
+chaine
+chained
+chainer
+chaines
+chainette
+Chainey
+Chaing
+Chaingy
+chaining
+chainless
+chainlet
+chainlike
+chainmaker
+chainmaking
+chainman
+chainmen
+chainomatic
+chainon
+chainplate
+chain-pump
+chain-react
+chain-reacting
+chains
+chain-shaped
+chain-shot
+chainsman
+chainsmen
+chainsmith
+chain-smoke
+chain-smoked
+chain-smoker
+chain-smoking
+chain-spotted
+chain-stitch
+chainstitch
+chain-stitching
+chain-swung
+chain-testing
+chain-wale
+chainwale
+chain-welding
+chain-work
+chainwork
+chair
+chairborne
+chaired
+chairer
+chair-fast
+chairing
+chairladies
+chairlady
+chairless
+chairlift
+chairmaker
+chairmaking
+chairman
+chairmaned
+chairmaning
+chairmanned
+chairmanning
+chairmans
+chairmanship
+chairmanships
+chairmen
+chairmender
+chairmending
+chair-mortising
+chairperson
+chairpersons
+chairs
+chair-shaped
+chair-warmer
+chairwarmer
+chairway
+chairwoman
+chairwomen
+chais
+chaise
+chaiseless
+chaise-longue
+chaise-marine
+chaises
+Chait
+chaitra
+chaitya
+chaityas
+chaja
+Chak
+chaka
+Chakales
+chakar
+chakari
+Chakavski
+chakazi
+chakdar
+Chaker
+chakobu
+chakra
+chakram
+chakras
+chakravartin
+chaksi
+Chal
+chal
+chalaco
+chalah
+chalahs
+chalana
+chalastic
+Chalastogastra
+chalaza
+chalazae
+chalazal
+chalazas
+chalaze
+chalazia
+chalazian
+chalaziferous
+chalazion
+chalazium
+chalazogam
+chalazogamic
+chalazogamy
+chalazoidite
+chalazoin
+chalcanth
+chalcanthite
+Chalcedon
+Chalcedonian
+chalcedonian
+chalcedonic
+chalcedonies
+chalcedonous
+chalcedony
+chalcedonyx
+chalchihuitl
+chalchuite
+chalcid
+Chalcidian
+chalcidian
+Chalcidic
+chalcidica
+Chalcidice
+chalcidicum
+chalcidid
+Chalcididae
+chalcidiform
+chalcidoid
+Chalcidoidea
+chalcids
+Chalcioecus
+Chalciope
+Chalcis
+chalcites
+chalco-
+chalcocite
+chalcogen
+chalcogenide
+chalcograph
+chalcographer
+chalcographic
+chalcographical
+chalcographist
+chalcography
+chalcolite
+Chalcolithic
+chalcolithic
+chalcomancy
+chalcomenite
+chalcon
+chalcone
+chalcophanite
+chalcophile
+chalcophyllite
+chalcopyrite
+chalcosiderite
+chalcosine
+chalcostibite
+chalcotrichite
+chalcotript
+chalcus
+Chald
+Chaldaei
+Chaldae-pahlavi
+Chaldaic
+chaldaic
+Chaldaical
+Chaldaism
+Chaldea
+Chaldean
+chaldean
+Chaldee
+chaldee
+chalder
+chaldese
+chaldron
+chaldrons
+chaleh
+chalehs
+chalet
+chalets
+Chalfont
+Chaliapin
+chalice
+chaliced
+chalices
+chalicosis
+chalicothere
+chalicotheriid
+Chalicotheriidae
+chalicotherioid
+Chalicotherium
+Chalina
+Chalinidae
+chalinine
+Chalinitis
+chalk
+chalkboard
+chalkboards
+chalkcutter
+chalk-eating
+chalked
+chalker
+chalk-eyed
+chalkier
+chalkiest
+chalkiness
+chalking
+chalklike
+chalkline
+chalkography
+chalkone
+chalkos
+chalkosideric
+chalkotheke
+chalkpit
+chalkrail
+chalks
+chalk-stone
+chalkstone
+chalkstony
+chalk-talk
+chalk-white
+chalkworker
+chalky
+challa
+challah
+challahs
+challas
+challengable
+challenge
+challengeable
+challenged
+challengee
+challengeful
+challenger
+challengers
+challenges
+challenging
+challengingly
+challie
+challies
+challiho
+challihos
+Challis
+challis
+challises
+challot
+challote
+challoth
+Chally
+chally
+Chalmer
+chalmer
+Chalmers
+Chalmette
+chalon
+chalone
+chalones
+Chalonnais
+Chalons
+Chalons-sur-Marne
+Chalon-sur-Sa
+chalot
+chaloth
+chaloupe
+chalque
+chalta
+chaluka
+Chalukya
+Chalukyan
+chalumeau
+chalumeaux
+chalutz
+chalutzim
+Chalybean
+chalybean
+chalybeate
+chalybeous
+Chalybes
+chalybite
+Cham
+cham
+Chama
+chama
+Chamacea
+Chamacoco
+chamade
+chamades
+Chamaebatia
+Chamaecistus
+chamaecranial
+Chamaecrista
+Chamaecyparis
+Chamaedaphne
+Chamaeleo
+Chamaeleon
+Chamaeleontidae
+Chamaeleontis
+Chamaelirium
+Chamaenerion
+Chamaepericlymenum
+chamaephyte
+chamaeprosopic
+Chamaerops
+chamaerops
+chamaerrhine
+Chamaesaura
+Chamaesiphon
+Chamaesiphonaceae
+Chamaesiphonaceous
+Chamaesiphonales
+Chamaesyce
+chamal
+Chamar
+chamar
+chambellan
+chamber
+chamber-deacon
+chamberdeacon
+chambered
+chamberer
+chamberfellow
+chambering
+Chamberino
+Chamberlain
+chamberlain
+chamberlainry
+chamberlains
+chamberlainship
+chamberlet
+chamberleted
+chamberletted
+Chamberlin
+chambermaid
+chambermaids
+chamber-master
+Chambers
+chambers
+Chambersburg
+Chambersville
+Chambertin
+chambertin
+chamberwoman
+Chambery
+Chambioa
+Chamblee
+Chambord
+chambranle
+chambray
+chambrays
+chambre
+chambrel
+Chambry
+chambul
+Chamdo
+chamecephalic
+chamecephalous
+chamecephalus
+chamecephaly
+chameleon
+chameleonic
+chameleonize
+chameleonlike
+chameleons
+chametz
+chamfer
+chamfered
+chamferer
+chamfering
+chamfers
+chamfrain
+chamfron
+chamfrons
+Chamian
+Chamicuro
+Chamidae
+Chaminade
+Chamisal
+chamisal
+chamise
+chamises
+chamiso
+chamisos
+Chamite
+chamite
+Chamizal
+Chamkanni
+Chamkis
+chamlet
+chamm
+chamma
+chammied
+chammies
+chammy
+chammying
+chamois
+chamoised
+chamoises
+Chamoisette
+chamoising
+chamoisite
+chamoix
+chamoline
+chamomile
+Chamomilla
+Chamonix
+Chamorro
+Chamorros
+Chamos
+chamosite
+chamotte
+Chamouni
+Champ
+champ
+Champa
+champac
+champaca
+champacol
+champacs
+Champagne
+champagne
+Champagne-Ardenne
+champagned
+champagneless
+champagnes
+champagning
+champagnize
+champagnized
+champagnizing
+Champaign
+champaign
+Champaigne
+champain
+champak
+champaka
+champaks
+champart
+champe
+champed
+Champenois
+champer
+champerator
+champers
+champert
+champerties
+champertor
+champertous
+champerty
+champian
+champignon
+champignons
+Champigny-sur-Marne
+champine
+champing
+champion
+championed
+championess
+championing
+championize
+championless
+championlike
+champions
+championship
+championships
+Champlain
+Champlainic
+champlev
+champleve
+Champlin
+Champollion
+champs
+champy
+chams
+Cham-selung
+chamsin
+Chamuel
+Chamyne
+Ch'an
+Chan
+chan
+Chana
+Chanaan
+Chanabal
+Chanc
+Chanca
+Chancay
+Chance
+chance
+chanceable
+chanceably
+chanced
+chance-dropped
+chanceful
+chancefully
+chancefulness
+chance-hit
+chance-hurt
+chancel
+chanceled
+chanceless
+chancelled
+chancelleries
+chancellery
+Chancellor
+chancellor
+chancellorate
+chancelloress
+chancellories
+chancellorism
+chancellors
+chancellorship
+chancellorships
+Chancellorsville
+chancellory
+Chancelor
+chancelor
+chancelry
+chancels
+chanceman
+chance-medley
+chancemen
+chance-met
+chance-poised
+chancer
+chancered
+chanceries
+chancering
+chancery
+chances
+chance-shot
+chance-sown
+chance-taken
+chancewise
+chance-won
+Chancey
+chancey
+Chan-chan
+chanche
+chanchito
+chancier
+chanciest
+chancily
+chanciness
+chancing
+chancito
+chanco
+chancre
+chancres
+chancriform
+chancroid
+chancroidal
+chancroids
+chancrous
+chancy
+Chanda
+Chandal
+chandala
+chandam
+Chandarnagar
+chandelier
+chandeliers
+chandelle
+chandelled
+chandelles
+chandelling
+Chandernagor
+Chandernagore
+Chandi
+chandi
+Chandigarh
+Chandler
+chandler
+chandleress
+chandleries
+chandlering
+chandlerly
+chandlers
+Chandlersville
+Chandlerville
+chandlery
+Chandless
+chandoo
+Chandos
+Chandra
+Chandragupta
+chandrakanta
+chandrakhi
+chandry
+chandu
+chandui
+chandul
+chanduy
+Chane
+Chanel
+chaneled
+chaneling
+chanelled
+Chaney
+chanfrin
+chanfron
+chanfrons
+Chang
+chang
+changa
+changable
+Changan
+changar
+Changaris
+Changchiakow
+Changchow
+Changchowfu
+Changchun
+change
+changeability
+changeable
+changeableness
+changeably
+changeabout
+changed
+changedale
+changedness
+changeful
+changefully
+changefulness
+change-house
+changeless
+changelessly
+changelessness
+changeling
+changelings
+changemaker
+changement
+change-over
+changeover
+changeovers
+changepocket
+changer
+change-ringing
+changer-off
+changers
+changes
+change-up
+Changewater
+changing
+Changoan
+Changos
+changs
+Changsha
+Changteh
+Changuina
+Changuinan
+Chanhassen
+Chanidae
+chank
+chankings
+Channa
+Channahon
+Channel
+channel
+channelbill
+channeled
+channeler
+channeling
+channelization
+channelize
+channelized
+channelizes
+channelizing
+channelled
+channeller
+channellers
+channelling
+channelly
+channels
+channelure
+channelwards
+channer
+Channing
+chanoyu
+chanson
+chansonette
+chansonnette
+chansonnier
+chansonniers
+chansons
+Chansoo
+chanst
+chant
+chantable
+chantage
+chantages
+Chantal
+Chantalle
+chantant
+chantecler
+chanted
+chante-fable
+chantefable
+chante-fables
+chantepleure
+chanter
+chanterelle
+chanters
+chantership
+chanteur
+chanteuse
+chanteuses
+chantey
+chanteyman
+chanteys
+chanticleer
+chanticleers
+chantier
+chanties
+Chantilly
+chantilly
+chanting
+chantingly
+chantlate
+chantment
+chantor
+chantors
+chantress
+chantries
+chantry
+chants
+chanty
+Chanukah
+chanukah
+Chanute
+Chany
+Chao
+chao
+Chaoan
+Chaochow
+Chaochowfu
+chaogenous
+chaology
+Chaon
+chaori
+chaos
+chaoses
+chaotic
+chaotical
+chaotically
+chaoticness
+chaoua
+Chaouia
+Chaource
+chaoush
+CHAP
+Chap
+chap
+chap.
+Chapa
+Chapacura
+Chapacuran
+chapah
+Chapanec
+chapapote
+chaparajos
+chaparejos
+chaparral
+chaparrals
+chaparraz
+chaparro
+chapati
+chapaties
+chapatis
+chapatti
+chapatties
+chapattis
+chapatty
+chap-book
+chapbook
+chapbooks
+chape
+chapeau
+chapeaus
+chapeaux
+chaped
+Chapei
+Chapel
+chapel
+chapeled
+chapeless
+chapelet
+chapelgoer
+chapelgoing
+chapeling
+chapelize
+Chapell
+chapellage
+chapellany
+chapelled
+chapelling
+chapelman
+chapelmaster
+chapelries
+chapelry
+chapels
+chapelward
+Chapen
+chaperno
+chaperon
+chaperonage
+chaperonages
+chaperone
+chaperoned
+chaperones
+chaperoning
+chaperonless
+chaperons
+chapes
+chap-fallen
+chapfallen
+chapfallenly
+Chapin
+chapin
+chapiter
+chapiters
+chapitle
+chapitral
+chaplain
+chaplaincies
+chaplaincy
+chaplainry
+chaplains
+chaplainship
+Chapland
+chaplanry
+chapless
+chaplet
+chapleted
+chaplets
+Chaplin
+chaplin
+Chapman
+chapman
+Chapmansboro
+chapmanship
+Chapmanville
+chapmen
+chap-money
+Chapnick
+chapon
+chapote
+chapourn
+chapournet
+chapournetted
+chappal
+Chappaqua
+Chappaquiddick
+chappaul
+chappe
+chapped
+Chappelka
+Chappell
+Chappells
+chapper
+Chappie
+chappie
+chappies
+chappin
+chapping
+chappow
+Chappy
+chappy
+chaprasi
+chaprassi
+chaps
+chapstick
+chapt
+chaptalization
+chaptalize
+chaptalized
+chaptalizing
+chapter
+chapteral
+chaptered
+chapterful
+chapterhouse
+chaptering
+chapters
+Chaptico
+chaptrel
+Chapultepec
+chapwoman
+chaqueta
+chaquetas
+Char
+char
+char-
+CHARA
+Chara
+chara
+char-a-banc
+charabanc
+charabancer
+char-a-bancs
+charabancs
+charac
+Characeae
+characeous
+characetum
+characid
+characids
+characin
+characine
+characinid
+Characinidae
+characinoid
+characins
+charact
+character
+charactered
+characterful
+characterial
+characterical
+characteries
+charactering
+characterisable
+characterisation
+characterise
+characterised
+characteriser
+characterising
+characterism
+characterist
+characteristic
+characteristical
+characteristically
+characteristicalness
+characteristicness
+characteristics
+characterizable
+characterization
+characterizations
+characterize
+characterized
+characterizer
+characterizers
+characterizes
+characterizing
+characterless
+characterlessness
+characterological
+characterologically
+characterologist
+characterology
+characters
+characterstring
+charactery
+charactonym
+charade
+charades
+Charadrii
+Charadriidae
+charadriiform
+Charadriiformes
+charadrine
+charadrioid
+Charadriomorphae
+Charadrius
+Charales
+charango
+charangos
+chararas
+charas
+charases
+charbocle
+charbon
+Charbonneau
+Charbonnier
+charbonnier
+charbroil
+charbroiled
+charbroiling
+charbroils
+Charca
+Charcas
+Charchemish
+charcia
+charco
+charcoal
+charcoal-burner
+charcoaled
+charcoal-gray
+charcoaling
+charcoalist
+charcoals
+charcoaly
+Charcot
+charcuterie
+charcuteries
+charcutier
+charcutiers
+Chard
+chard
+Chardin
+chardock
+Chardon
+Chardonnay
+Chardonnet
+chards
+chare
+chared
+charely
+Charente
+Charente-Maritime
+Charenton
+charer
+chares
+charet
+chareter
+charette
+chargable
+charga-plate
+charge
+chargeability
+chargeable
+chargeableness
+chargeably
+chargeant
+charge-a-plate
+charged
+chargedness
+chargee
+chargeful
+charge-house
+chargehouse
+chargeless
+chargeling
+chargeman
+CHARGEN
+charge-off
+charger
+chargers
+charges
+chargeship
+chargfaires
+charging
+Chari
+Charicleia
+Chariclo
+Charie
+charier
+chariest
+Charil
+charily
+Charin
+chariness
+charing
+Chari-Nile
+Chariot
+chariot
+charioted
+chariotee
+charioteer
+charioteers
+charioteership
+charioting
+chariotlike
+chariotman
+chariotry
+chariots
+chariot-shaped
+chariotway
+Charis
+charism
+charisma
+charismas
+charismata
+charismatic
+charisms
+Charissa
+Charisse
+charisticary
+Charita
+charitable
+charitableness
+charitably
+charitative
+Charites
+charities
+Chariton
+Charity
+charity
+charityless
+charivan
+charivari
+charivaried
+charivariing
+charivaris
+chark
+charka
+charkas
+charked
+charkha
+charkhana
+charkhas
+charking
+charks
+Charla
+charladies
+charlady
+charlatan
+charlatanic
+charlatanical
+charlatanically
+charlatanish
+charlatanism
+charlatanistic
+charlatanries
+charlatanry
+charlatans
+charlatanship
+Charlean
+Charlee
+Charleen
+Charlemagne
+charlemagne
+Charlemont
+Charlena
+Charlene
+Charleroi
+Charleroy
+Charles
+charles
+Charleston
+charleston
+charlestons
+Charlestown
+charlesworth
+Charlet
+charlet
+Charleton
+Charleville-Mzi
+Charlevoix
+Charley
+charley
+charleys
+Charlie
+charlie
+charlies
+Charline
+Charlo
+charlock
+charlocks
+Charlot
+Charlotta
+Charlotte
+charlotte
+Charlottenburg
+Charlottesville
+charlottesville
+Charlottetown
+Charlotteville
+Charlton
+Charlye
+Charlyn
+Charlyne
+charm
+Charmain
+Charmaine
+Charmane
+charm-bound
+charm-built
+Charmco
+charmed
+charmedly
+charmel
+charm-engirdled
+charmer
+charmers
+Charmeuse
+charmeuse
+charmful
+charmfully
+charmfulness
+Charmian
+Charminar
+Charmine
+charming
+charminger
+charmingest
+charmingly
+charmingness
+Charmion
+charmless
+charmlessly
+charmonium
+charms
+charm-struck
+charmwise
+charneco
+charnel
+charnels
+charnockite
+charnockites
+charnu
+Charo
+Charolais
+Charollais
+Charon
+charon
+Charonian
+Charonic
+Charontas
+Charophyta
+Charops
+charoses
+charoset
+charoseth
+charpai
+charpais
+Charpentier
+charpie
+charpit
+charpoy
+charpoys
+charque
+charqued
+charqui
+charquid
+charquis
+charr
+charras
+charre
+charred
+charrette
+charrier
+charriest
+charring
+charro
+Charron
+charros
+charrs
+Charruan
+Charruas
+Charry
+charry
+chars
+charshaf
+charsingha
+chart
+Charta
+charta
+chartable
+chartaceous
+chartae
+charted
+charter
+charterable
+charterage
+chartered
+charterer
+charterers
+Charterhouse
+charterhouse
+Charterhouses
+chartering
+Charteris
+charterism
+Charterist
+charterless
+chartermaster
+charter-party
+Charters
+charters
+charthouse
+charting
+chartings
+Chartism
+chartism
+Chartist
+chartist
+chartists
+chartless
+chartlet
+Chartley
+chartographer
+chartographic
+chartographical
+chartographically
+chartographist
+chartography
+chartology
+chartometer
+chartophylacia
+chartophylacium
+chartophylax
+chartophylaxes
+Chartres
+Chartreuse
+chartreuse
+chartreuses
+Chartreux
+chartreux
+chartroom
+charts
+chartula
+chartulae
+chartularies
+chartulary
+chartulas
+charuk
+Charvaka
+charvet
+charwoman
+charwomen
+chary
+Charybdian
+Charybdis
+charybdis
+Charyl
+Chas
+chasable
+Chase
+chase
+chaseable
+Chaseburg
+chased
+chase-hooped
+chase-hooping
+Chaseley
+chase-mortised
+chaser
+chasers
+chases
+chashitsu
+Chasid
+chasid
+Chasidic
+Chasidim
+Chasidism
+chasing
+chasings
+Chaska
+Chasles
+chasm
+chasma
+chasmal
+chasmed
+chasmic
+chasmogamic
+chasmogamous
+chasmogamy
+chasmophyte
+chasms
+chasmy
+chass
+Chasse
+chasse
+chassed
+chasseing
+Chasselas
+chasselas
+Chassell
+chasse-maree
+chassepot
+chassepots
+chasses
+chasseur
+chasseurs
+chassignite
+Chassin
+chassis
+Chastacosta
+Chastain
+chaste
+chastelain
+chastely
+chasten
+chastened
+chastener
+chasteners
+chasteness
+chastenesses
+chastening
+chasteningly
+chastenment
+chastens
+chaster
+chastest
+chasteweed
+chastiment
+chastisable
+chastise
+chastised
+chastisement
+chastisements
+chastiser
+chastisers
+chastises
+chastising
+chastities
+Chastity
+chastity
+chastize
+chastizer
+chasty
+chasuble
+chasubled
+chasubles
+chat
+Chataignier
+chataka
+Chatav
+Chatawa
+chatchka
+chatchkas
+chatchke
+chatchkes
+Chateau
+chateau
+Chateaubriand
+chateaubriand
+Chateaugay
+chateaugray
+Chateauneuf-du-Pape
+Chateauroux
+chateaus
+Chateau-Thierry
+chateaux
+chatelain
+chatelaine
+chatelaines
+chatelainry
+chatelains
+chatelet
+chatellany
+chateus
+Chatfield
+Chatham
+chathamite
+chathamites
+chati
+Chatillon
+Chatino
+Chatom
+chaton
+chatons
+Chatot
+chatoyance
+chatoyancy
+chatoyant
+chats
+chatsome
+Chatsworth
+chatta
+chattable
+chattack
+chattah
+Chattahoochee
+Chattanooga
+chattanooga
+Chattanoogan
+Chattanoogian
+Chattaroy
+chattation
+chatted
+chattel
+chattelhood
+chattelism
+chattelization
+chattelize
+chattelized
+chattelizing
+chattels
+chattelship
+chatter
+chatteration
+chatterbag
+chatterbox
+chatterboxes
+chattered
+chatterer
+chatterers
+chattererz
+chattering
+chatteringly
+Chatterjee
+chattermag
+chattermagging
+chatters
+Chatterton
+Chattertonian
+chattery
+Chatti
+chattier
+chatties
+chattiest
+chattily
+chattiness
+chatting
+chattingly
+chatty
+Chatwin
+chatwood
+Chaucer
+chaucer
+Chaucerian
+chaucerian
+Chauceriana
+Chaucerianism
+Chaucerism
+Chauchat
+chaud-froid
+chaudfroid
+chaud-melle
+Chaudoin
+chaudron
+chaufer
+chaufers
+chauffage
+chauffer
+chauffers
+chauffeur
+chauffeured
+chauffeuring
+chauffeurs
+chauffeurship
+chauffeuse
+chauffeuses
+Chaui
+chauk
+chaukidari
+chauldron
+chaule
+Chauliodes
+chaulmaugra
+chaulmoogra
+chaulmoograte
+chaulmoogric
+chaulmugra
+chaum
+chaumer
+chaumiere
+Chaumont
+chaumontel
+Chaumont-en-Bassigny
+chaun-
+Chauna
+Chaunce
+Chauncey
+chaunoprockt
+chaunt
+chaunted
+chaunter
+chaunters
+chaunting
+chaunts
+chauri
+chaus
+chausse
+chaussee
+chausseemeile
+chaussees
+chausses
+Chausson
+chaussure
+chaussures
+Chautauqua
+chautauqua
+Chautauquan
+chaute
+Chautemps
+chauth
+chauve
+Chauvin
+chauvin
+chauvinism
+chauvinisms
+chauvinist
+chauvinistic
+chauvinistically
+chauvinists
+Chavannes
+Chavante
+Chavantean
+Chavaree
+chave
+chavel
+chavender
+chaver
+Chaves
+Chavey
+Chavez
+chavibetol
+chavicin
+chavicine
+chavicol
+Chavies
+Chavignol
+Chavin
+chavish
+chaw
+chawan
+chaw-bacon
+chawbacon
+chawbone
+chawbuck
+chawdron
+chawed
+chawer
+chawers
+Chawia
+chawing
+chawk
+chawl
+chawle
+chawn
+Chaworth
+chaws
+chaw-stick
+chawstick
+chay
+chaya
+chayaroot
+Chayefsky
+Chayma
+Chayota
+chayote
+chayotes
+chayroot
+chays
+chazan
+chazanim
+chazans
+chazanut
+Chazy
+chazzan
+chazzanim
+chazzans
+chazzanut
+chazzen
+chazzenim
+chazzens
+Ch.B.
+ChB
+Ch.E.
+ChE
+Che
+che
+Cheadle
+Cheam
+cheap
+cheapen
+cheapened
+cheapener
+cheapening
+cheapens
+cheaper
+cheapery
+cheapest
+cheapie
+cheapies
+cheaping
+cheapish
+cheapishly
+Cheap-jack
+cheap-jack
+cheapjack
+cheap-john
+cheaply
+cheapness
+cheapnesses
+cheapo
+cheapos
+cheaps
+Cheapside
+cheapskate
+cheapskates
+cheare
+cheat
+cheatable
+cheatableness
+cheated
+cheatee
+cheater
+cheateries
+cheaters
+cheatery
+Cheatham
+cheating
+cheatingly
+cheatrie
+cheatry
+cheats
+Cheb
+Chebacco
+chebacco
+Chebanse
+chebec
+chebeck
+chebecs
+chebel
+chebog
+Cheboksary
+Cheboygan
+chebule
+chebulic
+chebulinic
+Checani
+chechako
+chechakos
+Chechehet
+chechem
+Chechen
+chechia
+che-choy
+check
+check-
+checkable
+checkage
+checkback
+checkbird
+checkbit
+checkbite
+checkbits
+checkbook
+checkbooks
+check-canceling
+checke
+checked
+checked-out
+check-endorsing
+checker
+checkerbellies
+checkerbelly
+checkerberries
+checker-berry
+checkerberry
+checkerbloom
+checkerboard
+checkerboarded
+checkerboarding
+checkerboards
+checkerbreast
+checker-brick
+checkered
+checkering
+checkerist
+checker-roll
+checkers
+checkerspot
+checker-up
+checkerwise
+checkerwork
+checkery
+check-flood
+checkhook
+check-in
+checking
+checklaton
+checkle
+checkless
+checkline
+checklist
+checklists
+checkman
+checkmark
+checkmate
+checkmated
+checkmates
+checkmating
+checkoff
+checkoffs
+check-out
+checkout
+checkouts
+check-over
+check-perforating
+checkpoint
+checkpointed
+checkpointing
+checkpoints
+checkrack
+checkrail
+checkrein
+check-roll
+checkroll
+checkroom
+checkrooms
+checkrope
+checkrow
+checkrowed
+checkrower
+checkrowing
+checkrows
+checks
+check-stone
+checkstone
+checkstrap
+check-string
+checkstring
+checksum
+checksummed
+checksumming
+checksums
+checkup
+checkups
+checkweigher
+checkweighman
+checkweighmen
+checkwork
+checkwriter
+check-writing
+checky
+Checotah
+chedar
+Cheddar
+cheddar
+cheddaring
+cheddars
+cheddite
+cheddites
+cheder
+cheders
+chedite
+chedites
+chedlock
+chedreux
+CheE
+Chee
+chee
+cheecha
+cheechaco
+cheechako
+cheechakos
+chee-chee
+cheeful
+cheefuller
+cheefullest
+cheek
+cheekbone
+cheekbones
+cheek-by-jowl
+cheeked
+cheeker
+cheekful
+cheekfuls
+cheekier
+cheekiest
+cheekily
+cheekiness
+cheeking
+cheekish
+cheekless
+cheekpiece
+cheeks
+Cheektowaga
+cheeky
+cheeney
+cheep
+cheeped
+cheeper
+cheepers
+cheepier
+cheepiest
+cheepily
+cheepiness
+cheeping
+cheeps
+cheepy
+cheer
+cheered
+cheerer
+cheerers
+cheerful
+cheerfulize
+cheerfuller
+cheerfullest
+cheerfully
+cheerfulness
+cheerfulnesses
+cheerfulsome
+cheerier
+cheeriest
+cheerily
+cheeriness
+cheerinesses
+cheering
+cheeringly
+cheerio
+cheerios
+cheerlead
+cheerleader
+cheerleaders
+cheerleading
+cheerled
+cheerless
+cheerlessly
+cheerlessness
+cheerlessnesses
+cheerly
+cheero
+cheeros
+cheers
+cheer-up
+cheery
+cheese
+cheeseboard
+cheesebox
+cheeseburger
+cheeseburgers
+cheesecake
+cheesecakes
+cheesecloth
+cheesecloths
+cheesecurd
+cheesecutter
+cheesed
+cheeseflower
+cheese-head
+cheese-headed
+cheeselep
+cheeselip
+cheesemaker
+cheesemaking
+cheesemonger
+cheesemongering
+cheesemongerly
+cheesemongery
+cheeseparer
+cheese-paring
+cheeseparing
+cheeser
+cheesery
+cheeses
+cheesewood
+cheesier
+cheesiest
+cheesily
+cheesiness
+cheesing
+cheesy
+cheet
+cheetah
+cheetahs
+cheetal
+cheeter
+cheetie
+cheetul
+cheewink
+cheezit
+chef
+Chefang
+chef-d'
+chef-d'oeuvre
+chefdom
+chefdoms
+cheffed
+Cheffetz
+cheffing
+Chefoo
+Chefornak
+Chefrinia
+chefs
+chefs-d'oeuvre
+chego
+chegoe
+chegoes
+chegre
+Chehalis
+cheiceral
+cheil-
+Cheilanthes
+cheilion
+cheilitis
+Cheilodipteridae
+Cheilodipterus
+cheiloplasties
+cheiloplasty
+Cheilostomata
+cheilostomatous
+cheilotomies
+cheilotomy
+cheimaphobia
+cheimatophobia
+cheir
+cheir-
+cheiragra
+Cheiranthus
+cheiro-
+Cheirogaleus
+Cheiroglossa
+cheirognomy
+cheirography
+cheirolin
+cheiroline
+cheirology
+cheiromancy
+cheiromegaly
+Cheiron
+cheiropatagium
+cheiropod
+cheiropodist
+cheiropody
+cheiropompholyx
+Cheiroptera
+cheiroptera
+cheiropterygium
+cheirosophy
+cheirospasm
+Cheirotherium
+cheirotherium
+Cheju
+Cheka
+cheka
+chekan
+Cheke
+cheke
+cheken
+Chekhov
+chekhov
+Chekhovian
+cheki
+Chekiang
+Chekist
+chekker
+chekmak
+chela
+chelae
+Chelan
+chelas
+chelaship
+chelatable
+chelate
+chelated
+chelates
+chelating
+chelation
+chelator
+chelators
+chelem
+chelerythrin
+chelerythrine
+chelicer
+chelicera
+chelicerae
+cheliceral
+chelicerate
+chelicere
+chelide
+Chelidon
+chelidon
+chelidonate
+chelidonian
+chelidonic
+chelidonin
+chelidonine
+Chelidonium
+Chelidosaurus
+chelifer
+Cheliferidea
+cheliferous
+cheliform
+chelinga
+chelingas
+chelingo
+chelingos
+cheliped
+Chellean
+chellean
+Chellman
+chello
+Chelmno
+Chelmsford
+Chelodina
+chelodine
+cheloid
+cheloids
+chelone
+Chelonia
+chelonian
+chelonid
+Chelonidae
+cheloniid
+Cheloniidae
+chelonin
+chelophore
+chelp
+Chelsae
+Chelsea
+Chelsey
+Chelsie
+Chelsy
+Cheltenham
+Chelton
+Chelura
+Chelyabinsk
+Chelydidae
+Chelydra
+chelydre
+Chelydridae
+chelydroid
+chelys
+Chelyuskin
+Chem
+chem
+chem-
+chem.
+Chema
+Chemakuan
+Chemar
+Chemaram
+Chemarin
+Chemash
+chemasthenia
+chemawinite
+ChemE
+Chemehuevi
+Chemesh
+chemesthesis
+chemiatric
+chemiatrist
+chemiatry
+chemic
+chemical
+chemicalization
+chemicalize
+chemically
+chemicals
+chemick
+chemicked
+chemicker
+chemicking
+chemico-
+chemicoastrological
+chemicobiologic
+chemicobiological
+chemicobiology
+chemicocautery
+chemicodynamic
+chemicoengineering
+chemicoluminescence
+chemicoluminescent
+chemicomechanical
+chemicomineralogical
+chemicopharmaceutical
+chemicophysical
+chemicophysics
+chemicophysiological
+chemicovital
+chemics
+chemiculture
+chemigraph
+chemigrapher
+chemigraphic
+chemigraphically
+chemigraphy
+chemiloon
+chemiluminescence
+chemiluminescent
+chemin
+cheminee
+chemins
+chemiotactic
+chemiotaxic
+chemiotaxis
+chemiotropic
+chemiotropism
+chemiphotic
+chemis
+chemise
+chemises
+chemisette
+chemism
+chemisms
+chemisorb
+chemisorption
+chemisorptive
+chemist
+chemistries
+chemistry
+chemists
+chemitype
+chemitypies
+chemitypy
+chemizo
+chemmy
+Chemnitz
+chemo-
+chemoautotrophic
+chemoautotrophically
+chemoautotrophy
+chemoceptor
+chemokinesis
+chemokinetic
+chemolysis
+chemolytic
+chemolyze
+chemonite
+chemopallidectomies
+chemopallidectomy
+chemopause
+chemophysiological
+chemophysiology
+chemoprophyalctic
+chemoprophylactic
+chemoprophylaxis
+chemoreception
+chemoreceptive
+chemoreceptivities
+chemoreceptivity
+chemoreceptor
+chemoreflex
+chemoresistance
+chemosensitive
+chemosensitivities
+chemosensitivity
+chemoserotherapy
+chemoses
+Chemosh
+chemosis
+chemosmoic
+chemosmoses
+chemosmosis
+chemosmotic
+chemosorb
+chemosorption
+chemosorptive
+chemosphere
+chemospheric
+chemostat
+chemosterilant
+chemosterilants
+chemosurgery
+chemosurgical
+chemosynthesis
+chemosynthetic
+chemosynthetically
+chemotactic
+chemotactically
+chemotaxis
+chemotaxonomic
+chemotaxonomically
+chemotaxonomist
+chemotaxonomy
+chemotaxy
+chemotherapeutic
+chemotherapeutical
+chemotherapeutically
+chemotherapeuticness
+chemotherapeutics
+chemotherapies
+chemotherapist
+chemotherapists
+chemotherapy
+chemotic
+chemotroph
+chemotrophic
+chemotropic
+chemotropically
+chemotropism
+chempaduk
+Chemstrand
+Chemulpo
+Chemult
+Chemung
+chemurgic
+chemurgical
+chemurgically
+chemurgies
+chemurgy
+Chemush
+Chen
+chena
+Chenab
+chenar
+Chenay
+chende
+cheneau
+cheneaus
+cheneaux
+Chenee
+chenet
+chenevixite
+Cheney
+Cheneyville
+chenfish
+Cheng
+cheng
+chengal
+Chengchow
+Chengteh
+Chengtu
+chenica
+Chenier
+chenier
+chenille
+cheniller
+chenilles
+Chennault
+Chenoa
+chenopod
+Chenopodiaceae
+chenopodiaceous
+Chenopodiales
+Chenopodium
+chenopods
+Chenoweth
+cheongsam
+cheoplastic
+Cheops
+Chepachet
+Chephren
+chepster
+cheque
+chequebook
+chequeen
+chequer
+chequerboard
+chequer-chamber
+chequered
+chequering
+Chequers
+chequers
+chequer-wise
+chequerwise
+chequer-work
+chequerwork
+cheques
+chequin
+chequinn
+chequy
+Cher
+cher
+Chera
+Cheraw
+Cherbourg
+cherchez
+chercock
+Chere
+chere
+cherely
+cherem
+Cheremis
+Cheremiss
+Cheremissian
+Cheremkhovo
+Cherenkov
+cherenkov
+Cherey
+chergui
+Cheri
+Cheria
+Cherian
+Cherianne
+Cheribon
+Cherice
+Cherida
+Cherie
+cherie
+Cheries
+cheries
+Cherilyn
+Cherilynn
+cherimolla
+cherimoya
+cherimoyer
+Cherin
+Cherise
+Cherish
+cherish
+cherishable
+cherished
+cherisher
+cherishers
+cherishes
+cherishing
+cherishingly
+cherishment
+Cheriton
+Cherkess
+Cherkesser
+Cherlyn
+Chermes
+chermes
+Chermidae
+Chermish
+cherna
+chernites
+Chernobyl
+Chernomorish
+Chernovtsy
+Chernow
+chernozem
+chernozemic
+cherogril
+Cherokee
+cherokee
+Cherokees
+cherokees
+cheroot
+cheroots
+Cherri
+cherried
+cherries
+Cherrita
+Cherry
+cherry
+cherryblossom
+cherry-bob
+cherry-cheeked
+cherry-colored
+cherry-crimson
+Cherryfield
+cherry-flavored
+cherrying
+cherrylike
+cherry-lipped
+Cherrylog
+cherry-merry
+cherry-pie
+cherry-red
+cherry-ripe
+cherry-rose
+cherrystone
+cherrystones
+Cherrytree
+Cherryvale
+Cherryville
+cherry-wood
+chersonese
+Chersydridae
+chert
+cherte
+chertier
+chertiest
+cherts
+Chertsey
+cherty
+cherub
+cherubfish
+cherubfishes
+cherubic
+cherubical
+cherubically
+Cherubicon
+Cherubikon
+cherubim
+cherubimic
+cherubimical
+cherubin
+Cherubini
+cherublike
+cherubs
+cherup
+Cherusci
+Chervante
+chervil
+chervils
+chervonei
+chervonets
+chervonetz
+chervontsi
+Chery
+Cherye
+Cheryl
+Cherylene
+Ches
+Chesaning
+Chesapeake
+chesapeake
+chesboil
+chesboll
+chese
+cheselip
+Cheshire
+cheshire
+Cheshunt
+Cheshvan
+chesil
+cheskey
+cheskeys
+cheslep
+Cheslie
+Chesna
+Chesnee
+Chesney
+Chesnut
+cheson
+chesoun
+chess
+Chessa
+chess-apple
+chessart
+chessboard
+chessboards
+chessdom
+chessel
+chesser
+chesses
+chesset
+chessist
+chessman
+chess-men
+chessmen
+chessner
+chessom
+chessplayer
+chessplayers
+chess-tree
+chesstree
+Chessy
+chessylite
+chest
+chest-deep
+chested
+chesteine
+Chester
+chester
+chesterbed
+Chesterfield
+chesterfield
+Chesterfieldian
+chesterfields
+Chesterland
+chesterlite
+Chesterton
+Chestertown
+Chesterville
+chest-foundered
+chestful
+chestfuls
+chestier
+chestiest
+chestily
+chestiness
+chestnut
+chestnut-backed
+chestnut-bellied
+chestnut-brown
+chestnut-collared
+chestnut-colored
+chestnut-crested
+chestnut-crowned
+chestnut-red
+chestnut-roan
+chestnuts
+chestnut-sided
+chestnutty
+chestnut-winged
+Cheston
+chest-on-chest
+chests
+chesty
+Cheswick
+Cheswold
+Chet
+chetah
+chetahs
+Chetek
+cheth
+cheths
+chetif
+chetive
+Chetnik
+Chetopa
+chetopod
+chetrum
+chetrums
+chettik
+chetty
+Chetumal
+chetverik
+chetvert
+Cheung
+cheung
+Cheux
+Chev
+chevachee
+chevachie
+chevage
+Chevak
+cheval
+cheval-de-frise
+chevalet
+chevalets
+cheval-glass
+Chevalier
+chevalier
+Chevalier-Montrachet
+chevaliers
+chevaline
+Chevallier
+chevance
+chevaux
+chevaux-de-frise
+cheve
+chevee
+chevelure
+cheven
+chevener
+cheventayn
+cheverel
+cheveret
+cheveril
+Cheverly
+cheveron
+cheverons
+Cheves
+chevesaile
+chevesne
+chevet
+chevetaine
+cheveys
+chevied
+chevies
+cheville
+chevin
+Cheviot
+cheviot
+cheviots
+chevisance
+chevise
+chevon
+chevre
+chevres
+Chevret
+chevret
+chevrette
+chevreuil
+Chevrier
+Chevrolet
+chevrolet
+chevrolets
+chevron
+chevrone
+chevroned
+chevronel
+chevronelly
+chevronny
+chevrons
+chevron-shaped
+chevronwise
+chevrony
+chevrotain
+Chevrotin
+chevvy
+Chevy
+chevy
+chevying
+Chew
+chew
+Chewa
+chewable
+Chewalla
+chewbark
+chewed
+Chewelah
+cheweler
+chewer
+chewers
+chewet
+chewie
+chewier
+chewiest
+chewing
+chewing-out
+chewink
+chewinks
+chews
+chewstick
+Chewsville
+chewy
+Cheyenne
+cheyenne
+Cheyennes
+cheyennes
+Cheyne
+Cheyney
+cheyney
+cheyneys
+chez
+chg
+chg.
+chhatri
+Chhnang
+CHI
+Chi
+chi
+chia
+Chia-Chia
+chiack
+Chiaki
+Chiam
+Chian
+chian
+Chiang
+Chiangling
+Chiangmai
+Chianti
+chianti
+chiao
+Chiapanec
+Chiapanecan
+Chiapas
+Chiaretto
+Chiari
+chiarooscurist
+chiarooscuro
+chiarooscuros
+chiaroscurist
+chiaroscuro
+chiaroscuros
+Chiarra
+chias
+chiasm
+chiasma
+chiasmal
+chiasmas
+chiasmata
+chiasmatic
+chiasmatype
+chiasmatypy
+chiasmi
+chiasmic
+Chiasmodon
+chiasmodontid
+Chiasmodontidae
+chiasms
+chiasmus
+Chiasso
+chiastic
+chiastolite
+chiastoneural
+chiastoneurous
+chiastoneury
+chiaus
+chiauses
+chiave
+chiavetta
+Chiayi
+Chiba
+chiba
+Chibcha
+chibcha
+Chibchan
+chibchan
+Chibchas
+chibinite
+chibol
+chibouk
+chibouks
+chibouque
+chibrit
+Chic
+chic
+chica
+chicadee
+Chicago
+chicago
+Chicagoan
+chicagoan
+chicagoans
+chicalote
+chicane
+chicaned
+chicaner
+chicaneries
+chicaners
+chicanery
+chicanes
+chicaning
+Chicano
+chicano
+Chicanos
+chicanos
+chicaric
+chicayote
+chiccories
+chiccory
+chicer
+chicest
+chich
+Chicha
+chicha
+chicharra
+Chichester
+chichevache
+Chichewa
+chichi
+chichicaste
+Chichihaerh
+Chichihar
+chichili
+Chichimec
+chichimecan
+chichipate
+chichipe
+chichis
+chichituna
+Chichivache
+chichling
+Chick
+chick
+chickabiddy
+chickadee
+chickadees
+Chickahominy
+Chickamauga
+chickaree
+Chickasaw
+chickasaw
+Chickasaws
+chickasaws
+Chickasha
+chickee
+chickees
+chickell
+chicken
+chickenberry
+chickenbill
+chicken-billed
+chicken-brained
+chicken-breasted
+chickenbreasted
+chicken-breastedness
+chickened
+chicken-farming
+chicken-hazard
+chicken-hearted
+chickenhearted
+chicken-heartedly
+chickenheartedly
+chicken-heartedness
+chickenheartedness
+chickenhood
+chickening
+chicken-livered
+chicken-liveredness
+chicken-meat
+chickenpox
+chickens
+chickenshit
+chicken-spirited
+chickens-toes
+chicken-toed
+chickenweed
+chickenwort
+chicker
+chickery
+chickhood
+Chickie
+chickies
+chickling
+chickories
+chickory
+chick-pea
+chickpea
+chickpeas
+chicks
+chickstone
+chickweed
+chickweeds
+chickwit
+Chicky
+chicky
+Chiclayo
+chicle
+chiclero
+chicles
+chicly
+chicness
+chicnesses
+Chico
+chico
+Chicoine
+Chicomecoatl
+Chicopee
+Chicora
+chicories
+chicory
+chicos
+chicot
+Chicota
+chicote
+chicqued
+chicquer
+chicquest
+chicquing
+chics
+chid
+chidden
+chide
+chided
+chider
+chiders
+chides
+Chidester
+chiding
+chidingly
+chidingness
+chidra
+chief
+chiefage
+chiefdom
+chiefdoms
+chiefer
+chiefery
+chiefess
+chiefest
+chiefish
+chief-justiceship
+Chiefland
+chiefless
+chiefling
+chiefly
+chief-pledge
+chiefry
+chiefs
+chiefship
+chieftain
+chieftaincies
+chieftaincy
+chieftainess
+chieftainries
+chieftainry
+chieftains
+chieftainship
+chieftainships
+chieftess
+chiefty
+chiel
+chield
+chields
+chiels
+Chiemsee
+Chien
+chien
+Chiengmai
+Chiengrai
+chierete
+chievance
+chieve
+chiff-chaff
+chiffchaff
+chiffer
+chifferobe
+chiffon
+chiffonade
+chiffonier
+chiffoniers
+chiffonnier
+chiffonnieres
+chiffonniers
+chiffons
+chiffony
+chifforobe
+chifforobes
+chiffre
+chiffrobe
+Chifley
+chigetai
+chigetais
+chigga
+chiggak
+chigger
+chiggers
+chiggerweed
+Chignik
+chignon
+chignoned
+chignons
+chigoe
+chigoe-poison
+chigoes
+Chigwell
+chih
+chihfu
+Chihli
+Chihuahua
+chihuahua
+chihuahuas
+Chikamatsu
+chikara
+chikee
+Chikmagalur
+Chil
+chil
+chilacavote
+chilacayote
+chilalgia
+chilaria
+chilarium
+chilblain
+chilblained
+chilblains
+Chilcat
+Chilcats
+Chilcoot
+Chilcote
+Child
+child
+childage
+childbear
+child-bearing
+childbearing
+childbed
+childbeds
+child-bereft
+child-birth
+childbirth
+childbirths
+childcrowing
+Childe
+childe
+childed
+Childermas
+childermas
+Childers
+Childersburg
+childes
+child-fashion
+child-god
+child-hearted
+child-heartedness
+childhood
+childhoods
+childing
+childish
+childishly
+childishness
+childishnesses
+childkind
+childless
+childlessness
+childlessnesses
+childlier
+childliest
+childlike
+childlikeness
+child-loving
+childly
+child-minded
+child-mindedness
+childminder
+childness
+childproof
+childre
+children
+childrenite
+Childress
+childridden
+Childs
+childship
+childward
+childwife
+childwite
+Childwold
+Chile
+chile
+Chilean
+chilean
+Chileanization
+Chileanize
+chileans
+chilectropion
+chilenite
+Chiles
+chiles
+Chilhowee
+Chilhowie
+chili
+chiliad
+chiliadal
+chiliadic
+chiliadron
+chiliads
+chiliaedron
+chiliagon
+chiliahedron
+chiliarch
+chiliarchia
+chiliarchy
+chiliasm
+chiliasms
+chiliast
+chiliastic
+chiliasts
+chilicote
+chilicothe
+chilidium
+chilidog
+chilidogs
+chilies
+Chi-lin
+chi-lin
+Chilina
+chilindre
+Chilinidae
+chilio-
+chiliomb
+Chilion
+chilipepper
+chilitis
+Chilkat
+Chilkats
+Chill
+chill
+chilla
+chillagite
+Chillan
+chill-cast
+chilled
+chiller
+chillers
+chillest
+chilli
+Chillicothe
+chillier
+chillies
+chilliest
+chillily
+chilliness
+chillinesses
+chilling
+chillingly
+chillis
+chillish
+Chilliwack
+chillness
+chillo
+chilloes
+Chillon
+chillroom
+chills
+chillsome
+chillum
+chillumchee
+chillums
+chilly
+Chilmark
+Chilo
+chilo-
+chilodon
+chilognath
+Chilognatha
+chilognathan
+chilognathous
+chilogrammo
+chiloma
+Chilomastix
+chilomata
+Chilomonas
+Chilon
+chiloncus
+chiloplasty
+chilopod
+Chilopoda
+chilopodan
+chilopodous
+chilopods
+Chilopsis
+Chiloquin
+Chilostoma
+Chilostomata
+chilostomatous
+chilostome
+chilotomies
+chilotomy
+Chilpancingo
+Chilson
+Chilt
+chilte
+Chiltern
+chiltern
+Chilton
+Chilung
+chilver
+chimachima
+Chimacum
+chimaera
+chimaeras
+chimaerid
+Chimaeridae
+chimaeroid
+Chimaeroidei
+Chimakuan
+Chimakum
+Chimalakwe
+Chimalapa
+Chimane
+chimango
+Chimaphila
+chimar
+Chimarikan
+Chimariko
+chimars
+Chimayo
+chimb
+chimbe
+chimble
+chimbley
+chimbleys
+chimblies
+chimbly
+Chimborazo
+Chimbote
+chimbs
+chime
+chimed
+Chimene
+chimer
+chimera
+chimeral
+chimeras
+chimere
+chimeres
+chimeric
+chimerical
+chimerically
+chimericalness
+chimerism
+chimers
+chimes
+chimesmaster
+chimin
+chiminage
+chiming
+Chimique
+Chimkent
+chimla
+chimlas
+chimley
+chimleys
+Chimmesyan
+chimney
+chimneyed
+chimneyhead
+chimneying
+chimneyless
+chimneylike
+chimneyman
+chimney-piece
+chimneypiece
+chimneypot
+chimneys
+Chimonanthus
+chimopeelagic
+chimopelagic
+chimp
+chimpanzee
+chimpanzees
+chimps
+Chimu
+Chimus
+Ch'in
+Chin
+Chin.
+ch'in
+chin
+China
+china
+chinaberries
+chinaberry
+chinafish
+chinafy
+Chinagraph
+chinalike
+Chinaman
+chinaman
+china-mania
+chinamania
+chinamaniac
+Chinamen
+chinamen
+chinampa
+Chinan
+chinanta
+Chinantecan
+Chinantecs
+chinaphthol
+chinar
+chinaroot
+chinas
+Chinatown
+chinatown
+chinaware
+chinawoman
+chinband
+chinbeak
+chin-bearded
+chin-bone
+chinbone
+chinbones
+chincapin
+chinch
+chincha
+Chinchasuyu
+chinchayote
+chinche
+chincher
+chincherinchee
+chincherinchees
+chinches
+chinchier
+chinchiest
+chinchilla
+chinchillas
+chinchillette
+chin-chin
+chinchiness
+chinching
+chin-chinned
+chin-chinning
+chinchona
+Chin-Chou
+chinchy
+chincloth
+chincof
+chincona
+Chincoteague
+chincough
+chindee
+chin-deep
+chindi
+Chindit
+Chindwin
+chine
+chined
+Chinee
+chinela
+chinenses
+chines
+Chinese
+chinese
+Chinese-houses
+Chinesery
+chinfest
+Ch'ing
+Ching
+ching
+Chinghai
+chingma
+Chingpaw
+Chingtao
+Ching-t'u
+Ching-tu
+Ch'ing-yan
+chin-high
+Chin-Hsien
+Chinhwan
+chinik
+chiniks
+chinin
+chining
+chiniofon
+Chink
+chink
+chinkapin
+chinkara
+chink-backed
+chinked
+chinker
+chinkerinchee
+chinkers
+Chinkiang
+chinkier
+chinkiest
+chinking
+chinkle
+chinks
+chinky
+Chinle
+chinles
+chinless
+chinnam
+Chinnampo
+chinned
+chinner
+chinners
+chinnier
+chinniest
+chinning
+chinny
+Chino
+Chino-
+chino
+chino-
+chinoa
+chinoidin
+chinoidine
+chinois
+chinoiserie
+Chino-japanese
+chinol
+chinoleine
+chinoline
+chinologist
+chinone
+chinones
+Chinook
+chinook
+Chinookan
+chinookan
+Chinooks
+chinooks
+chinos
+chinotoxine
+chinotti
+chinotto
+chinovnik
+chinpiece
+chinquapin
+chins
+chinse
+chinsed
+chinsing
+chint
+chints
+chintses
+chintz
+chintze
+chintzes
+chintzier
+chintziest
+chintziness
+chintzy
+Chinua
+chin-up
+chin-wag
+chinwag
+chinwood
+Chiococca
+chiococcine
+Chiogenes
+chiolite
+chionablepsia
+Chionanthus
+Chionaspis
+Chione
+Chionididae
+Chionis
+Chionodoxa
+chionodoxa
+chionophobia
+chiopin
+Chios
+Chiot
+chiotilla
+Chiou
+Chip
+chip
+chipboard
+chipchap
+chipchop
+Chipewyan
+chiplet
+Chipley
+chipling
+Chipman
+chipmuck
+chipmucks
+chipmunk
+chipmunks
+chipolata
+chippable
+chippage
+chipped
+Chippendale
+chippendale
+chipper
+chippered
+chippering
+chippers
+chipper-up
+Chippewa
+chippewa
+Chippewas
+chippewas
+Chippeway
+Chippeways
+chippie
+chippier
+chippies
+chippiest
+chipping
+chippings
+chip-proof
+chipproof
+chippy
+chips
+chipwood
+chipyard
+chiquero
+chiquest
+Chiquia
+Chiquinquira
+Chiquita
+Chiquitan
+Chiquito
+chir-
+Chirac
+chiragra
+chiragrical
+chiral
+chiralgia
+chirality
+Chiran
+chirapsia
+chirarthritis
+chirata
+Chirau
+chirayta
+Chireno
+Chi-Rho
+chi-rho
+Chi-Rhos
+Chiriana
+Chiricahua
+Chirico
+Chiriguano
+Chirikof
+chirimen
+chirimia
+chirimoya
+chirimoyer
+Chirino
+chirinola
+chiripa
+Chiriqui
+chirivita
+chirk
+chirked
+chirker
+chirkest
+chirking
+chirks
+chirl
+Chirlin
+chirm
+chirmed
+chirming
+chirms
+chiro
+chiro-
+chirocosmetics
+chirogale
+chirognomic
+chirognomically
+chirognomist
+chirognomy
+chirognostic
+chirograph
+chirographary
+chirographer
+chirographers
+chirographic
+chirographical
+chirography
+chirogymnast
+chirolas
+chirological
+chirologically
+chirologies
+chirologist
+chirology
+chiromance
+chiromancer
+chiromancist
+chiromancy
+chiromant
+chiromantic
+chiromantical
+Chiromantis
+chiromegaly
+chirometer
+Chiromyidae
+Chiromys
+Chiron
+chironomic
+chironomid
+Chironomidae
+Chironomus
+chironomy
+chironym
+chiropatagium
+chiroplasty
+chiropod
+chiropodial
+chiropodic
+chiropodical
+chiropodies
+chiropodist
+chiropodistry
+chiropodists
+chiropodous
+chiropody
+chiropompholyx
+chiropractic
+chiropractics
+chiropractor
+chiropractors
+chiropraxis
+chiropter
+Chiroptera
+chiropteran
+chiropterite
+chiropterophilous
+chiropterous
+chiropterygian
+chiropterygious
+chiropterygium
+chiros
+chirosophist
+chirospasm
+Chirotes
+chirotherian
+Chirotherium
+chirothesia
+chirotonsor
+chirotonsory
+chirotony
+chirotype
+chirp
+chirped
+chirper
+chirpers
+chirpier
+chirpiest
+chirpily
+chirpiness
+chirping
+chirpingly
+chirpling
+chirps
+chirpy
+chirr
+chirre
+chirred
+chirres
+chirring
+chirrs
+chirrup
+chirruped
+chirruper
+chirruping
+chirrupper
+chirrups
+chirrupy
+chirt
+chiru
+chirurgeon
+chirurgeonly
+chirurgery
+chirurgic
+chirurgical
+chirurgy
+chis
+Chisedec
+chisel
+chisel-cut
+chiseled
+chisel-edged
+chiseler
+chiselers
+chiseling
+chiselled
+chiseller
+chisellers
+chisellike
+chiselling
+chiselly
+chiselmouth
+chisel-pointed
+chisels
+chisel-shaped
+Chishima
+Chisholm
+Chisimaio
+Chisin
+chisled
+chi-square
+chistera
+chistka
+chit
+Chita
+chitak
+chital
+chitarra
+chitarrino
+chitarrone
+chitarroni
+chit-chat
+chitchat
+chitchats
+chitchatted
+chitchatting
+chitchatty
+chithe
+Chitimacha
+Chitimachan
+chitin
+Chitina
+chitinization
+chitinized
+chitino-arenaceous
+chitinocalcareous
+chitinogenous
+chitinoid
+chitinous
+chitins
+Chitkara
+chitlin
+chitling
+chitlings
+chitlins
+chiton
+chitons
+chitosamine
+chitosan
+chitosans
+chitose
+chitra
+Chitragupta
+Chitrali
+chits
+Chi-tse
+chittack
+Chittagong
+chittak
+chittamwood
+chitted
+Chittenango
+Chittenden
+chitter
+chitter-chatter
+chittered
+chittering
+chitterling
+chitterlings
+chitters
+chitties
+chitting
+chitty
+chitty-face
+Chi-tzu
+chiule
+chiurm
+Chiusi
+chiv
+chivachee
+chivage
+chivalresque
+chivalric
+chivalries
+chivalrous
+chivalrously
+chivalrousness
+chivalrousnesses
+chivalry
+chivaree
+chivareed
+chivareeing
+chivarees
+chivareing
+chivari
+chivaried
+chivariing
+chivaring
+chivaris
+chivarra
+chivarras
+chivarro
+chive
+chiver
+chiveret
+Chivers
+chives
+chivey
+chiviatite
+chivied
+chivies
+Chivington
+chivvied
+chivvies
+chivvy
+chivvying
+chivw
+chivy
+chivying
+Chiwere
+chizz
+chizzel
+chkalik
+Chkalov
+chkfil
+chkfile
+Chladek
+Chladni
+chladnite
+chlamyd
+chlamydate
+chlamydeous
+chlamydes
+Chlamydia
+Chlamydobacteriaceae
+chlamydobacteriaceous
+Chlamydobacteriales
+Chlamydomonadaceae
+Chlamydomonadidae
+Chlamydomonas
+chlamydomonas
+chlamydophore
+Chlamydosaurus
+Chlamydoselachidae
+Chlamydoselachus
+chlamydospore
+chlamydosporic
+Chlamydozoa
+chlamydozoan
+chlamyphore
+Chlamyphorus
+chlamys
+chlamyses
+Chleuh
+Chlidanope
+Chlo
+chloanthite
+chloasma
+chloasmata
+Chlodwig
+Chloe
+chloe
+Chloette
+Chlons-sur-Marne
+chlor
+chlor-
+chloracetate
+chloracne
+chloraemia
+chloragen
+chloragogen
+chloragogue
+chloral
+chloralformamide
+chloralide
+chloralism
+chloralization
+chloralize
+chloralized
+chloralizing
+chloralose
+chloralosed
+chlorals
+chloralum
+chlorambucil
+chloramide
+chloramin
+chloramine
+chloramine-T
+chloramphenicol
+chloranaemia
+chloranemia
+chloranemic
+chloranhydride
+chloranil
+Chloranthaceae
+chloranthaceous
+Chloranthus
+chloranthus
+chloranthy
+chlorapatite
+chlorargyrite
+Chloras
+chlorastrolite
+chlorate
+chlorates
+chlorazide
+chlorcosane
+chlordan
+chlordane
+chlordans
+chlordiazepoxide
+chlore
+chlored
+Chlorella
+chlorella
+Chlorellaceae
+chlorellaceous
+chloremia
+chloremic
+chlorenchyma
+Chlores
+chlorguanide
+chlorhexidine
+chlorhydrate
+chlorhydric
+Chlori
+chloriamb
+chloriambus
+chloric
+chlorid
+chloridate
+chloridated
+chloridation
+chloride
+Chloridella
+Chloridellidae
+chlorider
+chlorides
+chloridic
+chloridize
+chloridized
+chloridizing
+chlorids
+chlorimeter
+chlorimetric
+chlorimetry
+chlorin
+chlorinate
+chlorinated
+chlorinates
+chlorinating
+chlorination
+chlorinations
+chlorinator
+chlorinators
+chlorine
+chlorines
+chlorinity
+chlorinize
+chlorinous
+chlorins
+chloriodide
+Chlorion
+Chlorioninae
+Chloris
+chlorite
+chlorites
+chloritic
+chloritization
+chloritize
+chloritoid
+chlorize
+chlormethane
+chlormethylic
+chlornal
+chloro
+chloro-
+chloroacetate
+chloroacetic
+chloroacetone
+chloroacetophenone
+chloroamide
+chloroamine
+chloroanaemia
+chloroanemia
+chloroaurate
+chloroauric
+chloroaurite
+chlorobenzene
+chlorobromide
+chlorobromomethane
+chlorocalcite
+chlorocarbon
+chlorocarbonate
+chlorochromates
+chlorochromic
+chlorochrous
+Chlorococcaceae
+Chlorococcales
+Chlorococcum
+Chlorococcus
+chlorocresol
+chlorocruorin
+chlorodize
+chlorodized
+chlorodizing
+chlorodyne
+chloroethene
+chloroethylene
+chlorofluorocarbon
+chlorofluoromethane
+chloroform
+chloroformate
+chloroformed
+chloroformic
+chloroforming
+chloroformism
+chloroformist
+chloroformization
+chloroformize
+chloroforms
+chlorogenic
+chlorogenine
+chloroguanide
+chlorohydrin
+chlorohydrocarbon
+chlorohydroquinone
+chloroid
+chloroiodide
+chloroleucite
+chloroma
+chloromata
+chloromelanite
+chlorometer
+chloromethane
+chlorometric
+chlorometry
+Chloromycetin
+chloromycetin
+chloronaphthalene
+chloronitrate
+chloropal
+chloropalladates
+chloropalladic
+chlorophaeite
+chlorophane
+chlorophenol
+chlorophenothane
+chlorophoenicite
+Chlorophora
+Chlorophyceae
+chlorophyceous
+chlorophyl
+chlorophyll
+chlorophyllaceous
+chlorophyllan
+chlorophyllase
+chlorophyllian
+chlorophyllide
+chlorophylliferous
+chlorophylligenous
+chlorophylligerous
+chlorophyllin
+chlorophyllite
+chlorophylloid
+chlorophyllose
+chlorophyllous
+chlorophylls
+chloropia
+chloropicrin
+chloroplast
+chloroplastic
+chloroplastid
+chloroplasts
+chloroplatinate
+chloroplatinic
+chloroplatinite
+chloroplatinous
+chloroprene
+chloropsia
+chloroquine
+chlorosilicate
+chlorosis
+chlorospinel
+chlorosulphonic
+chlorothiazide
+chlorotic
+chlorotically
+chlorotrifluoroethylene
+chlorotrifluoromethane
+chlorous
+chlorozincate
+chlorpheniramine
+chlorphenol
+chlorpicrin
+chlorpikrin
+chlorpromazine
+chlorpropamide
+chlorprophenpyridamine
+chlorsalol
+chlortetracycline
+Chlor-Trimeton
+chloryl
+ChM
+chm
+chm.
+Chmielewski
+chmn
+chn
+Chnier
+Chnuphis
+Cho
+cho
+choachyte
+choak
+choana
+choanae
+choanate
+Choanephora
+choanite
+choanocytal
+choanocyte
+Choanoflagellata
+choanoflagellate
+Choanoflagellida
+Choanoflagellidae
+choanoid
+choanophorous
+choanosomal
+choanosome
+Choapas
+Choate
+choate
+choaty
+chob
+chobdar
+chobie
+Chobot
+choca
+chocalho
+chocard
+Choccolocco
+Chocho
+chocho
+chochos
+choc-ice
+chock
+chock-a-block
+chockablock
+chocked
+chocker
+chockful
+chock-full
+chockfull
+chocking
+chockler
+chockman
+chocks
+chockstone
+Choco
+choco
+Chocoan
+chocolate
+chocolate-box
+chocolate-brown
+chocolate-coated
+chocolate-colored
+chocolate-flower
+chocolate-red
+chocolates
+chocolatey
+chocolatier
+chocolatiere
+chocolaty
+Chocorua
+Chocowinity
+Choctaw
+choctaw
+choctaw-root
+Choctaws
+choctaws
+choel
+choenix
+Choephori
+Choeropsis
+Choes
+choffer
+choga
+chogak
+chogset
+Chogyal
+Choiak
+choice
+choice-drawn
+choiceful
+choiceless
+choicelessness
+choicely
+choiceness
+choicer
+choices
+choicest
+choicier
+choiciest
+choicy
+choil
+choile
+choiler
+choir
+choirboy
+choirboys
+choired
+choirgirl
+choiring
+choirlike
+choirman
+choirmaster
+choirmasters
+choirs
+choirwise
+choise
+Choiseul
+Choisya
+chok
+chokage
+choke
+choke-
+chokeable
+chokeberries
+chokeberry
+choke-bore
+chokebore
+chokecherries
+chokecherry
+choked
+chokedamp
+choke-full
+choker
+chokered
+chokerman
+chokers
+chokes
+chokestrap
+chokeweed
+chokey
+chokeys
+chokidar
+chokier
+chokies
+chokiest
+choking
+chokingly
+Chokio
+choko
+Chokoloskee
+chokra
+choky
+Chol
+chol
+chol-
+Chola
+chola
+cholaemia
+cholagogic
+cholagogue
+cholalic
+cholam
+Cholame
+cholane
+cholangiographic
+cholangiography
+cholangioitis
+cholangitis
+cholanic
+cholanthrene
+cholate
+cholates
+chold
+chole-
+choleate
+cholecalciferol
+cholecyanin
+cholecyanine
+cholecyst
+cholecystalgia
+cholecystectasia
+cholecystectomies
+cholecystectomized
+cholecystectomy
+cholecystenterorrhaphy
+cholecystenterostomy
+cholecystgastrostomy
+cholecystic
+cholecystis
+cholecystitis
+cholecystnephrostomy
+cholecystocolostomy
+cholecystocolotomy
+cholecystoduodenostomy
+cholecystogastrostomy
+cholecystogram
+cholecystography
+cholecystoileostomy
+cholecystojejunostomy
+cholecystokinin
+cholecystolithiasis
+cholecystolithotripsy
+cholecystonephrostomy
+cholecystopexy
+cholecystorrhaphy
+cholecystostomies
+cholecystostomy
+cholecystotomies
+cholecystotomy
+choledoch
+choledochal
+choledochectomy
+choledochitis
+choledochoduodenostomy
+choledochoenterostomy
+choledocholithiasis
+choledocholithotomy
+choledocholithotripsy
+choledochoplasty
+choledochorrhaphy
+choledochostomies
+choledochostomy
+choledochotomies
+choledochotomy
+choledography
+cholee
+cholehematin
+choleic
+choleine
+choleinic
+cholelith
+cholelithiasis
+cholelithic
+cholelithotomy
+cholelithotripsy
+cholelithotrity
+cholemia
+cholent
+cholents
+choleokinase
+cholepoietic
+choler
+cholera
+choleraic
+choleras
+choleric
+cholerically
+cholericly
+cholericness
+choleriform
+cholerigenous
+cholerine
+choleroid
+choleromania
+cholerophobia
+cholerrhagia
+cholers
+cholestane
+cholestanol
+cholesteatoma
+cholesteatomatous
+cholestene
+cholesterate
+cholesteremia
+cholesteric
+cholesterin
+cholesterinemia
+cholesterinic
+cholesterinuria
+cholesterol
+cholesterolemia
+cholesterols
+cholesteroluria
+cholesterosis
+cholesteryl
+choletelin
+choletherapy
+choleuria
+choli
+choliamb
+choliambic
+choliambist
+cholic
+cholick
+choline
+cholinergic
+cholines
+cholinesterase
+cholinic
+cholinolytic
+cholla
+chollas
+choller
+chollers
+Cholo
+cholo
+cholo-
+cholochrome
+cholocyanine
+Choloepus
+chologenetic
+choloid
+choloidic
+choloidinic
+chololith
+chololithic
+Cholon
+Cholonan
+Cholones
+cholophaein
+cholophein
+cholorrhea
+Cholos
+cholos
+choloscopy
+cholralosed
+cholterheaded
+choltry
+Cholula
+cholum
+choluria
+Choluteca
+chomage
+chomer
+chomp
+chomped
+chomper
+chompers
+chomping
+chomps
+Chomsky
+Chon
+chon
+chonchina
+chondr-
+chondral
+chondralgia
+chondrarsenite
+chondre
+chondrectomy
+chondrenchyma
+chondri
+chondria
+chondric
+Chondrichthyes
+chondrification
+chondrified
+chondrify
+chondrigen
+chondrigenous
+Chondrilla
+chondrin
+chondrinous
+chondriocont
+chondrioma
+chondriome
+chondriomere
+chondriomite
+chondriosomal
+chondriosome
+chondriosomes
+chondriosphere
+chondrite
+chondrites
+chondritic
+chondritis
+chondro-
+chondroadenoma
+chondroalbuminoid
+chondroangioma
+chondroarthritis
+chondroblast
+chondroblastoma
+chondrocarcinoma
+chondrocele
+chondroclasis
+chondroclast
+chondrocoracoid
+chondrocostal
+chondrocranial
+chondrocranium
+chondrocyte
+chondrodite
+chondroditic
+chondrodynia
+chondrodystrophia
+chondrodystrophy
+chondroendothelioma
+chondroepiphysis
+chondrofetal
+chondrofibroma
+chondrofibromatous
+Chondroganoidei
+chondrogen
+chondrogenesis
+chondrogenetic
+chondrogenous
+chondrogeny
+chondroglossal
+chondroglossus
+chondrography
+chondroid
+chondroitic
+chondroitin
+chondroitin-sulphuric
+chondrolipoma
+chondrology
+chondroma
+chondromalacia
+chondromas
+chondromata
+chondromatous
+chondromucoid
+Chondromyces
+chondromyoma
+chondromyxoma
+chondromyxosarcoma
+chondro-osseous
+chondropharyngeal
+chondropharyngeus
+chondrophore
+chondrophyte
+chondroplast
+chondroplastic
+chondroplasty
+chondroprotein
+chondropterygian
+Chondropterygii
+chondropterygious
+chondrosamine
+chondrosarcoma
+chondrosarcomas
+chondrosarcomata
+chondrosarcomatous
+chondroseptum
+chondrosin
+chondrosis
+chondroskeleton
+chondrostean
+Chondrostei
+chondrosteoma
+chondrosteous
+chondrosternal
+chondrotome
+chondrotomy
+chondroxiphoid
+chondrule
+chondrules
+chondrus
+Chong
+Chongjin
+chonicrite
+Chonju
+chonk
+chonolith
+chonta
+Chontal
+Chontalan
+Chontaquiro
+chontawood
+Choo
+choo-choo
+choochoo
+choo-chooed
+choo-chooing
+chook
+chookie
+chookies
+chooky
+choom
+Choong
+choop
+choora
+choosable
+choosableness
+choose
+chooseable
+chooser
+choosers
+chooses
+choosey
+choosier
+choosiest
+choosiness
+choosing
+choosingly
+choosy
+chop
+chopa
+chopas
+chopboat
+chop-cherry
+chop-chop
+chop-church
+chopdar
+chop-fallen
+chopfallen
+chop-house
+chophouse
+chophouses
+Chopin
+chopin
+chopine
+chopines
+chopins
+chop-logic
+choplogic
+choplogical
+chopped
+chopped-off
+chopper
+choppered
+choppers
+choppier
+choppiest
+choppily
+choppin
+choppiness
+choppinesses
+chopping
+choppy
+chops
+chop-stick
+chopstick
+Chopsticks
+chopsticks
+chop-suey
+Chopunnish
+Chor
+Chora
+choragi
+choragic
+choragion
+choragium
+choragus
+choraguses
+choragy
+Chorai
+choral
+choralcelo
+chorale
+choraleon
+chorales
+choralist
+chorally
+chorals
+Chorasmian
+chord
+chorda
+Chordaceae
+chordacentrous
+chordacentrum
+chordaceous
+chordal
+chordally
+chordamesoderm
+chordamesodermal
+chordamesodermic
+Chordata
+chordata
+chordate
+chordates
+chorded
+chordee
+Chordeiles
+chording
+chorditis
+chordoid
+chordomesoderm
+chordophone
+chordotomy
+chordotonal
+chords
+-chore
+chore
+chorea
+choreal
+choreas
+choreatic
+chored
+choree
+choregi
+choregic
+choregrapher
+choregraphic
+choregraphically
+choregraphy
+choregus
+choreguses
+choregy
+chorei
+choreic
+choreiform
+choreman
+choremen
+choreo-
+choreodrama
+choreograph
+choreographed
+choreographer
+choreographers
+choreographic
+choreographical
+choreographically
+choreographies
+choreographing
+choreographs
+choreography
+choreoid
+choreomania
+chorepiscopal
+chorepiscope
+chorepiscopus
+chores
+choreus
+choreutic
+chorgi
+chori-
+chorial
+choriamb
+choriambi
+choriambic
+choriambize
+choriambs
+choriambus
+choriambuses
+choribi
+choric
+chorically
+chorine
+chorines
+choring
+chorio
+chorioadenoma
+chorioallantoic
+chorioallantoid
+chorioallantois
+choriocapillaris
+choriocapillary
+choriocarcinoma
+choriocarcinomas
+choriocarcinomata
+choriocele
+chorioepithelioma
+chorioepitheliomas
+chorioepitheliomata
+chorioid
+chorioidal
+chorioiditis
+chorioidocyclitis
+chorioidoiritis
+chorioidoretinitis
+chorioids
+chorioma
+choriomas
+choriomata
+chorion
+chorionepithelioma
+chorionic
+chorions
+Chorioptes
+chorioptic
+chorioretinal
+chorioretinitis
+Choripetalae
+choripetalous
+choriphyllous
+chorisepalous
+chorisis
+chorism
+choriso
+chorisos
+chorist
+choristate
+chorister
+choristers
+choristership
+choristic
+choristoblastoma
+choristoma
+choristoneura
+choristry
+chorization
+chorizo
+c-horizon
+chorizont
+chorizontal
+chorizontes
+chorizontic
+chorizontist
+chorizos
+Chorley
+chorobates
+chorogi
+chorograph
+chorographer
+chorographic
+chorographical
+chorographically
+chorographies
+chorography
+choroid
+choroidal
+choroidea
+choroiditis
+choroidocyclitis
+choroidoiritis
+choroidoretinitis
+choroids
+chorological
+chorologist
+chorology
+choromania
+choromanic
+chorometry
+chorook
+Chorotega
+Choroti
+chorous
+chort
+chorten
+Chorti
+chortle
+chortled
+chortler
+chortlers
+chortles
+chortling
+chortosterol
+chorus
+chorused
+choruser
+choruses
+chorusing
+choruslike
+chorusmaster
+chorussed
+chorusses
+chorussing
+Chorwat
+Chorwon
+choryos
+Chorz
+Chorzow
+chose
+Chosen
+chosen
+choses
+chosing
+Chosn
+Chosunilbo
+Choteau
+CHOTS
+chott
+chotts
+Chou
+chou
+Chouan
+chouan
+Chouanize
+choucroute
+Choudrant
+Chouest
+chouette
+chou-fleur
+choufleur
+chough
+choughs
+chouka
+Choukoutien
+choule
+choultries
+choultry
+chounce
+choup
+choupic
+chouquette
+chous
+chouse
+choused
+chouser
+chousers
+chouses
+choush
+choushes
+chousing
+chousingha
+chout
+Chouteau
+choux
+Chow
+chow
+Chowanoc
+Chowchilla
+chow-chow
+chowchow
+chowchows
+chowder
+chowdered
+chowderhead
+chowderheaded
+chowderheadedness
+chowdering
+chowders
+chowed
+chowhound
+chowing
+chowk
+chowries
+chowry
+chows
+chowse
+chowsed
+chowses
+chowsing
+chowtime
+chowtimes
+choy
+choya
+choyaroot
+choyroot
+Chozar
+CHP
+CHQ
+Chr
+Chr.
+chrematheism
+chrematist
+chrematistic
+chrematistics
+chremsel
+chremzel
+chremzlach
+chreotechnics
+chresard
+chresards
+chresmology
+chrestomathic
+chrestomathics
+chrestomathies
+chrestomathy
+Chretien
+chria
+Chriesman
+chrimsel
+Chris
+chrism
+chrisma
+chrismal
+chrismale
+Chrisman
+chrismary
+chrismatine
+chrismation
+chrismatite
+chrismatize
+chrismatories
+chrismatory
+chrismon
+chrismons
+chrisms
+Chrisney
+chrisom
+chrisomloosing
+chrisoms
+Chrisoula
+chrisroot
+Chrissa
+Chrisse
+Chrissie
+Chrissy
+Christ
+christ
+Christa
+Christabel
+Christabella
+Christabelle
+Christadelphian
+Christadelphianism
+Christal
+Christalle
+Christan
+Christ-borne
+Christchurch
+Christ-confessing
+christ-cross
+christcross
+christ-cross-row
+christcross-row
+Christdom
+christdom
+Christean
+Christed
+christed
+Christel
+Christen
+christen
+Christendie
+Christendom
+christendom
+christened
+christener
+christeners
+christenhead
+christening
+christenings
+Christenmas
+christens
+Christensen
+Christenson
+Christ-given
+Christhood
+christhood
+Christ-hymning
+Christi
+Christiaan
+Christiad
+Christian
+christian
+Christiana
+Christiane
+Christiania
+christiania
+Christianiadeal
+Christianisation
+Christianise
+Christianised
+Christianiser
+Christianising
+Christianism
+christianism
+christianite
+Christianities
+Christianity
+christianity
+Christianization
+christianization
+Christianize
+christianize
+Christianized
+christianized
+Christianizer
+christianizes
+Christianizing
+christianizing
+Christianlike
+Christianly
+Christianna
+Christianness
+Christiano
+christiano-
+Christianogentilism
+Christianography
+Christianomastix
+Christianopaganism
+Christiano-platonic
+christians
+Christiansand
+Christiansburg
+Christiansen
+Christian-socialize
+Christianson
+Christiansted
+Christicide
+Christie
+christie
+Christies
+christies
+Christiform
+Christ-imitating
+Christin
+Christina
+Christine
+christine
+Christ-inspired
+Christis
+Christless
+christless
+Christlessness
+Christlike
+christ-like
+christlike
+Christlikeness
+Christliness
+Christly
+christly
+Christmann
+Christmas
+christmas
+Christmasberries
+Christmasberry
+christmases
+Christmasing
+Christmastide
+christmastide
+Christmastime
+Christmasy
+Christo-
+christo-
+Christocentric
+Christocentrism
+Christoff
+Christoffel
+Christoffer
+Christoforo
+Christogram
+Christolatry
+Christological
+christological
+Christologies
+Christologist
+Christology
+christology
+Christoper
+Christoph
+Christophanic
+Christophanies
+Christophany
+christophany
+Christophe
+Christopher
+christopher
+Christophorus
+Christos
+Christoval
+Christ-professing
+christs
+Christ's-thorn
+christ's-thorn
+Christ-taught
+christ-tide
+christward
+Christy
+christy
+Christye
+Christyna
+Chrisy
+chroatol
+Chrobat
+chrom-
+chroma
+chroma-blind
+chromaffin
+chromaffinic
+chromamamin
+chromammine
+chromaphil
+chromaphore
+chromas
+chromascope
+chromat-
+chromate
+chromates
+chromatic
+chromatical
+chromatically
+chromatician
+chromaticism
+chromaticity
+chromaticness
+chromatics
+chromatid
+chromatin
+chromatinic
+Chromatioideae
+chromatism
+chromatist
+Chromatium
+chromatize
+chromato-
+chromatocyte
+chromatodysopia
+chromatogenous
+chromatogram
+chromatograph
+chromatographic
+chromatographically
+chromatography
+chromatoid
+chromatologies
+chromatology
+chromatolysis
+chromatolytic
+chromatometer
+chromatone
+chromatopathia
+chromatopathic
+chromatopathy
+chromatophil
+chromatophile
+chromatophilia
+chromatophilic
+chromatophilous
+chromatophobia
+chromatophore
+chromatophoric
+chromatophorous
+chromatoplasm
+chromatopsia
+chromatoptometer
+chromatoptometry
+chromatoscope
+chromatoscopy
+chromatosis
+chromatosphere
+chromatospheric
+chromatrope
+chromaturia
+chromatype
+chromazurine
+chromdiagnosis
+-chrome
+chrome
+chromed
+Chromel
+chromene
+chrome-nickel
+chromeplate
+chromeplated
+chromeplating
+chromes
+chromesthesia
+chrome-tanned
+chrometophobia
+chromhidrosis
+chromic
+chromicize
+chromicizing
+chromid
+Chromidae
+chromide
+Chromides
+chromides
+chromidial
+Chromididae
+chromidiogamy
+chromidiosome
+chromidium
+chromidrosis
+chromiferous
+chrominance
+chroming
+chromiole
+chromism
+chromite
+chromites
+chromitite
+chromium
+chromium-plate
+chromium-plated
+chromiums
+chromize
+chromized
+chromizes
+chromizing
+Chromo
+chromo
+chromo-
+chromo-arsenate
+Chromobacterieae
+Chromobacterium
+chromoblast
+chromocenter
+chromocentral
+chromochalcographic
+chromochalcography
+chromocollograph
+chromocollographic
+chromocollography
+chromocollotype
+chromocollotypy
+chromocratic
+chromoctye
+chromocyte
+chromocytometer
+chromodermatosis
+chromodiascope
+chromogen
+chromogene
+chromogenesis
+chromogenetic
+chromogenic
+chromogenous
+chromogram
+chromograph
+chromoisomer
+chromoisomeric
+chromoisomerism
+chromoleucite
+chromolipoid
+chromolith
+chromolithic
+chromolithograph
+chromolithographer
+chromolithographic
+chromolithography
+chromolysis
+chromomere
+chromomeric
+chromometer
+chromone
+chromonema
+chromonemal
+chromonemata
+chromonematal
+chromonematic
+chromonemic
+chromoparous
+chromophage
+chromophane
+chromophil
+chromophile
+chromophilia
+chromophilic
+chromophilous
+chromophobe
+chromophobia
+chromophobic
+chromophor
+chromophore
+chromophoric
+chromophorous
+chromophotograph
+chromophotographic
+chromophotography
+chromophotolithograph
+chromophyl
+chromophyll
+chromoplasm
+chromoplasmic
+chromoplast
+chromoplastid
+chromoprotein
+chromopsia
+chromoptometer
+chromoptometrical
+chromos
+chromosantonin
+chromoscope
+chromoscopic
+chromoscopy
+chromosomal
+chromosomally
+chromosome
+chromosomes
+chromosomic
+chromosphere
+chromospheres
+chromospheric
+chromotherapist
+chromotherapy
+chromotrope
+chromotropic
+chromotropism
+chromotropy
+chromotype
+chromotypic
+chromotypographic
+chromotypography
+chromotypy
+chromous
+chromoxylograph
+chromoxylography
+chromule
+chromy
+chromyl
+chromyls
+Chron
+Chron.
+chron
+chron-
+chron.
+chronal
+chronanagram
+chronaxia
+chronaxie
+chronaxies
+chronaxy
+chroncmeter
+chronic
+chronica
+chronical
+chronically
+chronicity
+chronicle
+chronicled
+chronicler
+chroniclers
+Chronicles
+chronicles
+chronicling
+chronicon
+chronics
+chronique
+chronisotherm
+chronist
+Chronium
+chrono-
+chronobarometer
+chronobiology
+chronocarator
+chronocinematography
+chronocrator
+chronocyclegraph
+chronodeik
+chronogeneous
+chronogenesis
+chronogenetic
+chronogram
+chronogrammatic
+chronogrammatical
+chronogrammatically
+chronogrammatist
+chronogrammic
+chronograph
+chronographer
+chronographic
+chronographical
+chronographically
+chronographs
+chronography
+chronoisothermal
+chronol
+chronologer
+chronologic
+chronological
+chronologically
+chronologies
+chronologist
+chronologists
+chronologize
+chronologizing
+chronology
+chronomancy
+chronomantic
+chronomastix
+chronometer
+chronometers
+chronometric
+chronometrical
+chronometrically
+chronometry
+chronon
+chrononomy
+chronons
+chronopher
+chronophotograph
+chronophotographic
+chronophotography
+Chronos
+chronoscope
+chronoscopic
+chronoscopically
+chronoscopv
+chronoscopy
+chronosemic
+chronostichon
+chronothermal
+chronothermometer
+Chronotron
+chronotropic
+chronotropism
+Chroococcaceae
+chroococcaceous
+Chroococcales
+chroococcoid
+Chroococcus
+-chroous
+Chrosperma
+Chrotoem
+chrotta
+chry
+chrys-
+Chrysa
+chrysal
+chrysalid
+chrysalida
+chrysalidal
+chrysalides
+chrysalidian
+chrysaline
+chrysalis
+chrysalises
+chrysaloid
+chrysamine
+chrysammic
+chrysamminic
+Chrysamphora
+chrysanilin
+chrysaniline
+chrysanisic
+chrysanthemin
+chrysanthemum
+chrysanthemums
+chrysanthous
+Chrysaor
+chrysarobin
+chrysatropic
+chrysazin
+chrysazol
+Chryseis
+chryseis
+chryselectrum
+chryselephantine
+Chrysemys
+chrysene
+chrysenic
+Chryses
+chrysid
+Chrysidella
+chrysidid
+Chrysididae
+chrysin
+Chrysippus
+Chrysis
+Chrysler
+chrysler
+chryslers
+chryso-
+chrysoaristocracy
+Chrysobalanaceae
+Chrysobalanus
+chrysoberyl
+chrysobull
+chrysocale
+chrysocarpous
+chrysochlore
+Chrysochloridae
+Chrysochloris
+chrysochlorous
+chrysochrous
+chrysocolla
+chrysocracy
+chrysoeriol
+chrysogen
+chrysograph
+chrysographer
+chrysography
+chrysohermidin
+chrysoidine
+chrysolite
+chrysolitic
+chrysology
+Chrysolophus
+chrysome
+chrysomelid
+Chrysomelidae
+chrysomonad
+Chrysomonadales
+Chrysomonadina
+chrysomonadine
+Chrysomyia
+Chrysopa
+chrysopal
+chrysopee
+chrysophan
+chrysophane
+chrysophanic
+Chrysophanus
+chrysophenin
+chrysophenine
+chrysophilist
+chrysophilite
+Chrysophlyctis
+chrysophyll
+Chrysophyllum
+chrysophyte
+chrysopid
+Chrysopidae
+chrysopoeia
+chrysopoetic
+chrysopoetics
+chrysoprase
+chrysoprasus
+Chrysops
+Chrysopsis
+chrysorin
+chrysosperm
+Chrysosplenium
+Chrysostom
+chrysostomic
+Chrysostomus
+Chrysothamnus
+Chrysothemis
+chrysotherapy
+Chrysothrix
+chrysotile
+Chrysotis
+Chryssee
+Chrystal
+Chryste
+Chrystel
+chrystocrene
+chs
+chs.
+Chtaura
+chteau
+Chteauroux
+Chteau-Thierry
+chthonian
+chthonic
+Chthonius
+chthonophagia
+chthonophagy
+Chu
+Chuadanga
+Chuah
+Chualar
+chuana
+Chuanchow
+chub
+chubasco
+chubascos
+Chubb
+chubb
+chubbed
+chubbedness
+chubbier
+chubbiest
+chubbily
+chubbiness
+chubbinesses
+chubby
+chubby-faced
+chub-faced
+chubs
+chubsucker
+Chuch
+Chuchchi
+Chuchchis
+Chucho
+Chuchona
+Chuck
+chuck
+chuck-a-luck
+chuckawalla
+Chuckchi
+Chuckchis
+chucked
+chucker
+chucker-out
+chuckers-out
+Chuckey
+chuck-farthing
+chuckfarthing
+chuck-full
+chuckfull
+chuckhole
+chuckholes
+chuckie
+chuckies
+chucking
+chuckingly
+chuckle
+chuckled
+chucklehead
+chuckleheaded
+chuckleheadedness
+chuckler
+chucklers
+chuckles
+chucklesome
+chuckling
+chucklingly
+chuck-luck
+chuckram
+chuckrum
+chucks
+chuckstone
+chuckwalla
+chuck-will's-widow
+chucky
+chucky-chuck
+chucky-chucky
+Chud
+chuddah
+chuddahs
+chuddar
+chuddars
+chudder
+chudders
+Chude
+Chudic
+chuet
+Chueta
+chufa
+chufas
+chuff
+chuffed
+chuffer
+chuffest
+chuffier
+chuffiest
+chuffily
+chuffiness
+chuffing
+chuffs
+chuffy
+chug
+chug-a-lug
+chugalug
+chugalugged
+chugalugging
+chugalugs
+chug-chug
+chugged
+chugger
+chuggers
+chugging
+chughole
+Chugiak
+chugs
+Chugwater
+chuhra
+Chui
+Chuipek
+Chuje
+chukar
+chukars
+Chukchee
+Chukchees
+Chukchi
+Chukchis
+chukka
+chukkar
+chukkars
+chukkas
+chukker
+chukkers
+chukor
+Chula
+chulan
+chulha
+chullo
+chullpa
+chulpa
+chultun
+chum
+chumar
+Chumash
+Chumashan
+Chumashim
+Chumawi
+chumble
+Chumley
+chummage
+chummed
+chummer
+chummery
+chummier
+chummies
+chummiest
+chummily
+chumminess
+chumming
+chummy
+chump
+chumpa
+chumpaka
+chumped
+chumpiness
+chumping
+chumpish
+chumpishness
+Chumpivilca
+chumps
+chumpy
+chums
+chumship
+chumships
+Chumulu
+Chun
+chun
+chunam
+chunari
+Chuncho
+Chunchula
+chundari
+chunder
+chunderous
+Chung
+chung
+chunga
+Chungking
+chungking
+Chunichi
+chunk
+chunked
+chunkhead
+chunkier
+chunkiest
+chunkily
+chunkiness
+chunking
+chunks
+chunky
+Chunnel
+chunner
+chunnia
+chunter
+chuntered
+chuntering
+chunters
+chupa-chupa
+chupak
+chupatti
+chupatty
+chupon
+chuppah
+chuppahs
+chuppoth
+chuprassi
+chuprassie
+chuprassy
+Chuquicamata
+Chur
+Chura
+churada
+Church
+church
+church-ale
+churchanity
+church-chopper
+churchcraft
+churchdom
+church-door
+churched
+churches
+churchful
+church-gang
+church-garth
+churchgo
+churchgoer
+churchgoers
+churchgoing
+churchgoings
+church-government
+churchgrith
+churchianity
+churchier
+churchiest
+churchified
+Churchill
+churchill
+Churchillian
+churchiness
+churching
+churchish
+churchism
+churchite
+churchless
+churchlet
+churchlier
+churchliest
+churchlike
+churchliness
+churchly
+Churchman
+churchman
+churchmanly
+churchmanship
+churchmaster
+churchmen
+church-papist
+churchreeve
+church-scot
+churchscot
+churchshot
+church-soken
+Churchton
+Churchville
+church-ward
+churchward
+churchwarden
+churchwardenism
+churchwardenize
+churchwardens
+churchwardenship
+churchwards
+churchway
+churchwise
+churchwoman
+churchwomen
+churchy
+churchyard
+churchyards
+Churdan
+churel
+churidars
+churinga
+churingas
+churl
+churled
+churlhood
+churlier
+churliest
+churlish
+churlishly
+churlishness
+churls
+churly
+churm
+churn
+churnability
+churnable
+churn-butted
+churned
+churner
+churners
+churnful
+churning
+churnings
+churnmilk
+churns
+churnstaff
+Churoya
+Churoyan
+churr
+churrasco
+churred
+churrigueresco
+Churrigueresque
+churrigueresque
+churring
+churrip
+churro
+churr-owl
+churrs
+churruck
+churrus
+churr-worm
+churrworm
+Churubusco
+chuse
+chuser
+chusite
+chut
+Chute
+chute
+chuted
+chuter
+chutes
+chute-the-chute
+chute-the-chutes
+chuting
+chutist
+chutists
+chutnee
+chutnees
+chutney
+chutneys
+chuttie
+chutzpa
+chutzpadik
+chutzpah
+chutzpahs
+chutzpanik
+chutzpas
+Chuu
+chuumnapm
+Chuvash
+chuvashes
+Chuvashi
+chuzwi
+Chwana
+Chwang-tse
+chwas
+chyack
+chyak
+chyazic
+chylaceous
+chylangioma
+chylaqueous
+chyle
+chylemia
+chyles
+chylidrosis
+chylifaction
+chylifactive
+chylifactory
+chyliferous
+chylific
+chylification
+chylificatory
+chylified
+chyliform
+chylify
+chylifying
+chylo-
+chylocaulous
+chylocaulously
+chylocauly
+chylocele
+chylocyst
+chyloid
+chylomicron
+chylopericardium
+chylophyllous
+chylophyllously
+chylophylly
+chylopoetic
+chylopoiesis
+chylopoietic
+chylosis
+chylothorax
+chylous
+chyluria
+chym-
+chymaqueous
+chymase
+chyme
+chymes
+chymia
+chymic
+chymics
+chymiferous
+chymification
+chymified
+chymify
+chymifying
+chymist
+chymistry
+chymists
+chymo-
+chymosin
+chymosinogen
+chymosins
+chymotrypsin
+chymotrypsinogen
+chymous
+chyometer
+Chyou
+chypre
+chytra
+chytrid
+Chytridiaceae
+chytridiaceous
+chytridial
+Chytridiales
+chytridiose
+chytridiosis
+Chytridium
+Chytroi
+C.I.
+CI
+Ci
+ci-
+CIA
+Cia
+cia
+CIAC
+Ciales
+Ciampino
+Cianca
+Ciano
+ciao
+Ciapas
+Ciapha
+Ciaphus
+Ciardi
+CIB
+cibaria
+cibarial
+cibarian
+cibaries
+cibarious
+cibarium
+cibation
+cibbaria
+Cibber
+cibboria
+Cibis
+cibol
+Cibola
+Cibolan
+cibolero
+Cibolo
+cibols
+Ciboney
+cibophobia
+cibophobiafood
+ciboria
+ciborium
+cibory
+ciboule
+ciboules
+CIC
+CICA
+cicad
+cicada
+cicadae
+cicadas
+Cicadellidae
+cicadid
+Cicadidae
+cicala
+cicalas
+cicale
+cicatrice
+cicatrices
+cicatricial
+cicatricle
+cicatricose
+cicatricula
+cicatriculae
+cicatricule
+cicatrisant
+cicatrisate
+cicatrisation
+cicatrise
+cicatrised
+cicatriser
+cicatrising
+cicatrisive
+cicatrix
+cicatrixes
+cicatrizant
+cicatrizate
+cicatrization
+cicatrize
+cicatrized
+cicatrizer
+cicatrizing
+cicatrose
+Ciccia
+cicelies
+Cicely
+cicely
+Cicenia
+cicer
+Cicero
+cicero
+ciceronage
+cicerone
+cicerones
+ciceroni
+Ciceronian
+ciceronian
+Ciceronianism
+ciceronianism
+ciceronianisms
+ciceronianist
+ciceronianists
+Ciceronianize
+ciceronians
+Ciceronic
+Ciceronically
+ciceroning
+ciceronism
+ciceronize
+ciceros
+cichar
+cichlid
+Cichlidae
+cichlidae
+cichlids
+cichloid
+Cichocki
+cichoraceous
+Cichoriaceae
+cichoriaceous
+Cichorium
+cich-pea
+Cichus
+Cicily
+Cicindela
+cicindelid
+cicindelidae
+cicisbei
+cicisbeism
+cicisbeo
+ciclatoun
+Ciclo
+cicone
+Cicones
+Ciconia
+Ciconiae
+ciconian
+Ciconians
+ciconiform
+ciconiid
+Ciconiidae
+ciconiiform
+Ciconiiformes
+ciconine
+ciconioid
+cicoree
+cicorees
+cicrumspections
+CICS
+CICSVS
+cicurate
+Cicuta
+cicuta
+cicutoxin
+CID
+Cid
+cid
+Cida
+-cidal
+cidarid
+Cidaridae
+cidaris
+Cidaroida
+-cide
+cider
+ciderish
+ciderist
+ciderkin
+ciderlike
+ciders
+ci-devant
+CIDIN
+Cidney
+Cidra
+CIE
+Cie
+cie
+Ciel
+cienaga
+cienega
+Cienfuegos
+cierge
+cierzo
+cierzos
+CIF
+cif
+cig
+cigala
+cigale
+cigar
+cigaresque
+cigaret
+cigarets
+cigarette
+cigarettes
+cigarette-smoker
+cigarfish
+cigar-flower
+cigarillo
+cigarillos
+cigarito
+cigaritos
+cigarless
+cigar-loving
+cigars
+cigar-shaped
+cigar-smoker
+CIGS
+cigua
+ciguatera
+CII
+Ciitroen
+Cila
+cilantro
+cilantros
+cilectomy
+cilery
+cilia
+ciliary
+Ciliata
+ciliata
+ciliate
+ciliated
+ciliate-leaved
+ciliately
+ciliates
+ciliate-toothed
+ciliation
+cilice
+cilices
+Cilicia
+Cilician
+cilicious
+Cilicism
+cilicism
+ciliectomy
+ciliella
+ciliferous
+ciliform
+ciliiferous
+ciliiform
+ciliium
+Cilioflagellata
+cilioflagellate
+ciliograde
+ciliola
+ciliolate
+ciliolum
+Ciliophora
+cilioretinal
+cilioscleral
+ciliospinal
+ciliotomy
+Cilissa
+cilium
+Cilix
+Cilka
+cill
+Cilla
+cillosis
+Cillus
+Cilo
+cilo-spinal
+Cilurzo
+CIM
+CIMA
+Cima
+cima
+Cimabue
+Cimah
+cimaise
+cimaroon
+Cimarosa
+Cimarron
+cimbal
+cimbalom
+cimbaloms
+cimbia
+cimborio
+Cimbri
+Cimbrian
+Cimbric
+Cimbura
+cimcumvention
+cimelia
+cimeliarch
+cimelium
+cimeter
+cimex
+cimices
+cimicid
+Cimicidae
+cimicide
+cimiciform
+Cimicifuga
+cimicifugin
+cimicoid
+cimier
+ciminite
+cimline
+cimmaron
+Cimmeria
+Cimmerian
+cimmerian
+Cimmerianism
+Cimmerium
+cimnel
+cimolite
+Cimon
+C-in-C
+cinch
+cincha
+cinched
+cincher
+cinches
+cinching
+cincholoipon
+cincholoiponic
+cinchomeronic
+Cinchona
+cinchona
+Cinchonaceae
+cinchonaceous
+cinchonamin
+cinchonamine
+cinchonas
+cinchonate
+Cinchonero
+cinchonia
+cinchonic
+cinchonicin
+cinchonicine
+cinchonidia
+cinchonidine
+cinchonin
+cinchonine
+cinchoninic
+cinchonisation
+cinchonise
+cinchonised
+cinchonising
+cinchonism
+cinchonization
+cinchonize
+cinchonized
+cinchonizing
+cinchonology
+cinchophen
+cinchotine
+cinchotoxine
+cincinatti
+cincinnal
+Cincinnati
+cincinnati
+Cincinnatia
+Cincinnatian
+Cincinnatus
+cincinni
+cincinnus
+Cinclidae
+cinclides
+Cinclidotus
+cinclis
+Cinclus
+cinct
+cincture
+cinctured
+cinctures
+cincturing
+Cinda
+Cindee
+Cindelyn
+cinder
+cindered
+Cinderella
+cinderella
+cindering
+cinderlike
+cinderman
+cinderous
+cinders
+cindery
+Cindi
+Cindie
+Cindra
+Cindy
+Cindylou
+cine
+cine-
+cineangiocardiographic
+cineangiocardiography
+cineangiographic
+cineangiography
+cineast
+cineaste
+cineastes
+cineasts
+Cinebar
+cinecamera
+cinefaction
+cinefilm
+cinel
+Cinelli
+cinema
+cinemactic
+cinemagoer
+cinemagoers
+cinemas
+CinemaScope
+Cinemascope
+CinemaScopic
+cinematheque
+cinematheques
+cinematic
+cinematical
+cinematically
+cinematics
+cinematize
+cinematized
+cinematizing
+cinematograph
+cinematographer
+cinematographers
+cinematographic
+cinematographical
+cinematographically
+cinematographies
+cinematographist
+cinematography
+cinemelodrama
+cinemese
+cinemize
+cinemograph
+cinenchym
+cinenchyma
+cinenchymatous
+cinene
+cinenegative
+cineol
+cineole
+cineoles
+cineolic
+cineols
+cinephone
+cinephotomicrography
+cineplastics
+cineplasty
+cineraceous
+cineradiography
+Cinerama
+cinerama
+cinerararia
+Cineraria
+cineraria
+cinerarias
+cinerarium
+cinerary
+cineration
+cinerator
+cinerea
+cinereal
+cinereous
+cinerin
+cinerins
+cineritious
+cinerous
+cines
+cinevariety
+Cingalese
+cingalese
+cingle
+cingula
+cingular
+cingulate
+cingulated
+cingulectomies
+cingulectomy
+cingulum
+Cini
+ciniphes
+Cinna
+cinnabar
+cinnabaric
+cinnabarine
+cinnabars
+cinnamal
+cinnamaldehyde
+cinnamate
+cinnamein
+cinnamene
+cinnamenyl
+cinnamic
+Cinnamodendron
+cinnamol
+cinnamomic
+Cinnamomum
+Cinnamon
+cinnamon
+cinnamoned
+cinnamonic
+cinnamonlike
+cinnamonroot
+cinnamons
+cinnamonwood
+cinnamoyl
+cinnamyl
+cinnamylidene
+cinnamyls
+cinnolin
+cinnoline
+cinnyl
+cinofoil
+cinquain
+cinquains
+cinquanter
+cinque
+cinquecentism
+cinquecentist
+cinquecento
+cinquedea
+cinquefoil
+cinquefoiled
+cinquefoils
+cinquepace
+cinques
+cinque-spotted
+cinter
+cintre
+Cinura
+cinuran
+cinurous
+Cinyras
+Cinzano
+C.I.O.
+CIO
+Cioban
+Cioffred
+cion
+cionectomy
+cionitis
+cionocranial
+cionocranian
+cionoptosis
+cionorrhaphia
+cionotome
+cionotomy
+cions
+cioppino
+cioppinos
+CIP
+Cipango
+cipaye
+cipher
+cipherable
+cipherdom
+ciphered
+cipherer
+cipherhood
+ciphering
+ciphers
+ciphertext
+ciphertexts
+ciphonies
+ciphony
+cipo
+cipolin
+cipolins
+cipollino
+cippi
+cippus
+Ciprian
+Cipus
+cir
+cir.
+circ
+CIRCA
+circa
+circadian
+Circaea
+Circaeaceae
+Circaean
+Circaetus
+circar
+Circassia
+Circassian
+circassian
+Circassic
+Circe
+circe
+Circean
+Circensian
+circensian
+circinal
+circinate
+circinately
+circination
+Circini
+Circinus
+circinus
+circiter
+circle
+circle-branching
+circled
+circle-in
+circle-out
+circler
+circlers
+circles
+circle-shearing
+circle-squaring
+circlet
+circleting
+circlets
+Circleville
+circle-wise
+circlewise
+circline
+circling
+circling-in
+circling-out
+Circlorama
+circocele
+Circosta
+circovarian
+circs
+circue
+circuit
+circuitable
+circuital
+circuited
+circuiteer
+circuiter
+circuities
+circuiting
+circuition
+circuitman
+circuitmen
+circuitor
+circuitous
+circuitously
+circuitousness
+circuit-riding
+circuitries
+circuitry
+circuits
+circuituously
+circuity
+circulable
+circulant
+circular
+circular-cut
+circularisation
+circularise
+circularised
+circulariser
+circularising
+circularism
+circularities
+circularity
+circularization
+circularizations
+circularize
+circularized
+circularizer
+circularizers
+circularizes
+circularizing
+circular-knit
+circularly
+circularness
+circulars
+circularwise
+circulatable
+circulate
+circulated
+circulates
+circulating
+circulation
+circulations
+circulative
+circulator
+circulatories
+circulators
+circulatory
+circule
+circulet
+circuli
+circulin
+circulus
+circum
+circum-
+circumaction
+circumadjacent
+circumagitate
+circumagitation
+circumambages
+circumambagious
+circumambience
+circumambiencies
+circumambiency
+circumambient
+circumambiently
+circumambulate
+circumambulated
+circumambulates
+circumambulating
+circumambulation
+circumambulations
+circumambulator
+circumambulatory
+circumanal
+circumantarctic
+circumarctic
+Circum-arean
+circumarticular
+circumaviate
+circumaviation
+circumaviator
+circumaxial
+circumaxile
+circumaxillary
+circumbasal
+circumbendibus
+circumbendibuses
+circumboreal
+circumbuccal
+circumbulbar
+circumcallosal
+Circumcellion
+circumcellion
+circumcenter
+circumcentral
+circumcinct
+circumcincture
+circumcircle
+circumcise
+circumcised
+circumciser
+circumcises
+circumcising
+circumcision
+circumcisions
+circumcission
+circumclude
+circumclusion
+circumcolumnar
+circumcone
+circumconic
+circumcorneal
+circumcrescence
+circumcrescent
+Circum-cytherean
+circumdate
+circumdenudation
+circumdiction
+circumduce
+circumducing
+circumduct
+circumducted
+circumduction
+circumesophagal
+circumesophageal
+circumfer
+circumference
+circumferences
+circumferent
+circumferential
+circumferentially
+circumferentor
+circumflant
+circumflect
+circumflex
+circumflexes
+circumflexion
+circumfluence
+circumfluent
+circumfluous
+circumforaneous
+circumfulgent
+circumfuse
+circumfused
+circumfusile
+circumfusing
+circumfusion
+circumgenital
+circumgestation
+circumgyrate
+circumgyration
+circumgyratory
+circumhorizontal
+circumincession
+circuminsession
+circuminsular
+circumintestinal
+circumitineration
+circumjacence
+circumjacencies
+circumjacency
+circumjacent
+Circum-jovial
+circumjovial
+circumlental
+circumlitio
+circumlittoral
+circumlocute
+circumlocution
+circumlocutional
+circumlocutionary
+circumlocutionist
+circumlocutions
+circumlocutory
+circumlunar
+Circum-mercurial
+circum-meridian
+circummeridian
+circummeridional
+circummigrate
+circummigration
+circummundane
+circummure
+circummured
+circummuring
+circumnatant
+circumnavigable
+circumnavigate
+circumnavigated
+circumnavigates
+circumnavigating
+circumnavigation
+circumnavigations
+circumnavigator
+circumnavigatory
+Circum-neptunian
+circumneutral
+circumnuclear
+circumnutate
+circumnutated
+circumnutating
+circumnutation
+circumnutatory
+circumocular
+circumoesophagal
+circumoral
+circumorbital
+circumpacific
+circumpallial
+circumparallelogram
+circumpentagon
+circumplanetary
+circumplect
+circumplicate
+circumplication
+circumpolar
+circumpolygon
+circumpose
+circumposition
+circumquaque
+circumradii
+circumradius
+circumradiuses
+circumrenal
+circumrotate
+circumrotated
+circumrotating
+circumrotation
+circumrotatory
+circumsail
+Circum-saturnal
+Circum-saturnian
+circumsaturnian
+circumsciss
+circumscissile
+circumscribable
+circumscribe
+circumscribed
+circumscriber
+circumscribes
+circumscribing
+circumscript
+circumscription
+circumscriptions
+circumscriptive
+circumscriptively
+circumscriptly
+circumscrive
+circumsession
+circumsinous
+circumsolar
+circumspangle
+circumspatial
+circumspect
+circumspection
+circumspections
+circumspective
+circumspectively
+circumspectly
+circumspectness
+circumspheral
+circumsphere
+circumstance
+circumstanced
+circumstances
+circumstancing
+circumstant
+circumstantiability
+circumstantiable
+circumstantial
+circumstantialities
+circumstantiality
+circumstantially
+circumstantialness
+circumstantiate
+circumstantiated
+circumstantiates
+circumstantiating
+circumstantiation
+circumstantiations
+circumstellar
+circumtabular
+circumterraneous
+circumterrestrial
+circumtonsillar
+circumtropical
+circumumbilical
+circumundulate
+circumundulation
+Circum-uranian
+circumvallate
+circumvallated
+circumvallating
+circumvallation
+circumvascular
+circumvent
+circumventable
+circumvented
+circumventer
+circumventing
+circumvention
+circumventions
+circumventive
+circumventor
+circumvents
+circumvest
+circumviate
+circumvoisin
+circumvolant
+circumvolute
+circumvolution
+circumvolutory
+circumvolve
+circumvolved
+circumvolving
+circumzenithal
+circus
+circuses
+circusy
+circut
+circuted
+circuting
+circuts
+cire
+Cirenaica
+Cirencester
+cire-perdue
+cires
+Ciri
+Cirilla
+Cirillo
+Cirilo
+cirl
+cirmcumferential
+Ciro
+Cirone
+cirque
+cirque-couchant
+cirques
+cirr-
+cirrate
+cirrated
+Cirratulidae
+Cirratulus
+cirrh-
+Cirrhopetalum
+cirrhopod
+cirrhose
+cirrhosed
+cirrhoses
+cirrhosis
+cirrhotic
+cirrhous
+cirrhus
+Cirri
+cirri
+cirribranch
+cirriferous
+cirriform
+cirrigerous
+cirrigrade
+cirriped
+cirripede
+Cirripedia
+cirripedial
+cirripeds
+CIRRIS
+cirro-
+cirro-cumular
+cirrocumular
+cirro-cumulative
+cirrocumulative
+cirro-cumulous
+cirrocumulous
+cirro-cumulus
+cirrocumulus
+cirro-fillum
+cirro-filum
+cirrolite
+cirro-macula
+cirro-nebula
+cirropodous
+cirrose
+cirrosely
+cirro-stome
+cirrostome
+Cirrostomi
+cirro-strative
+cirrostrative
+cirro-stratous
+cirro-stratus
+cirrostratus
+cirrous
+cirro-velum
+cirrus
+cirsectomies
+cirsectomy
+Cirsium
+cirsocele
+cirsoid
+cirsomphalos
+cirsophthalmia
+cirsotome
+cirsotomies
+cirsotomy
+cirterion
+ciruela
+cirurgian
+ciruses
+CIS
+Cis
+cis
+cis-
+Cisalpine
+cisalpine
+Cisalpinism
+cisandine
+cisatlantic
+CISC
+Ciscaucasia
+Cisco
+cisco
+ciscoes
+ciscos
+cise
+ciseaux
+cisele
+ciseleur
+ciseleurs
+cis-Elizabethan
+ciselure
+ciselures
+cis-elysian
+cisgangetic
+cising
+cisium
+cisjurane
+Ciskei
+cisleithan
+cislunar
+cismarine
+Cismontane
+cismontane
+Cismontanism
+Cisne
+cisoceanic
+cispadane
+cisplatine
+cispontine
+Cis-reformation
+cisrhenane
+Cissaea
+Cissampelos
+Cissie
+Cissiee
+cissies
+cissing
+cissoid
+cissoidal
+cissoids
+Cissus
+Cissy
+cissy
+cist
+cista
+Cistaceae
+cistaceous
+cistae
+cisted
+Cistercian
+cistercian
+Cistercianism
+cistern
+cisterna
+cisternae
+cisternal
+cisterns
+cistic
+cistophori
+cistophoric
+cistophorus
+cistori
+cis-trans
+cistron
+cistronic
+cistrons
+cists
+Cistudo
+Cistus
+cistus
+cistuses
+cistvaen
+Ciszek
+CIT
+cit
+cit.
+Cita
+citable
+citadel
+citadels
+cital
+Citarella
+Citation
+citation
+citational
+citations
+citator
+citators
+citatory
+citatum
+cite
+citeable
+cited
+citee
+Citellus
+citer
+citers
+cites
+citess
+Cithaeron
+Cithaeronian
+cithara
+citharas
+Citharexylum
+citharist
+citharista
+citharoedi
+citharoedic
+citharoedus
+cither
+cithern
+citherns
+cithers
+cithren
+cithrens
+citicism
+citicorp
+citied
+cities
+citification
+citified
+citifies
+citify
+citifying
+Citigradae
+citigrade
+citing
+citizen
+citizendom
+citizeness
+citizenhood
+citizenish
+citizenism
+citizenize
+citizenized
+citizenizing
+citizenly
+citizenries
+citizenry
+citizens
+citizenship
+citizenships
+Citlaltepetl
+Citlaltpetl
+citola
+citolas
+citole
+citoler
+citolers
+citoles
+citoyen
+citoyenne
+citoyens
+citr-
+Citra
+citra-
+citraconate
+citraconic
+citral
+citrals
+citramide
+citramontane
+citrange
+citrangeade
+citrate
+citrated
+citrates
+citrean
+citrene
+citreous
+citric
+citriculture
+citriculturist
+citril
+citrin
+citrination
+citrine
+citrines
+citrinin
+citrinins
+citrinous
+citrins
+citrocola
+Citroen
+citrometer
+Citromyces
+Citron
+citron
+citronade
+citronalis
+citron-colored
+citronella
+citronellal
+Citronelle
+citronelle
+citronellic
+citronellol
+citronin
+citronize
+citrons
+citronwood
+citron-yellow
+Citropsis
+citropten
+citrous
+citrul
+citrullin
+citrulline
+Citrullus
+Citrus
+citrus
+citruses
+citrylidene
+cittern
+citternhead
+citterns
+Cittticano
+citua
+City
+city
+city-born
+city-bound
+city-bred
+citybuster
+citycism
+city-commonwealth
+citydom
+cityfied
+cityfolk
+cityful
+city-god
+cityish
+cityless
+citylike
+cityness
+citynesses
+cityscape
+cityscapes
+city-state
+cityward
+citywards
+city-wide
+citywide
+CIU
+Ciudad
+ciudad
+civ
+civ.
+cive
+civet
+civet-cat
+civetlike
+civetone
+civets
+Civia
+civic
+civical
+civically
+civicism
+civicisms
+civic-minded
+civic-mindedly
+civic-mindedness
+civics
+civie
+civies
+civil
+civile
+civiler
+civilest
+civilian
+civilianization
+civilianize
+civilians
+civilisable
+civilisation
+civilisational
+civilisations
+civilisatory
+civilise
+civilised
+civilisedness
+civiliser
+civilises
+civilising
+civilist
+civilite
+civilities
+civility
+civilizable
+civilizade
+civilization
+civilizational
+civilizationally
+civilizations
+civilizatory
+civilize
+civilized
+civilizedness
+civilizee
+civilizer
+civilizers
+civilizes
+civilizing
+civil-law
+civilly
+civilness
+civil-rights
+civism
+civisms
+Civitan
+civitas
+civite
+civory
+civvies
+civvy
+civy
+ciwies
+cixiid
+Cixiidae
+Cixo
+cizar
+cize
+CJ
+ck
+ckw
+C/L
+CL
+Cl
+cl
+cl.
+clabber
+clabbered
+clabbering
+clabbers
+clabbery
+clablaria
+Clabo
+clabularia
+clabularium
+clach
+clachan
+clachans
+clachs
+clack
+Clackama
+Clackamas
+clackdish
+clacked
+clacker
+clackers
+clacket
+clackety
+clacking
+Clackmannan
+Clackmannanshire
+clacks
+Clacton
+Clactonian
+clactonian
+clad
+cladanthous
+cladautoicous
+cladding
+claddings
+clade
+cladine
+cladistic
+clado-
+cladocarpous
+Cladocera
+cladoceran
+cladocerans
+cladocerous
+cladode
+cladodes
+cladodial
+cladodium
+cladodont
+cladodontid
+Cladodontidae
+Cladodus
+cladogenesis
+cladogenetic
+cladogenetically
+cladogenous
+Cladonia
+Cladoniaceae
+cladoniaceous
+cladonioid
+Cladophora
+cladophora
+Cladophoraceae
+cladophoraceous
+Cladophorales
+cladophyll
+cladophyllum
+cladoptosis
+cladose
+Cladoselache
+Cladoselachea
+cladoselachian
+Cladoselachidae
+cladosiphonic
+Cladosporium
+Cladothrix
+Cladrastis
+clads
+cladus
+claes
+Claflin
+clag
+clagged
+clagging
+claggum
+claggy
+clags
+Claiborn
+Claiborne
+Claibornian
+claik
+claim
+claimable
+claimant
+claimants
+claimed
+claimer
+claimers
+claiming
+claim-jumper
+claim-jumping
+claimless
+claims
+claimsman
+claimsmen
+Clair
+clair
+clairaudience
+clairaudient
+clairaudiently
+Clairaut
+clairce
+Claire
+claire
+clairecole
+clairecolle
+claires
+Clairfield
+clair-obscure
+clairschach
+clairschacher
+clairseach
+clairseacher
+clairsentience
+clairsentient
+Clairton
+clairvoyance
+clairvoyances
+clairvoyancies
+clairvoyancy
+clairvoyant
+clairvoyantly
+clairvoyants
+claith
+claithes
+claiver
+clake
+Clallam
+clam
+Claman
+clamant
+clamantly
+clamaroo
+clamation
+clamative
+Clamatores
+clamatorial
+clamatory
+clamb
+clambake
+clambakes
+clamber
+clambered
+clamberer
+clambering
+clambers
+clamcracker
+clame
+clamehewit
+clamer
+clamflat
+clamjamfery
+clamjamfry
+clamjamphrie
+clamlike
+clammed
+clammer
+clammers
+clammersome
+clammier
+clammiest
+clammily
+clamminess
+clamminesses
+clamming
+clammish
+clammy
+clammyweed
+clamor
+clamored
+clamorer
+clamorers
+clamoring
+clamorist
+clamorous
+clamorously
+clamorousness
+clamors
+clamorsome
+clamour
+clamoured
+clamourer
+clamouring
+clamourist
+clamourous
+clamours
+clamoursome
+clamp
+clampdown
+clamped
+clamper
+clampers
+clamping
+clamps
+clams
+clamshell
+clamshells
+clamworm
+clamworms
+clan
+Clance
+clancular
+clancularly
+Clancy
+clandestine
+clandestinely
+clandestineness
+clandestinity
+clanfellow
+clang
+clanged
+clanger
+clangers
+clangful
+clanging
+clangingly
+clangor
+clangored
+clangoring
+clangorous
+clangorously
+clangorousness
+clangors
+clangour
+clangoured
+clangouring
+clangours
+clangs
+Clangula
+clanjamfray
+clanjamfrey
+clanjamfrie
+clanjamphrey
+clank
+clanked
+clankety
+clanking
+clankingly
+clankingness
+clankless
+clanks
+clankum
+clanless
+clanned
+clanning
+clannish
+clannishly
+clannishness
+clannishnesses
+clans
+clansfolk
+clanship
+clansman
+clansmanship
+clansmen
+clanswoman
+clanswomen
+Clanton
+Claosaurus
+clap
+clapboard
+clapboarding
+clapboards
+clapbread
+clapcake
+clapdish
+clape
+Clapeyron
+clapholt
+clapmatch
+clapnest
+clap-net
+clapnet
+clapotis
+Clapp
+clappe
+clapped
+Clapper
+clapper
+clapperboard
+clapper-claw
+clapperclaw
+clapperclawer
+clapperdudgeon
+clappered
+clappering
+clappermaclaw
+clappers
+clapping
+claps
+clap-stick
+clapstick
+clapt
+Clapton
+claptrap
+claptraps
+clapwort
+claque
+claquer
+claquers
+claques
+claqueur
+claqueurs
+clar
+Clara
+clarabella
+Clarabelle
+clarain
+Claramae
+Clarance
+Clarcona
+Clardy
+Clare
+clare
+Claremont
+Claremore
+Clarence
+clarence
+clarences
+Clarenceux
+clarenceux
+Clarenceuxship
+Clarencieux
+Clarendon
+clarendon
+clare-obscure
+clares
+Claresta
+claret
+Clareta
+Claretian
+claretian
+clarets
+Claretta
+Clarette
+Clarey
+Clarhe
+Clari
+Claribel
+claribel
+claribella
+Clarice
+clarichord
+Clarie
+claries
+clarifiable
+clarifiant
+clarificant
+clarification
+clarifications
+clarified
+clarifier
+clarifiers
+clarifies
+clarify
+clarifying
+clarigate
+clarigation
+clarigold
+clarin
+clarina
+Clarinda
+Clarine
+clarine
+clarinet
+clarinetist
+clarinetists
+clarinets
+clarinettist
+clarinettists
+Clarington
+clarini
+clarino
+clarinos
+Clarion
+clarion
+clarioned
+clarionet
+clarioning
+clarions
+clarion-voiced
+Clarisa
+Clarise
+Clarissa
+Clarisse
+clarissimo
+Clarist
+Clarita
+clarities
+claritude
+clarity
+Clark
+clark
+Clarkdale
+Clarke
+clarke
+Clarkedale
+clarkeite
+clarkeites
+Clarkesville
+Clarkfield
+Clarkia
+clarkia
+clarkias
+Clarkin
+Clarks
+Clarksboro
+Clarksburg
+Clarksdale
+Clarkson
+Clarkston
+Clarksville
+clarksville
+Clarkton
+claro
+claroes
+Claromontane
+Claromontanus
+claros
+clarre
+clarsach
+clarseach
+clarsech
+clarseth
+clarshech
+clart
+clartier
+clartiest
+clarts
+clarty
+Clary
+clary
+Claryville
+-clase
+clash
+clashed
+clashee
+clasher
+clashers
+clashes
+clashing
+clashingly
+clashy
+clasmatocyte
+clasmatocytic
+clasmatosis
+CLASP
+clasp
+clasped
+clasper
+claspers
+clasping
+clasping-leaved
+clasps
+claspt
+CLASS
+class
+class.
+classable
+classbook
+class-cleavage
+class-conscious
+classed
+classer
+classers
+classes
+classfellow
+classic
+classical
+classicalism
+classicalist
+classicalities
+classicality
+classicalize
+classically
+classicalness
+classicise
+classicised
+classicising
+classicism
+classicisms
+classicist
+classicistic
+classicists
+classicize
+classicized
+classicizing
+classico
+classico-
+classicolatry
+classico-lombardic
+classics
+classier
+classiest
+classifiable
+classific
+classifically
+classification
+classificational
+classifications
+classificator
+classificatory
+classified
+classifier
+classifiers
+classifies
+classify
+classifying
+classily
+classiness
+classing
+classis
+classism
+classisms
+classist
+classists
+classless
+classlessness
+classman
+classmanship
+classmate
+classmates
+classmen
+classroom
+classrooms
+classwise
+classwork
+classy
+clast
+clastic
+clastics
+clasts
+clat
+clatch
+clatchy
+Clathraceae
+clathraceous
+Clathraria
+clathrarian
+clathrate
+Clathrina
+Clathrinidae
+clathroid
+clathrose
+clathrulate
+Clathrus
+Clatonia
+Clatskanie
+Clatsop
+clatter
+clattered
+clatterer
+clattering
+clatteringly
+clatters
+clattertrap
+clattertraps
+clattery
+clatty
+clauber
+claucht
+Claud
+Clauddetta
+Claude
+Claudel
+Claudell
+Claudelle
+claudent
+claudetite
+claudetites
+Claudetta
+Claudette
+Claudia
+Claudian
+Claudianus
+claudicant
+claudicate
+claudication
+Claudie
+Claudina
+Claudine
+Claudio
+Claudius
+claudius
+Claudville
+Claudy
+claught
+claughted
+claughting
+claughts
+Claunch
+Claus
+claus
+clausal
+clause
+Clausen
+clauses
+Clausewitz
+Clausilia
+Clausiliidae
+Clausius
+clauster
+clausthalite
+claustra
+claustral
+claustration
+claustrophilia
+claustrophobe
+claustrophobia
+claustrophobiac
+claustrophobias
+claustrophobic
+claustrum
+clausula
+clausulae
+clausular
+clausule
+clausum
+clausure
+claut
+Clava
+clava
+clavacin
+clavae
+claval
+Clavaria
+Clavariaceae
+clavariaceous
+clavate
+clavated
+clavately
+clavatin
+clavation
+clave
+clavecin
+clavecinist
+clavel
+clavelization
+clavelize
+clavellate
+clavellated
+claver
+Claverack
+clavered
+clavering
+clavers
+claves
+clavi
+clavial
+claviature
+clavicembali
+clavicembalist
+clavicembalo
+Claviceps
+clavichord
+clavichordist
+clavichordists
+clavichords
+clavicithern
+clavicittern
+clavicle
+clavicles
+clavicor
+clavicorn
+clavicornate
+Clavicornes
+Clavicornia
+clavicotomy
+clavicular
+clavicularium
+claviculate
+claviculo-humeral
+claviculus
+clavicylinder
+clavicymbal
+clavicytheria
+clavicytherium
+clavicythetheria
+clavier
+clavierist
+clavieristic
+clavierists
+claviers
+claviform
+claviger
+clavigerous
+claviharp
+clavilux
+claviol
+claviole
+clavipectoral
+clavis
+clavises
+Clavius
+clavodeltoid
+clavodeltoideus
+clavola
+clavolae
+clavolet
+clavus
+clavuvi
+clavy
+claw
+clawback
+clawed
+clawer
+clawers
+claw-footed
+clawhammer
+clawing
+clawk
+clawker
+clawless
+clawlike
+claws
+clawsick
+Clawson
+claw-tailed
+claxon
+claxons
+Claxton
+Clay
+clay
+claybank
+claybanks
+Clayberg
+Clayborn
+Clayborne
+clay-bound
+Claybourne
+claybrained
+clay-built
+clay-cold
+clay-colored
+clay-digging
+clay-dimmed
+clay-drying
+claye
+clayed
+clayen
+clayer
+clayey
+clay-faced
+clay-filtering
+clay-forming
+clay-grinding
+Clayhole
+clayier
+clayiest
+clayiness
+claying
+clayish
+claylike
+clay-lined
+clayman
+clay-mixing
+Claymont
+claymore
+claymores
+Clayoquot
+claypan
+claypans
+Claypool
+clays
+Claysburg
+Clayson
+claystone
+Claysville
+clay-tempering
+Clayton
+Claytonia
+claytonia
+Claytonville
+clayver-grass
+Clayville
+clayware
+claywares
+clay-washing
+clayweed
+clay-wrapped
+CLDN
+-cle
+Clea
+cleach
+clead
+cleaded
+cleading
+cleam
+cleamer
+clean
+clean-
+cleanable
+clean-appearing
+clean-armed
+clean-boled
+clean-bred
+clean-built
+clean-complexioned
+clean-cut
+cleaned
+cleaner
+cleaner-off
+cleaner-out
+cleaners
+cleaner-up
+cleanest
+clean-faced
+clean-feeding
+clean-fingered
+clean-grained
+clean-handed
+cleanhanded
+cleanhandedness
+cleanhearted
+cleaning
+cleanings
+cleanish
+clean-legged
+cleanlier
+cleanliest
+cleanlily
+clean-limbed
+cleanliness
+cleanlinesses
+clean-lived
+clean-living
+clean-looking
+cleanly
+clean-made
+clean-minded
+clean-moving
+cleanness
+cleannesses
+cleanout
+cleans
+cleansable
+clean-sailing
+clean-saying
+cleanse
+cleansed
+clean-seeming
+cleanser
+cleansers
+cleanses
+clean-shanked
+clean-shaped
+clean-shaved
+clean-shaven
+cleansing
+clean-skin
+cleanskin
+clean-skinned
+cleanskins
+clean-smelling
+clean-souled
+clean-speaking
+clean-sweeping
+Cleanth
+Cleantha
+Cleanthes
+clean-thinking
+clean-timbered
+cleanup
+cleanups
+clean-washed
+clear
+clearable
+clearage
+clearance
+clearances
+clear-boled
+Clearbrook
+Clearchus
+clear-cole
+clearcole
+clear-complexioned
+clear-crested
+clear-cut
+clear-cutness
+clear-cutting
+cleared
+clearedness
+clearer
+clearers
+clearest
+clear-eye
+clear-eyed
+clear-eyes
+clear-faced
+clear-featured
+Clearfield
+clear-headed
+clearheaded
+clearheadedly
+clearheadedness
+clearhearted
+clearing
+clearinghouse
+clearinghouses
+clearings
+clearish
+clearly
+clear-minded
+clearminded
+clear-mindedness
+Clearmont
+clearness
+clearnesses
+clear-obscure
+clears
+clear-sighted
+clearsighted
+clear-sightedly
+clear-sightedness
+clearsightedness
+Clearsite
+clear-skinned
+clearskins
+clear-spirited
+clear-starch
+clearstarch
+clear-starcher
+clearstarcher
+clear-stemmed
+clearstoried
+clearstories
+clear-story
+clearstory
+clear-sunned
+clear-throated
+clear-tinted
+clear-toned
+clear-up
+Clearview
+Clearville
+clear-visioned
+clear-voiced
+clear-walled
+Clearwater
+clearwater
+clearway
+clearweed
+clearwing
+clear-witted
+Cleary
+Cleasta
+cleat
+cleated
+cleating
+Cleaton
+cleats
+cleavability
+cleavable
+cleavage
+cleavages
+Cleave
+cleave
+cleaved
+cleaveful
+cleavelandite
+cleaver
+cleavers
+cleaverwort
+Cleaves
+cleaves
+cleaving
+cleavingly
+Cleavland
+Cleburne
+cleche
+clechee
+clechy
+cleck
+cled
+cledde
+cledge
+cledgy
+cledonism
+clee
+cleech
+cleek
+cleeked
+cleeking
+cleeks
+cleeky
+Cleelum
+Cleethorpes
+CLEF
+clef
+clefs
+cleft
+clefted
+cleft-footed
+cleft-graft
+clefting
+clefts
+cleg
+Cleghorn
+CLEI
+cleidagra
+cleidarthritis
+cleidocostal
+cleidocranial
+cleidohyoid
+cleidoic
+cleidomancy
+cleido-mastoid
+cleidomastoid
+cleido-occipital
+cleidorrhexis
+cleidoscapular
+cleidosternal
+cleidotomy
+cleidotripsy
+Clein
+Cleisthenes
+cleistocarp
+cleistocarpous
+cleistogamic
+cleistogamically
+cleistogamous
+cleistogamously
+cleistogamy
+cleistogene
+cleistogenous
+cleistogeny
+cleistotcia
+cleistothecia
+cleistothecium
+Cleistothecopsis
+cleithral
+cleithrum
+Clela
+Cleland
+Clellan
+Clem
+clem
+Clematis
+clematis
+clematises
+clematite
+Clemclemalats
+Clemen
+Clemence
+clemence
+Clemenceau
+clemencies
+Clemency
+clemency
+Clemens
+Clement
+clement
+Clementas
+Clemente
+Clementi
+Clementia
+Clementina
+Clementine
+clementine
+Clementis
+Clementius
+clemently
+clementness
+Clementon
+Clements
+clements
+clemmed
+Clemmie
+clemming
+Clemmons
+Clemmy
+Clemon
+Clemons
+Clemson
+clench
+clench-built
+clenched
+clencher
+clenchers
+clenches
+clenching
+Clendenin
+Cleo
+Cleobis
+Cleobulus
+Cleodaeus
+Cleodal
+Cleodel
+Cleodell
+cleoid
+Cleome
+cleome
+cleomes
+Cleon
+Cleone
+Cleopatra
+cleopatra
+Cleopatre
+Cleostratus
+Cleota
+Cleothera
+clep
+clepe
+cleped
+clepes
+cleping
+Clepsine
+clepsydra
+clepsydrae
+clepsydras
+clept
+cleptobioses
+cleptobiosis
+cleptobiotic
+cleptomania
+cleptomaniac
+Clerc
+Clercq
+Clere
+Cleres
+clerestoried
+clerestories
+clerestory
+clerete
+clergess
+clergies
+clergion
+clergy
+clergyable
+clergylike
+clergyman
+clergymen
+clergywoman
+clergywomen
+cleric
+clerical
+clericalism
+clericalist
+clericalists
+clericality
+clericalize
+clerically
+clericals
+clericate
+clericature
+clericism
+clericity
+clerico-
+clerico-political
+clerics
+clericum
+clerid
+Cleridae
+clerids
+clerihew
+clerihews
+clerisies
+Clerissa
+clerisy
+Clerk
+clerk
+clerkage
+clerk-ale
+clerkdom
+clerkdoms
+clerked
+clerkery
+clerkess
+clerkhood
+clerking
+clerkish
+clerkless
+clerklier
+clerkliest
+clerklike
+clerkliness
+clerkly
+clerks
+clerkship
+clerkships
+Clermont
+Clermont-Ferrand
+clernly
+clero-
+Clerodendron
+cleromancy
+cleronomy
+clerstory
+cleruch
+cleruchial
+cleruchic
+cleruchies
+cleruchy
+clerum
+Clerus
+Clervaux
+Cleta
+cletch
+Clete
+Clethra
+clethra
+Clethraceae
+clethraceous
+clethrionomys
+Cleti
+Cletis
+Cletus
+cleuch
+cleuk
+cleuks
+Cleva
+Cleve
+cleve
+cleveite
+cleveites
+Cleveland
+cleveland
+Clevenger
+clever
+cleverality
+clever-clever
+Cleverdale
+cleverer
+cleverest
+clever-handed
+cleverish
+cleverishly
+cleverly
+cleverness
+clevernesses
+Cleves
+Clevey
+Clevie
+clevis
+clevises
+clew
+clewed
+clewgarnet
+clewing
+Clewiston
+clews
+CLI
+cli
+cliack
+clianthus
+clich
+cliche
+cliched
+cliche-ridden
+cliches
+Clichy
+Clichy-la-Garenne
+click
+click-clack
+clicked
+clicker
+clickers
+clicket
+clickety-clack
+clickety-click
+clicking
+clickless
+clicks
+clicky
+CLID
+Clidastes
+Clide
+Clie
+cliency
+client
+clientage
+cliental
+cliented
+clientelage
+clientele
+clienteles
+clientless
+clientry
+clients
+clientship
+Cliff
+cliff
+cliff-bound
+cliff-chafed
+cliffed
+Cliffes
+cliff-girdled
+cliffhang
+cliff-hanger
+cliffhanger
+cliffhangers
+cliff-hanging
+cliffhanging
+cliffier
+cliffiest
+cliffing
+cliffless
+clifflet
+clifflike
+cliff-marked
+Clifford
+cliffs
+cliffside
+cliffsman
+cliffweed
+Cliffwood
+cliff-worn
+cliffy
+Clift
+clift
+Clifton
+Cliftonia
+cliftonite
+clifts
+Clifty
+clifty
+Clim
+clima
+Climaciaceae
+climaciaceous
+Climacium
+climacter
+climacterial
+climacteric
+climacterical
+climacterically
+climacterics
+climactery
+climactic
+climactical
+climactically
+climacus
+climant
+climata
+climatal
+climatarchic
+climate
+climates
+climath
+climatic
+climatical
+climatically
+Climatius
+climatize
+climatographical
+climatography
+climatologic
+climatological
+climatologically
+climatologist
+climatologists
+climatology
+climatometer
+climatotherapeutics
+climatotherapies
+climatotherapy
+climature
+climax
+climaxed
+climaxes
+climaxing
+climb
+climbable
+climb-down
+climbed
+climber
+climbers
+climbing
+climbingfish
+climbingfishes
+climbs
+clime
+climes
+climograph
+clin
+clin-
+clinah
+-clinal
+clinal
+clinally
+clinamen
+clinamina
+clinandrdria
+clinandria
+clinandrium
+clinanthia
+clinanthium
+clinch
+clinch-built
+Clinchco
+clinched
+clincher
+clincher-built
+clinchers
+clinches
+Clinchfield
+clinching
+clinchingly
+clinchingness
+clinchpoop
+-cline
+Cline
+cline
+clines
+cling
+Clingan
+clinged
+clinger
+clingers
+clingfish
+clingfishes
+clingier
+clingiest
+clinginess
+clinging
+clingingly
+clingingness
+cling-rascal
+clings
+clingstone
+clingstones
+clingy
+clinia
+-clinic
+clinic
+clinical
+clinically
+clinician
+clinicians
+clinicist
+clinicopathologic
+clinicopathological
+clinicopathologically
+clinics
+clinid
+Clinis
+clinium
+clink
+clinkant
+clink-clank
+clinked
+clinker
+clinker-built
+clinkered
+clinkerer
+clinkering
+clinkers
+clinkery
+clinkety-clink
+clinking
+clinks
+clinkstone
+clinkum
+clino-
+clinoaxis
+clinocephalic
+clinocephalism
+clinocephalous
+clinocephalus
+clinocephaly
+clinochlore
+clinoclase
+clinoclasite
+clinodiagonal
+clinodomatic
+clinodome
+clinograph
+clinographic
+clinohedral
+clinohedrite
+clinohumite
+clinoid
+clinologic
+clinology
+clinometer
+clinometria
+clinometric
+clinometrical
+clinometry
+clinophobia
+clinopinacoid
+clinopinacoidal
+Clinopodium
+clinoprism
+clinopyramid
+clinopyroxene
+clinorhombic
+clinospore
+clinostat
+-clinous
+clinquant
+Clint
+clint
+clinting
+Clintock
+Clinton
+Clintondale
+Clintonia
+clintonia
+clintonite
+Clintonville
+clints
+Clintwood
+clinty
+Clio
+clio
+Cliona
+Clione
+clip
+clipboard
+clipboards
+clip-clop
+clip-edged
+clipei
+clipeus
+clip-fed
+clip-marked
+clip-on
+clippable
+Clippard
+clipped
+clipper
+clipper-built
+clipperman
+clippers
+clippety-clop
+clippie
+clipping
+clippingly
+clippings
+clips
+clipse
+clipsheet
+clipsheets
+clipsome
+clipt
+clip-winged
+clique
+cliqued
+cliquedom
+cliqueier
+cliqueiest
+cliqueless
+cliques
+cliquey
+cliqueyness
+cliquier
+cliquiest
+cliquing
+cliquish
+cliquishly
+cliquishness
+cliquism
+cliquy
+cliseometer
+clisere
+clish-clash
+clish-ma-claver
+clishmaclaver
+Clisiocampa
+Clisthenes
+clistocarp
+clistocarpous
+Clistogastra
+clistothcia
+clistothecia
+clistothecium
+clit
+clitch
+Clite
+clite
+clitella
+clitellar
+clitelliferous
+clitelline
+clitellum
+clitellus
+clites
+clithe
+Clitherall
+clithral
+clithridiate
+clitia
+clitic
+clition
+Clitocybe
+clitoral
+Clitoria
+clitoric
+clitoridauxe
+clitoridean
+clitoridectomies
+clitoridectomy
+clitoriditis
+clitoridotomy
+clitoris
+clitorises
+clitorism
+clitoritis
+clitoromania
+clitoromaniac
+clitoromaniacal
+clitter
+clitterclatter
+Clitus
+cliv
+clival
+Clive
+clive
+cliver
+clivers
+Clivia
+clivia
+clivias
+clivis
+clivises
+clivus
+clk
+CLLI
+Cllr
+CLNP
+Clo
+clo
+cloaca
+cloacae
+cloacal
+cloacaline
+cloacas
+cloacean
+cloacinal
+cloacinean
+cloacitis
+cloak
+cloakage
+cloak-and-dagger
+cloak-and-suiter
+cloak-and-sword
+cloaked
+cloakedly
+cloak-fashion
+cloaking
+cloakless
+cloaklet
+cloakmaker
+cloakmaking
+cloak-room
+cloakroom
+cloakrooms
+cloaks
+cloakwise
+cloam
+cloamen
+cloamer
+Cloanthus
+clobber
+clobbered
+clobberer
+clobbering
+clobbers
+clochan
+clochard
+clochards
+cloche
+clocher
+cloches
+clochette
+clock
+clockbird
+clockcase
+clocked
+clocker
+clockers
+clockface
+clock-hour
+clockhouse
+clocking
+clockings
+clockkeeper
+clockless
+clocklike
+clockmaker
+clock-making
+clockmaking
+clock-minded
+clockmutch
+clockroom
+clocks
+clocksmith
+Clockville
+clock-watcher
+clockwatcher
+clock-watching
+clockwise
+clock-work
+clockwork
+clockworked
+clockworks
+clod
+clodbreaker
+clod-brown
+clodded
+clodder
+cloddier
+cloddiest
+cloddily
+cloddiness
+clodding
+cloddish
+cloddishly
+cloddishness
+cloddy
+clodhead
+clod-hopper
+clodhopper
+clodhopperish
+clodhoppers
+clodhopping
+clodknocker
+clodlet
+clodlike
+clod-pate
+clodpate
+clodpated
+clodpates
+clodpole
+clodpoles
+clod-poll
+clodpoll
+clodpolls
+clods
+clod-tongued
+Cloe
+Cloelia
+cloes
+Cloete
+clof
+cloff
+clofibrate
+clog
+clogdogdo
+clogged
+clogger
+cloggier
+cloggiest
+cloggily
+clogginess
+clogging
+cloggy
+cloghad
+cloghaun
+cloghead
+cloglike
+clogmaker
+clogmaking
+clogs
+clogwheel
+clogwood
+clogwyn
+cloine
+cloiochoanitic
+Clois
+cloison
+cloisonless
+cloisonn
+cloisonne
+cloisonnism
+Cloisonnisme
+Cloisonnist
+cloister
+cloisteral
+cloistered
+cloisterer
+cloistering
+cloisterless
+cloisterlike
+cloisterliness
+cloisterly
+cloisters
+cloisterwise
+cloistral
+cloistress
+cloit
+cloke
+clokies
+cloky
+clomb
+clomben
+clomiphene
+clomp
+clomped
+clomping
+clomps
+clon
+clonal
+clonally
+clone
+cloned
+cloner
+cloners
+clones
+clong
+clonic
+clonicity
+clonicotonic
+cloning
+clonings
+clonism
+clonisms
+clonk
+clonked
+clonking
+clonks
+clonorchiasis
+Clonorchis
+clonos
+Clonothrix
+clons
+Clontarf
+clonus
+clonuses
+cloof
+cloop
+cloot
+clootie
+Cloots
+cloots
+clop
+clop-clop
+clopped
+clopping
+clops
+Clopton
+cloque
+cloques
+Cloquet
+cloragen
+clorargyrite
+clorinator
+Clorinda
+Clorinde
+cloriodid
+Cloris
+Clorox
+CLOS
+clos
+closable
+Close
+close
+closeable
+close-annealed
+close-at-hand
+close-banded
+close-barred
+close-bitten
+close-bodied
+close-bred
+close-buttoned
+close-by
+close-clad
+close-clapped
+close-clipped
+close-coifed
+close-compacted
+close-connected
+close-couched
+close-coupled
+close-cropped
+closecross
+close-curled
+close-curtained
+close-cut
+closed
+closed-circuit
+closed-coil
+closed-door
+closed-end
+closed-in
+closed-minded
+closed-out
+closedown
+close-drawn
+close-eared
+close-fertilization
+close-fertilize
+close-fibered
+close-fights
+close-fisted
+closefisted
+closefistedly
+closefistedness
+close-fitting
+closefitting
+close-gleaning
+close-grain
+close-grained
+close-grated
+close-handed
+closehanded
+close-haul
+close-hauled
+closehauled
+close-headed
+closehearted
+close-herd
+close-hooded
+close-in
+close-jointed
+close-kept
+close-knit
+close-latticed
+close-legged
+close-lipped
+closelipped
+closely
+close-lying
+close-meshed
+close-minded
+closemouth
+close-mouthed
+closemouthed
+closen
+closeness
+closenesses
+close-out
+closeout
+closeouts
+close-packed
+close-partnered
+close-pent
+close-piled
+close-pressed
+closer
+close-reef
+close-reefed
+close-ribbed
+close-rounded
+closers
+closes
+close-set
+close-shanked
+close-shaven
+close-shut
+close-soled
+closest
+close-standing
+close-sticking
+close-stool
+closestool
+closet
+closeted
+close-tempered
+close-textured
+closetful
+close-thinking
+closeting
+close-tongued
+closets
+close-up
+closeup
+closeups
+close-visaged
+close-winded
+closewing
+close-woven
+close-written
+closh
+closing
+closings
+closish
+closkey
+closky
+Closplint
+Closter
+closter
+Closterium
+clostridia
+clostridial
+clostridian
+Clostridium
+clostridium
+closure
+closured
+closures
+closuring
+clot
+clot-bird
+clot-bur
+clotbur
+clote
+cloth
+cloth-backed
+clothbound
+cloth-calendering
+cloth-covered
+cloth-cropping
+cloth-cutting
+cloth-drying
+cloth-dyeing
+clothe
+cloth-eared
+clothed
+clothes
+clothesbag
+clothesbasket
+clothesbrush
+clothes-conscious
+clothes-consciousness
+clothes-drier
+clothes-drying
+clotheshorse
+clotheshorses
+clothesless
+clothesline
+clotheslines
+clothesman
+clothesmen
+clothesmonger
+clothes-peg
+clothespin
+clothespins
+clothes-press
+clothespress
+clothespresses
+clothes-washing
+clothesyard
+cloth-faced
+cloth-finishing
+cloth-folding
+clothier
+clothiers
+clothify
+Clothilda
+Clothilde
+clothing
+clothings
+cloth-inserted
+cloth-laying
+clothlike
+cloth-lined
+cloth-maker
+clothmaker
+clothmaking
+cloth-measuring
+Clotho
+clotho
+cloth-of-gold
+cloths
+cloth-shearing
+cloth-shrinking
+cloth-smoothing
+cloth-sponger
+cloth-spreading
+cloth-stamping
+cloth-testing
+cloth-weaving
+cloth-winding
+clothworker
+clothy
+cloth-yard
+Clotilda
+Clotilde
+clot-poll
+clots
+clottage
+clotted
+clottedness
+clotter
+clotting
+clotty
+cloture
+clotured
+clotures
+cloturing
+clotweed
+clou
+CLOUD
+cloud
+cloudage
+cloud-ascending
+cloud-barred
+cloudberries
+cloudberry
+cloud-born
+cloud-built
+cloudburst
+cloudbursts
+cloudcap
+cloud-capped
+cloud-compacted
+cloud-compeller
+cloud-compelling
+cloud-covered
+cloud-crammed
+Cloudcroft
+cloud-crossed
+Cloud-cuckoo-land
+Cloudcuckooland
+cloud-cuckoo-land
+cloud-curtained
+cloud-dispelling
+cloud-dividing
+cloud-drowned
+cloud-eclipsed
+clouded
+cloud-enveloped
+cloud-flecked
+cloudful
+cloud-girt
+cloud-headed
+cloud-hidden
+cloudier
+cloudiest
+cloudily
+cloudiness
+cloudinesses
+clouding
+cloud-kissing
+cloud-laden
+cloudland
+cloud-led
+cloudless
+cloudlessly
+cloudlessness
+cloudlet
+cloudlets
+cloudlike
+cloudling
+cloudology
+cloud-piercing
+cloud-rocked
+Clouds
+clouds
+cloud-scaling
+cloudscape
+cloud-seeding
+cloud-shaped
+cloudship
+cloud-surmounting
+cloud-surrounded
+cloud-topped
+cloud-touching
+cloudward
+cloudwards
+cloud-woven
+cloud-wrapped
+cloudy
+clouee
+Clouet
+Clough
+clough
+Clougher
+cloughs
+clour
+cloured
+clouring
+clours
+clout
+clouted
+clouter
+clouterly
+clouters
+Cloutierville
+clouting
+Cloutman
+clouts
+clout-shoe
+clouty
+Clova
+Clovah
+clove
+clove-gillyflower
+cloven
+clovene
+cloven-footed
+cloven-footedness
+cloven-hoofed
+Clover
+clover
+Cloverdale
+clovered
+clover-grass
+cloverlay
+cloverleaf
+cloverleafs
+cloverleaves
+cloverley
+cloveroot
+Cloverport
+cloverroot
+clovers
+clover-sick
+clover-sickness
+clovery
+cloves
+clove-strip
+clovewort
+Clovis
+clow
+clowder
+clowders
+Clower
+clower
+clow-gilofre
+clown
+clownade
+clownage
+clowned
+clowneries
+clownery
+clownheal
+clowning
+clownish
+clownishly
+clownishness
+clownishnesses
+clowns
+clownship
+clowre
+clowring
+cloxacillin
+cloy
+cloyed
+cloyedness
+cloyer
+cloying
+cloyingly
+cloyingness
+cloyless
+cloyment
+cloyne
+cloys
+cloysome
+cloze
+clozes
+CLR
+clr
+CLRC
+CLS
+CLTP
+CLU
+club
+clubability
+clubable
+club-armed
+Clubb
+clubbability
+clubbable
+clubbed
+clubber
+clubbers
+clubbier
+clubbiest
+clubbily
+clubbiness
+clubbing
+clubbish
+clubbishness
+clubbism
+clubbist
+clubby
+clubdom
+club-ended
+clubfeet
+clubfellow
+club-fist
+clubfist
+clubfisted
+club-foot
+clubfoot
+club-footed
+clubfooted
+clubhand
+clubhands
+club-haul
+clubhaul
+clubhauled
+clubhauling
+clubhauls
+club-headed
+club-high
+clubhouse
+clubhouses
+clubionid
+Clubionidae
+clubland
+club-law
+club-man
+clubman
+clubmate
+clubmen
+clubmobile
+clubmonger
+club-moss
+clubridden
+club-riser
+clubroom
+clubrooms
+clubroot
+clubroots
+club-rush
+clubs
+club-shaped
+clubstart
+clubster
+clubweed
+clubwoman
+clubwomen
+clubwood
+cluck
+clucked
+clucking
+clucks
+clucky
+cludder
+clue
+clued
+clueing
+clueless
+clues
+cluff
+cluing
+Cluj
+clum
+clumber
+clumbers
+clump
+clumped
+clumper
+clumpier
+clumpiest
+clumping
+clumpish
+clumpishness
+clumplike
+clumproot
+clumps
+clumpst
+clumpy
+clumse
+clumsier
+clumsiest
+clumsily
+clumsiness
+clumsinesses
+clumsy
+clumsy-fisted
+clunch
+Clune
+clung
+Cluniac
+cluniac
+Cluniacensian
+Clunisian
+Clunist
+clunk
+clunked
+clunker
+clunkers
+clunkier
+clunking
+clunks
+clunky
+clunter
+Cluny
+clupanodonic
+Clupea
+clupeid
+Clupeidae
+clupeids
+clupeiform
+clupein
+clupeine
+clupeiod
+Clupeodei
+clupeoid
+clupeoids
+clupien
+cluppe
+cluricaune
+Clurman
+Clusia
+Clusiaceae
+clusiaceous
+Clusium
+cluster
+clusterberry
+clustered
+clusterfist
+clustering
+clusteringly
+clusterings
+clusters
+clustery
+CLUT
+clutch
+clutched
+clutcher
+clutches
+clutching
+clutchingly
+clutchman
+clutchy
+Clute
+cluther
+Clutier
+clutter
+cluttered
+clutterer
+cluttering
+clutterment
+clutters
+cluttery
+CLV
+Clwyd
+Cly
+cly
+Clyde
+Clydebank
+Clydesdale
+clydesdale
+Clydeside
+Clydesider
+clyer
+clyers
+clyfaker
+clyfaking
+Clyman
+Clymene
+Clymenia
+Clymenus
+Clymer
+Clynes
+Clyo
+clype
+clypeal
+Clypeaster
+clypeaster
+Clypeastridea
+Clypeastrina
+clypeastroid
+Clypeastroida
+Clypeastroidea
+clypeate
+clypeated
+clypei
+clypeiform
+clypeo-
+clypeola
+clypeolar
+clypeolate
+clypeole
+clypeus
+clyses
+clysis
+clysma
+clysmian
+clysmic
+clyssus
+clyster
+clysterize
+clysters
+Clytaemnesra
+Clyte
+Clytemnestra
+clytemnestra
+Clytia
+Clytie
+Clytius
+Clyve
+Clywd
+CM
+Cm
+c.m.
+c/m
+cm
+CMA
+CMAC
+CMC
+CMCC
+CMD
+cmd
+CMDF
+cmdg
+Cmdr
+Cmdr.
+cmdr
+CMDS
+CMF
+C.M.G.
+CMG
+CM-glass
+CMH
+CMI
+CMIP
+CMIS
+CMISE
+c-mitosis
+CML
+cml
+cml.
+CMMU
+Cmon
+CMOS
+CMOT
+CMRR
+CMS
+CMSGT
+CMT
+CMTC
+CMU
+CMW
+CMYK
+C/N
+CN
+cn-
+CNA
+CNAA
+CNAB
+CNC
+CNCC
+CND
+cnemapophysis
+cnemial
+cnemic
+cnemides
+cnemidium
+Cnemidophorus
+cnemis
+Cneoraceae
+cneoraceous
+Cneorum
+CNES
+CNI
+cnibophore
+cnicin
+Cnicus
+cnida
+cnidae
+Cnidaria
+cnidarian
+Cnidean
+Cnidia
+Cnidian
+cnidoblast
+cnidocell
+cnidocil
+cnidocyst
+cnidogenous
+cnidophobia
+cnidophore
+cnidophorous
+cnidopod
+cnidosac
+Cnidoscolus
+cnidosis
+Cnidus
+CNM
+CNMS
+CNN
+CNO
+Cnossian
+Cnossus
+C-note
+CNR
+CNS
+CNSR
+Cnut
+C.O.
+C/O
+C/o
+CO
+Co
+Co.
+c/o
+co
+co-
+coabode
+coabound
+coabsume
+coacceptor
+coacervate
+coacervated
+coacervating
+coacervation
+coach
+coachability
+coachable
+coach-and-four
+coach-box
+coachbuilder
+coachbuilding
+coach-built
+coached
+coachee
+Coachella
+coacher
+coachers
+coaches
+coachfellow
+coachful
+coaching
+coachlet
+coachmaker
+coachmaking
+coachman
+coachmanship
+coachmaster
+coachmen
+coachs
+coachsmith
+coachsmithing
+coachway
+coach-whip
+coachwhip
+coachwise
+coachwoman
+coachwood
+coachwork
+coachwright
+coachy
+coact
+coacted
+coacting
+coaction
+coactions
+coactive
+coactively
+coactivity
+coactor
+coactors
+coacts
+Coad
+coadamite
+coadapt
+co-adaptation
+coadaptation
+coadaptations
+coadapted
+coadapting
+coadequate
+coadjacence
+coadjacency
+coadjacent
+coadjacently
+coadjudicator
+coadjument
+co-adjust
+coadjust
+coadjustment
+coadjutant
+coadjutator
+coadjute
+coadjutement
+coadjutive
+coadjutor
+coadjutors
+coadjutorship
+coadjutress
+coadjutrice
+coadjutrices
+coadjutrix
+coadjuvancy
+coadjuvant
+coadjuvate
+coadminister
+coadministration
+coadministrator
+coadministratrix
+coadmiration
+coadmire
+coadmired
+coadmires
+coadmiring
+coadmit
+coadmits
+coadmitted
+coadmitting
+coadnate
+coadore
+coadsorbent
+coadunate
+coadunated
+coadunating
+coadunation
+coadunative
+coadunatively
+coadunite
+co-adventure
+coadventure
+coadventured
+coadventurer
+coadventuress
+coadventuring
+coadvice
+Coady
+coae-
+coaeval
+coaevals
+coaffirmation
+co-afforest
+coafforest
+coaged
+coagel
+coagencies
+co-agency
+coagency
+coagent
+coagents
+coaggregate
+coaggregated
+coaggregation
+coagitate
+coagitator
+coagment
+coagmentation
+coagonize
+coagriculturist
+coagula
+coagulability
+coagulable
+coagulant
+coagulants
+coagulase
+coagulate
+coagulated
+coagulates
+coagulating
+coagulation
+coagulations
+coagulative
+coagulator
+coagulators
+coagulatory
+coagule
+coagulin
+coaguline
+coagulometer
+coagulose
+coagulum
+coagulums
+Coahoma
+Coahuila
+Coahuiltecan
+coaid
+coaita
+coak
+coakum
+coal
+coala
+coalas
+coalbag
+coalbagger
+coal-bearing
+coalbin
+coalbins
+coal-black
+coal-blue
+coal-boring
+coalbox
+coalboxes
+coal-breaking
+coal-burning
+coal-cutting
+Coaldale
+coal-dark
+coaldealer
+coal-dumping
+coaled
+coal-elevating
+coaler
+coalers
+coalesce
+coalesced
+coalescence
+coalescency
+coalescent
+coalesces
+coalescing
+coal-eyed
+coalface
+coal-faced
+Coalfield
+coalfield
+coalfields
+coal-fired
+coal-fish
+coalfish
+coalfishes
+coalfitter
+coal-gas
+Coalgood
+coal-handling
+coalheugh
+coalhole
+coalholes
+coal-house
+coalier
+coaliest
+coalification
+coalified
+coalifies
+coalify
+coalifying
+Coaling
+coaling
+Coalinga
+Coalisland
+Coalite
+coalite
+coalition
+coalitional
+coalitioner
+coalitionist
+coalitions
+coalize
+coalized
+coalizer
+coalizing
+coal-laden
+coalless
+coal-leveling
+co-allied
+coal-loading
+co-ally
+coal-man
+coal-measure
+coal-meter
+coalmonger
+Coalmont
+coalmouse
+coal-picking
+coal-pit
+coalpit
+coalpits
+Coalport
+coal-producing
+coal-pulverizing
+coalrake
+coals
+Coalsack
+coal-sack
+coalsack
+coalsacks
+coal-scuttle
+coalshed
+coalsheds
+coal-sifting
+coal-stone
+coal-tar
+coalternate
+coalternation
+coalternative
+coal-tester
+coal-tit
+coaltitude
+Coalton
+Coalville
+coal-whipper
+coal-whipping
+Coalwood
+coal-works
+coaly
+coalyard
+coalyards
+COAM
+coambassador
+coambulant
+coamiable
+coaming
+coamings
+Coamo
+Coan
+Coanda
+coanimate
+coannex
+coannexed
+coannexes
+coannexing
+coannihilate
+coapostate
+coapparition
+co-appear
+coappear
+coappearance
+coappeared
+coappearing
+coappears
+coappellee
+coapprehend
+coapprentice
+coappriser
+coapprover
+coapt
+coaptate
+coaptation
+coapted
+coapting
+coapts
+co-aration
+coaration
+coarb
+coarbiter
+coarbitrator
+coarct
+coarctate
+coarctation
+coarcted
+coarcting
+coardent
+coarrange
+coarrangement
+coarse
+coarse-featured
+coarse-fibered
+Coarsegold
+coarse-grained
+coarse-grainedness
+coarse-haired
+coarse-handed
+coarse-lipped
+coarsely
+coarse-minded
+coarsen
+coarsened
+coarseness
+coarsenesses
+coarsening
+coarsens
+coarser
+coarse-skinned
+coarse-spoken
+coarse-spun
+coarsest
+coarse-textured
+coarse-tongued
+coarse-toothed
+coarse-wrought
+coarsish
+coart
+coarticulate
+coarticulation
+coascend
+coassert
+coasserter
+coassession
+co-assessor
+coassessor
+coassignee
+co-assist
+coassist
+coassistance
+coassistant
+coassisted
+coassisting
+coassists
+coassume
+coassumed
+coassumes
+coassuming
+coast
+coastal
+coastally
+coasted
+coaster
+coasters
+coast-fishing
+Coastguard
+coastguard
+coastguardman
+coastguardsman
+coastguardsmen
+coasting
+coastings
+coastland
+coastline
+coastlines
+coastman
+coastmen
+coasts
+coastside
+coastwaiter
+coastward
+coastwards
+coastways
+coastwise
+coat
+coat-armour
+Coatbridge
+coat-card
+coatdress
+coated
+coatee
+coatees
+coater
+coaters
+Coates
+Coatesville
+coathangers
+coati
+coatie
+coati-mondi
+coatimondie
+coati-mundi
+coatimundi
+coating
+coatings
+coation
+coatis
+coatless
+coat-money
+coatrack
+coatracks
+coatroom
+coatrooms
+Coats
+coats
+Coatsburg
+Coatsville
+Coatsworth
+coat-tail
+coattail
+coattailed
+coattails
+coattend
+coattended
+coattending
+coattends
+co-attest
+coattest
+coattestation
+coattestator
+coattested
+coattesting
+coattests
+coaudience
+coauditor
+coaugment
+coauthered
+coauthor
+coauthored
+coauthoring
+coauthority
+coauthors
+coauthorship
+coauthorships
+coawareness
+co-ax
+coax
+coaxal
+coaxation
+coaxed
+coaxer
+coaxers
+coaxes
+coaxial
+coaxially
+coaxing
+coaxingly
+coaxy
+coazervate
+coazervation
+COB
+Cob
+cob
+cobaea
+cobalamin
+cobalamine
+cobalt
+cobaltamine
+cobaltammine
+cobalti-
+cobaltic
+cobalticyanic
+cobalticyanides
+cobaltiferous
+cobaltine
+cobaltinitrite
+cobaltite
+cobalto-
+cobaltocyanic
+cobaltocyanide
+cobaltous
+cobalts
+Coban
+cobang
+Cobb
+cobb
+cobbed
+cobber
+cobberer
+cobbers
+Cobbett
+Cobbie
+cobbier
+cobbiest
+cobbin
+cobbing
+cobble
+cobbled
+cobbler
+cobblerfish
+cobblerism
+cobblerless
+cobblers
+cobblership
+cobblery
+cobbles
+cobble-stone
+cobblestone
+cobblestoned
+cobblestones
+cobbling
+cobbly
+cobbra
+cobbs
+Cobbtown
+Cobby
+cobby
+cobcab
+Cobden
+Cobdenism
+cobdenism
+Cobdenite
+COBE
+cobego
+cobelief
+cobeliever
+cobelligerent
+Coben
+cobenignity
+coberger
+cobewail
+Cobh
+Cobham
+cobhead
+cobhouse
+cobia
+cobias
+cob-iron
+cobiron
+co-bishop
+cobishop
+Cobitidae
+Cobitis
+coble
+cobleman
+Coblentzian
+Coblenz
+cobles
+Cobleskill
+cobless
+cobloaf
+cob-nut
+cobnut
+cobnuts
+COBOL
+Cobol
+cobol
+cobola
+coboss
+coboundless
+cobourg
+Cobra
+cobra
+cobra-hooded
+cobras
+cobreathe
+cobridgehead
+cobriform
+co-brother
+cobrother
+cobs
+cobstone
+cob-swan
+Coburg
+coburg
+coburgess
+coburgher
+coburghership
+Coburn
+Cobus
+cobweb
+cobwebbed
+cobwebbery
+cobwebbier
+cobwebbiest
+cobwebbing
+cobwebby
+cobwebs
+cobwork
+COC
+coca
+cocaceous
+Coca-Cola
+cocaigne
+cocain
+cocaine
+cocaines
+cocainisation
+cocainise
+cocainised
+cocainising
+cocainism
+cocainist
+cocainization
+cocainize
+cocainized
+cocainizing
+cocainomania
+cocainomaniac
+cocains
+Cocalus
+Cocama
+Cocamama
+cocamine
+Cocanucos
+cocao
+cocaptain
+cocaptains
+cocarboxylase
+cocarde
+cocas
+cocash
+cocashweed
+cocause
+cocautioner
+Coccaceae
+coccaceous
+coccagee
+coccal
+Cocceian
+cocceian
+Cocceianism
+coccerin
+cocci
+coccic
+coccid
+Coccidae
+coccidia
+coccidial
+coccidian
+Coccidiidea
+coccidioidal
+Coccidioides
+coccidioidomycosis
+Coccidiomorpha
+coccidiosis
+coccidium
+coccidology
+coccids
+cocciferous
+cocciform
+coccigenic
+coccin
+coccinella
+coccinellid
+Coccinellidae
+coccineous
+coccionella
+cocco
+coccobaccilli
+coccobacilli
+coccobacillus
+coccochromatic
+Coccogonales
+coccogone
+Coccogoneae
+coccogonium
+coccoid
+coccoidal
+coccoids
+coccolite
+coccolith
+coccolithophorid
+Coccolithophoridae
+Coccoloba
+Coccolobis
+Coccomyces
+coccosphere
+coccostean
+coccosteid
+Coccosteidae
+Coccosteus
+Coccothraustes
+coccothraustine
+Coccothrinax
+coccous
+coccule
+cocculiferous
+Cocculus
+cocculus
+-coccus
+coccus
+coccy-
+coccydynia
+coccygalgia
+coccygeal
+coccygean
+coccygectomy
+coccygeo-anal
+coccygeo-mesenteric
+coccygerector
+coccyges
+coccygeus
+coccygine
+Coccygius
+coccygo-
+coccygodynia
+coccygomorph
+Coccygomorphae
+coccygomorphic
+coccygotomy
+coccyodynia
+coccyx
+coccyxes
+Coccyzus
+cocentric
+coch
+Cochabamba
+cochair
+cochaired
+cochairing
+cochairman
+cochairmanship
+cochairmen
+cochairs
+cochal
+cochampion
+cochampions
+Cochard
+Cochecton
+cocher
+cochero
+cochief
+Cochin
+cochin
+Cochin-China
+cochin-china
+Cochinchine
+cochineal
+cochins
+Cochise
+cochlea
+cochleae
+cochlear
+cochleare
+Cochlearia
+cochlearifoliate
+cochleariform
+cochleary
+cochleas
+cochleate
+cochleated
+cochleiform
+cochleitis
+cochleleae
+cochleleas
+cochleous
+cochlidiid
+Cochlidiidae
+cochliodont
+Cochliodontidae
+Cochliodus
+cochlite
+cochlitis
+Cochlospermaceae
+cochlospermaceous
+Cochlospermum
+cochon
+Cochran
+Cochrane
+Cochranea
+Cochranton
+Cochranville
+cochromatography
+cochurchwarden
+cochylis
+cocillana
+cocin
+cocinera
+cocineras
+cocinero
+cocircular
+cocircularity
+cocitizen
+cocitizenship
+Cock
+cock
+cock-a
+cockabondy
+cockade
+cockaded
+cockades
+cock-a-doodle
+cock-a-doodle-doo
+cockadoodledoo
+cock-a-doodle--dooed
+cock-a-doodle--dooing
+cock-a-doodle-doos
+cock-a-hoop
+cock-a-hooping
+cock-a-hoopish
+cock-a-hoopness
+Cockaigne
+cockaigne
+cockal
+cockalan
+cock-a-leekie
+cockaleekie
+cockalorum
+cockamamie
+cockamamy
+cockamaroo
+cock-and-bull
+cock-and-bull-story
+cock-and-pinch
+cockandy
+cockapoo
+cockapoos
+cockard
+cockarouse
+cock-as-hoop
+cockateel
+cockatiel
+cockatoo
+cockatoos
+cockatrice
+cockatrices
+cockawee
+cock-a-whoop
+cock-awhoop
+Cockayne
+cockbell
+cock-bill
+cockbill
+cockbilled
+cockbilling
+cockbills
+cockbird
+cock-boat
+cockboat
+cockboats
+cock-brain
+cockbrain
+cock-brained
+Cockburn
+cockchafer
+Cockcroft
+cock-crow
+cockcrow
+cockcrower
+cock-crowing
+cockcrowing
+cockcrows
+Cocke
+cocked
+Cocker
+cocker
+cockered
+cockerel
+cockerels
+cockerie
+cockering
+cockermeg
+cockernonnie
+cockernony
+cockerouse
+cockers
+cocket
+cocketed
+cocketing
+cock-eye
+cockeye
+cock-eyed
+cockeyed
+cockeyedly
+cockeyedness
+cockeyes
+Cockeysville
+cock-feathered
+cock-feathering
+cock-fight
+cockfight
+cockfighter
+cock-fighting
+cockfighting
+cockfights
+cockhead
+cock-horse
+cockhorse
+cockhorses
+cockie
+cockie-leekie
+cockieleekie
+cockier
+cockies
+cockiest
+cockily
+cockiness
+cockinesses
+cocking
+cockish
+cockishly
+cockishness
+cock-laird
+cockle
+cockleboat
+cockle-bread
+cocklebur
+cockled
+cockle-headed
+cockler
+cockles
+cockle-shell
+cockleshell
+cockleshells
+cocklet
+cocklewife
+cocklight
+cocklike
+cockling
+cockloche
+cock-loft
+cockloft
+cocklofts
+cockly
+cock-master
+cockmaster
+cock-match
+cockmatch
+cockmate
+cockneian
+cockneity
+cock-nest
+Cockney
+cockney
+cockneybred
+cockneydom
+cockneyese
+cockneyess
+cockneyfication
+cockneyfied
+cockneyfy
+cockneyfying
+cockneyish
+cockneyishly
+cockneyism
+cockneyize
+cockneyland
+cockneylike
+cockneys
+cockneyship
+cock-of-the-rock
+cock-paddle
+cockpaddle
+cock-penny
+cockpit
+cockpits
+cockroach
+cockroaches
+cock-road
+Cocks
+cocks
+cock's-comb
+cockscomb
+cockscombed
+cockscombs
+cock's-foot
+cocksfoot
+cock's-head
+cockshead
+cockshies
+cockshoot
+cockshot
+cock-shut
+cockshut
+cockshuts
+cock-shy
+cockshy
+cockshying
+cocks-of-the-rock
+cocksparrow
+cock-sparrowish
+cockspur
+cockspurs
+cockstone
+cock-stride
+cock-sure
+cocksure
+cocksuredom
+cocksureism
+cocksurely
+cocksureness
+cocksurety
+cockswain
+cocksy
+cocktail
+cock-tailed
+cocktailed
+cocktailing
+cocktails
+cock-throppled
+cockthrowing
+cock-up
+cockup
+cockups
+cockweed
+cocky
+cocky-leeky
+cockyolly
+co-clause
+Cocle
+coclea
+Cocles
+Coco
+coco
+cocoa
+cocoa-brown
+cocoach
+cocoa-colored
+cocoanut
+cocoanuts
+cocoas
+cocoawood
+cocobola
+cocobolas
+cocobolo
+cocobolos
+cocodette
+Cocolalla
+Cocolamus
+COCOM
+CoComanchean
+cocomat
+cocomats
+cocomposer
+cocomposers
+cocona
+Coconino
+coconnection
+coconqueror
+coconscious
+coconsciously
+coconsciousness
+coconsecrator
+co-conspirator
+coconspirator
+coconspirators
+coconstituent
+cocontractor
+Coconucan
+Coconuco
+coconut
+coconuts
+cocoon
+cocooned
+cocooneries
+cocoonery
+cocooning
+cocoons
+cocopan
+cocopans
+coco-plum
+cocorico
+cocoroot
+Cocos
+cocos
+COCOT
+cocotte
+cocottes
+cocovenantor
+cocowood
+cocowort
+cocoyam
+cocozelle
+cocreate
+cocreated
+cocreates
+cocreating
+cocreator
+cocreators
+cocreatorship
+cocreditor
+cocrucify
+coct
+Cocteau
+coctile
+coction
+coctoantigen
+coctoprecipitin
+cocuisa
+cocuiza
+cocullo
+cocurator
+cocurrent
+cocurricular
+cocus
+cocuswood
+cocuyo
+Cocytean
+Cocytus
+cocytus
+C.O.D.
+COD
+Cod
+cod
+coda
+codable
+Codacci-Pisanelli
+codal
+codamin
+codamine
+codas
+CODASYL
+cod-bait
+codbank
+CODCF
+Codd
+codded
+codder
+codders
+Codding
+codding
+Coddington
+coddle
+coddled
+coddler
+coddlers
+coddles
+coddling
+coddy
+coddy-moddy
+code
+codebook
+codebooks
+codebreak
+codebreaker
+codebtor
+codebtors
+CODEC
+codec
+codeclination
+codecree
+codecs
+coded
+Codee
+co-defendant
+codefendant
+codefendants
+codeia
+codeias
+codein
+codeina
+codeinas
+codeine
+codeines
+codeins
+Codel
+codeless
+codelight
+codelinquency
+codelinquent
+Codell
+Coden
+coden
+codenization
+codens
+codeposit
+coder
+coderive
+coderived
+coderives
+coderiving
+coders
+codes
+codescendant
+codesign
+codesigned
+codesigner
+codesigners
+codesigning
+codesigns
+codespairer
+codetermination
+codetermine
+codetta
+codettas
+codette
+codevelop
+codeveloped
+codeveloper
+codevelopers
+codeveloping
+codevelops
+codeword
+codewords
+codex
+cod-fish
+codfish
+codfisher
+codfisheries
+codfishery
+codfishes
+codfishing
+codger
+codgers
+codhead
+codheaded
+Codi
+Codiaceae
+codiaceous
+Codiaeum
+Codiales
+codical
+codices
+codicil
+codicilic
+codicillary
+codicils
+codicology
+codictatorship
+Codie
+codifiability
+codification
+codifications
+codified
+codifier
+codifiers
+codifies
+codify
+codifying
+codilla
+codille
+coding
+codings
+codiniac
+codirect
+codirected
+codirecting
+codirectional
+codirector
+codirectors
+codirectorship
+codirects
+codiscoverer
+codiscoverers
+codisjunct
+codist
+Codium
+codivine
+codlin
+codline
+codling
+codlings
+codlins
+codlins-and-cream
+codman
+codo
+codol
+codomain
+codomestication
+codominant
+codon
+codons
+Codorus
+cod-piece
+codpiece
+codpieces
+codpitchings
+codrive
+codriven
+co-driver
+codriver
+codrives
+codrove
+Codrus
+cods
+codshead
+cod-smack
+codswallop
+codworm
+Cody
+COE
+Coe
+coe
+Coeburn
+coecal
+coecum
+co-ed
+coed
+coedit
+coedited
+coediting
+coeditor
+coeditors
+coeditorship
+coedits
+coeds
+coeducate
+co-education
+coeducation
+coeducational
+coeducationalism
+coeducationalize
+coeducationally
+coeducations
+COEES
+coef
+coeff
+co-effect
+coeffect
+coeffects
+co-efficacy
+coefficacy
+coefficient
+coefficiently
+coefficients
+coeffluent
+coeffluential
+coehorn
+coel-
+coelacanth
+coelacanthid
+Coelacanthidae
+coelacanthine
+Coelacanthini
+coelacanthoid
+coelacanthous
+coelanaglyphic
+coelar
+coelarium
+Coelastraceae
+coelastraceous
+Coelastrum
+Coelata
+coelder
+coeldership
+-coele
+Coelebogyne
+coelect
+coelection
+coelector
+coelectron
+coelelminth
+Coelelminthes
+coelelminthic
+Coelentera
+coelentera
+Coelenterata
+coelenterata
+coelenterate
+coelenterates
+coelenteric
+coelenteron
+coelestial
+coelestine
+coelevate
+coelho
+coelia
+coeliac
+coelialgia
+coelian
+Coelicolae
+Coelicolist
+coeligenous
+coelin
+coeline
+coelio-
+coeliomyalgia
+coeliorrhea
+coeliorrhoea
+coelioscopy
+coeliotomy
+Coello
+coelo-
+coeloblastic
+coeloblastula
+Coelococcus
+coelodont
+coelogastrula
+Coeloglossum
+Coelogyne
+coelom
+coeloma
+Coelomata
+coelomata
+coelomate
+coelomatic
+coelomatous
+coelome
+coelomes
+coelomesoblast
+coelomic
+Coelomocoela
+coelomopore
+coeloms
+coelonavigation
+coelongated
+coeloplanula
+coeloscope
+coelosperm
+coelospermous
+coelostat
+coelozoic
+coeltera
+coemanate
+coembedded
+coembodied
+coembodies
+coembody
+coembodying
+coembrace
+coeminency
+coemperor
+coemploy
+coemployed
+coemployee
+coemploying
+coemployment
+coemploys
+coempt
+coempted
+coempting
+coemptio
+coemption
+coemptional
+coemptionator
+coemptive
+coemptor
+coempts
+coen-
+coenacle
+coenact
+coenacted
+coenacting
+coenactor
+coenacts
+coenacula
+coenaculous
+coenaculum
+coenaesthesis
+coenamor
+coenamored
+coenamoring
+coenamorment
+coenamors
+coenamourment
+coenanthium
+coendear
+Coendidae
+Coendou
+coendure
+coendured
+coendures
+coenduring
+coenenchym
+coenenchyma
+coenenchymal
+coenenchymata
+coenenchymatous
+coenenchyme
+coenesthesia
+coenesthesis
+coenflame
+coengage
+coengager
+coenjoy
+coenla
+coeno
+coeno-
+coenobe
+coenobiar
+coenobic
+coenobiod
+coenobioid
+coenobite
+coenobitic
+coenobitical
+coenobitism
+coenobium
+coenoblast
+coenoblastic
+coenoby
+coenocentrum
+coenocyte
+coenocytic
+coenodioecism
+coenoecial
+coenoecic
+coenoecium
+coenogamete
+coenogenesis
+coenogenetic
+coenomonoecism
+coenosarc
+coenosarcal
+coenosarcous
+coenosite
+coenospecies
+coenospecific
+coenospecifically
+coenosteal
+coenosteum
+coenotrope
+coenotype
+coenotypic
+coenthrone
+coenunuri
+coenure
+coenures
+coenuri
+coenurus
+coenzymatic
+coenzymatically
+coenzyme
+coenzymes
+coequal
+coequality
+coequalize
+coequally
+coequalness
+coequals
+co-equate
+coequate
+coequated
+coequates
+coequating
+coequation
+COER
+coerce
+coerceable
+coerced
+coercement
+coercend
+coercends
+coercer
+coercers
+coerces
+coercibility
+coercible
+coercibleness
+coercibly
+coercing
+coercion
+coercionary
+coercionist
+coercions
+coercitive
+coercive
+coercively
+coerciveness
+coercivity
+Coerebidae
+coerect
+coerected
+coerecting
+coerects
+coeruleolactite
+coes
+coesite
+coesites
+coessential
+coessentiality
+coessentially
+coessentialness
+co-establishment
+coestablishment
+co-estate
+coestate
+coetanean
+coetaneity
+coetaneous
+coetaneously
+coetaneousness
+coeternal
+coeternally
+coeternity
+coetus
+Coeus
+coeval
+coevality
+coevally
+coevalneity
+coevalness
+coevals
+coevolution
+coevolutionary
+coevolve
+coevolved
+coevolvedcoevolves
+coevolves
+coevolving
+coexchangeable
+coexclusive
+coexecutant
+co-executor
+coexecutor
+coexecutors
+coexecutrices
+coexecutrix
+coexert
+coexerted
+coexerting
+coexertion
+coexerts
+co-exist
+coexist
+coexisted
+coexistence
+coexistences
+coexistency
+coexistent
+coexisting
+coexists
+coexpand
+coexpanded
+coexperiencer
+coexpire
+coexplosion
+coextend
+coextended
+coextending
+coextends
+coextension
+coextensive
+coextensively
+coextensiveness
+coextent
+Coeymans
+cofactor
+cofactors
+Cofane
+cofaster
+cofather
+cofathership
+cofeature
+cofeatures
+co-feoffee
+cofeoffee
+coferment
+cofermentation
+COFF
+coff
+Coffea
+Coffee
+coffee
+coffee-and
+coffeeberries
+coffeeberry
+coffee-blending
+coffee-brown
+coffeebush
+coffeecake
+coffeecakes
+coffee-cleaning
+coffee-color
+coffee-colored
+coffeecup
+coffee-faced
+coffee-grading
+coffee-grinding
+coffeegrower
+coffeegrowing
+coffee-house
+coffeehouse
+coffeehoused
+coffeehouses
+coffeehousing
+coffee-imbibing
+coffee-klatsch
+coffeeleaf
+coffee-making
+coffeeman
+Coffeen
+coffee-planter
+coffee-planting
+coffee-polishing
+coffeepot
+coffeepots
+coffee-roasting
+coffee-room
+coffeeroom
+coffees
+coffee-scented
+coffeetime
+Coffeeville
+coffeeweed
+coffeewood
+Coffeng
+coffer
+coffer-dam
+cofferdam
+cofferdams
+coffered
+cofferer
+cofferfish
+coffering
+cofferlike
+coffers
+coffer-work
+cofferwork
+Coffey
+Coffeyville
+coff-fronted
+Coffin
+coffin
+coffined
+coffin-fashioned
+coffing
+coffin-headed
+coffining
+coffinite
+coffinless
+coffinmaker
+coffinmaking
+coffins
+coffin-shaped
+coffle
+coffled
+coffles
+coffling
+Coffman
+coffret
+coffrets
+coffs
+Cofield
+cofighter
+cofinal
+cofinance
+cofinanced
+cofinances
+cofinancing
+coforeknown
+coformulator
+cofound
+cofounded
+cofounder
+cofounders
+cofounding
+cofoundress
+cofounds
+cofreighter
+Cofsky
+coft
+cofunction
+cog
+cog.
+Cogan
+cogboat
+Cogen
+cogence
+cogences
+cogencies
+cogency
+cogener
+cogeneration
+cogeneric
+cogenial
+cogent
+cogently
+Coggan
+cogged
+cogger
+coggers
+coggie
+cogging
+coggle
+coggledy
+cogglety
+coggly
+Coggon
+coghle
+cogida
+cogie
+cogit
+cogitability
+cogitable
+cogitabund
+cogitabundity
+cogitabundly
+cogitabundous
+cogitant
+cogitantly
+cogitate
+cogitated
+cogitates
+cogitating
+cogitatingly
+cogitation
+cogitations
+cogitative
+cogitatively
+cogitativeness
+cogitativity
+cogitator
+cogitators
+cogito
+cogitos
+coglorify
+coglorious
+cogman
+cogmen
+Cognac
+cognac
+cognacs
+cognate
+cognately
+cognateness
+cognates
+cognati
+cognatic
+cognatical
+cognation
+cognatus
+cognisability
+cognisable
+cognisableness
+cognisably
+cognisance
+cognisant
+cognise
+cognised
+cogniser
+cognises
+cognising
+cognition
+cognitional
+cognitions
+cognitive
+cognitively
+cognitives
+cognitivity
+Cognitum
+cognitum
+cognizability
+cognizable
+cognizableness
+cognizably
+cognizance
+cognizances
+cognizant
+cognize
+cognized
+cognizee
+cognizer
+cognizers
+cognizes
+cognizing
+cognizor
+cognomen
+cognomens
+cognomina
+cognominal
+cognominally
+cognominate
+cognominated
+cognomination
+cognosce
+cognoscent
+cognoscente
+cognoscenti
+cognoscibility
+cognoscible
+cognoscing
+cognoscitive
+cognoscitively
+cognovit
+cognovits
+cogon
+cogonal
+cogons
+cogovernment
+cogovernor
+cogracious
+cograil
+cogrediency
+cogredient
+cogroad
+cogs
+Cogswell
+Cogswellia
+coguarantor
+co-guardian
+coguardian
+cogue
+cogware
+cogway
+cogways
+cogweel
+cogweels
+cog-wheel
+cogwheel
+cogwheels
+cog-wood
+cogwood
+Coh
+cohabit
+cohabitancy
+cohabitant
+cohabitate
+cohabitation
+cohabitations
+cohabited
+cohabiter
+cohabiting
+cohabits
+Cohagen
+Cohan
+Cohanim
+cohanim
+cohanims
+coharmonious
+coharmoniously
+coharmonize
+Cohasset
+Cohbath
+Cohberg
+Cohbert
+Cohby
+Cohdwell
+Cohe
+cohead
+coheaded
+coheading
+coheads
+coheartedness
+coheir
+coheiress
+coheiresses
+coheirs
+coheirship
+cohelper
+cohelpership
+Coheman
+Cohen
+cohen
+cohenite
+Cohens
+cohens
+coherald
+cohere
+cohered
+coherence
+coherences
+coherency
+coherent
+coherently
+coherer
+coherers
+coheres
+coheretic
+cohering
+coheritage
+coheritor
+cohert
+cohesibility
+cohesible
+cohesion
+cohesionless
+cohesions
+cohesive
+cohesively
+cohesiveness
+Cohette
+cohibit
+cohibition
+cohibitive
+cohibitor
+Cohin
+cohitre
+Cohl
+Cohla
+Cohleen
+Cohlette
+Cohlier
+Cohligan
+Cohn
+coho
+cohob
+cohoba
+cohobate
+cohobated
+cohobates
+cohobating
+cohobation
+cohobator
+Cohoctah
+Cohocton
+Cohoes
+cohog
+cohogs
+cohol
+coholder
+coholders
+cohomology
+Co-hong
+cohorn
+cohort
+cohortation
+cohortative
+cohorts
+cohos
+cohosh
+cohoshes
+cohost
+cohosted
+cohostess
+cohostesses
+cohosting
+cohosts
+cohow
+cohue
+cohune
+cohunes
+cohusband
+Cohutta
+COI
+Coibita
+coidentity
+coif
+coifed
+coiffe
+coiffed
+coiffes
+coiffeur
+coiffeurs
+coiffeuse
+coiffeuses
+coiffing
+coiffure
+coiffured
+coiffures
+coiffuring
+coifing
+coifs
+coign
+coigne
+coigned
+coignes
+coigning
+coigns
+coigny
+coigue
+coil
+Coila
+coilability
+coiled
+coiler
+coilers
+coil-filling
+coiling
+coillen
+coils
+coilsmith
+coil-testing
+coil-winding
+coilyear
+Coimbatore
+Coimbra
+coimmense
+coimplicant
+coimplicate
+coimplore
+coin
+coinable
+coinage
+coinages
+coincide
+coincided
+coincidence
+coincidences
+coincidency
+coincident
+coincidental
+coincidentally
+coincidently
+coincidents
+coincider
+coincides
+coinciding
+coinclination
+coincline
+coin-clipper
+coin-clipping
+coinclude
+coin-controlled
+coincorporate
+coin-counting
+coindicant
+coindicate
+coindication
+coindwelling
+coined
+coiner
+coiners
+coinfeftment
+coinfer
+coinferred
+coinferring
+coinfers
+co-infinite
+coinfinite
+coinfinity
+coing
+co-inhabit
+coinhabit
+coinhabitant
+coinhabitor
+co-inhere
+coinhere
+coinhered
+coinherence
+coinherent
+coinheres
+coinhering
+coinheritance
+co-inheritor
+coinheritor
+coining
+coinitial
+Coinjock
+coin-made
+coinmaker
+coinmaking
+coinmate
+coinmates
+coin-op
+coin-operated
+coin-operating
+coinquinate
+coins
+coin-separating
+coin-shaped
+coinspire
+coinstantaneity
+coinstantaneous
+coinstantaneously
+coinstantaneousness
+coinsurable
+coinsurance
+coinsure
+coinsured
+coinsurer
+coinsures
+coinsuring
+cointense
+cointension
+cointensity
+cointer
+cointerest
+cointerred
+cointerring
+cointers
+cointersecting
+cointise
+Cointon
+Cointreau
+coinvent
+coinventor
+coinventors
+coinvestigator
+coinvestigators
+coinvolve
+coin-weighing
+coiny
+coir
+Coire
+coirs
+coislander
+coisns
+coistrel
+coistrels
+coistril
+coistrils
+Coit
+coit
+coital
+coitally
+coition
+coitional
+coitions
+coitophobia
+coiture
+coitus
+coituses
+Coix
+cojoin
+cojoined
+cojoins
+cojones
+cojudge
+cojudices
+cojuror
+cojusticiar
+Cokato
+Coke
+coke
+Cokeburg
+coked
+Cokedale
+cokelike
+cokeman
+cokeney
+Coker
+coker
+cokernut
+cokers
+coker-sack
+cokery
+cokes
+Cokeville
+cokewold
+cokey
+cokie
+coking
+cokneyfy
+cokuloris
+coky
+Col
+Col.
+col
+col-
+col.
+COLA
+Cola
+cola
+colaborer
+co-labourer
+colacobioses
+colacobiosis
+colacobiotic
+Colada
+colage
+colalgia
+colament
+Colan
+colander
+colanders
+colane
+colaphize
+Colares
+colarin
+Colas
+colas
+colascione
+colasciones
+colascioni
+colat
+colate
+colation
+co-latitude
+colatitude
+colatorium
+colature
+colauxe
+Colaxais
+colazione
+Colb
+colback
+Colbaith
+Colbert
+colberter
+colbertine
+Colbertism
+Colburn
+Colby
+Colbye
+colcannon
+Colchester
+Colchian
+Colchicaceae
+colchicia
+colchicin
+colchicine
+Colchicum
+colchicum
+Colchis
+colchyte
+Colcine
+Colcord
+colcothar
+Cold
+cold
+coldblood
+cold-blooded
+coldblooded
+cold-bloodedly
+cold-bloodedness
+coldbloodedness
+cold-braving
+Coldbrook
+cold-catching
+cold-chisel
+cold-chiseled
+cold-chiseling
+cold-chiselled
+cold-chiselling
+coldcock
+cold-complexioned
+cold-cream
+cold-draw
+cold-drawing
+cold-drawn
+cold-drew
+Colden
+cold-engendered
+colder
+coldest
+cold-faced
+cold-finch
+coldfinch
+cold-flow
+cold-forge
+cold-hammer
+cold-hammered
+cold-head
+cold-hearted
+coldhearted
+cold-heartedly
+coldheartedly
+cold-heartedness
+coldheartedness
+coldish
+coldly
+cold-natured
+coldness
+coldnesses
+cold-nipped
+coldong
+cold-pack
+cold-patch
+cold-pated
+cold-press
+cold-producing
+coldproof
+cold-roll
+cold-rolled
+colds
+cold-saw
+cold-short
+cold-shortness
+cold-shoulder
+cold-shut
+cold-slain
+coldslaw
+cold-spirited
+cold-storage
+cold-store
+Coldstream
+Cold-streamers
+cold-swage
+cold-sweat
+cold-taking
+coldturkey
+cold-type
+Coldwater
+cold-water
+cold-weld
+cold-white
+cold-work
+cold-working
+Cole
+cole
+colead
+coleader
+coleads
+Colebrook
+colecannon
+colectomies
+colectomy
+coled
+Coleen
+colegatee
+colegislator
+cole-goose
+Coleman
+colemanite
+colemouse
+Colen
+colen
+colen-bell
+Colene
+colent
+Coleochaetaceae
+coleochaetaceous
+Coleochaete
+Coleophora
+Coleophoridae
+coleopter
+Coleoptera
+coleoptera
+coleopteral
+coleopteran
+coleopterist
+coleopteroid
+coleopterological
+coleopterology
+coleopteron
+coleopterous
+coleoptile
+coleoptilum
+coleopttera
+coleorhiza
+coleorhizae
+Coleosporiaceae
+Coleosporium
+coleplant
+cole-prophet
+colera
+Colerain
+Coleraine
+cole-rake
+Coleridge
+Coleridge-Taylor
+Coleridgian
+Coles
+coles
+Colesburg
+coleseed
+coleseeds
+cole-slaw
+coleslaw
+coleslaws
+co-lessee
+colessee
+colessees
+colessor
+colessors
+cole-staff
+Colet
+colet
+Coleta
+cole-tit
+coletit
+Coletta
+Colette
+coleur
+Coleus
+coleus
+coleuses
+Coleville
+colewort
+coleworts
+coley
+Colfax
+Colfin
+colfox
+Colgate
+coli
+coliander
+Colias
+colibacillosis
+colibacterin
+colibert
+colibertus
+colibri
+colic
+colical
+colichemarde
+colicin
+colicine
+colicines
+colicins
+colicker
+colicky
+colicolitis
+colicroot
+colics
+colicweed
+colicwort
+colicystitis
+colicystopyelitis
+Colier
+colies
+co-life
+coliform
+coliforms
+Coligni
+Coligny
+Coliidae
+Coliiformes
+colilysin
+Colima
+colima
+Colin
+colin
+colinear
+colinearity
+colinephritis
+Colinette
+coling
+colins
+Colinson
+Colinus
+coliphage
+coliplication
+colipuncture
+colipyelitis
+colipyuria
+Colis
+colisepsis
+Coliseum
+coliseum
+coliseums
+colistin
+colistins
+colitic
+colitis
+colitises
+colitoxemia
+coliuria
+Colius
+colk
+coll
+coll-
+coll.
+Colla
+colla
+collab
+collabent
+collaborate
+collaborated
+collaborates
+collaborateur
+collaborating
+collaboration
+collaborationism
+collaborationist
+collaborationists
+collaborations
+collaborative
+collaboratively
+collaborativeness
+collaborator
+collaborators
+collada
+colladas
+collage
+collaged
+collagen
+collagenase
+collagenic
+collagenous
+collagens
+collages
+collagist
+collapsability
+collapsable
+collapsar
+collapse
+collapsed
+collapses
+collapsibility
+collapsible
+collapsing
+Collar
+collar
+collarband
+collarbird
+collar-bone
+collarbone
+collarbones
+collar-bound
+collar-cutting
+collard
+collards
+collare
+collared
+collaret
+collarets
+collarette
+collaring
+collarino
+collarinos
+collarless
+collarman
+collars
+collar-shaping
+collar-to-collar
+collar-wearing
+collat
+collat.
+collatable
+collate
+collated
+collatee
+collateral
+collaterality
+collateralize
+collateralized
+collateralizing
+collaterally
+collateralness
+collaterals
+collates
+collating
+collation
+collational
+collationer
+collations
+collatitious
+collative
+collator
+collators
+collatress
+collaud
+collaudation
+Collayer
+Collbaith
+Collbran
+colleague
+colleagued
+colleagues
+colleagueship
+colleaguesmanship
+colleaguing
+Collect
+collect
+collectability
+collectable
+collectables
+collectanea
+collectarium
+collected
+collectedly
+collectedness
+collectibility
+collectible
+collectibles
+collecting
+collection
+collectional
+collectioner
+collections
+collective
+collectively
+collectiveness
+collectives
+collectivise
+collectivism
+collectivist
+collectivistic
+collectivistically
+collectivists
+collectivities
+collectivity
+collectivization
+collectivize
+collectivized
+collectivizes
+collectivizing
+collectivum
+collector
+collectorate
+collectors
+collectorship
+collectress
+collects
+Colleen
+colleen
+colleens
+collegatary
+college
+college-bred
+college-preparatory
+colleger
+collegers
+colleges
+collegese
+collegia
+collegial
+collegialism
+collegiality
+collegially
+collegian
+collegianer
+collegians
+Collegiant
+collegiate
+collegiately
+collegiateness
+collegiation
+collegiugia
+collegium
+collegiums
+Collembola
+collembolan
+collembole
+collembolic
+collembolous
+Collen
+collen
+collenchyma
+collenchymatic
+collenchymatous
+collenchyme
+collencytal
+collencyte
+Colleri
+Colleries
+Collery
+collery
+collet
+colletarium
+Collete
+colleted
+colleter
+colleterial
+colleterium
+Colletes
+Colletia
+colletic
+Colletidae
+colleting
+Colletotrichum
+collets
+colletside
+Collette
+Collettsville
+Colley
+colley
+Colleyville
+collibert
+collicle
+colliculate
+colliculus
+collide
+collided
+collides
+collidin
+collidine
+colliding
+Collie
+collie
+collied
+collielike
+Collier
+collier
+collieries
+Colliers
+colliers
+Colliersville
+Collierville
+colliery
+collies
+collieshangie
+colliflower
+colliform
+Colligan
+colligance
+colligate
+colligated
+colligating
+colligation
+colligative
+colligible
+collimate
+collimated
+collimates
+collimating
+collimation
+collimator
+collimators
+Collimore
+Collin
+collin
+collinal
+Colline
+colline
+collinear
+collinearity
+collinearly
+collineate
+collineation
+colling
+collingly
+Collingswood
+collingual
+Collingwood
+Collins
+collins
+collinses
+Collinsia
+collinsia
+collinsite
+Collinsonia
+Collinston
+Collinsville
+Collinwood
+colliquable
+colliquament
+colliquate
+colliquation
+colliquative
+colliquativeness
+colliquefaction
+Collis
+collis
+collision
+collisional
+collision-proof
+collisions
+collisive
+Collison
+collo-
+colloblast
+collobrierite
+collocal
+Collocalia
+collocate
+collocated
+collocates
+collocating
+collocation
+collocationable
+collocational
+collocations
+collocative
+collocatory
+collochemistry
+collochromate
+collock
+collocution
+collocutor
+collocutory
+Collodi
+collodio-
+collodiochloride
+collodion
+collodionization
+collodionize
+collodiotype
+collodium
+collogen
+collogue
+collogued
+collogues
+colloguing
+colloid
+colloidal
+colloidality
+colloidally
+colloider
+colloidize
+colloidochemical
+colloids
+Collomia
+collomia
+collop
+colloped
+collophane
+collophanite
+collophore
+collops
+Colloq
+colloq
+colloq.
+colloque
+colloquia
+colloquial
+colloquialism
+colloquialisms
+colloquialist
+colloquiality
+colloquialize
+colloquializer
+colloquially
+colloquialness
+colloquies
+colloquiquia
+colloquiquiums
+colloquist
+colloquium
+colloquiums
+colloquize
+colloquized
+colloquizing
+colloququia
+colloquy
+collossians
+collothun
+collotype
+collotyped
+collotypic
+collotyping
+collotypy
+collow
+colloxylin
+colluctation
+collude
+colluded
+colluder
+colluders
+colludes
+colluding
+Collum
+collum
+collumelliaceous
+collun
+collunaria
+collunarium
+collusion
+collusions
+collusive
+collusively
+collusiveness
+collusory
+collut
+collution
+collutoria
+collutories
+collutorium
+collutory
+colluvia
+colluvial
+colluvies
+colluvium
+colluviums
+Colly
+colly
+collyba
+Collybia
+collybist
+Collyer
+collying
+collylyria
+collyr
+collyria
+Collyridian
+collyridian
+collyrie
+collyrite
+collyrium
+collyriums
+collywest
+collyweston
+collywobbles
+Colman
+Colmar
+colmar
+colmars
+Colmer
+Colmesneil
+colmose
+Coln
+colnaria
+Colner
+Colo
+Colo.
+colo-
+colob
+colobi
+colobin
+colobium
+coloboma
+Colobus
+colobus
+Colocasia
+colocate
+colocated
+colocates
+colocating
+colocentesis
+Colocephali
+colocephalous
+coloclysis
+colocola
+colocolic
+colocolo
+colocynth
+colocynthin
+colodyspepsia
+coloenteritis
+colog
+cologarithm
+Cologne
+cologne
+cologned
+colognes
+cologs
+colola
+cololite
+Coloma
+colomb
+Colomb-Bchar
+Colombes
+Colombi
+Colombia
+colombia
+Colombian
+colombian
+colombians
+colombier
+colombin
+Colombina
+Colombo
+colombo
+Colome
+colometric
+colometrically
+colometry
+Colon
+colon
+Colona
+colonaded
+colonalgia
+colonate
+colone
+colonel
+colonelcies
+colonel-commandantship
+colonelcy
+colonels
+colonelship
+colonelships
+coloner
+colones
+colonette
+colongitude
+coloni
+colonial
+colonialise
+colonialised
+colonialising
+colonialism
+colonialist
+colonialistic
+colonialists
+colonialization
+colonialize
+colonialized
+colonializing
+colonially
+colonialness
+colonials
+colonic
+colonical
+colonics
+Colonie
+Colonies
+colonies
+colonisability
+colonisable
+colonisation
+colonisationist
+colonise
+colonised
+coloniser
+colonises
+colonising
+colonist
+colonists
+colonitis
+colonizability
+colonizable
+colonization
+colonizationist
+colonizations
+colonize
+colonized
+colonizer
+colonizers
+colonizes
+colonizing
+colonnade
+colonnaded
+colonnades
+colonnette
+colonopathy
+colonopexy
+colonoscope
+colonoscopy
+colons
+Colonsay
+colonus
+colony
+colopexia
+colopexotomy
+colopexy
+coloph-
+colophan
+colophane
+colophany
+colophene
+colophenic
+Colophon
+colophon
+colophonate
+Colophonian
+colophonic
+colophonist
+colophonite
+colophonium
+colophons
+colophony
+coloplication
+coloppe
+coloproctitis
+coloptosis
+colopuncture
+coloquies
+coloquintid
+coloquintida
+color
+Colora
+colorability
+colorable
+colorableness
+colorably
+Coloradan
+coloradan
+coloradans
+Colorado
+colorado
+Coloradoan
+coloradoite
+colorant
+colorants
+colorate
+coloration
+colorational
+colorationally
+colorations
+colorative
+coloratura
+coloraturas
+colorature
+color-bearer
+colorbearer
+color-blind
+colorblind
+colorblindness
+colorbreed
+colorcast
+colorcasted
+colorcaster
+colorcasting
+colorcasts
+colorectitis
+colorectostomy
+colored
+coloreds
+colorer
+colorers
+color-fading
+colorfast
+colorfastness
+color-free
+colorful
+colorfully
+colorfulness
+color-grinding
+colorific
+colorifics
+colorimeter
+colorimetric
+colorimetrical
+colorimetrically
+colorimetrics
+colorimetrist
+colorimetry
+colorin
+coloring
+colorings
+colorism
+colorisms
+colorist
+coloristic
+coloristically
+colorists
+colorization
+colorize
+colorless
+colorlessly
+colorlessness
+colormaker
+colormaking
+colorman
+color-matching
+coloroto
+colorrhaphy
+colors
+color-sensitize
+color-testing
+colortype
+Colorum
+color-washed
+colory
+coloslossi
+coloslossuses
+coloss
+Colossae
+colossal
+colossality
+colossally
+colossean
+Colosseum
+colosseum
+colossi
+Colossian
+colossian
+Colossians
+colossians
+colosso
+Colossochelys
+colossus
+colossuses
+Colossuswise
+colostomies
+colostomy
+colostral
+colostration
+colostric
+colostrous
+colostrum
+colotomies
+colotomy
+colotyphoid
+colour
+colourability
+colourable
+colourableness
+colourably
+colouration
+colourational
+colourationally
+colourative
+colour-blind
+colour-box
+Coloured
+coloured
+colourer
+colourers
+colourfast
+colourful
+colourfully
+colourfulness
+colourific
+colourifics
+colouring
+colourist
+colouristic
+colourize
+colourless
+colourlessly
+colourlessness
+colourman
+colours
+colourtype
+coloury
+-colous
+colove
+Colp
+colp
+colpenchyma
+colpeo
+colpeurynter
+colpeurysis
+colpheg
+Colpin
+colpindach
+colpitis
+colpitises
+colpo-
+colpocele
+colpocystocele
+Colpoda
+colpohyperplasia
+colpohysterotomy
+colpoperineoplasty
+colpoperineorrhaphy
+colpoplastic
+colpoplasty
+colpoptosis
+colporrhagia
+colporrhaphy
+colporrhea
+colporrhexis
+colport
+colportage
+colporter
+colporteur
+colporteurs
+colposcope
+colposcopy
+colpostat
+colpotomies
+colpotomy
+colpus
+Colquitt
+Colrain
+cols
+Colson
+colstaff
+Colston
+Colstrip
+COLT
+Colt
+colt
+Coltee
+colter
+colters
+colt-herb
+colthood
+Coltin
+coltish
+coltishly
+coltishness
+coltlike
+Colton
+coltoria
+colt-pixie
+coltpixie
+coltpixy
+Coltrane
+colts
+coltsfoot
+coltsfoots
+coltskin
+Coltson
+colt's-tail
+Coltun
+Coltwood
+colubaria
+Coluber
+coluber
+colubrid
+Colubridae
+colubrids
+colubriform
+Colubriformes
+Colubriformia
+Colubrina
+Colubrinae
+colubrine
+colubroid
+colugo
+colugos
+Colum
+Columba
+columba
+columbaceous
+Columbae
+Columban
+Columbanian
+columbaria
+columbaries
+columbarium
+columbary
+columbate
+columbeia
+columbeion
+Columbella
+Columbia
+columbia
+columbiad
+Columbian
+columbian
+Columbiana
+Columbiaville
+columbic
+Columbid
+Columbidae
+columbier
+columbiferous
+Columbiformes
+columbin
+Columbine
+columbine
+columbines
+columbite
+columbium
+columbo
+columboid
+columbotantalate
+columbotitanate
+columbous
+Columbus
+columbus
+Columbyne
+columel
+columella
+columellae
+columellar
+columellate
+Columellia
+Columelliaceae
+columelliform
+columels
+column
+columna
+columnal
+columnar
+columnarian
+columnarity
+columnarized
+columnate
+columnated
+columnates
+columnating
+columnation
+columnea
+columned
+columner
+columniation
+columniferous
+columniform
+columning
+columnist
+columnistic
+columnists
+columnization
+columnize
+columnized
+columnizes
+columnizing
+columns
+columnwise
+colunar
+colure
+colures
+Colusa
+colusite
+Colutea
+colutea
+Colver
+Colvert
+Colville
+Colvin
+Colwell
+Colwen
+Colwich
+Colwin
+Colwyn
+coly
+colyba
+Colyer
+Colymbidae
+colymbiform
+colymbion
+Colymbriformes
+Colymbus
+colyone
+colyonic
+colytic
+colyum
+colyumist
+colza
+colzas
+COM
+Com
+Com.
+com
+com-
+com.
+coma
+comacine
+comade
+comae
+Comaetho
+comagistracy
+comagmatic
+comake
+comaker
+comakers
+comakes
+comaking
+comal
+comales
+comals
+comamie
+Coman
+comanage
+comanagement
+comanagements
+comanager
+comanagers
+Comanche
+comanche
+Comanchean
+comanchean
+Comanches
+comanches
+comandante
+comandantes
+comandanti
+Comandra
+Comaneci
+comanic
+comarca
+co-mart
+comart
+co-martyr
+Comarum
+comarum
+COMAS
+comas
+co-mate
+comate
+comates
+comatic
+comatik
+comatiks
+comatose
+comatosely
+comatoseness
+comatosity
+comatous
+comatula
+comatulae
+comatulid
+comb
+comb.
+combaron
+combasou
+combat
+combatable
+combatant
+combatants
+combated
+combater
+combaters
+combating
+combative
+combatively
+combativeness
+combativity
+combats
+combattant
+combattants
+combatted
+combatter
+combatting
+comb-back
+comb-broach
+comb-brush
+comb-building
+Combe
+combe
+Combe-Capelle
+Combe-capelle
+combed
+comber
+combers
+Combes
+combes
+combfish
+combfishes
+combflower
+comb-footed
+comb-grained
+combinability
+combinable
+combinableness
+combinably
+combinant
+combinantive
+combinate
+combination
+combinational
+combinations
+combinative
+combinator
+combinatorial
+combinatorially
+combinatoric
+combinatorics
+combinators
+combinatory
+combind
+combine
+combined
+combinedly
+combinedness
+combinement
+combiner
+combiners
+combines
+combing
+combings
+combining
+combite
+comble
+combless
+comblessness
+comblike
+combmaker
+combmaking
+combo
+comboloio
+combos
+comb-out
+comboy
+combre
+Combretaceae
+combretaceous
+Combretum
+Combs
+combs
+comb-shaped
+combure
+comburendo
+comburent
+comburgess
+comburimeter
+comburimetry
+comburivorous
+combust
+combusted
+combustibilities
+combustibility
+combustible
+combustibleness
+combustibles
+combustibly
+combusting
+combustion
+combustions
+combustious
+combustive
+combustively
+combustor
+combusts
+combwise
+combwright
+comby
+comd
+COMDEX
+comdg
+comdg.
+comdia
+Comdr
+Comdr.
+comdr
+Comdt
+Comdt.
+comdt
+come
+come-all-ye
+come-along
+come-at-ability
+come-at-able
+comeatable
+come-at-ableness
+come-back
+comeback
+comebacker
+comebacks
+come-between
+come-by-chance
+Comecon
+Comecrudo
+comeddle
+comedia
+comedial
+comedian
+comedians
+comediant
+comedic
+comedical
+comedically
+comedienne
+comediennes
+comedies
+comedietta
+comediettas
+comediette
+comedist
+comedo
+comedones
+comedos
+come-down
+comedown
+comedowns
+comedy
+come-hither
+come-hithery
+comelier
+comeliest
+comelily
+comeliness
+comeling
+comely
+comely-featured
+comendite
+comenic
+Comenius
+come-off
+come-on
+come-out
+come-outer
+comephorous
+Comer
+comer
+Comerio
+comers
+comes
+comessation
+comestible
+comestibles
+comestion
+comet
+cometaria
+cometarium
+cometary
+Cometes
+cometh
+comether
+comethers
+cometic
+cometical
+cometlike
+cometographer
+cometographical
+cometography
+cometoid
+cometology
+comets
+cometwise
+comeupance
+comeuppance
+comeuppances
+comfier
+comfiest
+comfily
+comfiness
+comfit
+comfits
+comfiture
+Comfort
+comfort
+comfortabilities
+comfortability
+comfortable
+comfortableness
+comfortably
+comfortation
+comfortative
+comforted
+Comforter
+comforter
+comforters
+comfortful
+comforting
+comfortingly
+comfortless
+comfortlessly
+comfortlessness
+comfortress
+comfortroot
+comforts
+Comfrey
+comfrey
+comfreys
+comfy
+Comiakin
+comic
+comical
+comicality
+comically
+comicalness
+comices
+comic-iambic
+comico-
+comicocratic
+comicocynical
+comicodidactic
+comicography
+comicoprosaic
+comicotragedy
+comicotragic
+comicotragical
+comicry
+comics
+Comid
+comida
+comiferous
+Comilla
+COMINCH
+Comines
+Cominform
+Cominformist
+cominformist
+cominformists
+coming
+coming-forth
+comingle
+coming-on
+comings
+comino
+Comins
+Comintern
+comintern
+comique
+comism
+Comiso
+Comitadji
+comitadji
+comital
+comitant
+comitatensian
+comitative
+comitatus
+comite
+comites
+comitia
+comitial
+comities
+Comitium
+comitiva
+comitje
+comitragedy
+comity
+comix
+coml
+COMM
+comm
+comm.
+comma
+Commack
+commaes
+Commager
+commaing
+command
+commandable
+commandant
+commandants
+commandatory
+commanded
+commandedness
+commandeer
+commandeered
+commandeering
+commandeers
+commander
+commanderies
+commanders
+commandership
+commandery
+commanding
+commandingly
+commandingness
+commandite
+commandless
+commandment
+commandments
+commando
+commandoes
+commandoman
+commandos
+commandress
+commandrie
+commandries
+commandry
+commands
+commark
+commas
+commassation
+commassee
+commata
+commaterial
+commatic
+commation
+commatism
+comme
+commeasurable
+commeasure
+commeasured
+commeasuring
+commeddle
+Commelina
+Commelinaceae
+commelinaceous
+commem
+commemorable
+commemorate
+commemorated
+commemorates
+commemorating
+commemoration
+commemorational
+commemorations
+commemorative
+commemoratively
+commemorativeness
+commemorator
+commemorators
+commemoratory
+commemorize
+commemorized
+commemorizing
+commence
+commenceable
+commenced
+commencement
+commencements
+commencer
+commences
+commencing
+commend
+commenda
+commendable
+commendableness
+commendably
+commendador
+commendam
+commendatary
+commendation
+commendations
+commendator
+commendatories
+commendatorily
+commendatory
+commended
+commender
+commending
+commendingly
+commendment
+commends
+commensal
+commensalism
+commensalist
+commensalistic
+commensality
+commensally
+commensals
+commensurability
+commensurable
+commensurableness
+commensurably
+commensurate
+commensurated
+commensurately
+commensurateness
+commensurating
+commensuration
+commensurations
+comment
+commentable
+commentarial
+commentarialism
+commentaries
+commentary
+commentate
+commentated
+commentating
+commentation
+commentative
+commentator
+commentatorial
+commentatorially
+commentators
+commentatorship
+commented
+commenter
+commenting
+commentitious
+comments
+Commerce
+commerce
+commerced
+commerceless
+commercer
+commerces
+commercia
+commerciable
+commercial
+commercialisation
+commercialise
+commercialised
+commercialising
+commercialism
+commercialist
+commercialistic
+commercialists
+commerciality
+commercialization
+commercializations
+commercialize
+commercialized
+commercializes
+commercializing
+commercially
+commercialness
+commercials
+commercing
+commercium
+commerge
+commers
+commesso
+commie
+commies
+commigration
+commilitant
+comminate
+comminated
+comminating
+commination
+comminative
+comminator
+comminatory
+Commines
+commingle
+commingled
+comminglement
+commingler
+commingles
+commingling
+comminister
+comminuate
+comminute
+comminuted
+comminuting
+comminution
+comminutor
+Commiphora
+commis
+commisce
+commise
+commiserable
+commiserate
+commiserated
+commiserates
+commiserating
+commiseratingly
+commiseration
+commiserations
+commiserative
+commiseratively
+commiserator
+Commiskey
+commissar
+commissarial
+commissariat
+commissariats
+commissaries
+commissars
+commissary
+commissaryship
+commission
+commissionaire
+commissional
+commissionary
+commissionate
+commissionated
+commissionating
+commissioned
+commissioner
+commissioner-general
+commissioners
+commissionership
+commissionerships
+commissioning
+commissions
+commissionship
+commissive
+commissively
+commissoria
+commissural
+commissure
+commissurotomies
+commissurotomy
+commistion
+commit
+commitment
+commitments
+commits
+committable
+committal
+committals
+committed
+committedly
+committedness
+committee
+committeeism
+committeeman
+committeemen
+committees
+committeeship
+committeewoman
+committeewomen
+committent
+committer
+committible
+committing
+committitur
+committment
+committor
+commix
+commixed
+commixes
+commixing
+commixt
+commixtion
+commixture
+commo
+commodata
+commodatary
+commodate
+commodation
+commodatum
+commode
+commoderate
+commodes
+commodious
+commodiously
+commodiousness
+commoditable
+commodities
+commodity
+commodore
+commodores
+Commodus
+commoigne
+commolition
+common
+commonable
+commonage
+commonalities
+commonality
+commonalties
+commonalty
+commonance
+commoned
+commonefaction
+commoner
+commoners
+commonership
+commonest
+commoney
+commoning
+commonish
+commonition
+commonize
+common-law
+commonly
+commonness
+commonplace
+commonplaceism
+commonplacely
+commonplaceness
+commonplacer
+commonplaces
+common-room
+Commons
+commons
+commonsense
+commonsensible
+commonsensibly
+commonsensical
+commonsensically
+commonty
+common-variety
+commonweal
+commonweals
+Commonwealth
+commonwealth
+commonwealthism
+commonwealths
+commorancies
+commorancy
+commorant
+commorient
+commorse
+commorth
+commos
+commot
+commote
+commotion
+commotional
+commotions
+commotive
+commove
+commoved
+commoves
+commoving
+commulation
+commulative
+communa
+communal
+communalisation
+communalise
+communalised
+communaliser
+communalising
+communalism
+communalist
+communalistic
+communality
+communalization
+communalize
+communalized
+communalizer
+communalizing
+communally
+Communard
+communard
+communbus
+Commune
+commune
+communed
+communer
+communes
+communicability
+communicable
+communicableness
+communicably
+communicant
+communicants
+communicate
+communicated
+communicatee
+communicates
+communicating
+communication
+communicational
+communications
+communicative
+communicatively
+communicativeness
+communicator
+communicators
+communicatory
+communing
+Communion
+communion
+communionable
+communional
+communionist
+communions
+communiqu
+communique
+communiques
+communis
+communisation
+communise
+communised
+communising
+communism
+Communist
+communist
+communisteries
+communistery
+communistic
+communistical
+communistically
+communists
+communital
+communitarian
+communitarianism
+communitary
+communities
+communitive
+communitorium
+community
+communitywide
+communization
+communize
+communized
+communizing
+commutability
+commutable
+commutableness
+commutant
+commutate
+commutated
+commutating
+commutation
+commutations
+commutative
+commutatively
+commutativity
+commutator
+commutators
+commute
+commuted
+commuter
+commuters
+commutes
+commuting
+commutual
+commutuality
+commy
+Comnenian
+Comnenus
+Como
+comodato
+comodo
+comoedia
+comoedus
+comoid
+comolecule
+comonomer
+comonte
+comoquer
+comorado
+Comorin
+comortgagee
+comose
+comourn
+comourner
+comournful
+comous
+Comox
+comp
+comp.
+compaa
+COMPACT
+compact
+compactability
+compactable
+compacted
+compactedly
+compactedness
+compacter
+compactest
+compactible
+compactification
+compactify
+compactile
+compacting
+compaction
+compactions
+compactly
+compactness
+compactnesses
+compactor
+compactors
+compacts
+compacture
+compadre
+compadres
+compage
+compages
+compaginate
+compagination
+Compagnie
+compagnie
+compagnies
+companable
+companage
+companator
+compander
+companero
+companeros
+compania
+companiable
+companias
+companied
+companies
+companion
+companionability
+companionable
+companionableness
+companionably
+companionage
+companionate
+companioned
+companioning
+companionize
+companionized
+companionizing
+companionless
+companions
+companionship
+companionships
+companionway
+companionways
+company
+companying
+companyless
+compar
+compar.
+comparability
+comparable
+comparableness
+comparably
+comparascope
+comparate
+comparatist
+comparatival
+comparative
+comparatively
+comparativeness
+comparatives
+comparativist
+comparator
+comparators
+comparcioner
+compare
+compared
+comparer
+comparers
+compares
+comparing
+comparison
+comparisons
+comparition
+comparograph
+comparsa
+compart
+comparted
+compartimenti
+compartimento
+comparting
+compartition
+compartment
+compartmental
+compartmentalization
+compartmentalize
+compartmentalized
+compartmentalizes
+compartmentalizing
+compartmentally
+compartmentation
+compartmented
+compartmentize
+compartments
+compartner
+comparts
+compass
+compassability
+compassable
+compassed
+compasser
+Compasses
+compasses
+compass-headed
+compassing
+compassion
+compassionable
+compassionate
+compassionated
+compassionately
+compassionateness
+compassionating
+compassionless
+compassions
+compassive
+compassivity
+compassless
+compassment
+compatability
+compatable
+compaternity
+compathy
+compatibilities
+compatibility
+compatible
+compatibleness
+compatibles
+compatibly
+compatience
+compatient
+compatriot
+compatriotic
+compatriotism
+compatriots
+Compazine
+compd
+compear
+compearance
+compearant
+comped
+compeer
+compeered
+compeering
+compeers
+compel
+compellability
+compellable
+compellably
+compellation
+compellative
+compelled
+compellent
+compeller
+compellers
+compelling
+compellingly
+compels
+compend
+compendency
+compendent
+compendia
+compendiary
+compendiate
+compendious
+compendiously
+compendiousness
+compendium
+compendiums
+compends
+compenetrate
+compenetration
+compensability
+compensable
+compensate
+compensated
+compensates
+compensating
+compensatingly
+compensation
+compensational
+compensations
+compensative
+compensatively
+compensativeness
+compensator
+compensators
+compensatory
+compense
+compenser
+compere
+compered
+comperes
+compering
+compert
+compesce
+compester
+compete
+competed
+competence
+competences
+competencies
+competency
+competent
+competently
+competentness
+competer
+competes
+competible
+competing
+competingly
+competition
+competitioner
+competitions
+competitive
+competitively
+competitiveness
+competitor
+competitors
+competitorship
+competitory
+competitress
+competitrix
+Compi
+Compiegne
+compilable
+compilation
+compilations
+compilator
+compilatory
+compile
+compileable
+compiled
+compilement
+compiler
+compilers
+compiles
+compiling
+comping
+compinge
+compital
+Compitalia
+compitum
+complacence
+complacences
+complacencies
+complacency
+complacent
+complacential
+complacentially
+complacently
+complain
+complainable
+complainant
+complainants
+complained
+complainer
+complainers
+complaining
+complainingly
+complainingness
+complains
+complaint
+complaintful
+complaintive
+complaintiveness
+complaints
+complaisance
+complaisant
+complaisantly
+complaisantness
+complanar
+complanate
+complanation
+complant
+compleat
+compleated
+complect
+complected
+complecting
+complection
+complects
+complement
+complemental
+complementally
+complementalness
+complementaries
+complementarily
+complementariness
+complementarism
+complementarity
+complementary
+complementation
+complementative
+complement-binding
+complemented
+complementer
+complementers
+complement-fixing
+complementing
+complementizer
+complementoid
+complements
+completable
+complete
+completed
+completedness
+completely
+completement
+completeness
+completenesses
+completer
+completers
+completes
+completest
+completing
+completion
+completions
+completive
+completively
+completories
+completory
+complex
+complexation
+complexed
+complexedness
+complexer
+complexes
+complexest
+complexification
+complexify
+complexing
+complexion
+complexionably
+complexional
+complexionally
+complexionary
+complexioned
+complexionist
+complexionless
+complexions
+complexities
+complexity
+complexive
+complexively
+complexly
+complexness
+complexometric
+complexometry
+complexus
+compliable
+compliableness
+compliably
+compliance
+compliances
+compliancies
+compliancy
+compliant
+compliantly
+complicacies
+complicacy
+complicant
+complicate
+complicated
+complicatedly
+complicatedness
+complicates
+complicating
+complication
+complications
+complicative
+complicator
+complicators
+complice
+complices
+complicities
+complicitous
+complicity
+complied
+complier
+compliers
+complies
+compliment
+complimentable
+complimental
+complimentally
+complimentalness
+complimentarily
+complimentariness
+complimentarity
+complimentary
+complimentation
+complimentative
+complimented
+complimenter
+complimenters
+complimenting
+complimentingly
+compliments
+complin
+compline
+complines
+complins
+complish
+complot
+complotment
+complots
+complotted
+complotter
+complotting
+Complutensian
+complutensian
+compluvia
+compluvium
+comply
+complying
+compo
+Compoboard
+compoed
+compoer
+compoing
+compole
+compone
+componed
+componency
+componendo
+component
+componental
+componented
+componential
+componentry
+components
+componentwise
+compony
+comport
+comportable
+comportance
+comported
+comporting
+comportment
+comportments
+comports
+compos
+composable
+composal
+Composaline
+composant
+compose
+composed
+composedly
+composedness
+composer
+composers
+composes
+composing
+composit
+composita
+Compositae
+compositae
+composite
+composite-built
+composited
+compositely
+compositeness
+composites
+compositing
+composition
+compositional
+compositionally
+compositions
+compositive
+compositively
+compositor
+compositorial
+compositors
+compositous
+compositure
+composograph
+compossibility
+compossible
+compost
+composted
+Compostela
+composting
+composts
+composture
+composure
+compot
+compotation
+compotationship
+compotator
+compotatory
+compote
+compotes
+compotier
+compotiers
+compotor
+compound
+compoundable
+compound-complex
+compounded
+compoundedness
+compounder
+compounders
+compounding
+compoundness
+compounds
+compound-wound
+comprachico
+comprachicos
+comprador
+compradore
+comprecation
+compreg
+compregnate
+comprehend
+comprehended
+comprehender
+comprehendible
+comprehending
+comprehendingly
+comprehends
+comprehense
+comprehensibility
+comprehensible
+comprehensibleness
+comprehensibly
+comprehension
+comprehensions
+comprehensive
+comprehensively
+comprehensiveness
+comprehensivenesses
+comprehensives
+comprehensor
+comprend
+compresbyter
+compresbyterial
+compresence
+compresent
+compress
+compressed
+compressedly
+compresses
+compressibilities
+compressibility
+compressible
+compressibleness
+compressibly
+compressing
+compressingly
+compression
+compressional
+compression-ignition
+compressions
+compressive
+compressively
+compressometer
+compressor
+compressors
+compressure
+comprest
+compriest
+comprint
+comprisable
+comprisal
+comprise
+comprised
+comprises
+comprising
+comprizable
+comprizal
+comprize
+comprized
+comprizes
+comprizing
+comprobate
+comprobation
+comproduce
+compromis
+compromisable
+compromise
+compromised
+compromiser
+compromisers
+compromises
+compromising
+compromisingly
+compromissary
+compromission
+compromissorial
+compromit
+compromitment
+compromitted
+compromitting
+comprovincial
+comps
+Compsilura
+Compsoa
+Compsognathus
+compsognathus
+Compsothlypidae
+compt
+Comptche
+Compte
+compte
+Comptean
+compted
+COMPTEL
+compter
+comptible
+comptie
+compting
+comptly
+comptness
+comptoir
+Comptom
+Comptometer
+comptometer
+Compton
+Compton-Burnett
+Comptonia
+comptonite
+comptrol
+comptroller
+comptrollers
+comptrollership
+compts
+compulsative
+compulsatively
+compulsatorily
+compulsatory
+compulse
+compulsed
+compulsion
+compulsions
+compulsitor
+compulsive
+compulsively
+compulsiveness
+compulsives
+compulsivity
+compulsorily
+compulsoriness
+compulsory
+compunct
+compunction
+compunctionary
+compunctionless
+compunctions
+compunctious
+compunctiously
+compunctive
+compupil
+compurgation
+compurgator
+compurgatorial
+compurgatory
+compursion
+computability
+computable
+computably
+computate
+computation
+computational
+computationally
+computations
+computative
+computatively
+computativeness
+compute
+computed
+computer
+computerese
+computerise
+computerite
+computerizable
+computerization
+computerize
+computerized
+computerizes
+computerizing
+computerlike
+computernik
+computers
+computes
+computing
+computist
+computus
+Comr
+Comr.
+comr
+comrade
+comrade-in-arms
+comradeliness
+comradely
+comradery
+comrades
+comradeship
+comradeships
+comrado
+Comras
+comrogue
+COMS
+coms
+COMSAT
+Comsat
+comsat
+Comsomol
+Comstock
+comstock
+comstockeries
+comstockery
+comsymp
+comsymps
+Comte
+comte
+comtemplate
+comtemplated
+comtemplates
+comtemplating
+comtes
+Comtesse
+comtesse
+comtesses
+Comtian
+comtian
+Comtism
+Comtist
+comunidad
+comurmurer
+Comus
+comus
+comvia
+Comyns
+Con
+Con.
+con
+con-
+con.
+conable
+conacaste
+conacre
+Conah
+Conakry
+Conal
+conal
+conalbumin
+Conall
+conamarin
+conamed
+Conan
+conand
+Conant
+Conard
+conarial
+conario-
+conarium
+Conasauga
+conation
+conational
+conationalistic
+conations
+conative
+conatural
+conatus
+Conaway
+conaxial
+conbinas
+conc
+conc.
+concactenated
+concamerate
+concamerated
+concameration
+Concan
+concanavalin
+concannon
+concaptive
+concarnation
+Concarneau
+concassation
+concatenary
+concatenate
+concatenated
+concatenates
+concatenating
+concatenation
+concatenations
+concatenator
+concatervate
+concaulescence
+concausal
+concause
+concavation
+concave
+concaved
+concavely
+concaveness
+concaver
+concaves
+concaving
+concavities
+concavity
+concavo
+concavo-
+concavo-concave
+concavo-convex
+conceal
+concealable
+concealed
+concealedly
+concealedness
+concealer
+concealers
+concealing
+concealingly
+concealment
+concealments
+conceals
+concede
+conceded
+concededly
+conceder
+conceders
+concedes
+conceding
+conceit
+conceited
+conceitedly
+conceitedness
+conceiting
+conceitless
+conceits
+conceity
+conceivability
+conceivable
+conceivableness
+conceivably
+conceive
+conceived
+conceiver
+conceivers
+conceives
+conceiving
+concelebrate
+concelebrated
+concelebrates
+concelebrating
+concelebration
+concelebrations
+concent
+concenter
+concentered
+concentering
+concentive
+concento
+concentralization
+concentralize
+concentrate
+concentrated
+concentrates
+concentrating
+concentration
+concentrations
+concentrative
+concentrativeness
+concentrator
+concentrators
+concentre
+concentred
+concentric
+concentrical
+concentrically
+concentricate
+concentricity
+concentring
+concents
+concentual
+concentus
+Concepci
+Concepcion
+concept
+conceptacle
+conceptacular
+conceptaculum
+conceptible
+conception
+conceptional
+conceptionist
+conceptions
+conceptism
+conceptive
+conceptiveness
+concepts
+conceptual
+conceptualisation
+conceptualise
+conceptualised
+conceptualising
+conceptualism
+conceptualist
+conceptualistic
+conceptualistically
+conceptualists
+conceptuality
+conceptualization
+conceptualizations
+conceptualize
+conceptualized
+conceptualizer
+conceptualizes
+conceptualizing
+conceptually
+conceptus
+concern
+concernancy
+concerned
+concernedly
+concernedness
+concerning
+concerningly
+concerningness
+concernment
+concerns
+concert
+concertante
+concertantes
+concertanti
+concertanto
+concertati
+concertation
+concertato
+concertatos
+concerted
+concertedly
+concertedness
+Concertgebouw
+concertgoer
+concerti
+concertina
+concertinas
+concerting
+concertini
+concertinist
+concertino
+concertinos
+concertion
+concertise
+concertised
+concertiser
+concertising
+concertist
+concertize
+concertized
+concertizer
+concertizes
+concertizing
+concertmaster
+concertmasters
+concertmeister
+concertment
+concerto
+concertos
+concerts
+concertstck
+concertstuck
+Concesio
+concessible
+concession
+concessionaire
+concessionaires
+concessional
+concessionaries
+concessionary
+concessioner
+concessionist
+concessions
+concessit
+concessive
+concessively
+concessiveness
+concessor
+concessory
+concetti
+Concettina
+concettism
+concettist
+concetto
+conch
+conch-
+Concha
+concha
+conchae
+conchal
+conchate
+conche
+conched
+concher
+conches
+conchfish
+conchfishes
+conchie
+conchies
+Conchifera
+conchiferous
+conchiform
+conchinin
+conchinine
+conchiolin
+Conchita
+conchite
+conchitic
+conchitis
+Concho
+concho
+Conchobar
+Conchobor
+conchoid
+conchoidal
+conchoidally
+conchoids
+conchol
+conchological
+conchologically
+conchologist
+conchologize
+conchology
+conchometer
+conchometry
+conchospiral
+Conchostraca
+conchotome
+conchs
+Conchubar
+Conchucu
+conchuela
+conchy
+conchyle
+conchylia
+conchyliated
+conchyliferous
+conchylium
+conciator
+concierge
+concierges
+concile
+conciliable
+conciliabule
+conciliabulum
+conciliar
+conciliarism
+conciliarly
+conciliate
+conciliated
+conciliates
+conciliating
+conciliatingly
+conciliation
+conciliationist
+conciliations
+conciliative
+conciliator
+conciliatorily
+conciliatoriness
+conciliators
+conciliatory
+concilium
+concinnate
+concinnated
+concinnating
+concinnities
+concinnity
+concinnous
+concinnously
+concio
+concion
+concional
+concionary
+concionate
+concionator
+concionatory
+conciousness
+concipiency
+concipient
+concise
+concisely
+conciseness
+concisenesses
+conciser
+concisest
+concision
+concitation
+concite
+concitizen
+conclamant
+conclamation
+conclave
+conclaves
+conclavist
+concludable
+conclude
+concluded
+concludence
+concludency
+concludendi
+concludent
+concludently
+concluder
+concluders
+concludes
+concludible
+concluding
+concludingly
+conclusible
+conclusion
+conclusional
+conclusionally
+conclusions
+conclusive
+conclusively
+conclusiveness
+conclusory
+conclusum
+concn
+concoagulate
+concoagulation
+concoct
+concocted
+concocter
+concocting
+concoction
+concoctions
+concoctive
+concoctor
+concocts
+Concoff
+concolor
+concolorous
+concolour
+concomitance
+concomitancy
+concomitant
+concomitantly
+concomitants
+concomitate
+concommitant
+concommitantly
+conconscious
+Conconully
+Concord
+concord
+concordable
+concordably
+concordal
+concordance
+concordancer
+concordances
+concordancy
+concordant
+concordantial
+concordantly
+concordat
+concordatory
+concordats
+concordatum
+Concorde
+concorder
+Concordia
+concordial
+concordist
+concordity
+concordly
+concords
+Concordville
+concorporate
+concorporated
+concorporating
+concorporation
+Concorrezanes
+concours
+concourse
+concourses
+concreate
+concredit
+concremation
+concrement
+concresce
+concrescence
+concrescences
+concrescent
+concrescible
+concrescive
+concrete
+concreted
+concretely
+concreteness
+concreter
+concretes
+concreting
+concretion
+concretional
+concretionary
+concretions
+concretism
+concretist
+concretive
+concretively
+concretization
+concretize
+concretized
+concretizing
+concretor
+concrew
+concrfsce
+concubinage
+concubinal
+concubinarian
+concubinaries
+concubinary
+concubinate
+concubine
+concubinehood
+concubines
+concubitancy
+concubitant
+concubitous
+concubitus
+conculcate
+conculcation
+concumbency
+concupiscence
+concupiscent
+concupiscible
+concupiscibleness
+concupy
+concur
+concurbit
+concurred
+concurrence
+concurrences
+concurrencies
+concurrency
+concurrent
+concurrently
+concurrentness
+concurring
+concurringly
+concurs
+concursion
+concurso
+concursus
+concuss
+concussant
+concussation
+concussed
+concusses
+concussing
+concussion
+concussional
+concussions
+concussive
+concussively
+concutient
+concyclic
+concyclically
+Cond
+cond
+Conda
+Condalia
+Condamine
+Conde
+condecent
+condemn
+condemnable
+condemnably
+condemnate
+condemnation
+condemnations
+condemnatory
+condemned
+condemner
+condemners
+condemning
+condemningly
+condemnor
+condemns
+condensability
+condensable
+condensance
+condensaries
+condensary
+condensate
+condensates
+condensation
+condensational
+condensations
+condensative
+condensator
+condense
+condensed
+condensedly
+condensedness
+condenser
+condenseries
+condensers
+condensery
+condenses
+condensible
+condensing
+condensity
+conder
+condescend
+condescended
+condescendence
+condescendent
+condescender
+condescending
+condescendingly
+condescendingness
+condescends
+condescension
+condescensions
+condescensive
+condescensively
+condescensiveness
+condescent
+condiction
+condictious
+condiddle
+condiddled
+condiddlement
+condiddling
+condign
+condigness
+condignity
+condignly
+condignness
+Condillac
+condiment
+condimental
+condimentary
+condiments
+condisciple
+condistillation
+Condit
+condite
+condition
+conditionable
+conditional
+conditionalism
+conditionalist
+conditionalities
+conditionality
+conditionalize
+conditionally
+conditionals
+conditionate
+conditione
+conditioned
+conditioner
+conditioners
+conditioning
+conditions
+condititivia
+conditivia
+conditivium
+conditoria
+conditorium
+conditory
+conditotoria
+condivision
+condo
+condoes
+condog
+condolatory
+condole
+condoled
+condolement
+condolence
+condolences
+condolent
+condoler
+condolers
+condoles
+condoling
+condolingly
+condom
+condominate
+condominial
+condominiia
+condominiiums
+condominium
+condominiums
+condoms
+Condon
+condonable
+condonance
+condonation
+condonations
+condonative
+condone
+condoned
+condonement
+condoner
+condoners
+condones
+condoning
+condor
+Condorcet
+condores
+condors
+condos
+condottiere
+condottieri
+conduce
+conduceability
+conduced
+conducement
+conducent
+conducer
+conducers
+conduces
+conducible
+conducibleness
+conducibly
+conducing
+conducingly
+conducive
+conduciveness
+conduct
+conducta
+conductance
+conductances
+conducted
+conductibility
+conductible
+conductility
+conductimeter
+conductimetric
+conducting
+conductio
+conduction
+conductional
+conductions
+conductitious
+conductive
+conductively
+conductivities
+conductivity
+conduct-money
+conductometer
+conductometric
+conductor
+conductorial
+conductorless
+conductors
+conductorship
+conductory
+conductress
+conducts
+conductus
+condue
+conduit
+conduits
+conduplicate
+conduplicated
+conduplication
+condurangin
+condurango
+condurrite
+condylar
+condylarth
+Condylarthra
+condylarthrosis
+condylarthrous
+condyle
+condylectomy
+condyles
+condylion
+condyloid
+condyloma
+condylomas
+condylomata
+condylomatous
+condylome
+condylopod
+Condylopoda
+condylopodous
+condylos
+condylotomy
+Condylura
+condylura
+condylure
+cone
+cone-billed
+coned
+coneen
+coneflower
+Conehatta
+conehead
+cone-headed
+coneighboring
+cone-in-cone
+coneine
+Conejos
+conelet
+conelike
+Conelrad
+conelrad
+conelrads
+conemaker
+conemaking
+Conemaugh
+conenchyma
+cone-nose
+conenose
+conenoses
+conepate
+conepates
+conepatl
+conepatls
+coner
+cones
+cone-shaped
+conessine
+Conestee
+Conestoga
+conestoga
+Conesus
+Conesville
+Conetoe
+Coney
+coney
+coneys
+conf
+conf.
+confab
+confabbed
+confabbing
+confabs
+confabular
+confabulate
+confabulated
+confabulates
+confabulating
+confabulation
+confabulations
+confabulator
+confabulatory
+confact
+confarreate
+confarreated
+confarreation
+confated
+confect
+confected
+confecting
+confection
+confectionaries
+confectionary
+confectioner
+confectioneries
+confectioners
+confectionery
+confectiones
+confections
+confectory
+confects
+confecture
+Confed
+confeder
+confederacies
+Confederacy
+confederacy
+confederal
+confederalist
+Confederate
+confederate
+confederated
+confederater
+confederates
+confederating
+confederatio
+Confederation
+confederation
+confederationism
+confederationist
+confederations
+confederatism
+confederative
+confederatize
+confederator
+confelicity
+confer
+conferee
+conferees
+conference
+conferences
+conferencing
+conferential
+conferment
+conferrable
+conferral
+conferred
+conferree
+conferrence
+conferrer
+conferrers
+conferring
+conferruminate
+confers
+conferted
+Conferva
+conferva
+Confervaceae
+confervaceous
+confervae
+conferval
+Confervales
+confervalike
+confervas
+confervoid
+Confervoideae
+confervous
+confess
+confessable
+confessant
+confessarius
+confessary
+confessed
+confessedly
+confesser
+confesses
+confessing
+confessingly
+confession
+confessional
+confessionalian
+confessionalism
+confessionalist
+confessionally
+confessionals
+confessionaries
+confessionary
+confessionist
+confessions
+confessor
+confessors
+confessorship
+confessory
+confest
+confetti
+confetto
+conficient
+confidant
+confidante
+confidantes
+confidants
+confide
+confided
+confidence
+confidences
+confidency
+confident
+confidente
+confidential
+confidentiality
+confidentially
+confidentialness
+confidentiary
+confidently
+confidentness
+confider
+confiders
+confides
+confiding
+confidingly
+confidingness
+configurable
+configural
+configurate
+configurated
+configurating
+configuration
+configurational
+configurationally
+configurationism
+configurationist
+configurations
+configurative
+configure
+configured
+configures
+configuring
+confinable
+confine
+confineable
+confined
+confinedly
+confinedness
+confineless
+confinement
+confinements
+confiner
+confiners
+confines
+confining
+confinity
+confirm
+confirmability
+confirmable
+confirmand
+confirmation
+confirmational
+confirmations
+confirmative
+confirmatively
+confirmatorily
+confirmatory
+confirmed
+confirmedly
+confirmedness
+confirmee
+confirmer
+confirming
+confirmingly
+confirmity
+confirmment
+confirmor
+confirms
+confiscable
+confiscatable
+confiscate
+confiscated
+confiscates
+confiscating
+confiscation
+confiscations
+confiscator
+confiscators
+confiscatory
+confiserie
+confisk
+confisticating
+confit
+confitent
+Confiteor
+confiteor
+confiture
+confix
+confixed
+confixing
+conflab
+conflagrant
+conflagrate
+conflagrated
+conflagrating
+conflagration
+conflagrations
+conflagrative
+conflagrator
+conflagratory
+conflate
+conflated
+conflates
+conflating
+conflation
+conflexure
+conflict
+conflicted
+conflictful
+conflicting
+conflictingly
+confliction
+conflictive
+conflictless
+conflictory
+conflicts
+conflictual
+conflow
+Confluence
+confluence
+confluences
+confluent
+confluently
+conflux
+confluxes
+confluxibility
+confluxible
+confluxibleness
+confocal
+confocally
+conforbably
+conform
+conformability
+conformable
+conformableness
+conformably
+conformal
+conformance
+conformant
+conformate
+conformation
+conformational
+conformationally
+conformations
+conformator
+conformed
+conformer
+conformers
+conforming
+conformingly
+conformism
+conformist
+conformists
+conformities
+conformity
+conforms
+confort
+confound
+confoundable
+confounded
+confoundedly
+confoundedness
+confounder
+confounders
+confounding
+confoundingly
+confoundment
+confounds
+confr
+confract
+confraction
+confragose
+confrater
+confraternal
+confraternities
+confraternity
+confraternization
+confrere
+confreres
+confrerie
+confriar
+confricamenta
+confricamentum
+confrication
+confront
+confrontal
+confrontation
+confrontational
+confrontationism
+confrontationist
+confrontations
+confronte
+confronted
+confronter
+confronters
+confronting
+confrontment
+confronts
+Confucian
+confucian
+Confucianism
+confucianism
+Confucianist
+confucians
+Confucius
+confucius
+confusability
+confusable
+confusably
+confuse
+confused
+confusedly
+confusedness
+confuser
+confusers
+confuses
+confusing
+confusingly
+confusion
+confusional
+confusions
+confusive
+confusticate
+confustication
+confutability
+confutable
+confutation
+confutations
+confutative
+confutator
+confute
+confuted
+confuter
+confuters
+confutes
+confuting
+Cong
+Cong.
+cong
+cong.
+conga
+congaed
+congaing
+congas
+Congdon
+conge
+congeable
+congeal
+congealability
+congealable
+congealableness
+congealed
+congealedness
+congealer
+congealing
+congealment
+congeals
+conged
+congee
+congeed
+congeeing
+congees
+congeing
+congelation
+congelative
+congelifract
+congelifraction
+congeliturbate
+congeliturbation
+congenator
+congener
+congeneracy
+congeneric
+congenerical
+congenerous
+congenerousness
+congeners
+congenetic
+congenial
+congenialities
+congeniality
+congenialize
+congenially
+congenialness
+congenital
+congenitally
+congenitalness
+congenite
+congeon
+Conger
+conger
+congeree
+conger-eel
+congerie
+congeries
+Congers
+congers
+Congerville
+congery
+conges
+congession
+congest
+congested
+congestedness
+congestible
+congesting
+congestion
+congestions
+congestive
+congests
+congestus
+congiaries
+congiary
+congii
+congius
+conglaciate
+conglobate
+conglobated
+conglobately
+conglobating
+conglobation
+conglobe
+conglobed
+conglobes
+conglobing
+conglobulate
+conglomerate
+conglomerated
+conglomerates
+conglomeratic
+conglomerating
+conglomeration
+conglomerations
+conglomerative
+conglomerator
+conglomeritic
+conglutin
+conglutinant
+conglutinate
+conglutinated
+conglutinating
+conglutination
+conglutinative
+conglution
+Congo
+congo
+congoes
+Congoese
+Congolese
+congolese
+Congoleum
+Congonhas
+congoni
+congos
+congou
+congous
+congrats
+congratulable
+congratulant
+congratulate
+congratulated
+congratulates
+congratulating
+congratulation
+congratulational
+congratulations
+congratulator
+congratulatory
+congredient
+congree
+congreet
+congregable
+congreganist
+congregant
+congregants
+congregate
+congregated
+congregates
+congregating
+congregation
+congregational
+Congregationalism
+congregationalism
+Congregationalist
+congregationalist
+congregationalists
+congregationalize
+congregationally
+Congregationer
+congregationist
+congregations
+congregative
+congregativeness
+congregator
+congresional
+Congreso
+Congress
+congress
+congressed
+congresser
+congresses
+congressing
+congressional
+congressionalist
+congressionally
+congressionist
+congressist
+congressive
+Congressman
+congressman
+congressman-at-large
+congressmen
+congressmen-at-large
+Congresso
+congresswoman
+congresswomen
+Congreve
+congreve
+congrid
+Congridae
+congrio
+congroid
+congrue
+congruence
+congruences
+congruencies
+congruency
+congruent
+congruential
+congruently
+congruism
+congruist
+congruistic
+congruities
+congruity
+congruous
+congruously
+congruousness
+congustable
+conhydrin
+conhydrine
+coni
+conia
+Coniacian
+Coniah
+Conias
+conic
+conical
+conicality
+conically
+conicalness
+conical-shaped
+conicein
+coniceine
+conichalcite
+conicine
+conicities
+conicity
+conicle
+conico-
+conico-cylindrical
+conico-elongate
+conico-hemispherical
+conicoid
+conico-ovate
+conico-ovoid
+conicopoly
+conico-subhemispherical
+conico-subulate
+conics
+Conidae
+conidia
+conidial
+conidian
+conidiiferous
+conidioid
+conidiophore
+conidiophorous
+conidiospore
+conidium
+conies
+conifer
+Coniferae
+coniferin
+coniferophyte
+coniferous
+conifers
+conification
+coniform
+coniine
+coniines
+Conilurus
+conima
+conimene
+conin
+conine
+conines
+coning
+coninidia
+conins
+Coniogramme
+coniology
+coniomycetes
+Coniophora
+Coniopterygidae
+Conioselinum
+conioses
+coniosis
+coniospermous
+Coniothyrium
+coniroster
+conirostral
+Conirostres
+conisance
+conite
+Conium
+conium
+coniums
+conj
+conj.
+conject
+conjective
+conjecturable
+conjecturableness
+conjecturably
+conjectural
+conjecturalist
+conjecturality
+conjecturally
+conjecture
+conjectured
+conjecturer
+conjectures
+conjecturing
+conjee
+conjegates
+conjobble
+conjoin
+conjoined
+conjoinedly
+conjoiner
+conjoining
+conjoins
+conjoint
+conjointly
+conjointment
+conjointness
+conjoints
+conjon
+conjubilant
+conjuctiva
+conjugable
+conjugably
+conjugacy
+conjugal
+Conjugales
+conjugality
+conjugally
+conjugant
+conjugata
+Conjugatae
+conjugate
+conjugated
+conjugately
+conjugateness
+conjugates
+conjugating
+conjugation
+conjugational
+conjugationally
+conjugations
+conjugative
+conjugato-
+conjugato-palmate
+conjugato-pinnate
+conjugator
+conjugators
+conjugial
+conjugium
+conjunct
+conjuncted
+conjunction
+conjunctional
+conjunctionally
+conjunction-reduction
+conjunctions
+conjunctiva
+conjunctivae
+conjunctival
+conjunctivas
+conjunctive
+conjunctively
+conjunctiveness
+conjunctives
+conjunctivitis
+conjunctly
+conjuncts
+conjunctur
+conjunctural
+conjuncture
+conjunctures
+conjuration
+conjurations
+conjurator
+conjure
+conjured
+conjurement
+conjurer
+conjurers
+conjurership
+conjures
+conjuring
+conjurison
+conjuror
+conjurors
+conjury
+conk
+conkanee
+conked
+conker
+conkers
+conking
+Conklin
+conks
+conky
+Conlan
+Conlee
+Conlen
+Conley
+conli
+Conlin
+Conlon
+CONN
+Conn
+Conn.
+conn
+connach
+Connacht
+connaisseur
+Connally
+Connaraceae
+connaraceous
+connarite
+Connarus
+connascency
+connascent
+connatal
+connate
+connately
+connateness
+connate-perfoliate
+connation
+connatural
+connaturality
+connaturalize
+connaturally
+connaturalness
+connature
+Connaught
+connaught
+Conneaut
+Conneautville
+connect
+connectable
+connectant
+connected
+connectedly
+connectedness
+connecter
+connecters
+connectibility
+connectible
+connectibly
+Connecticut
+connecticut
+connecting
+connection
+connectional
+connectionism
+connectionless
+connections
+connectival
+connective
+connectively
+connectives
+connectivity
+connector
+connectors
+connects
+conned
+Connee
+Connel
+Connell
+Connelley
+connellite
+Connellsville
+Connelly
+Connemara
+Conner
+conner
+Conners
+conners
+Connersville
+Connerville
+Connett
+connex
+connexes
+connexion
+connexional
+connexionalism
+connexities
+connexity
+connexiva
+connexive
+connexivum
+connexure
+connexus
+Conney
+Conni
+Connie
+connie
+connies
+conning
+conniption
+conniptions
+connivance
+connivances
+connivancy
+connivant
+connivantly
+connive
+connived
+connivence
+connivent
+connivently
+conniver
+connivers
+connivery
+connives
+conniving
+connivingly
+connixation
+Connochaetes
+connoissance
+connoisseur
+connoisseurs
+connoisseurship
+Connolly
+Connor
+Connors
+connotate
+connotation
+connotational
+connotations
+connotative
+connotatively
+connote
+connoted
+connotes
+connoting
+connotive
+connotively
+conns
+connu
+connubial
+connubialism
+connubiality
+connubially
+connubiate
+connubium
+connumerate
+connumeration
+connusable
+Conny
+conny
+conocarp
+Conocarpus
+Conocephalum
+Conocephalus
+conoclinium
+conocuneus
+conodont
+conodonts
+conoid
+conoidal
+conoidally
+conoidic
+conoidical
+conoidically
+conoido-hemispherical
+conoido-rotundate
+conoids
+Conolophus
+co-nominee
+conominee
+Conon
+cononintelligent
+Conopholis
+conopid
+Conopidae
+conoplain
+conopodium
+Conopophaga
+Conopophagidae
+Conor
+Conorhinus
+conormal
+conoscente
+conoscenti
+conoscope
+conoscopic
+conourish
+Conover
+Conowingo
+Conoy
+conphaseolin
+conplane
+conquassate
+conquedle
+conquer
+conquerable
+conquerableness
+conquered
+conquerer
+conquerers
+conqueress
+conquering
+conqueringly
+conquerment
+Conqueror
+conqueror
+conquerors
+conquers
+Conquest
+conquest
+conquests
+conquian
+conquians
+conquinamine
+conquinine
+conquisition
+conquistador
+conquistadores
+conquistadors
+Conrad
+Conrade
+Conrado
+Conrail
+conrail
+Conral
+Conran
+Conrath
+conrector
+conrectorship
+conred
+conrey
+Conringia
+Conroe
+Conroy
+CONS
+Cons
+Cons.
+cons
+cons.
+consacre
+Consalve
+consanguine
+consanguineal
+consanguinean
+consanguineous
+consanguineously
+consanguinities
+consanguinity
+consarcinate
+consarn
+consarned
+conscience
+conscienceless
+consciencelessly
+consciencelessness
+conscience-proof
+consciences
+conscience-smitten
+conscience-stricken
+conscience-striken
+consciencewise
+conscient
+conscientious
+conscientiously
+conscientiousness
+conscionable
+conscionableness
+conscionably
+conscious
+consciously
+consciousness
+consciousnesses
+consciousness-expanding
+consciousness-expansion
+conscive
+conscribe
+conscribed
+conscribing
+conscript
+conscripted
+conscripting
+conscription
+conscriptional
+conscriptionist
+conscriptions
+conscriptive
+conscripts
+conscripttion
+consderations
+consecrate
+consecrated
+consecratedness
+consecrater
+consecrates
+consecrating
+Consecration
+consecration
+consecrations
+consecrative
+consecrator
+consecratory
+consectary
+consecute
+consecution
+consecutive
+consecutively
+consecutiveness
+consecutives
+consence
+consenescence
+consenescency
+consension
+consensual
+consensually
+consensus
+consensuses
+consent
+consentable
+consentaneity
+consentaneous
+consentaneously
+consentaneousness
+consentant
+consented
+consenter
+consenters
+consentful
+consentfully
+consentience
+consentient
+consentiently
+consenting
+consentingly
+consentingness
+consentive
+consentively
+consentment
+consents
+consequence
+consequences
+consequency
+consequent
+consequential
+consequentialities
+consequentiality
+consequentially
+consequentialness
+consequently
+consequents
+consertal
+consertion
+conservable
+conservacy
+conservancies
+conservancy
+conservant
+conservate
+conservation
+conservational
+conservationism
+conservationist
+conservationists
+conservations
+Conservatism
+conservatism
+conservatisms
+conservatist
+Conservative
+conservative
+conservatively
+conservativeness
+conservatives
+conservatize
+conservatoire
+conservatoires
+conservator
+conservatorial
+conservatories
+conservatorio
+conservatorium
+conservators
+conservatorship
+conservatory
+conservatrix
+conserve
+conserved
+conserver
+conservers
+conserves
+conserving
+Consett
+Conshohocken
+consider
+considerability
+considerable
+considerableness
+considerably
+considerance
+considerate
+considerately
+considerateness
+consideratenesses
+consideration
+considerations
+considerative
+consideratively
+considerativeness
+considerator
+considered
+considerer
+considering
+consideringly
+considers
+consign
+consignable
+consignataries
+consignatary
+consignation
+consignatory
+consigne
+consigned
+consignee
+consignees
+consigneeship
+consigner
+consignificant
+consignificate
+consignification
+consignificative
+consignificator
+consignified
+consignify
+consignifying
+consigning
+consignment
+consignments
+consignor
+consignors
+consigns
+consiliary
+consilience
+consilient
+consimilar
+consimilarity
+consimilate
+consimilated
+consimilating
+consimile
+consisently
+consist
+consisted
+consistence
+consistences
+consistencies
+consistency
+consistent
+consistently
+consistible
+consisting
+consistorial
+consistorian
+consistories
+consistory
+consists
+consition
+consitutional
+consociate
+consociated
+consociating
+consociation
+consociational
+consociationism
+consociative
+consocies
+consol
+consolable
+consolableness
+consolably
+Consolamentum
+consolan
+Consolata
+consolate
+consolation
+consolations
+Consolato
+consolator
+consolatorily
+consolatoriness
+consolatory
+consolatrix
+console
+consoled
+consolement
+consoler
+consolers
+consoles
+consolette
+consolidant
+consolidate
+consolidated
+consolidates
+consolidating
+consolidation
+consolidationist
+consolidations
+consolidative
+consolidator
+consolidators
+consoling
+consolingly
+consolitorily
+consolitoriness
+consols
+consolute
+consomm
+consomme
+consommes
+consonance
+consonances
+consonancy
+consonant
+consonantal
+consonantalize
+consonantalized
+consonantalizing
+consonantally
+consonantic
+consonantise
+consonantised
+consonantising
+consonantism
+consonantize
+consonantized
+consonantizing
+consonantly
+consonantness
+consonants
+consonate
+consonous
+consopite
+consort
+consortable
+consorted
+consorter
+consortia
+consortial
+consorting
+consortion
+consortism
+consortitia
+consortium
+consortiums
+consorts
+consortship
+consoude
+consound
+conspecies
+conspecific
+conspecifics
+conspect
+conspection
+conspectuity
+conspectus
+conspectuses
+consperg
+consperse
+conspersion
+conspicuity
+conspicuous
+conspicuously
+conspicuousness
+conspiracies
+conspiracy
+conspirant
+conspiration
+conspirational
+conspirative
+conspirator
+conspiratorial
+conspiratorially
+conspirators
+conspiratory
+conspiratress
+conspire
+conspired
+conspirer
+conspirers
+conspires
+conspiring
+conspiringly
+conspissate
+conspue
+conspurcate
+Const
+const
+Constable
+constable
+constablery
+constables
+constableship
+constabless
+Constableville
+constablewick
+constabular
+constabularies
+constabulary
+Constance
+constance
+constances
+Constancia
+constancies
+Constancy
+constancy
+Constant
+constant
+Constanta
+constantan
+Constantia
+Constantin
+Constantina
+Constantine
+Constantinian
+constantinian
+Constantino
+Constantinople
+constantinople
+Constantinopolitan
+constantinopolitan
+constantly
+constantness
+constants
+constat
+constatation
+constatations
+constate
+constative
+constatory
+constellate
+constellated
+constellating
+constellation
+constellations
+constellatory
+conster
+consternate
+consternated
+consternating
+consternation
+consternations
+constipate
+constipated
+constipates
+constipating
+constipation
+constipations
+constituencies
+constituency
+constituent
+constituently
+constituents
+constitute
+constituted
+constituter
+constitutes
+constituting
+constitution
+constitutional
+constitutionalism
+constitutionalist
+constitutionality
+constitutionalization
+constitutionalize
+constitutionally
+constitutionals
+constitutionary
+constitutioner
+constitutionist
+constitutionless
+constitutions
+constitutive
+constitutively
+constitutiveness
+constitutor
+constr
+constr.
+constrain
+constrainable
+constrained
+constrainedly
+constrainedness
+constrainer
+constrainers
+constraining
+constrainingly
+constrainment
+constrains
+constraint
+constraints
+constrict
+constricted
+constricting
+constriction
+constrictions
+constrictive
+constrictor
+constrictors
+constricts
+constringe
+constringed
+constringency
+constringent
+constringing
+construability
+construable
+construal
+construct
+constructable
+constructed
+constructer
+constructibility
+constructible
+constructing
+construction
+constructional
+constructionally
+constructionism
+constructionist
+constructionists
+constructions
+constructive
+constructively
+constructiveness
+Constructivism
+constructivism
+Constructivist
+constructivist
+constructor
+constructors
+constructorship
+constructs
+constructure
+construe
+construed
+construer
+construers
+construes
+construing
+constuctor
+constuprate
+constupration
+consubsist
+consubsistency
+consubstantial
+consubstantialism
+consubstantialist
+consubstantiality
+consubstantially
+consubstantiate
+consubstantiated
+consubstantiating
+consubstantiation
+consubstantiationist
+consubstantive
+Consuela
+Consuelo
+consuete
+consuetitude
+consuetude
+consuetudinal
+consuetudinary
+consul
+consulage
+consular
+consularity
+consulary
+consulate
+consulated
+consulates
+consulating
+consuls
+consulship
+consulships
+consult
+consulta
+consultable
+consultancy
+consultant
+consultants
+consultantship
+consultary
+consultation
+consultations
+consultative
+consultatively
+consultatory
+consulted
+consultee
+consulter
+consulting
+consultive
+consultively
+consulto
+consultor
+consultory
+consults
+consumable
+consumables
+consumate
+consumated
+consumating
+consumation
+consume
+consumed
+consumedly
+consumeless
+consumer
+consumerism
+consumerist
+consumers
+consumership
+consumes
+consuming
+consumingly
+consumingness
+consummate
+consummated
+consummately
+consummates
+consummating
+consummation
+consummations
+consummative
+consummatively
+consummativeness
+consummator
+consummatory
+consumo
+consumpt
+consumpted
+consumptible
+consumption
+consumptional
+consumptions
+consumptive
+consumptively
+consumptiveness
+consumptives
+consumptivity
+Consus
+consute
+consy
+Cont
+cont
+cont.
+contabescence
+contabescent
+CONTAC
+contact
+contactant
+contacted
+contactile
+contacting
+contaction
+contactor
+contacts
+contactual
+contactually
+contadino
+contaggia
+contagia
+contagion
+contagioned
+contagionist
+contagions
+contagiosity
+contagious
+contagiously
+contagiousness
+contagium
+contain
+containable
+contained
+containedly
+container
+containerboard
+containerization
+containerize
+containerized
+containerizes
+containerizing
+containerport
+containers
+containership
+containerships
+containing
+containment
+containments
+contains
+contakia
+contakion
+contakionkia
+contam
+contaminable
+contaminant
+contaminants
+contaminate
+contaminated
+contaminates
+contaminating
+contamination
+contaminations
+contaminative
+contaminator
+contaminous
+contangential
+contango
+contangoes
+contangos
+contchar
+contd
+contd.
+Conte
+conte
+conteck
+conte-crayon
+contect
+contection
+contek
+conteke
+contemn
+contemned
+contemner
+contemnible
+contemnibly
+contemning
+contemningly
+contemnor
+contemns
+contemp
+contemp.
+contemper
+contemperate
+contemperature
+contemplable
+contemplamen
+contemplance
+contemplant
+contemplate
+contemplated
+contemplatedly
+contemplates
+contemplating
+contemplatingly
+contemplation
+contemplations
+contemplatist
+contemplative
+contemplatively
+contemplativeness
+contemplator
+contemplators
+contemplature
+contemple
+contemporanean
+contemporaneity
+contemporaneous
+contemporaneously
+contemporaneousness
+contemporaries
+contemporarily
+contemporariness
+contemporary
+contemporise
+contemporised
+contemporising
+contemporize
+contemporized
+contemporizing
+contempt
+contemptful
+contemptibility
+contemptible
+contemptibleness
+contemptibly
+contempts
+contemptuous
+contemptuously
+contemptuousness
+contend
+contended
+contendent
+contender
+contendere
+contenders
+contending
+contendingly
+contendress
+contends
+contenement
+content
+contentable
+contentation
+contented
+contentedly
+contentedness
+contentednesses
+contentful
+contenting
+contention
+contentional
+contentions
+contentious
+contentiously
+contentiousness
+contentless
+contently
+contentment
+contentments
+contentness
+contents
+contenu
+conter
+conterminable
+conterminal
+conterminant
+conterminate
+contermine
+conterminous
+conterminously
+conterminousness
+conterraneous
+contes
+contessa
+contesseration
+contest
+contestability
+contestable
+contestableness
+contestably
+contestant
+contestants
+contestate
+contestation
+contested
+contestee
+contester
+contesters
+contesting
+contestingly
+contestless
+contests
+conteur
+contex
+context
+contextive
+contexts
+contextual
+contextualize
+contextually
+contextural
+contexture
+contextured
+contg
+Conti
+conticent
+contignate
+contignation
+contiguate
+contiguities
+contiguity
+contiguous
+contiguously
+contiguousness
+contin
+continence
+continences
+continency
+Continent
+continent
+Continental
+continental
+Continentaler
+continentalism
+continentalist
+continentality
+Continentalize
+continentally
+continentals
+continently
+continents
+continent-wide
+contineu
+contingence
+contingencies
+contingency
+contingent
+contingential
+contingentialness
+contingentiam
+contingently
+contingentness
+contingents
+continua
+continuable
+continual
+continuality
+continually
+continualness
+continuance
+continuances
+continuancy
+continuando
+continuant
+continuantly
+continuate
+continuately
+continuateness
+continuation
+continuations
+continuative
+continuatively
+continuativeness
+continuator
+continue
+continued
+continuedly
+continuedness
+continuer
+continuers
+continues
+continuing
+continuingly
+continuist
+continuities
+continuity
+continuo
+continuos
+continuous
+continuousities
+continuousity
+continuously
+continuousness
+continuua
+continuum
+continuums
+contise
+cont-line
+contline
+conto
+contoid
+contoise
+Contoocook
+contorniate
+contorniates
+contorno
+contorsion
+contorsive
+contort
+contorta
+Contortae
+contorted
+contortedly
+contortedness
+contorting
+contortion
+contortional
+contortionate
+contortioned
+contortionist
+contortionistic
+contortionists
+contortions
+contortive
+contortively
+contorts
+contortuplicate
+contos
+contour
+contoured
+contouring
+contourne
+contours
+contr
+contr.
+contra
+contra-
+contra-acting
+contra-approach
+contraband
+contrabandage
+contrabandery
+contrabandism
+contrabandist
+contrabandista
+contrabands
+contrabass
+contrabassist
+contrabasso
+contrabassoon
+contrabassoonist
+contracapitalist
+contraception
+contraceptionist
+contraceptions
+contraceptive
+contraceptives
+contracivil
+contraclockwise
+contract
+contractable
+contractant
+contractation
+contracted
+contractedly
+contractedness
+contractee
+contracter
+contractibility
+contractible
+contractibleness
+contractibly
+contractile
+contractility
+contracting
+contraction
+contractional
+contractionist
+contractions
+contractive
+contractively
+contractiveness
+contractly
+contractor
+contractors
+contracts
+contractu
+contractual
+contractually
+contracture
+contractured
+contractus
+contracyclical
+contrada
+contra-dance
+contradance
+contrade
+contradebt
+contradict
+contradictable
+contradicted
+contradictedness
+contradicter
+contradicting
+contradiction
+contradictional
+contradictions
+contradictious
+contradictiously
+contradictiousness
+contradictive
+contradictively
+contradictiveness
+contradictor
+contradictories
+contradictorily
+contradictoriness
+contradictory
+contradicts
+contradiscriminate
+contradistinct
+contradistinction
+contradistinctions
+contradistinctive
+contradistinctively
+contradistinctly
+contradistinguish
+contradivide
+contrafacture
+contrafagotto
+contrafissura
+contrafissure
+contraflexure
+contraflow
+contrafocal
+contragredience
+contragredient
+contrahent
+contrail
+contrails
+contra-indicant
+contraindicant
+contra-indicate
+contraindicate
+contraindicated
+contraindicates
+contraindicating
+contra-indication
+contraindication
+contraindications
+contraindicative
+contra-ion
+contrair
+contraire
+contralateral
+contra-lode
+contralti
+contralto
+contraltos
+contramarque
+contramure
+contranatural
+contrantiscion
+contraoctave
+contraorbital
+contraorbitally
+contraparallelogram
+contrapletal
+contraplete
+contraplex
+contrapolarization
+contrapone
+contraponend
+Contraposaune
+contrapose
+contraposed
+contraposing
+contraposit
+contraposita
+contraposition
+contrapositive
+contrapositives
+contrapposto
+contrappostos
+contraprogressist
+contraprop
+contraproposal
+contraprops
+contraprovectant
+contraption
+contraptions
+contraptious
+contrapuntal
+contrapuntalist
+contrapuntally
+contrapuntist
+contrapunto
+contrarational
+contraregular
+contraregularity
+contra-related
+contraremonstrance
+contra-remonstrant
+contraremonstrant
+contrarevolutionary
+contrariant
+contrariantly
+contraries
+contrarieties
+contrariety
+contrarily
+contrariness
+contrarious
+contrariously
+contrariousness
+contrariwise
+contra-rotation
+contrarotation
+contrary
+contrary-minded
+contras
+contrascriptural
+contrast
+contrastable
+contrastably
+contraste
+contrasted
+contrastedly
+contraster
+contrasters
+contrastimulant
+contrastimulation
+contrastimulus
+contrasting
+contrastingly
+contrastive
+contrastively
+contrastiveness
+contrastment
+contrasts
+contrasty
+contrasuggestible
+contratabular
+contrate
+contratempo
+contratenor
+contratulations
+contravalence
+contravallation
+contravariant
+contravene
+contravened
+contravener
+contravenes
+contravening
+contravention
+contraversion
+contravindicate
+contravindication
+contrawise
+contrayerva
+contre-
+contrecoup
+contrectation
+contre-dance
+contredanse
+contredanses
+contreface
+contrefort
+contre-partie
+contrepartie
+contretemps
+contrib
+contrib.
+contributable
+contributary
+contribute
+contributed
+contributes
+contributing
+contribution
+contributional
+contributions
+contributive
+contributively
+contributiveness
+contributor
+contributorial
+contributories
+contributorily
+contributors
+contributorship
+contributory
+contrist
+contrite
+contritely
+contriteness
+contrition
+contritions
+contriturate
+contrivable
+contrivance
+contrivances
+contrivancy
+contrive
+contrived
+contrivedly
+contrivement
+contriver
+contrivers
+contrives
+contriving
+control
+controled
+controling
+controllability
+controllable
+controllableness
+controllable-pitch
+controllably
+controlled
+controller
+controllers
+controllership
+controlless
+controlling
+controllingly
+controlment
+controls
+controversal
+controverse
+controversed
+controversial
+controversialism
+controversialist
+controversialists
+controversialize
+controversially
+controversies
+controversion
+controversional
+controversionalism
+controversionalist
+controversy
+controvert
+controverted
+controverter
+controvertibility
+controvertible
+controvertibly
+controverting
+controvertist
+controverts
+contrude
+conttinua
+contubernal
+contubernial
+contubernium
+contumaceous
+contumacies
+contumacious
+contumaciously
+contumaciousness
+contumacities
+contumacity
+contumacy
+contumax
+contumelies
+contumelious
+contumeliously
+contumeliousness
+contumely
+contund
+contune
+conturb
+conturbation
+contuse
+contused
+contuses
+contusing
+contusion
+contusioned
+contusions
+contusive
+conubium
+Conularia
+conule
+conumerary
+conumerous
+conundrum
+conundrumize
+conundrums
+conurbation
+conurbations
+conure
+Conuropsis
+Conurus
+CONUS
+conus
+conusable
+conusance
+conusant
+conusee
+conuses
+conusor
+conutrition
+conuzee
+conuzor
+conv
+Convair
+convalesce
+convalesced
+convalescence
+convalescences
+convalescency
+convalescent
+convalescently
+convalescents
+convalesces
+convalescing
+convallamarin
+Convallaria
+Convallariaceae
+convallariaceous
+convallarin
+convally
+convect
+convected
+convecting
+convection
+convectional
+convections
+convective
+convectively
+convector
+convects
+convell
+convenable
+convenably
+convenance
+convenances
+convene
+convened
+convenee
+convener
+conveneries
+conveners
+convenership
+convenery
+convenes
+convenience
+convenienced
+conveniences
+conveniencies
+conveniency
+conveniens
+convenient
+conveniently
+convenientness
+convening
+convenor
+convent
+convented
+conventical
+conventically
+conventicle
+conventicler
+conventicles
+conventicular
+conventing
+convention
+conventional
+conventionalisation
+conventionalise
+conventionalised
+conventionalising
+conventionalism
+conventionalist
+conventionalities
+conventionality
+conventionalization
+conventionalize
+conventionalized
+conventionalizes
+conventionalizing
+conventionally
+conventionary
+conventioneer
+conventioneers
+conventioner
+conventionism
+conventionist
+conventionize
+conventions
+convento
+convents
+Conventual
+conventual
+conventually
+converge
+converged
+convergement
+convergence
+convergences
+convergencies
+convergency
+convergent
+convergently
+converges
+convergescence
+converginerved
+converging
+conversable
+conversableness
+conversably
+conversance
+conversancy
+conversant
+conversantly
+conversation
+conversationable
+conversational
+conversationalism
+conversationalist
+conversationalists
+conversationally
+conversationism
+conversationist
+conversationize
+conversations
+conversative
+conversazione
+conversaziones
+conversazioni
+Converse
+converse
+conversed
+conversely
+converser
+converses
+conversi
+conversibility
+conversible
+conversing
+conversion
+conversional
+conversionary
+conversionism
+conversionist
+conversions
+conversive
+converso
+conversus
+conversusi
+convert
+convertable
+convertaplane
+converted
+convertend
+converter
+converters
+convertibility
+convertible
+convertibleness
+convertibles
+convertibly
+converting
+convertingness
+convertiplane
+convertise
+convertism
+convertite
+convertive
+convertoplane
+convertor
+convertors
+converts
+Convery
+conveth
+convex
+convex-concave
+convexed
+convexedly
+convexedness
+convexes
+convexities
+convexity
+convexly
+convexness
+convexo
+convexo-
+convexo-concave
+convexoconcave
+convexo-convex
+convexo-plane
+convey
+conveyability
+conveyable
+conveyal
+conveyance
+conveyancer
+conveyances
+conveyancing
+conveyed
+conveyer
+conveyers
+conveying
+conveyor
+conveyorization
+conveyorize
+conveyorized
+conveyorizer
+conveyorizing
+conveyors
+conveys
+conviciate
+convicinity
+convict
+convictable
+convicted
+convictfish
+convictfishes
+convictible
+convicting
+conviction
+convictional
+convictions
+convictism
+convictive
+convictively
+convictiveness
+convictment
+convictor
+convicts
+convince
+convinced
+convincedly
+convincedness
+convincement
+convincer
+convincers
+convinces
+convincibility
+convincible
+convincing
+convincingly
+convincingness
+convite
+convito
+convival
+convive
+convives
+convivial
+convivialist
+convivialities
+conviviality
+convivialize
+convivially
+convivio
+convocant
+convocate
+convocated
+convocating
+convocation
+convocational
+convocationally
+convocationist
+convocations
+convocative
+convocator
+convoke
+convoked
+convoker
+convokers
+convokes
+convoking
+Convoluta
+convolute
+convoluted
+convolutedly
+convolutedness
+convolutely
+convoluting
+convolution
+convolutional
+convolutionary
+convolutions
+convolutive
+convolve
+convolved
+convolvement
+convolves
+convolving
+Convolvulaceae
+convolvulaceous
+convolvulad
+convolvuli
+convolvulic
+convolvulin
+convolvulinic
+convolvulinolic
+Convolvulus
+convolvulus
+convolvuluses
+convoy
+convoyed
+convoying
+convoys
+convulsant
+convulse
+convulsed
+convulsedly
+convulses
+convulsibility
+convulsible
+convulsing
+convulsion
+convulsional
+convulsionaries
+convulsionary
+convulsionism
+convulsionist
+convulsions
+convulsive
+convulsively
+convulsiveness
+Conway
+Cony
+cony
+cony-catch
+conycatcher
+Conyers
+conyger
+conylene
+conynge
+Conyngham
+conyrin
+conyrine
+conyza
+COO
+Coo
+coo
+cooba
+coobah
+co-obligant
+co-oblige
+co-obligor
+cooboo
+cooboos
+co-occupant
+co-occupy
+co-occurrence
+cooch
+cooches
+coo-coo
+coocoo
+coodle
+Cooe
+cooed
+cooee
+cooeed
+cooeeing
+cooees
+cooer
+cooers
+cooey
+cooeyed
+cooeying
+cooeys
+coof
+coofs
+cooghneiorvlt
+Coohee
+cooing
+cooingly
+cooja
+Cook
+cook
+cookable
+cookbook
+cookbooks
+cookdom
+Cooke
+cooked
+cooked-up
+cookee
+cookeite
+cooker
+cookeries
+cookers
+cookery
+Cookeville
+cookey
+cookeys
+cook-general
+cookhouse
+cookhouses
+Cookie
+cookie
+cookies
+cooking
+cooking-range
+cookings
+cookish
+cookishly
+cookless
+cookmaid
+cook-out
+cookout
+cookouts
+cookroom
+Cooks
+cooks
+Cooksburg
+cooks-general
+cookshack
+cookshop
+cookshops
+Cookson
+cookstove
+Cookstown
+Cooksville
+Cookville
+cookware
+cookwares
+Cooky
+cooky
+cool
+coolabah
+coolaman
+coolamon
+coolant
+coolants
+cooled
+Cooleemee
+coolen
+cooler
+coolerman
+coolers
+coolest
+Cooley
+cooley
+cool-headed
+coolheaded
+cool-headedly
+coolheadedly
+cool-headedness
+coolheadedness
+coolhouse
+coolibah
+Coolidge
+coolidge
+coolie
+coolies
+cooliman
+Coolin
+cooling
+cooling-card
+coolingly
+coolingness
+cooling-off
+coolish
+coolly
+coolness
+coolnesses
+cools
+coolth
+coolths
+coolung
+Coolville
+coolweed
+coolwort
+cooly
+coom
+coomb
+coombe
+coombes
+Coombs
+coombs
+coom-ceiled
+co-omnipotent
+co-omniscient
+coomy
+coon
+Coonan
+cooncan
+cooncans
+cooner
+coonhound
+coonhounds
+coonier
+cooniest
+coonily
+cooniness
+coonjine
+coonroot
+coons
+coonskin
+coonskins
+coontah
+coontail
+coontie
+coonties
+coony
+Coop
+co-op
+coop
+coop.
+cooped
+cooped-in
+coopee
+Cooper
+cooper
+co-operable
+cooperage
+co-operancy
+cooperancy
+co-operant
+cooperant
+co-operate
+cooperate
+cooperated
+cooperates
+cooperating
+cooperatingly
+co-operation
+cooperation
+co-operationist
+cooperationist
+cooperations
+co-operative
+cooperative
+co-operatively
+cooperatively
+co-operativeness
+cooperativeness
+cooperatives
+co-operator
+cooperator
+cooperators
+co-operculum
+coopered
+Cooperia
+cooperies
+coopering
+cooperite
+Cooperman
+coopers
+Coopersburg
+Coopersmith
+Cooperstein
+Cooperstown
+Coopersville
+cooper's-wood
+coopery
+cooping
+coops
+co-opt
+coopt
+co-optate
+cooptate
+co-optation
+cooptation
+co-optative
+cooptative
+coopted
+coopting
+co-option
+cooption
+cooptions
+co-optive
+cooptive
+coopts
+co-ordain
+coordain
+co-ordainer
+co-order
+co-ordinacy
+co-ordinal
+coordinal
+co-ordinance
+co-ordinancy
+co-ordinate
+coordinate
+coordinated
+co-ordinately
+coordinately
+co-ordinateness
+coordinateness
+coordinates
+coordinating
+co-ordination
+coordination
+coordinations
+co-ordinative
+coordinative
+co-ordinator
+coordinator
+coordinators
+co-ordinatory
+coordinatory
+cooree
+Coorg
+co-organize
+coorie
+cooried
+coorieing
+coories
+co-origin
+co-original
+co-originality
+Coors
+co-orthogonal
+co-orthotomic
+cooruptibly
+Coos
+coos
+Coosa
+Coosada
+cooser
+coosers
+coosify
+co-ossification
+co-ossify
+coost
+Coosuc
+coot
+cootch
+Cooter
+cooter
+cootfoot
+coot-footed
+cooth
+coothay
+cootie
+cooties
+coots
+cooty
+co-owner
+co-ownership
+COP
+Cop
+cop
+copa
+copable
+copacetic
+copaene
+copaiba
+copaibas
+copaibic
+Copaifera
+copain
+Copaiva
+copaiva
+copaivic
+copaiye
+Copake
+copal
+copalche
+copalchi
+copalcocote
+copaliferous
+copaline
+copalite
+copaljocote
+copalm
+copalms
+copals
+Copan
+coparallel
+coparcenar
+coparcenary
+coparcener
+coparceny
+coparenary
+coparent
+coparents
+copart
+copartaker
+copartiment
+copartner
+copartners
+copartnership
+copartnerships
+copartnery
+coparty
+copasetic
+copassionate
+copastor
+copastorate
+copastors
+copatain
+copataine
+copatentee
+co-patriot
+copatriot
+copatron
+copatroness
+copatrons
+Cope
+cope
+copeck
+copecks
+coped
+Copehan
+copei
+copeia
+Copeland
+Copelata
+Copelatae
+copelate
+copelidine
+copellidine
+copeman
+copemate
+copemates
+Copemish
+copen
+copending
+copenetrate
+Copenhagen
+copenhagen
+copens
+Copeognatha
+copepod
+Copepoda
+copepodan
+copepodous
+copepods
+coper
+coperception
+coperiodic
+Copernican
+copernican
+Copernicanism
+copernicans
+Copernicia
+Copernicus
+copernicus
+coperose
+copers
+coperta
+copes
+copesetic
+copesettic
+copesman
+copesmate
+cope-stone
+copestone
+copetitioner
+Copeville
+cophasal
+Cophetua
+cophosis
+cophouse
+Copht
+copia
+copiability
+copiable
+Copiague
+copiapite
+Copiapo
+copied
+copier
+copiers
+copies
+copihue
+copihues
+copilot
+copilots
+coping
+copings
+copingstone
+copintank
+copiopia
+copiopsia
+copiosity
+copious
+copiously
+copiousness
+copiousnesses
+copis
+copist
+copita
+coplaintiff
+coplanar
+coplanarities
+coplanarity
+coplanation
+Copland
+Coplay
+copleased
+Copley
+Coplin
+coplot
+coplots
+coplotted
+coplotter
+coplotting
+coploughing
+coplowing
+copolar
+copolymer
+copolymeric
+copolymerism
+copolymerization
+copolymerizations
+copolymerize
+copolymerized
+copolymerizing
+copolymerous
+copolymers
+copopoda
+copopsia
+coportion
+cop-out
+copout
+copouts
+Copp
+coppa
+coppaelite
+Coppard
+coppas
+copped
+Coppelia
+Coppell
+copper
+copperah
+copperahs
+copper-alloyed
+copperas
+copperases
+copper-bearing
+copper-bellied
+copper-belly
+copperbottom
+copper-bottomed
+copper-coated
+copper-colored
+copper-covered
+coppered
+copperer
+copper-faced
+copper-fastened
+Copperfield
+copperhead
+copper-headed
+Copperheadism
+copperheadism
+copperheads
+coppering
+copperish
+copperization
+copperize
+copper-leaf
+copperleaf
+copper-leaves
+copper-lined
+copper-melting
+Coppermine
+coppernose
+coppernosed
+Copperopolis
+copper-plate
+copperplate
+copperplated
+copperproof
+copper-red
+coppers
+coppersidesman
+copperskin
+copper-skinned
+copper-smelting
+copper-smith
+coppersmith
+coppersmithing
+copper-toed
+copperware
+copperwing
+copperworks
+copper-worm
+coppery
+coppery-tailed
+copperytailed
+coppet
+coppice
+coppiced
+coppice-feathered
+coppices
+coppice-topped
+coppicing
+coppin
+copping
+Coppinger
+Coppins
+copple
+copple-crown
+copplecrown
+copple-crowned
+coppled
+copple-stone
+coppling
+Coppock
+Coppola
+coppra
+coppras
+copps
+coppy
+copr
+copr-
+copra
+copraemia
+copraemic
+coprah
+coprahs
+copras
+coprecipitate
+coprecipitated
+coprecipitating
+coprecipitation
+copremia
+copremias
+copremic
+copresbyter
+co-presence
+copresence
+copresent
+copresident
+copresidents
+Copreus
+Coprides
+Coprinae
+coprince
+coprincipal
+coprincipals
+coprincipate
+Coprinus
+coprinus
+coprisoner
+coprisoners
+copro-
+coprocessing
+coprocessor
+coprocessors
+coprodaeum
+coproduce
+coproduced
+coproducer
+coproducers
+coproduces
+coproducing
+coproduct
+coproduction
+coproductions
+coproite
+coprojector
+coprolagnia
+coprolagnist
+coprolalia
+coprolaliac
+coprolite
+coprolith
+coprolitic
+coprology
+copromisor
+copromote
+copromoted
+copromoter
+copromoters
+copromotes
+copromoting
+coprophagan
+coprophagia
+coprophagist
+coprophagous
+coprophagy
+coprophilia
+coprophiliac
+coprophilic
+coprophilism
+coprophilous
+coprophobia
+coprophobic
+coprophyte
+coproprietor
+coproprietors
+coproprietorship
+coproprietorships
+cop-rose
+coprose
+Coprosma
+coprosma
+coprostanol
+coprostasia
+coprostasis
+coprostasophobia
+coprosterol
+coprozoic
+COPS
+cops
+copse
+copse-clad
+copse-covered
+copses
+copsewood
+copsewooded
+copsing
+copsole
+copsy
+Copt
+copt
+copter
+copters
+Coptic
+coptic
+coptine
+Coptis
+copublish
+copublished
+copublisher
+copublishers
+copublishes
+copublishing
+copula
+copulable
+copulae
+copular
+copularium
+copulas
+copulate
+copulated
+copulates
+copulating
+copulation
+copulations
+copulative
+copulatively
+copulatives
+copulatory
+copunctal
+copurchaser
+copurify
+copus
+copy
+copybook
+copybooks
+copyboy
+copyboys
+copycat
+copycats
+copycatted
+copycatting
+copycutter
+copydesk
+copydesks
+copy-edit
+copyedit
+copyfitter
+copyfitting
+copygraph
+copygraphed
+copyhold
+copyholder
+copyholders
+copyholding
+copyholds
+copying
+copyism
+copyist
+copyists
+copyman
+copyread
+copyreader
+copyreaders
+copyreading
+copyright
+copyrightable
+copyrighted
+copyrighter
+copyrighting
+copyrights
+copywise
+copywriter
+copywriters
+copywriting
+COQ
+coque
+coquecigrue
+coquelicot
+Coquelin
+coqueluche
+coquet
+coquetoon
+coquetries
+coquetry
+coquets
+coquette
+coquetted
+coquettes
+coquetting
+coquettish
+coquettishly
+coquettishness
+coquicken
+Coquilhatville
+coquilla
+coquillage
+Coquille
+coquille
+coquilles
+coquimbite
+Coquimbo
+coquin
+coquina
+coquinas
+coquita
+Coquitlam
+coquito
+coquitos
+Cor
+Cor.
+cor
+cor-
+cor.
+Cora
+cora
+Corabeca
+Corabecan
+Corabel
+Corabella
+Corabelle
+corach
+Coraciae
+coracial
+Coracias
+Coracii
+Coraciidae
+coraciiform
+Coraciiformes
+coracine
+coracle
+coracler
+coracles
+coraco-
+coracoacromial
+coracobrachial
+coracobrachialis
+coracoclavicular
+coracocostal
+coracohumeral
+coracohyoid
+coracoid
+coracoidal
+coracoids
+coracomandibular
+coracomorph
+Coracomorphae
+coracomorphic
+coracopectoral
+coracoprocoracoid
+coracoradialis
+coracoscapular
+coracosteon
+coracovertebral
+coradical
+co-radicate
+coradicate
+corage
+coraggio
+coragio
+corah
+coraise
+coraji
+Coral
+coral
+coral-beaded
+coralbells
+coralberries
+coralberry
+coral-bound
+coral-built
+coralbush
+coral-buttoned
+coral-colored
+coraled
+coralene
+coral-fishing
+coralflower
+coral-girt
+Coralie
+Coraline
+coralist
+coralita
+coralla
+corallet
+Corallian
+corallic
+Corallidae
+corallidomous
+coralliferous
+coralliform
+Coralligena
+coralligenous
+coralligerous
+corallike
+corallin
+Corallina
+Corallinaceae
+corallinaceous
+coralline
+corallita
+corallite
+Corallium
+coralloid
+coralloidal
+Corallorhiza
+corallum
+Corallus
+coral-making
+coral-plant
+coral-producing
+coral-red
+coralroot
+coral-rooted
+corals
+coral-secreting
+coral-snake
+coral-tree
+Coralville
+coral-wood
+coralwort
+Coralye
+Coralyn
+Coram
+coram
+Corambis
+Coramine
+coran
+corance
+coranoch
+Corantijn
+coranto
+corantoes
+corantos
+Coraopolis
+Corapeake
+coraveca
+Coray
+corban
+corbans
+corbe
+corbeau
+corbed
+Corbeil
+corbeil
+corbeille
+corbeilles
+corbeils
+corbel
+corbeled
+corbeling
+corbelled
+corbelling
+corbels
+Corbet
+corbet
+Corbett
+Corbettsville
+corbicula
+corbiculae
+corbiculate
+corbiculum
+Corbie
+corbie
+corbies
+corbie-step
+corbiestep
+Corbin
+corbina
+corbinas
+corbleu
+corblimey
+corblimy
+corbovinum
+corbula
+Corbusier
+Corby
+corby
+corcass
+corchat
+Corchorus
+corchorus
+corcir
+corcle
+corcopali
+Corcoran
+Corcovado
+Corcyra
+Corcyraean
+Cord
+cord
+cordage
+cordages
+Cordaitaceae
+cordaitaceous
+cordaitalean
+Cordaitales
+cordaitean
+Cordaites
+cordal
+Cordalia
+cordant
+cordate
+cordate-amplexicaul
+cordate-lanceolate
+cordately
+cordate-oblong
+cordate-sagittate
+cordax
+Corday
+Cordeau
+corded
+Cordeelia
+cordel
+Cordele
+Cordelia
+Cordelie
+Cordelier
+cordelier
+cordeliere
+Cordeliers
+Cordell
+cordelle
+cordelled
+cordelling
+Corder
+corder
+corders
+Cordery
+Cordesville
+cordewane
+Cordey
+Cordi
+Cordia
+cordia
+cordial
+cordialities
+cordiality
+cordialize
+cordially
+cordialness
+cordials
+cordiceps
+cordicole
+Cordie
+Cordier
+cordierite
+cordies
+cordiform
+cordigeri
+cordillera
+Cordilleran
+cordilleran
+Cordilleras
+cordilleras
+cordinar
+cordiner
+cording
+cordings
+cordis
+cordite
+cordites
+corditis
+Cordle
+cordleaf
+cordless
+cordlessly
+cordlike
+cordmaker
+Cordoba
+cordoba
+cordoban
+cordobas
+cordon
+cordonazo
+cordonazos
+cordoned
+cordoning
+cordonnet
+cordons
+Cordova
+Cordovan
+cordovan
+cordovans
+cords
+Cordula
+corduroy
+corduroyed
+corduroying
+corduroys
+cordwain
+cordwainer
+cordwainery
+cordwains
+cordwood
+cordwoods
+Cordy
+cordy
+cordycepin
+Cordyceps
+cordyl
+Cordylanthus
+Cordyline
+cordyline
+CORE
+Core
+core
+core-
+Corea
+core-baking
+corebel
+corebox
+coreceiver
+corecipient
+corecipients
+coreciprocal
+corectome
+corectomy
+corector
+core-cutting
+cored
+coredeem
+coredeemed
+coredeemer
+coredeeming
+coredeems
+coredemptress
+core-drying
+coreductase
+Coree
+Coreen
+coreflexed
+coregence
+coregency
+co-regent
+coregent
+coregnancy
+coregnant
+coregonid
+Coregonidae
+coregonine
+coregonoid
+Coregonus
+coreid
+Coreidae
+coreign
+coreigner
+coreigns
+core-jarring
+corejoice
+Corel
+corelate
+corelated
+corelates
+corelating
+co-relation
+corelation
+corelational
+corelative
+corelatively
+coreless
+co-religionist
+coreligionist
+Corell
+Corella
+corella
+Corelli
+corelysis
+Corema
+coremaker
+coremaking
+coremia
+coremium
+coremiumia
+coremorphosis
+Corena
+Corenda
+Corene
+corenounce
+coreometer
+Coreopsis
+coreopsis
+coreplastic
+coreplasty
+corepressor
+corequisite
+corer
+corers
+cores
+coresidence
+coresident
+coresidents
+coresidual
+coresign
+coresonant
+coresort
+corespect
+corespondency
+co-respondent
+corespondent
+corespondents
+Coresus
+coretomy
+Coretta
+Corette
+coreveler
+coreveller
+corevolve
+Corey
+corf
+Corfam
+Corfiote
+Corflambo
+Corfu
+corge
+corgi
+corgis
+Cori
+coria
+coriaceous
+corial
+coriamyrtin
+coriander
+corianders
+coriandrol
+Coriandrum
+Coriaria
+Coriariaceae
+coriariaceous
+coriaus
+Coricidin
+Coridon
+Corie
+coriin
+Corilla
+Corimelaena
+Corimelaenidae
+Corin
+Corina
+corindon
+Corine
+Corineus
+coring
+Corinna
+Corinne
+corinne
+Corinth
+corinth
+corinthes
+corinthiac
+Corinthian
+corinthian
+Corinthianesque
+Corinthianism
+Corinthianize
+Corinthians
+corinthians
+Corinthus
+Coriolanus
+coriparian
+Coriss
+Corissa
+corita
+corium
+co-rival
+Corixa
+Corixidae
+Cork
+cork
+corkage
+corkages
+cork-barked
+cork-bearing
+corkboard
+cork-boring
+cork-cutting
+corke
+corked
+corker
+corkers
+cork-forming
+cork-grinding
+cork-heeled
+Corkhill
+corkier
+corkiest
+corkiness
+corking
+corking-pin
+corkir
+corkish
+corkite
+corklike
+corkline
+cork-lined
+corkmaker
+corkmaking
+corks
+corkscrew
+corkscrewed
+corkscrewing
+corkscrews
+corkscrewy
+cork-tipped
+corkwing
+corkwood
+corkwoods
+corky
+corky-headed
+corky-winged
+Corley
+Corliss
+Corly
+corm
+Cormac
+Cormack
+cormel
+cormels
+Cormick
+cormidium
+Cormier
+cormlike
+cormo-
+cormogen
+cormoid
+Cormophyta
+cormophyte
+cormophytic
+cormorant
+cormorants
+cormous
+corms
+cormus
+CORN
+Corn
+corn
+Cornaceae
+cornaceous
+cornada
+cornage
+Cornall
+cornamute
+cornball
+cornballs
+corn-beads
+cornbell
+cornberry
+cornbin
+cornbind
+cornbinks
+cornbird
+cornbole
+cornbottle
+cornbrash
+cornbread
+corncake
+corncakes
+corn-cob
+corncob
+corncobs
+corncockle
+corn-colored
+corn-cracker
+corncracker
+corn-crake
+corncrake
+corncrib
+corncribs
+corncrusher
+corncutter
+corncutting
+corn-devouring
+corndodger
+cornea
+corneagen
+corneal
+corneas
+corn-eater
+corned
+Corneille
+cornein
+corneine
+corneitis
+Cornel
+cornel
+Cornela
+Cornelia
+cornelian
+Cornelie
+Cornelis
+Cornelius
+Cornell
+cornell
+Cornelle
+cornels
+cornemuse
+corneo-
+corneocalcareous
+corneosclerotic
+corneosiliceous
+corneous
+Corner
+corner
+cornerback
+cornerbind
+cornercap
+cornered
+cornerer
+cornering
+corner-man
+cornerman
+cornerpiece
+corners
+corner-stone
+cornerstone
+cornerstones
+Cornersville
+cornerways
+cornerwise
+CORNET
+cornet
+cornet-a-pistons
+cornetcies
+cornetcy
+corneter
+cornetfish
+cornetfishes
+cornetist
+cornetists
+cornets
+cornett
+cornette
+cornetter
+cornetti
+cornettino
+cornettist
+cornetto
+Cornettsville
+corneule
+corneum
+Cornew
+corn-exporting
+Corney
+cornfactor
+corn-fed
+cornfed
+corn-feeding
+cornfield
+cornfields
+corn-flag
+cornflag
+cornflakes
+cornfloor
+corn-flour
+cornflour
+corn-flower
+cornflower
+cornflowers
+corngrower
+corn-growing
+cornhole
+cornhouse
+corn-husk
+cornhusk
+cornhusker
+cornhusking
+cornhusks
+Cornia
+cornic
+cornice
+corniced
+cornices
+corniche
+corniches
+Cornichon
+cornichon
+cornicing
+cornicle
+cornicles
+cornicular
+corniculate
+corniculer
+corniculum
+Cornie
+cornier
+corniest
+Corniferous
+corniferous
+cornific
+cornification
+cornified
+corniform
+cornify
+cornigeous
+cornigerous
+cornily
+cornin
+corniness
+Corning
+corning
+corniplume
+Cornish
+cornish
+Cornishman
+cornishman
+Cornishmen
+cornix
+Cornland
+cornland
+corn-law
+Cornlea
+cornless
+cornloft
+corn-master
+cornmaster
+cornmeal
+cornmeals
+cornmonger
+cornmuse
+Corno
+corno
+cornopean
+Cornopion
+corn-picker
+cornpipe
+corn-planting
+corn-producing
+corn-rent
+cornrick
+cornroot
+cornrow
+cornrows
+corns
+cornsack
+corn-salad
+corn-snake
+Cornstalk
+corn-stalk
+cornstalk
+cornstalks
+cornstarch
+cornstarches
+cornstone
+cornstook
+cornu
+cornua
+cornual
+cornuate
+cornuated
+cornubianite
+cornucopia
+Cornucopiae
+cornucopian
+cornucopias
+cornucopiate
+cornule
+cornulite
+Cornulites
+cornupete
+Cornus
+cornus
+cornuses
+cornute
+cornuted
+cornutin
+cornutine
+cornuting
+cornuto
+cornutos
+cornutus
+Cornville
+Cornwall
+cornwall
+Cornwallis
+cornwallis
+cornwallises
+cornwallite
+Cornwallville
+Cornwell
+Corny
+corny
+Coro
+coro-
+coroa
+Coroado
+corocleisis
+corodiary
+corodiastasis
+corodiastole
+corodies
+corody
+Coroebus
+corojo
+corol
+corolitic
+coroll
+Corolla
+corolla
+corollaceous
+corollarial
+corollarially
+corollaries
+corollary
+corollas
+corollate
+corollated
+corollet
+corolliferous
+corollifloral
+corolliform
+corollike
+corolline
+corollitic
+coromandel
+coromell
+corometer
+corona
+coronach
+coronachs
+coronad
+coronadite
+Coronado
+coronado
+coronados
+coronae
+coronagraph
+coronagraphic
+coronal
+coronale
+coronaled
+coronalled
+coronally
+coronals
+coronamen
+coronaries
+coronary
+coronas
+coronate
+coronated
+coronation
+coronations
+coronatorial
+coronavirus
+corone
+Coronel
+coronel
+coronels
+coronene
+coroner
+coroners
+coronership
+coronet
+coroneted
+coronetlike
+coronets
+coronetted
+coronettee
+coronetty
+coroniform
+Coronilla
+coronillin
+coronillo
+coronion
+Coronis
+coronis
+coronitis
+coronium
+coronize
+coronobasilar
+coronofacial
+coronofrontal
+coronograph
+coronographic
+coronoid
+Coronopus
+coronule
+Coronus
+coroparelcysis
+coroplast
+coroplasta
+coroplastae
+coroplastic
+coroplasty
+Coropo
+coroscopy
+corosif
+Corot
+corotate
+corotated
+corotates
+corotating
+corotation
+corotomy
+Corotto
+coroun
+coroutine
+coroutines
+Corozal
+corozo
+corozos
+Corp
+corp
+corp.
+Corpl
+corpl
+corpn
+corpora
+corporacies
+corporacy
+Corporal
+corporal
+corporalcy
+corporale
+corporales
+corporalism
+corporalities
+corporality
+corporally
+corporals
+corporalship
+corporas
+corporate
+corporately
+corporateness
+corporation
+corporational
+corporationer
+corporationism
+corporations
+corporatism
+corporatist
+corporative
+corporatively
+corporativism
+corporator
+corporature
+corpore
+corporeal
+corporealist
+corporeality
+corporealization
+corporealize
+corporeally
+corporealness
+corporeals
+corporeity
+corporeous
+corporification
+corporify
+corporosity
+corposant
+corps
+corpsbruder
+corpse
+corpse-candle
+corpselike
+corpselikeness
+corpses
+corpsman
+corpsmen
+corpsy
+corpulence
+corpulences
+corpulencies
+corpulency
+corpulent
+corpulently
+corpulentness
+corpus
+corpuscle
+corpuscles
+corpuscular
+corpuscularian
+corpuscularity
+corpusculated
+corpuscule
+corpusculous
+corpusculum
+Corr
+corr
+corr.
+corrade
+corraded
+corrades
+corradial
+corradiate
+corradiated
+corradiating
+corradiation
+corrading
+Corrado
+corral
+Corrales
+corralled
+corralling
+corrals
+corrasion
+corrasive
+Correa
+correal
+correality
+correct
+correctable
+correctant
+corrected
+correctedness
+correcter
+correctest
+correctible
+correctify
+correcting
+correctingly
+correction
+correctional
+correctionalist
+correctioner
+corrections
+Correctionville
+correctitude
+corrective
+correctively
+correctiveness
+correctives
+correctly
+correctness
+correctnesses
+corrector
+correctorship
+correctory
+correctress
+correctrice
+corrects
+Correggio
+Corregidor
+corregidor
+corregidores
+corregidors
+corregimiento
+corregimientos
+correl
+correl.
+correlatable
+correlate
+correlated
+correlates
+correlating
+correlation
+correlational
+correlations
+correlative
+correlatively
+correlativeness
+correlatives
+correlativism
+correlativity
+correligionist
+Correll
+correllated
+correllation
+correllations
+Correna
+corrente
+correo
+correption
+corresol
+corresp
+correspond
+corresponded
+correspondence
+correspondences
+correspondencies
+correspondency
+correspondent
+correspondential
+correspondentially
+correspondently
+correspondents
+correspondentship
+corresponder
+corresponding
+correspondingly
+corresponds
+corresponsion
+corresponsive
+corresponsively
+Correy
+Correze
+Corri
+Corrianne
+corrida
+corridas
+corrido
+corridor
+corridored
+corridors
+Corrie
+corrie
+Corriedale
+corriedale
+Corrientes
+corries
+Corrigan
+Corriganville
+corrige
+corrigenda
+corrigendum
+corrigent
+corrigibility
+corrigible
+corrigibleness
+corrigibly
+Corrigiola
+Corrigiolaceae
+Corrina
+Corrine
+Corrinne
+corrival
+corrivality
+corrivalry
+corrivals
+corrivalship
+corrivate
+corrivation
+corrive
+corrobboree
+corrober
+corroborant
+corroborate
+corroborated
+corroborates
+corroborating
+corroboration
+corroborations
+corroborative
+corroboratively
+corroborator
+corroboratorily
+corroborators
+corroboratory
+corroboree
+corroboreed
+corroboreeing
+corroborees
+corrobori
+corrodant
+corrode
+corroded
+corrodent
+Corrodentia
+corroder
+corroders
+corrodes
+corrodiary
+corrodibility
+corrodible
+corrodier
+corrodies
+corroding
+corrodingly
+corrody
+Corron
+corrosibility
+corrosible
+corrosibleness
+corrosion
+corrosional
+corrosionproof
+corrosions
+corrosive
+corrosived
+corrosively
+corrosiveness
+corrosives
+corrosiving
+corrosivity
+corrugant
+corrugate
+corrugated
+corrugates
+corrugating
+corrugation
+corrugations
+corrugator
+corrugators
+corrugent
+corrump
+corrumpable
+corrup
+corrupable
+corrupt
+corrupted
+corruptedly
+corruptedness
+corrupter
+corruptest
+corruptful
+corruptibilities
+corruptibility
+corruptible
+corruptibleness
+corruptibly
+corrupting
+corruptingly
+corruption
+corruptionist
+corruptions
+corruptious
+corruptive
+corruptively
+corruptless
+corruptly
+corruptness
+corruptor
+corruptress
+corrupts
+Corry
+Corryton
+corsac
+corsacs
+corsage
+corsages
+corsaint
+corsair
+corsairs
+corsak
+Corse
+corse
+corselet
+corseleted
+corseleting
+corselets
+corselette
+corsepresent
+corseque
+corser
+corses
+corsesque
+corset
+corseted
+corsetier
+corsetiere
+corseting
+corsetless
+corsetry
+corsets
+Corsetti
+Corsica
+Corsican
+Corsicana
+corsie
+Corsiglia
+corsite
+corslet
+corslets
+corsned
+Corso
+corso
+Corson
+corsos
+corsy
+Cort
+cort
+corta
+Cortaderia
+Cortaillod
+Cortaro
+cortaro
+cortege
+corteges
+corteise
+Cortelyou
+Cortemadera
+Cortes
+cortes
+Cortese
+cortex
+cortexes
+Cortez
+cortez
+Corti
+cortian
+cortical
+cortically
+corticate
+corticated
+corticating
+cortication
+cortices
+corticiferous
+corticiform
+corticifugal
+corticifugally
+corticin
+corticine
+corticipetal
+corticipetally
+Corticium
+cortico-
+corticoafferent
+corticoefferent
+corticoid
+corticole
+corticoline
+corticolous
+corticopeduncular
+corticose
+corticospinal
+corticosteroid
+corticosteroids
+corticosterone
+corticostriate
+corticotrophin
+corticotropin
+corticous
+Cortie
+cortile
+cortin
+cortina
+cortinae
+cortinarious
+Cortinarius
+cortinate
+cortine
+cortins
+cortisol
+cortisols
+cortisone
+cortisones
+Cortland
+cortlandtite
+Cortney
+Corton
+Cortona
+Cortot
+Corty
+coruco
+coruler
+Corum
+Corumba
+Coruminacan
+Coruna
+corundophilite
+corundum
+corundums
+Corunna
+corupay
+coruscant
+coruscate
+coruscated
+coruscates
+coruscating
+coruscation
+coruscations
+coruscative
+corv
+Corvallis
+corve
+corved
+corvee
+corvees
+corven
+corver
+corves
+Corvese
+corvet
+corvets
+corvette
+corvettes
+corvetto
+Corvi
+Corvidae
+corviform
+corvillosum
+Corvin
+corvina
+Corvinae
+corvinas
+corvine
+corviser
+corvisor
+corvktte
+Corvo
+corvo
+corvoid
+corvorant
+Corvus
+corvus
+Corwin
+Corwith
+Corwun
+Cory
+cory
+Coryat
+Coryate
+Corybant
+corybant
+Corybantes
+Corybantian
+corybantiasm
+Corybantic
+corybantic
+Corybantine
+corybantish
+Corybants
+corybulbin
+corybulbine
+corycavamine
+corycavidin
+corycavidine
+corycavine
+Corycia
+Corycian
+corydalin
+corydaline
+Corydalis
+corydalis
+Coryden
+corydine
+Corydon
+corydon
+corydora
+Coryell
+coryl
+Corylaceae
+corylaceous
+corylet
+corylin
+Corylopsis
+Corylus
+corymb
+corymbed
+corymbiate
+corymbiated
+corymbiferous
+corymbiform
+corymblike
+corymbose
+corymbosely
+corymbous
+corymbs
+corynebacteria
+corynebacterial
+Corynebacterium
+corynebacterium
+coryneform
+Corynetes
+Coryneum
+corynid
+corynine
+corynite
+Corynne
+Corynocarpaceae
+corynocarpaceous
+Corynocarpus
+corynteria
+coryph
+Corypha
+Coryphaea
+coryphaei
+Coryphaena
+coryphaenid
+Coryphaenidae
+coryphaenoid
+Coryphaenoididae
+coryphaeus
+Coryphasia
+coryphee
+coryphees
+coryphene
+Coryphodon
+coryphodon
+coryphodont
+coryphylly
+corypphaei
+corystoid
+Corythus
+corytuberine
+coryza
+coryzal
+coryzas
+COS
+Cos
+cos
+cosalite
+cosaque
+cosavior
+Cosby
+coscet
+Coscinodiscaceae
+Coscinodiscus
+coscinomancy
+Coscob
+coscoroba
+coscript
+cose
+coseasonal
+coseat
+cosec
+cosecant
+cosecants
+cosech
+cosecs
+cosectarian
+cosectional
+cosed
+cosegment
+coseier
+coseiest
+coseism
+coseismal
+coseismic
+cosen
+cosenator
+cosentiency
+co-sentient
+cosentient
+Cosenza
+coservant
+coses
+cosession
+coset
+cosets
+Cosetta
+Cosette
+cosettler
+cosey
+coseys
+Cosgrave
+Cosgrove
+cosh
+cosharer
+cosheath
+coshed
+cosher
+coshered
+cosherer
+cosheries
+coshering
+coshers
+coshery
+coshes
+coshing
+Coshocton
+Coshow
+cosie
+cosied
+cosier
+cosies
+cosiest
+cosign
+cosignatories
+co-signatory
+cosignatory
+cosigned
+co-signer
+cosigner
+cosigners
+cosignificative
+cosigning
+cosignitary
+cosigns
+cosily
+Cosimo
+cosin
+cosinage
+COSINE
+cosine
+cosines
+cosiness
+cosinesses
+cosing
+cosingular
+cosins
+cosinusoid
+Cosma
+Cosmati
+Cosme
+cosmecology
+cosmesis
+Cosmetas
+cosmete
+cosmetic
+cosmetical
+cosmetically
+cosmetician
+cosmeticize
+cosmetics
+cosmetiste
+cosmetological
+cosmetologist
+cosmetologists
+cosmetology
+COSMIC
+cosmic
+cosmical
+cosmicality
+cosmically
+cosmico-natural
+cosmine
+cosmism
+cosmisms
+cosmist
+cosmists
+Cosmo
+cosmo
+cosmo-
+cosmochemical
+cosmochemistry
+cosmocracy
+cosmocrat
+cosmocratic
+cosmodrome
+cosmogenesis
+cosmogenetic
+cosmogenic
+cosmogeny
+cosmognosis
+cosmogonal
+cosmogoner
+cosmogonic
+cosmogonical
+cosmogonies
+cosmogonist
+cosmogonists
+cosmogonize
+cosmogony
+cosmographer
+cosmographic
+cosmographical
+cosmographically
+cosmographies
+cosmographist
+cosmography
+cosmoid
+cosmolabe
+cosmolatry
+cosmoline
+cosmolined
+cosmolining
+cosmologic
+cosmological
+cosmologically
+cosmologies
+cosmologist
+cosmologists
+cosmology
+cosmologygy
+cosmometry
+cosmonaut
+cosmonautic
+cosmonautical
+cosmonautically
+cosmonautics
+cosmonauts
+cosmopathic
+cosmoplastic
+cosmopoietic
+cosmopolicy
+Cosmopolis
+cosmopolis
+cosmopolises
+cosmopolitan
+cosmopolitanisation
+cosmopolitanise
+cosmopolitanised
+cosmopolitanising
+cosmopolitanism
+cosmopolitanization
+cosmopolitanize
+cosmopolitanized
+cosmopolitanizing
+cosmopolitanly
+cosmopolitans
+cosmopolite
+cosmopolitic
+cosmopolitical
+cosmopolitics
+cosmopolitism
+cosmorama
+cosmoramic
+cosmorganic
+COSMOS
+Cosmos
+cosmos
+cosmoscope
+cosmoses
+cosmosophy
+cosmosphere
+cosmotellurian
+cosmotheism
+cosmotheist
+cosmotheistic
+cosmothetic
+Cosmotron
+cosmotron
+cosmozoan
+cosmozoans
+cosmozoic
+cosmozoism
+cosonant
+cosounding
+co-sovereign
+cosovereign
+cosovereignty
+COSPAR
+cospecies
+cospecific
+cosphered
+cosplendor
+cosplendour
+cosponsor
+cosponsored
+cosponsoring
+cosponsors
+cosponsorship
+cosponsorships
+coss
+Cossack
+cossack
+cossacks
+Cossaean
+cossas
+Cossayuna
+cosse
+cosset
+cosseted
+cosseting
+cossets
+cossette
+cossetted
+cossetting
+cosshen
+cossic
+cossid
+Cossidae
+cossie
+cossnent
+cossyrite
+Cost
+cost
+Costa
+costa
+cost-account
+costae
+Costaea
+costage
+Costain
+costal
+costalgia
+costally
+costal-nerved
+costander
+Costanoan
+Costanza
+Costanzia
+COSTAR
+co-star
+costar
+costard
+costard-monger
+costards
+co-starred
+costarred
+co-starring
+costarring
+costars
+Costata
+costate
+costated
+costean
+costeaning
+costectomies
+costectomy
+costed
+costeen
+cost-effective
+Coste-Floret
+costellate
+Costello
+Costen
+Coster
+coster
+costerdom
+Costermansville
+costermonger
+costers
+cost-free
+costful
+costicartilage
+costicartilaginous
+costicervical
+costiferous
+costiform
+Costigan
+Costilla
+Costin
+costing
+costing-out
+costious
+costipulator
+costispinal
+costive
+costively
+costiveness
+costless
+costlessly
+costlessness
+costlew
+costlier
+costliest
+costliness
+costlinesses
+costly
+costmaries
+costmary
+costo-
+costoabdominal
+costoapical
+costocentral
+costochondral
+costoclavicular
+costocolic
+costocoracoid
+costodiaphragmatic
+costogenic
+costoinferior
+costophrenic
+costopleural
+costopneumopexy
+costopulmonary
+costoscapular
+costosternal
+costosuperior
+costothoracic
+costotome
+costotomies
+costotomy
+costotrachelian
+costotransversal
+costotransverse
+costovertebral
+costoxiphoid
+cost-plus
+costraight
+costrel
+costrels
+costs
+costula
+costulation
+costume
+costumed
+costumer
+costumers
+costumery
+costumes
+costumey
+costumic
+costumier
+costumiere
+costumiers
+costuming
+costumire
+costumist
+costusroot
+cosubject
+co-subordinate
+cosubordinate
+cosuffer
+cosufferer
+cosuggestion
+cosuitor
+co-supreme
+co-sureties
+co-surety
+cosurety
+cosuretyship
+cosustain
+coswearer
+cosy
+cosying
+cosymmedian
+Cosyra
+COT
+Cot
+cot
+Cotabato
+cotabulate
+cotan
+cotangent
+cotangential
+cotangents
+cotans
+cotarius
+cotarnin
+cotarnine
+Cotati
+cotbetty
+cotch
+Cote
+cote
+Coteau
+coteau
+coteaux
+coted
+coteen
+coteful
+cote-hardie
+cotehardie
+cotele
+coteline
+coteller
+cotemporane
+cotemporanean
+cotemporaneous
+cotemporaneously
+cotemporaries
+cotemporarily
+cotemporary
+cotenancy
+co-tenant
+cotenant
+cotenants
+cotenure
+coterell
+coterie
+coteries
+coterminal
+coterminous
+coterminously
+coterminousness
+cotery
+cotes
+Cotesfield
+Cotesian
+cotesian
+coth
+cotham
+cothamore
+cothe
+cotheorist
+Cotherstone
+cothish
+cothon
+cothouse
+cothurn
+cothurnal
+cothurnate
+cothurned
+cothurni
+cothurnian
+cothurnni
+cothurns
+cothurnus
+cothy
+cotice
+coticed
+coticing
+coticular
+co-tidal
+cotidal
+cotillage
+cotillion
+cotillions
+cotillon
+cotillons
+coting
+Cotinga
+cotinga
+cotingid
+Cotingidae
+cotingoid
+Cotinus
+cotise
+cotised
+cotising
+cotitular
+cotland
+Cotman
+cotman
+coto
+cotoin
+Cotolaurel
+Cotonam
+Cotoneaster
+cotoneaster
+cotonia
+cotonier
+Cotonou
+Cotopaxi
+cotorment
+cotoro
+cotoros
+cotorture
+Cotoxo
+cotquean
+cotqueans
+cotraitor
+cotransduction
+cotransfuse
+cotranslator
+cotranspire
+cotransubstantiate
+cotrespasser
+cotrine
+cotripper
+co-trustee
+cotrustee
+COTS
+cots
+Cotsen
+cotset
+cotsetla
+cotsetland
+cotsetle
+Cotswold
+cotswold
+Cotswolds
+Cott
+cott
+cotta
+cottabus
+cottae
+cottage
+cottaged
+cottager
+cottagers
+cottages
+Cottageville
+cottagey
+cottar
+cottars
+cottas
+Cottbus
+cotte
+cotted
+Cottekill
+Cottenham
+Cotter
+cotter
+cottered
+cotterel
+Cotterell
+cottering
+cotterite
+cotters
+cotterway
+cottid
+Cottidae
+cottier
+cottierism
+cottiers
+cottiest
+cottiform
+cottise
+Cottle
+Cottleville
+cottoid
+Cotton
+cotton
+cottonade
+cotton-backed
+cotton-baling
+cotton-bleaching
+cottonbush
+cotton-clad
+cotton-covered
+Cottondale
+cotton-dyeing
+cottoned
+cottonee
+cottoneer
+cottoner
+cotton-ginning
+cotton-growing
+Cottonian
+cottoning
+cottonization
+cottonize
+cotton-knitting
+cottonless
+cottonmouth
+cottonmouths
+cottonocracy
+Cottonopolis
+cottonopolis
+cottonpickin'
+cotton-picking
+cottonpicking
+cotton-planting
+Cottonport
+cotton-printing
+cotton-producing
+cottons
+cotton-sampling
+cottonseed
+cottonseeds
+cotton-sick
+cotton-spinning
+cottontail
+cottontails
+Cottonton
+cottontop
+Cottontown
+cotton-weaving
+cottonweed
+cottonwick
+cotton-wicked
+cottonwood
+cottonwoods
+cottony
+cottrel
+Cottrell
+Cottus
+cotty
+Cotuit
+cotuit
+cotula
+Cotulla
+cotunnite
+Coturnix
+cotutor
+cotwal
+cotwin
+cotwinned
+cotwist
+Coty
+-cotyl
+cotyl-
+cotyla
+cotylar
+cotyle
+cotyledon
+cotyledonal
+cotyledonar
+cotyledonary
+cotyledonoid
+cotyledonous
+cotyledons
+Cotyleus
+cotyliform
+cotyligerous
+cotyliscus
+cotyloid
+cotyloidal
+Cotylophora
+cotylophorous
+cotylopubic
+cotylosacral
+cotylosaur
+Cotylosauria
+cotylosaurian
+cotype
+cotypes
+Cotys
+Cotyttia
+couac
+coucal
+couch
+couchancy
+couchant
+couchantly
+couche
+couched
+couchee
+Coucher
+coucher
+couchers
+couches
+couchette
+couching
+couchings
+couchmaker
+couchmaking
+Couchman
+couchmate
+couchy
+cou-cou
+coud
+coude
+coudee
+Couderay
+Coudersport
+Coue
+coue
+Coueism
+coueism
+cougar
+cougars
+cough
+coughed
+cougher
+coughers
+coughing
+Coughlin
+coughroot
+coughs
+coughweed
+coughwort
+cougnar
+couhage
+coul
+coulage
+could
+couldest
+couldn
+couldna
+couldn't
+couldnt
+couldron
+couldst
+coulee
+coulees
+couleur
+coulibiaca
+coulie
+coulier
+coulis
+coulisse
+coulisses
+couloir
+couloirs
+Coulomb
+coulomb
+Coulombe
+coulombic
+coulombmeter
+coulombs
+coulometer
+coulometric
+coulometrically
+coulometry
+Coulommiers
+Coulson
+Coulter
+coulter
+coulterneb
+Coulters
+coulters
+Coulterville
+coulthard
+coulure
+couma
+coumalic
+coumalin
+coumaphos
+coumara
+coumaran
+coumarane
+coumarate
+coumaric
+coumarilic
+coumarin
+coumarinic
+coumarins
+coumarone
+coumarone-indene
+coumarou
+Coumarouna
+coumarous
+Coumas
+coumbite
+Counce
+council
+councilist
+councillary
+councillor
+councillors
+councillorship
+councilman
+councilmanic
+councilmen
+councilor
+councilors
+councilorship
+councils
+councilwoman
+councilwomen
+counderstand
+co-une
+co-unite
+counite
+couniversal
+counsel
+counselable
+counseled
+counselee
+counselful
+counseling
+counsel-keeper
+counsellable
+counselled
+counselling
+counsellor
+counsellors
+counsellorship
+counselor
+counselor-at-law
+counselors
+counselors-at-law
+counselorship
+counsels
+counsinhood
+Count
+count
+countability
+countable
+countableness
+countably
+countdom
+countdown
+countdowns
+counted
+Countee
+countenance
+countenanced
+countenancer
+countenances
+countenancing
+counter
+counter-
+counterabut
+counteraccusation
+counteraccusations
+counter-acquittance
+counteracquittance
+counteract
+counteractant
+counteracted
+counteracter
+counteracting
+counteractingly
+counteraction
+counteractions
+counteractive
+counteractively
+counteractivity
+counteractor
+counteracts
+counteraddress
+counteradvance
+counteradvantage
+counteradvice
+counteradvise
+counteraffirm
+counteraffirmation
+counter-agency
+counteragency
+counteragent
+counteraggression
+counteraggressions
+counteragitate
+counteragitation
+counteralliance
+counterambush
+counterannouncement
+counteranswer
+counterappeal
+counterappellant
+counter-approach
+counterapproach
+counterapse
+counter-arch
+counterarch
+counterargue
+counterargued
+counterargues
+counterarguing
+counterargument
+counterartillery
+counterassault
+counterassaults
+counterassertion
+counterassociation
+counterassurance
+counterattack
+counterattacked
+counterattacker
+counterattacking
+counterattacks
+counterattestation
+counterattired
+counter-attraction
+counterattraction
+counterattractive
+counterattractively
+counteraverment
+counteravouch
+counteravouchment
+counterbalance
+counterbalanced
+counterbalances
+counterbalancing
+counterband
+counterbarrage
+counter-barry
+counterbase
+counter-battery
+counterbattery
+counter-beam
+counterbeating
+counterbend
+counterbewitch
+counterbid
+counterbids
+counter-bill
+counterblast
+counterblockade
+counterblockades
+counterblow
+counterblows
+counterbond
+counterborder
+counter-bore
+counterbore
+counterbored
+counterborer
+counterboring
+counter-boulle
+counterboulle
+counterboycott
+counter-brace
+counterbrace
+counterbracing
+counterbranch
+counterbrand
+counterbreastwork
+counterbuff
+counterbuilding
+countercampaign
+countercampaigns
+counter-carte
+countercarte
+counter-cast
+counter-caster
+countercathexis
+countercause
+counterchallenge
+counterchallenges
+counterchange
+counterchanged
+counterchanging
+countercharge
+countercharged
+countercharges
+countercharging
+countercharm
+countercheck
+countercheer
+counter-chevroned
+counter-claim
+counterclaim
+counterclaimant
+counterclaimed
+counterclaiming
+counterclaims
+counterclassification
+counterclassifications
+counter-clockwise
+counterclockwise
+countercolored
+counter-coloured
+countercommand
+counter-company
+countercompany
+countercompetition
+countercomplaint
+countercomplaints
+countercompony
+countercondemnation
+counterconditioning
+counterconquest
+counterconversion
+counter-couchant
+countercouchant
+countercoup
+countercoupe
+countercoups
+countercourant
+countercraft
+countercriticism
+countercriticisms
+countercross
+countercry
+countercultural
+counter-culture
+counterculture
+countercultures
+counterculturist
+counter-current
+countercurrent
+countercurrently
+countercurrentwise
+counterdance
+counterdash
+counterdecision
+counterdeclaration
+counterdecree
+counter-deed
+counterdefender
+counterdemand
+counterdemands
+counterdemonstrate
+counterdemonstration
+counterdemonstrations
+counterdemonstrator
+counterdemonstrators
+counterdeputation
+counterdesire
+counterdevelopment
+counterdifficulty
+counterdigged
+counterdike
+counterdiscipline
+counter-disengage
+counterdisengage
+counterdisengagement
+counterdistinct
+counterdistinction
+counterdistinguish
+counterdoctrine
+counterdogmatism
+counterdraft
+counter-drain
+counterdrain
+counter-draw
+counterdrive
+counter-earth
+counterearth
+countered
+countereffect
+countereffects
+counterefficiency
+countereffort
+counterefforts
+counterembargo
+counterembargos
+counter-embattled
+counterembattled
+counter-embowed
+counterembowed
+counterenamel
+counterend
+counterenergy
+counterengagement
+counterengine
+counterenthusiasm
+counterentry
+counterequivalent
+counter-ermine
+counterermine
+counterespionage
+counterestablishment
+counter-evidence
+counterevidence
+counterevidences
+counterexaggeration
+counterexample
+counterexamples
+counterexcitement
+counterexcommunication
+counterexercise
+counterexplanation
+counterexposition
+counterexpostulation
+counterextend
+counter-extension
+counterextension
+counter-faced
+counterfact
+counterfactual
+counterfactually
+counterfallacy
+counter-faller
+counterfaller
+counterfeisance
+counterfeit
+counterfeited
+counterfeiter
+counterfeiters
+counterfeiting
+counterfeitly
+counterfeitment
+counterfeitness
+counterfeits
+counterferment
+counter-fessed
+counterfessed
+counterfire
+counter-fissure
+counterfix
+counterflange
+counterflashing
+counterfleury
+counterflight
+counterflory
+counterflow
+counterflux
+counterfoil
+counter-force
+counterforce
+counterformula
+counterfort
+counterfugue
+countergabble
+countergabion
+countergage
+countergager
+countergambit
+countergarrison
+counter-gauge
+countergauge
+countergauger
+counter-gear
+countergift
+countergirded
+counterglow
+counter-guard
+counterguard
+counterguerilla
+counterguerrila
+counterguerrilla
+counterhaft
+counterhammering
+counter-hem
+counterhypothesis
+counteridea
+counterideal
+counterimagination
+counterimitate
+counterimitation
+counterimpulse
+counterindentation
+counterindented
+counterindicate
+counter-indication
+counterindication
+counterindoctrinate
+counterindoctrination
+counterinflationary
+counter-influence
+counterinfluence
+counterinfluences
+countering
+counterinsult
+counterinsurgencies
+counterinsurgency
+counterinsurgent
+counterinsurgents
+counterintelligence
+counterinterest
+counterinterpretation
+counterintrigue
+counterintrigues
+counterintuitive
+counterinvective
+counterinvestment
+counter-ion
+counterion
+counter-irritant
+counterirritant
+counterirritate
+counterirritation
+counterjudging
+counter-jumper
+counterjumper
+counter-lath
+counterlath
+counterlathed
+counterlathing
+counterlatration
+counterlaw
+counterleague
+counterlegislation
+counter-letter
+counterlife
+counterlight
+counterlighted
+counterlighting
+counterlilit
+counterlit
+counterlocking
+counter-lode
+counterlode
+counterlove
+counterly
+countermachination
+countermaid
+counterman
+countermand
+countermandable
+countermanded
+countermanding
+countermands
+countermaneuver
+countermanifesto
+countermanifestoes
+countermarch
+countermarching
+countermark
+counter-marque
+countermarriage
+countermeasure
+countermeasures
+countermeet
+countermen
+countermessage
+countermigration
+countermine
+countermined
+countermining
+countermissile
+countermission
+counter-motion
+countermotion
+countermount
+counter-move
+countermove
+countermoved
+countermovement
+countermovements
+countermoves
+countermoving
+countermure
+countermutiny
+counter-naiant
+counternaiant
+counternarrative
+counternatural
+counter-nebule
+counternecromancy
+counternoise
+counternotice
+counterobjection
+counterobligation
+counter-off
+counteroffensive
+counteroffensives
+counteroffer
+counteroffers
+counter-opening
+counteropening
+counteropponent
+counteropposite
+counterorator
+counterorder
+counterorganization
+counterpace
+counter-paled
+counterpaled
+counterpaly
+counterpane
+counterpaned
+counterpanes
+counter-parade
+counterparadox
+counterparallel
+counter-parole
+counterparole
+counterparry
+counterpart
+counterparts
+counter-party
+counter-passant
+counterpassant
+counterpassion
+counter-pawn
+counter-penalty
+counterpenalty
+counterpendent
+counterpetition
+counterpetitions
+counterphobic
+counterpicture
+counterpillar
+counterplan
+counterplay
+counterplayer
+counterplea
+counterplead
+counterpleading
+counterplease
+counterplot
+counterplotted
+counterplotter
+counterplotting
+counterploy
+counterploys
+counterpoint
+counterpointe
+counterpointed
+counterpointing
+counterpoints
+counterpoise
+counterpoised
+counterpoises
+counterpoising
+counterpoison
+counter-pole
+counterpole
+counterpoles
+counterponderate
+counterpose
+counterposition
+counterposting
+counterpotence
+counterpotency
+counter-potent
+counterpotent
+counterpower
+counterpowers
+counterpractice
+counterpray
+counterpreach
+counterpreparation
+counter-pressure
+counterpressure
+counterpressures
+counter-price
+counterprick
+counterprinciple
+counterprocess
+counterproductive
+counterproductively
+counterproductiveness
+counterproductivity
+counterprogramming
+counterproject
+counterpronunciamento
+counter-proof
+counterproof
+counterpropaganda
+counterpropagandize
+counterpropagation
+counterpropagations
+counterprophet
+counterproposal
+counterproposals
+counterproposition
+counterprotection
+counterprotest
+counterprotests
+counterprove
+counterpull
+counterpunch
+counterpuncher
+counterpuncture
+counterpush
+counter-quartered
+counterquartered
+counterquarterly
+counterquery
+counterquestion
+counterquestions
+counterquip
+counterradiation
+counter-raguled
+counterraid
+counterraids
+counterraising
+counterrallies
+counterrally
+counter-rampant
+counterrampant
+counterrate
+counterreaction
+counterreason
+counterrebuttal
+counterrebuttals
+counterreckoning
+counterrecoil
+counterreconnaissance
+counterrefer
+counterreflected
+counterreform
+Counter-Reformation
+counter-reformation
+counterreformation
+counterreforms
+counterreligion
+counterremonstrant
+counterreplied
+counterreplies
+counterreply
+counterreplying
+counterreprisal
+counterresolution
+counterresponse
+counterresponses
+counterrestoration
+counterretaliation
+counterretaliations
+counterretreat
+counter-revolution
+counterrevolution
+counterrevolutionaries
+counter-revolutionary
+counterrevolutionary
+counterrevolutionist
+counterrevolutionize
+counterrevolutions
+counter-riposte
+counterriposte
+counter-roll
+counterroll
+counterrotating
+counter-round
+counterround
+counterruin
+counters
+countersale
+counter-salient
+countersalient
+countersank
+counter-scale
+counterscale
+counterscalloped
+counterscarp
+counterscoff
+countersconce
+counterscrutiny
+counter-scuffle
+counter-sea
+countersea
+counter-seal
+counterseal
+counter-secure
+countersecure
+countersecurity
+counterselection
+countersense
+counterservice
+countershade
+countershading
+countershaft
+countershafting
+countershear
+countershine
+countershock
+countershout
+counterside
+countersiege
+countersign
+countersignal
+countersignature
+countersignatures
+countersigned
+countersigning
+countersigns
+countersink
+countersinking
+countersinks
+countersleight
+counterslope
+countersmile
+countersnarl
+counter-spell
+counterspies
+counterspy
+counterspying
+counterstain
+counterstamp
+counterstand
+counterstatant
+counter-statement
+counterstatement
+counterstatute
+counter-step
+counterstep
+counterstimulate
+counterstimulation
+counterstimulus
+counterstock
+counterstratagem
+counterstrategies
+counterstrategy
+counterstream
+counterstrike
+counterstroke
+counterstruggle
+counterstyle
+counterstyles
+countersubject
+countersue
+countersued
+countersues
+countersuggestion
+countersuggestions
+countersuing
+countersuit
+countersuits
+countersun
+countersunk
+countersunken
+countersurprise
+countersway
+counterswing
+countersworn
+countersympathy
+countersynod
+countertack
+countertail
+countertally
+counter-taste
+countertaste
+countertechnicality
+countertendencies
+counter-tendency
+countertendency
+counter-tenor
+countertenor
+countertenors
+counterterm
+counterterror
+counterterrorism
+counterterrorisms
+counterterrorist
+counterterrorists
+counterterrors
+countertheme
+countertheory
+counterthought
+counterthreat
+counterthreats
+counterthrust
+counterthrusts
+counterthwarting
+counter-tide
+counter-tierce
+countertierce
+counter-time
+countertime
+countertouch
+countertraction
+countertrades
+countertransference
+countertranslation
+countertraverse
+countertreason
+countertree
+counter-trench
+countertrench
+countertrend
+countertrends
+countertrespass
+countertrippant
+counter-tripping
+countertripping
+countertruth
+countertug
+counter-turn
+counterturn
+counterturned
+countertype
+countervail
+countervailed
+countervailing
+countervails
+countervair
+countervairy
+countervallation
+countervalue
+countervaunt
+countervene
+countervengeance
+countervenom
+countervibration
+counterview
+countervindication
+countervolition
+countervolley
+counter-vote
+countervote
+counterwager
+counter-wait
+counter-wall
+counterwall
+counterwarmth
+counterwave
+counterweigh
+counterweighed
+counterweighing
+counter-weight
+counterweight
+counterweighted
+counterweights
+counterwheel
+counterwill
+counterwilling
+counterwind
+counterwitness
+counterword
+counterwork
+counter-worker
+counterworker
+counterworking
+counterwrite
+Countess
+countess
+countesses
+countfish
+countian
+countians
+counties
+counting
+countinghouse
+countless
+countlessly
+countlessness
+countor
+countour
+countre-
+countree
+countreeman
+countrie
+countrieman
+countries
+countrification
+countrified
+countrifiedness
+countrify
+country
+country-and-western
+country-born
+country-bred
+country-dance
+country-fashion
+countryfied
+countryfiedness
+countryfolk
+countryish
+country-made
+countryman
+countrymen
+countrypeople
+countryseat
+countryside
+countrysides
+country-style
+countryward
+country-wide
+countrywide
+countrywoman
+countrywomen
+counts
+countship
+county
+countys
+county-wide
+countywide
+coup
+coupage
+coup-cart
+coupe
+couped
+coupee
+coupe-gorge
+coupelet
+couper
+Couperin
+Couperus
+coupes
+Coupeville
+couping
+Coupland
+couple
+couple-beggar
+couple-close
+coupled
+couplement
+coupler
+coupleress
+couplers
+couples
+couplet
+coupleteer
+couplets
+coupling
+couplings
+coupon
+couponed
+couponless
+coupons
+coups
+coupstick
+coupure
+courage
+courageous
+courageously
+courageousness
+courager
+courages
+courant
+courante
+courantes
+couranto
+courantoes
+courantos
+courants
+Courantyne
+courap
+couratari
+courb
+courbache
+courbaril
+courbash
+courbe
+Courbet
+courbette
+courbettes
+Courbevoie
+courche
+Courcy
+courge
+courgette
+courida
+courie
+Courier
+courier
+couriers
+couril
+courlan
+Courland
+courlans
+Cournand
+couronne
+Cours
+course
+coursed
+courser
+coursers
+courses
+coursey
+coursing
+coursings
+coursy
+Court
+court
+courtage
+courtal
+court-baron
+court-bouillon
+courtbred
+courtby
+courtcraft
+court-cupboard
+court-customary
+court-dress
+courted
+Courtelle
+Courtenay
+Courteney
+courteous
+courteously
+courteousness
+courtepy
+courter
+courters
+courtesan
+courtesanry
+courtesans
+courtesanship
+courtesied
+courtesies
+courtesy
+courtesying
+courtezan
+courtezanry
+courtezanship
+court-house
+courthouse
+courthouses
+courtier
+courtierism
+courtierly
+courtiers
+courtiership
+courtiery
+courtin
+courting
+Courtland
+court-leet
+courtless
+courtlet
+courtlier
+courtliest
+courtlike
+courtliness
+courtling
+courtly
+courtman
+court-mantle
+court-martial
+court-martials
+Courtnay
+Courtney
+courtnoll
+court-noue
+Courtois
+court-plaster
+Courtrai
+courtroll
+courtroom
+courtrooms
+courts
+courtship
+courtship-and-matrimony
+courtships
+courtside
+courts-martial
+court-tialed
+court-tialing
+court-tialled
+court-tialling
+Courtund
+courty
+court-yard
+courtyard
+courtyards
+courtzilite
+Cousance-les-Forges
+couscous
+couscouses
+couscousou
+co-use
+couseranite
+Coushatta
+Cousin
+cousin
+cousinage
+cousiness
+cousin-german
+cousinhood
+cousin-in-law
+cousinly
+cousinries
+cousinry
+Cousins
+cousins
+cousins-german
+cousinship
+cousiny
+coussinet
+Coussoule
+Cousteau
+coustumier
+Cousy
+couteau
+couteaux
+coutel
+coutelle
+couter
+couters
+Coutet
+couth
+couthe
+couther
+couthest
+couthie
+couthier
+couthiest
+couthily
+couthiness
+couthless
+couthly
+couths
+couthy
+coutil
+coutille
+coutumier
+Couture
+couture
+coutures
+couturier
+couturiere
+couturieres
+couturiers
+couturire
+couvade
+couvades
+couve
+couvert
+couverte
+couveuse
+couvre-feu
+couxia
+couxio
+covado
+covalence
+covalences
+covalency
+covalent
+covalently
+Covarecan
+Covarecas
+covariable
+covariables
+covariance
+covariant
+covariate
+covariates
+covariation
+Covarrubias
+covary
+covassal
+cove
+coved
+Covel
+Covell
+covelline
+covellite
+Covelo
+coven
+Covena
+covenable
+covenably
+covenance
+Covenant
+covenant
+covenantal
+covenantally
+covenanted
+covenantee
+Covenanter
+covenanter
+covenanting
+Covenant-israel
+covenantor
+covenants
+Coveney
+covens
+covent
+coventrate
+coven-tree
+coventries
+coventrize
+Coventry
+coventry
+cover
+coverable
+coverage
+coverages
+coverall
+coveralled
+coveralls
+coverchief
+covercle
+Coverdale
+covered
+coverer
+coverers
+covering
+coverings
+coverless
+coverlet
+coverlets
+Coverley
+coverlid
+coverlids
+cover-point
+covers
+co-versed
+coversed
+cover-shame
+cover-shoulder
+coverside
+coversine
+coverslip
+cover-slut
+coverslut
+covert
+covert-baron
+covertical
+covertly
+covertness
+coverts
+coverture
+cover-up
+coverup
+coverups
+coves
+Covesville
+covet
+covetable
+coveted
+coveter
+coveters
+coveting
+covetingly
+covetise
+covetiveness
+covetous
+covetously
+covetousness
+covets
+covey
+coveys
+covibrate
+covibration
+covid
+covido
+Coviello
+covillager
+Covillea
+covin
+Covina
+covine
+coving
+covings
+Covington
+covinous
+covinously
+covins
+covin-tree
+covisit
+covisitor
+covite
+covolume
+covotary
+cow
+cowage
+cowages
+cowal
+co-walker
+Cowan
+cowan
+Cowanesque
+Cowansville
+Coward
+coward
+cowardice
+cowardices
+cowardish
+cowardliness
+cowardly
+cowardness
+cowards
+cowardy
+Cowarts
+cow-bane
+cowbane
+cowbanes
+cowbarn
+cowbell
+cowbells
+cowberries
+cowberry
+cowbind
+cowbinds
+cowbird
+cowbirds
+cow-boy
+cowboy
+cowboys
+cowbrute
+cowbyre
+cowcatcher
+cowcatchers
+Cowden
+cowdie
+Cowdrey
+cowed
+cowedly
+coween
+Cowell
+Cowen
+Cower
+cower
+cowered
+cowerer
+cowerers
+cowering
+coweringly
+cowers
+Cowes
+Coweta
+Cowey
+cow-eyed
+cow-fat
+cow-fish
+cowfish
+cowfishes
+cowflap
+cowflaps
+cowflop
+cowflops
+cowgate
+Cowgill
+cowgirl
+cowgirls
+cow-goddess
+cowgram
+cowgrass
+cowhage
+cowhages
+cowhand
+cowhands
+cow-headed
+cowheart
+cowhearted
+cowheel
+cowherb
+cowherbs
+cowherd
+cowherds
+cow-hide
+cowhide
+cowhided
+cowhides
+cowhiding
+cow-hitch
+cow-hocked
+cowhorn
+cowhouse
+Cowichan
+Cowiche
+co-widow
+Cowie
+cowier
+cowiest
+co-wife
+cowing
+co-winner
+cowinner
+cowinners
+cowish
+cowishness
+cow-itch
+cowitch
+cowk
+cowkeeper
+cowkine
+Cowl
+cowl
+cowle
+cowled
+cowleech
+cowleeching
+Cowles
+Cowlesville
+Cowley
+cow-lice
+cowlick
+cowlicks
+cowlike
+cowling
+cowlings
+Cowlitz
+cowls
+cowl-shaped
+cowlstaff
+cowman
+cowmen
+cow-mumble
+Cown
+cow-nosed
+co-work
+co-worker
+coworker
+coworkers
+co-working
+coworking
+co-worship
+cowpat
+cowpath
+cowpats
+cowpea
+cowpeas
+cowpen
+Cowper
+cowper
+Cowperian
+cowperian
+cowperitis
+cowpie
+cowpies
+cowplop
+cowplops
+cowpock
+cowpoke
+cowpokes
+cowpony
+cow-pox
+cowpox
+cowpoxes
+cowpunch
+cowpuncher
+cowpunchers
+cowquake
+cowrie
+cowries
+cowrite
+cowrites
+cowroid
+cowrote
+cowry
+cows
+cowshard
+cowsharn
+cowshed
+cowsheds
+cowshot
+cowshut
+cowskin
+cowskins
+cowslip
+cowslip'd
+cowslipped
+cowslips
+cowson
+cow-stealing
+cowsucker
+cowtail
+cowthwort
+cow-tongue
+cowtongue
+cowtown
+cowweed
+cowwheat
+cowy
+cowyard
+Cox
+cox
+coxa
+coxae
+coxal
+coxalgia
+coxalgias
+coxalgic
+coxalgies
+coxalgy
+coxankylometer
+coxarthritis
+coxarthrocace
+coxarthropathy
+coxbones
+coxcomb
+coxcombess
+coxcombhood
+coxcombic
+coxcombical
+coxcombicality
+coxcombically
+coxcombity
+coxcombries
+coxcombry
+coxcombs
+coxcomby
+coxcomical
+coxcomically
+coxed
+coxendix
+coxes
+Coxey
+coxier
+coxiest
+coxing
+coxite
+coxitis
+coxocerite
+coxoceritic
+coxodynia
+coxo-femoral
+coxofemoral
+coxopodite
+Coxsackie
+coxswain
+coxswained
+coxswaining
+coxswains
+coxwain
+coxwaining
+coxwains
+coxy
+Coxyde
+Coy
+coy
+coyan
+Coyanosa
+coydog
+coydogs
+coyed
+coyer
+coyest
+coying
+coyish
+coyishness
+Coyle
+coyly
+coyn
+coyness
+coynesses
+coynye
+coyo
+coyol
+Coyolxauhqui
+coyos
+coyote
+coyote-brush
+coyote-bush
+Coyotero
+coyotes
+coyotillo
+coyotillos
+coyoting
+coypou
+coypous
+coypu
+coypus
+coys
+Coysevox
+coystrel
+coyure
+Coyville
+coz
+Cozad
+coze
+cozed
+cozeier
+cozeiest
+cozen
+cozenage
+cozenages
+cozened
+cozener
+cozeners
+cozening
+cozeningly
+Cozens
+cozens
+cozes
+cozey
+cozeys
+cozie
+cozied
+cozier
+cozies
+coziest
+cozily
+coziness
+cozinesses
+cozing
+Cozmo
+Cozumel
+cozy
+cozying
+Cozza
+Cozzens
+cozzes
+C.P.
+CP
+c.p.
+cp
+cp.
+CPA
+CPC
+CPCU
+CPD
+cpd
+cpd.
+CPE
+CPFF
+CPH
+CPI
+cpi
+CPIO
+CPL
+Cpl
+cpl
+CPM
+cpm
+CPMP
+CPO
+cpo
+CPP
+CPR
+CPS
+cps
+CPSR
+CPSU
+CPT
+cpt
+CPU
+cpu
+cpus
+cputime
+CPW
+CQ
+cq
+C.R.
+CR
+Cr
+cr
+cr.
+craal
+craaled
+craaling
+craals
+Crab
+crab
+crabapple
+Crabb
+Crabbe
+crabbed
+crabbedly
+crabbedness
+crabber
+crabbers
+crabbery
+crabbier
+crabbiest
+crabbily
+crabbiness
+crabbing
+crabbish
+crabbit
+crabby
+crabcatcher
+crabeater
+crab-eating
+crabeating
+craber
+crab-faced
+crab-fish
+crabfish
+crab-grass
+crabgrass
+crab-harrow
+crabhole
+crabier
+crabit
+crablet
+crablike
+crabman
+crabmeat
+crabmill
+Craborchard
+crab-plover
+crabs
+crab-shed
+crab-sidle
+crabsidle
+crabstick
+Crabtree
+crabut
+crabweed
+crabwise
+crabwood
+Cracca
+craccus
+crachoir
+Cracidae
+Cracinae
+crack
+crack-
+crackability
+crackable
+crackableness
+crackajack
+crackback
+crackbrain
+crackbrained
+crackbrainedness
+crackdown
+crackdowns
+cracked
+crackedness
+cracker
+cracker-barrel
+crackerberries
+crackerberry
+crackerjack
+crackerjacks
+cracker-off
+cracker-on
+cracker-open
+crackers
+crackers-on
+cracket
+crackhemp
+crackiness
+cracking
+crackings
+crackjaw
+crackle
+crackled
+crackles
+crackless
+crackleware
+cracklier
+crackliest
+crackling
+cracklings
+crack-loo
+crackly
+crackmans
+cracknel
+cracknels
+crack-off
+crackpot
+crackpotism
+crackpots
+crackpottedness
+crackrope
+cracks
+crackskull
+cracksman
+cracksmen
+crack-the-whip
+crack-up
+crackup
+crackups
+crack-willow
+cracky
+cracovienne
+Cracow
+cracowe
+-cracy
+Craddock
+Craddockville
+craddy
+cradge
+cradle
+cradleboard
+cradlechild
+cradled
+cradlefellow
+cradleland
+cradlelike
+cradlemaker
+cradlemaking
+cradleman
+cradlemate
+cradlemen
+cradler
+cradlers
+cradles
+cradle-shaped
+cradleside
+cradlesong
+cradlesongs
+cradletime
+cradling
+Cradock
+CRAF
+craft
+crafted
+crafter
+craftier
+craftiest
+craftily
+craftiness
+craftinesses
+crafting
+Craftint
+craftless
+craftly
+craftmanship
+Crafton
+crafts
+Craftsbury
+craftsman
+craftsmanlike
+craftsmanly
+craftsmanship
+craftsmanships
+craftsmaster
+craftsmen
+craftsmenship
+craftsmenships
+craftspeople
+craftsperson
+craftswoman
+craftwork
+craftworker
+crafty
+Craftype
+Crag
+crag
+crag-and-tail
+crag-bound
+crag-built
+crag-carven
+crag-covered
+crag-fast
+Cragford
+craggan
+cragged
+craggedly
+craggedness
+Craggie
+craggier
+craggiest
+craggily
+cragginess
+Craggy
+craggy
+craglike
+crags
+cragsman
+cragsmen
+Cragsmoor
+cragwork
+craichy
+craie
+Craig
+craig
+Craigavon
+craighle
+Craigie
+Craigmont
+craigmontite
+Craigsville
+Craigville
+Craik
+craik
+Crailsheim
+Crain
+crain
+Craiova
+craisey
+craizey
+crajuru
+crake
+craked
+crakefeet
+crake-needles
+craker
+crakes
+craking
+crakow
+Craley
+Cralg
+CRAM
+Cram
+cram
+cramasie
+crambambulee
+crambambuli
+Crambe
+crambe
+cramberry
+crambes
+crambid
+Crambidae
+Crambinae
+cramble
+crambly
+crambo
+cramboes
+crambos
+Crambus
+cramel
+Cramer
+Cramerton
+cram-full
+crammed
+crammel
+crammer
+crammers
+cramming
+crammingly
+cramoisie
+cramoisies
+cramoisy
+cramp
+crampbit
+cramped
+crampedness
+cramper
+crampet
+crampette
+crampfish
+crampfishes
+cramping
+crampingly
+cramp-iron
+crampish
+crampit
+crampits
+crampon
+cramponnee
+crampons
+crampoon
+crampoons
+cramps
+crampy
+crams
+Cran
+cran
+Cranach
+cranage
+Cranaus
+cranberries
+cranberry
+Cranbury
+crance
+crancelin
+cranch
+cranched
+cranches
+cranching
+Crandale
+Crandall
+crandall
+crandallite
+Crandell
+Crandon
+Crane
+crane
+cranebill
+craned
+crane-fly
+cranelike
+cranely
+craneman
+cranemanship
+cranemen
+Craner
+craner
+cranes
+crane's-bill
+cranesbill
+cranesman
+Cranesville
+cranet
+craneway
+craney
+Cranford
+crang
+crani-
+Crania
+crania
+craniacromial
+craniad
+cranial
+cranially
+cranian
+Craniata
+craniata
+craniate
+craniates
+cranic
+craniectomy
+craning
+craninia
+craniniums
+cranio-
+cranio-acromial
+cranio-aural
+craniocele
+craniocerebral
+cranioclasis
+cranioclasm
+cranioclast
+cranioclasty
+craniodidymus
+craniofacial
+craniognomic
+craniognomy
+craniognosy
+craniograph
+craniographer
+craniography
+cranioid
+craniol
+craniological
+craniologically
+craniologist
+craniology
+craniom
+craniomalacia
+craniomaxillary
+craniometer
+craniometric
+craniometrical
+craniometrically
+craniometrist
+craniometry
+craniopagus
+craniopathic
+craniopathy
+craniopharyngeal
+craniopharyngioma
+craniophore
+cranioplasty
+craniopuncture
+craniorhachischisis
+craniosacral
+cranioschisis
+cranioscopical
+cranioscopist
+cranioscopy
+craniospinal
+craniostenosis
+craniostosis
+Craniota
+craniota
+craniotabes
+craniotome
+craniotomies
+craniotomy
+craniotopography
+craniotympanic
+craniovertebral
+cranium
+craniums
+crank
+crankbird
+crankcase
+crankcases
+crankdisk
+crank-driven
+cranked
+cranker
+crankery
+crankest
+crankier
+crankiest
+crankily
+crankiness
+cranking
+crankish
+crankism
+crankle
+crankled
+crankles
+crankless
+crankling
+crankly
+crankman
+crankness
+Cranko
+crankous
+crankpin
+crankpins
+crankplate
+Cranks
+cranks
+crankshaft
+crankshafts
+crank-sided
+crankum
+cranky
+Cranmer
+crannage
+crannel
+crannequin
+crannia
+crannied
+crannies
+crannock
+crannog
+crannoge
+crannoger
+crannoges
+crannogs
+cranny
+crannying
+cranreuch
+cransier
+Cranston
+crantara
+crants
+Cranwell
+crany
+crap
+crapaud
+crapaudine
+crape
+craped
+crape-fish
+crapefish
+crapehanger
+crapelike
+crapes
+crapette
+craping
+Crapo
+crapon
+crapped
+crapper
+crappers
+crappie
+crappier
+crappies
+crappiest
+crappin
+crappiness
+crapping
+crappit-head
+crapple
+crappo
+crappy
+craps
+crapshooter
+crapshooters
+crapshooting
+crapula
+crapulate
+crapulence
+crapulency
+crapulent
+crapulous
+crapulously
+crapulousness
+crapwa
+crapy
+craquelure
+craquelures
+crare
+Crary
+Craryville
+CRAS
+crases
+crash
+Crashaw
+crash-dive
+crash-dived
+crash-diving
+crash-dove
+crashed
+crasher
+crashers
+crashes
+crashing
+crashingly
+crash-land
+crash-landing
+crashproof
+crashworthiness
+crashworthy
+crasis
+craspedal
+craspedodromous
+craspedon
+Craspedota
+craspedotal
+craspedote
+craspedum
+crass
+crassament
+crassamentum
+crasser
+crassest
+crassier
+crassilingual
+Crassina
+crassis
+crassities
+crassitude
+crassly
+crassness
+Crassula
+crassula
+Crassulaceae
+crassulaceous
+Crassus
+-crat
+Crataegus
+Crataeis
+Crataeva
+cratch
+cratchens
+cratches
+cratchins
+crate
+crated
+crateful
+cratemaker
+cratemaking
+crateman
+cratemen
+Crater
+crater
+crateral
+cratered
+Craterellus
+Craterid
+crateriform
+cratering
+Crateris
+crateris
+craterkin
+craterless
+craterlet
+craterlike
+craterous
+craters
+crater-shaped
+crates
+craticular
+Cratinean
+crating
+cratometer
+cratometric
+cratometry
+craton
+cratonic
+cratons
+cratsmanship
+Cratus
+craunch
+craunched
+craunches
+craunching
+craunchingly
+cravat
+cravats
+cravatted
+cravatting
+crave
+craved
+Craven
+craven
+cravened
+Cravenette
+cravenette
+Cravenetted
+Cravenetting
+cravenhearted
+cravening
+cravenly
+cravenness
+cravens
+craver
+cravers
+craves
+craving
+cravingly
+cravingness
+cravings
+cravo
+Craw
+craw
+crawberry
+craw-craw
+crawdad
+crawdads
+crawfish
+crawfished
+crawfishes
+crawfishing
+crawfoot
+crawfoots
+Crawford
+Crawfordsville
+Crawfordville
+crawful
+crawl
+crawl-a-bottom
+crawled
+crawler
+crawlerize
+crawlers
+Crawley
+crawley
+crawleyroot
+crawlie
+crawlier
+crawliest
+crawling
+crawlingly
+crawls
+crawlsome
+crawlspace
+crawl-up
+crawlway
+crawlways
+crawly
+crawm
+craws
+crawtae
+Crawthumper
+Crax
+cray
+craye
+crayer
+crayfish
+crayfishes
+crayfishing
+craylet
+Crayne
+Craynor
+crayon
+crayoned
+crayoning
+crayonist
+crayonists
+crayons
+crayonstone
+craythur
+craze
+crazed
+crazed-headed
+crazedly
+crazedness
+crazes
+crazier
+crazies
+craziest
+crazily
+craziness
+crazinesses
+crazing
+crazingmill
+crazy
+crazycat
+crazy-drunk
+crazy-headed
+crazy-looking
+crazy-mad
+crazy-pate
+crazy-paving
+crazyweed
+crazy-work
+CRB
+CRC
+crc
+crcao
+crche
+Crcy
+CRD
+cre
+crea
+creach
+creachy
+cread
+creagh
+creaght
+creak
+creaked
+creaker
+creakier
+creakiest
+creakily
+creakiness
+creaking
+creakingly
+creaks
+creaky
+cream
+creambush
+creamcake
+cream-cheese
+cream-color
+cream-colored
+creamcup
+creamcups
+creamed
+Creamer
+creamer
+creameries
+creamers
+creamery
+creameryman
+creamerymen
+cream-faced
+cream-flowered
+creamfruit
+creamier
+creamiest
+creamily
+creaminess
+creaming
+creamlaid
+creamless
+creamlike
+creammaker
+creammaking
+creamometer
+creams
+creamsacs
+cream-slice
+creamware
+cream-white
+creamy
+cream-yellow
+Crean
+creance
+creancer
+creant
+crease
+creased
+creaseless
+creaser
+crease-resistant
+creasers
+creases
+creashaks
+creasier
+creasiest
+creasing
+creasol
+creasot
+creasy
+creat
+creatable
+create
+created
+createdness
+creates
+Creath
+creatic
+creatin
+creatine
+creatinephosphoric
+creatines
+creating
+creatinin
+creatinine
+creatininemia
+creatins
+creatinuria
+Creation
+creation
+creational
+creationary
+creationism
+creationist
+creationistic
+creations
+creative
+creatively
+creativeness
+creativities
+creativity
+creatophagous
+Creator
+creator
+creatorhood
+creatorrhea
+creators
+creatorship
+creatotoxism
+creatress
+creatrix
+creatural
+creature
+creaturehood
+creatureless
+creatureliness
+creatureling
+creaturely
+creatures
+creatureship
+creaturize
+creaze
+crebri-
+crebricostate
+crebrisulcate
+crebrity
+crebrous
+creche
+creches
+Crecy
+creda
+credal
+creddock
+credence
+credences
+credencive
+credenciveness
+credenda
+credendum
+credens
+credensive
+credensiveness
+credent
+credential
+credentialed
+credentialism
+credentials
+credently
+credenza
+credenzas
+credere
+credibilities
+credibility
+credible
+credibleness
+credibly
+credit
+creditabilities
+creditability
+creditable
+creditableness
+creditably
+credited
+crediting
+creditive
+creditless
+creditor
+creditors
+creditorship
+creditress
+creditrix
+credits
+crednerite
+Credo
+credo
+credos
+credulities
+credulity
+credulous
+credulously
+credulousness
+Cree
+cree
+creed
+creedal
+creedalism
+creedalist
+creedbound
+Creede
+creeded
+creedist
+creedite
+creedless
+creedlessness
+Creedmoor
+creedmore
+Creedon
+creeds
+creedsman
+Creek
+creek
+creeker
+creekfish
+creekfishes
+Creeks
+creeks
+creekside
+creekstuff
+creeky
+Creel
+creel
+creeled
+creeler
+creeling
+creels
+creem
+creen
+creep
+creepage
+creepages
+creeper
+creepered
+creeperless
+creepers
+creep-fed
+creep-feed
+creep-feeding
+creephole
+creepie
+creepie-peepie
+creepier
+creepies
+creepiest
+creepily
+creepiness
+creeping
+creepingly
+creepmouse
+creepmousy
+creeps
+creepy
+creepy-crawly
+Crees
+crees
+creese
+creeses
+creesh
+creeshed
+creeshes
+creeshie
+creeshing
+creeshy
+Crefeld
+CREG
+Creigh
+Creight
+Creighton
+Creil
+creirgist
+Crelin
+Crellen
+cremaillere
+cremains
+cremant
+cremaster
+cremasterial
+cremasteric
+cremate
+cremated
+cremates
+cremating
+cremation
+cremationism
+cremationist
+cremations
+cremator
+crematoria
+crematorial
+crematories
+crematoriria
+crematoririums
+crematorium
+crematoriums
+cremators
+crematory
+crembalum
+creme
+Cremer
+cremerie
+cremes
+Cremini
+cremnophobia
+cremocarp
+cremometer
+Cremona
+cremona
+cremone
+cremor
+cremorne
+cremosin
+cremule
+CREN
+crena
+crenae
+crenallation
+crenate
+crenated
+crenate-leaved
+crenately
+crenate-toothed
+crenation
+crenato-
+crenature
+crenel
+crenelate
+crenelated
+crenelates
+crenelating
+crenelation
+crenelations
+crenele
+creneled
+crenelee
+crenelet
+creneling
+crenellate
+crenellated
+crenellating
+crenellation
+crenelle
+crenelled
+crenelles
+crenelling
+crenels
+crengle
+crenic
+crenitic
+crenology
+crenotherapy
+Crenothrix
+Crenshaw
+crenula
+crenulate
+crenulated
+crenulation
+creodont
+Creodonta
+creodonts
+Creola
+Creole
+creole
+creole-fish
+creole-fishes
+creoleize
+creoles
+creolian
+Creolin
+creolism
+creolite
+creolization
+creolize
+creolized
+creolizing
+Creon
+creophagia
+creophagism
+creophagist
+creophagous
+creophagy
+creosol
+creosols
+creosote
+creosoted
+creosoter
+creosotes
+creosotic
+creosoting
+crepance
+crepe
+crepe-backed
+creped
+crepehanger
+crepeier
+crepeiest
+crepe-paper
+crepes
+crepey
+crepidoma
+crepidomata
+Crepidula
+crepier
+crepiest
+Crepin
+crepine
+crepiness
+creping
+Crepis
+crepis
+crepitacula
+crepitaculum
+crepitant
+crepitate
+crepitated
+crepitating
+crepitation
+crepitous
+crepitus
+creply
+crepon
+crepons
+crept
+crepuscle
+crepuscular
+crepuscule
+crepusculine
+crepusculum
+Crepy
+crepy
+Cres
+cres
+Cresa
+cresamine
+Cresbard
+cresc
+Crescantia
+Crescas
+Crescen
+crescence
+crescendi
+Crescendo
+crescendo
+crescendoed
+crescendoing
+crescendos
+Crescent
+crescent
+crescentade
+crescentader
+crescented
+crescent-formed
+Crescentia
+crescentic
+crescentiform
+crescenting
+crescentlike
+crescent-lit
+crescentoid
+crescent-pointed
+crescents
+crescent-shaped
+crescentwise
+Crescin
+Crescint
+crescive
+crescively
+Cresco
+crescograph
+crescographic
+cresegol
+Cresida
+Cresius
+cresive
+cresol
+cresolin
+cresoline
+cresols
+cresorcin
+cresorcinol
+cresotate
+cresotic
+cresotinate
+cresotinic
+cresoxid
+cresoxide
+cresoxy
+Cresphontes
+cresphontes
+Crespi
+Crespo
+cress
+cressed
+cresselle
+cresses
+cresset
+cressets
+Cressey
+Cressi
+Cressida
+cressida
+Cressie
+cressier
+cressiest
+Cresskill
+Cressler
+Cresson
+cresson
+Cressona
+cressweed
+cresswort
+Cressy
+cressy
+crest
+crestal
+crested
+crest-fallen
+crestfallen
+crestfallenly
+crestfallenness
+crestfallens
+crestfish
+cresting
+crestings
+crestless
+Crestline
+crestline
+crestmoreite
+Creston
+Crestone
+crests
+Crestview
+Crestwood
+Creswell
+cresyl
+cresylate
+cresylene
+cresylic
+cresylite
+cresyls
+Creta
+creta
+cretaceo-
+Cretaceous
+cretaceous
+cretaceously
+Cretacic
+Cretan
+Crete
+crete
+cretefaction
+Cretheis
+Cretheus
+Cretic
+cretic
+creticism
+cretics
+cretification
+cretify
+cretin
+cretinic
+cretinism
+cretinistic
+cretinization
+cretinize
+cretinized
+cretinizing
+cretinoid
+cretinous
+cretins
+cretion
+cretionary
+Cretism
+cretize
+Creto-mycenaean
+cretonne
+cretonnes
+cretoria
+Creusa
+Creuse
+Creusois
+Creusot
+creutzer
+crevalle
+crevalles
+crevass
+crevasse
+crevassed
+crevasses
+crevassing
+Crevecoeur
+crevet
+crevette
+crevice
+creviced
+crevices
+crevis
+crew
+crew-cropped
+crewcut
+Crewe
+crewe
+crewed
+crewel
+crewelist
+crewellery
+crewels
+crewel-work
+crewelwork
+crewer
+crewet
+crewing
+crewless
+crewman
+crewmanship
+crewmen
+crewneck
+crew-necked
+crews
+Crex
+CRFC
+CRFMP
+CR-glass
+CRI
+criance
+criant
+crib
+cribbage
+cribbages
+cribbed
+cribber
+cribbers
+cribbing
+cribbings
+crib-bit
+crib-bite
+crib-biter
+cribbiter
+crib-biting
+cribbiting
+crib-bitten
+cribble
+cribbled
+cribbling
+cribella
+cribellum
+crible
+cribo
+cribose
+cribral
+cribrate
+cribrately
+cribration
+cribriform
+cribriformity
+cribrose
+cribrosity
+cribrous
+cribs
+cribwork
+cribworks
+cric
+cricetid
+Cricetidae
+cricetids
+cricetine
+Cricetus
+Crichton
+Crick
+crick
+crick-crack
+cricke
+cricked
+cricket
+cricketed
+cricketer
+cricketers
+cricketing
+cricketings
+cricketlike
+crickets
+crickety
+crickey
+cricking
+crickle
+cricks
+crico-
+cricoarytenoid
+cricoid
+cricoidectomy
+cricoids
+cricopharyngeal
+cricothyreoid
+cricothyreotomy
+cricothyroid
+cricothyroidean
+cricotomy
+cricotracheotomy
+Cricotus
+criddle
+Criders
+cried
+crier
+criers
+cries
+criey
+Crifasi
+crig
+crikey
+Crile
+crile
+Crim
+crim
+crim.
+crimble
+crime
+Crimea
+crimea
+Crimean
+crimean
+crimeful
+crimeless
+crimelessness
+crimeproof
+crimes
+criminal
+criminaldom
+criminalese
+criminalism
+criminalist
+criminalistic
+criminalistician
+criminalistics
+criminalities
+criminality
+criminally
+criminalness
+criminaloid
+criminals
+criminate
+criminated
+criminating
+crimination
+criminative
+criminator
+criminatory
+crimine
+crimini
+criminis
+criminogenesis
+criminogenic
+criminol
+criminologic
+criminological
+criminologically
+criminologies
+criminologist
+criminologists
+criminology
+criminosis
+criminous
+criminously
+criminousness
+crimison
+crimmer
+crimmers
+crimmy
+crimogenic
+Crimora
+crimp
+crimpage
+crimped
+crimper
+crimpers
+crimpier
+crimpiest
+crimpiness
+crimping
+crimple
+crimpled
+Crimplene
+crimples
+crimpling
+crimpness
+crimps
+crimpy
+crimpy-haired
+crimson
+crimson-banded
+crimson-barred
+crimson-billed
+crimson-carmine
+crimson-colored
+crimson-dyed
+crimsoned
+crimson-fronted
+crimsoning
+crimson-lined
+crimsonly
+crimsonness
+crimson-petaled
+crimson-purple
+crimsons
+crimson-scarfed
+crimson-spotted
+crimson-tipped
+crimson-veined
+crimson-violet
+crimsony
+CRIN
+Crin
+crin
+crinal
+crinanite
+crinate
+crinated
+crinatory
+crinc-
+crinch
+crine
+crined
+crinel
+crinet
+cringe
+cringed
+cringeling
+cringer
+cringers
+cringes
+cringing
+cringingly
+cringingness
+cringle
+cringle-crangle
+cringles
+crini-
+crinicultural
+criniculture
+crinid
+criniere
+criniferous
+Criniger
+crinigerous
+crinion
+criniparous
+crinital
+crinite
+crinites
+crinitory
+crinivorous
+crink
+crinkle
+crinkle-crankle
+crinkled
+crinkleroot
+crinkles
+crinklier
+crinkliest
+crinkliness
+crinkling
+crinkly
+crinkly-haired
+crinkum
+crinkum-crankum
+crinogenic
+crinoid
+crinoidal
+Crinoidea
+crinoidean
+crinoids
+crinolette
+crinoline
+crinolines
+crinose
+crinosity
+crinula
+Crinum
+crinum
+crinums
+crio-
+criobolium
+crioboly
+criocephalus
+Crioceras
+crioceratite
+crioceratitic
+Crioceris
+criolla
+criollas
+criollo
+criollos
+criophore
+Criophoros
+Criophorus
+criosphinges
+criosphinx
+criosphinxes
+crip
+cripe
+cripes
+Crippen
+crippied
+crippingly
+cripple
+crippled
+crippledom
+crippleness
+crippler
+cripplers
+cripples
+crippling
+cripplingly
+cripply
+Cripps
+crips
+CRIS
+Cris
+cris
+Crises
+crises
+Crisey
+Criseyde
+Crisfield
+crisic
+crisis
+Crisium
+crisle
+CRISP
+crisp
+Crispa
+Crispas
+crispate
+crispated
+crispation
+crispature
+crispbread
+crisped
+crisped-leaved
+Crispen
+crispen
+crispened
+crispening
+crispens
+crisper
+crispers
+crispest
+Crispi
+crispier
+crispiest
+crispily
+Crispin
+crispin
+crispine
+crispiness
+crisping
+Crispinian
+crispins
+crisp-leaved
+crisply
+crispness
+crispnesses
+crisps
+crispy
+criss
+crissa
+crissal
+criss-cross
+crisscross
+crisscrossed
+crisscrosses
+crisscrossing
+crisscross-row
+crisset
+Crissie
+crissum
+Crissy
+Crist
+Crista
+crista
+Cristabel
+cristae
+Cristal
+cristate
+cristated
+Cristatella
+Cristen
+Cristi
+Cristian
+Cristiano
+Cristie
+cristiform
+Cristin
+Cristina
+Cristine
+Cristineaux
+Cristino
+Cristiona
+Cristionna
+Cristispira
+Cristivomer
+Cristobal
+cristobalite
+Cristoforo
+Cristophe
+Cristy
+cristy
+Criswell
+crit
+crit.
+critch
+Critchfield
+critchfield
+criteria
+criteriia
+criteriions
+criteriology
+criterion
+criterional
+criterions
+criterium
+crith
+Crithidia
+crithmene
+crithomancy
+critic
+critical
+criticality
+critically
+criticalness
+criticaster
+criticasterism
+criticastry
+criticisable
+criticise
+criticised
+criticiser
+criticises
+criticising
+criticisingly
+criticism
+criticisms
+criticist
+criticizable
+criticize
+criticized
+criticizer
+criticizers
+criticizes
+criticizing
+criticizingly
+critickin
+critico-
+critico-analytically
+critico-historical
+critico-poetical
+critico-theological
+critics
+criticship
+criticsm
+criticule
+critique
+critiqued
+critiques
+critiquing
+critism
+critize
+critling
+Critta
+Crittenden
+critter
+critteria
+critters
+crittur
+critturs
+Critz
+Crius
+crivetz
+Crivitz
+crizzel
+crizzle
+crizzled
+crizzling
+CRL
+crl
+CRLF
+cro
+croak
+croaked
+Croaker
+croaker
+croakers
+croakier
+croakiest
+croakily
+croakiness
+croaking
+croaks
+croaky
+croape
+Croat
+croat
+Croatan
+Croatia
+Croatian
+croatian
+croc
+Crocanthemum
+crocard
+Croce
+Croceatas
+croceic
+crocein
+croceine
+croceines
+croceins
+croceous
+crocetin
+croceus
+croche
+Crocheron
+crochet
+crocheted
+crocheter
+crocheters
+crocheteur
+crocheting
+crochets
+croci
+crociary
+crociate
+crocidolite
+Crocidura
+crocin
+crocine
+crock
+crockard
+crocked
+Crocker
+crocker
+crockeries
+crockery
+crockeryware
+crocket
+crocketed
+crocketing
+crockets
+Crockett
+Crocketville
+Crockford
+crocking
+crocko
+crocks
+crocky
+crocodile
+crocodilean
+crocodiles
+Crocodilia
+crocodilian
+Crocodilidae
+crocodiline
+crocodilite
+crocodility
+crocodiloid
+Crocodilus
+Crocodylidae
+Crocodylus
+crocoisite
+crocoite
+crocoites
+croconate
+croconic
+Crocosmia
+crocs
+Crocus
+crocus
+crocused
+crocuses
+crocuta
+Croesi
+Croesus
+Croesuses
+Croesusi
+Crofoot
+Croft
+croft
+crofter
+crofterization
+crofterize
+crofters
+crofting
+croftland
+Crofton
+crofts
+Croghan
+croh
+croighle
+croiik
+crois
+croisad
+croisade
+croisard
+croise
+croisee
+croises
+croisette
+croissant
+croissante
+croissants
+Croix
+crojack
+crojik
+crojiks
+croker
+Crokinole
+Crom
+Cro-Magnon
+Cro-magnon
+cro-magnon
+cromaltite
+crombec
+crome
+Cromer
+Cromerian
+cromfordite
+cromlech
+cromlechs
+cromme
+crommel
+Crommelin
+Cromona
+cromorna
+cromorne
+Crompton
+cromster
+Cromwell
+cromwell
+Cromwellian
+cromwellian
+Cronartium
+crone
+croneberry
+cronel
+Croner
+crones
+cronet
+Cronia
+Cronian
+cronian
+CRONIC
+cronie
+cronied
+cronies
+Cronin
+cronish
+cronk
+cronkness
+Cronos
+cronstedtite
+Cronus
+cronus
+crony
+cronying
+cronyism
+cronyisms
+Cronyn
+crooch
+crood
+croodle
+crooisite
+crook
+crookback
+crook-backed
+crookbacked
+crookbill
+crookbilled
+crooked
+crooked-backed
+crookedbacked
+crooked-billed
+crooked-branched
+crooked-clawed
+crookeder
+crookedest
+crooked-eyed
+crooked-foot
+crooked-legged
+crooked-limbed
+crooked-lined
+crooked-lipped
+crookedly
+crookedness
+crookednesses
+crooked-nosed
+crooked-pated
+crooked-shouldered
+crooked-stemmed
+crooked-toothed
+crooked-winged
+crooked-wood
+crooken
+crookeries
+crookery
+Crookes
+crookesite
+crookfingered
+crookheaded
+crooking
+crookkneed
+crookle
+crooklegged
+crookneck
+crooknecked
+crooknecks
+crooknosed
+Crooks
+crooks
+crookshouldered
+crooksided
+crooksterned
+Crookston
+Crooksville
+crooktoothed
+crool
+Croom
+Croomia
+croon
+crooned
+crooner
+crooners
+crooning
+crooningly
+croons
+croose
+crop
+crop-bound
+crop-dust
+crop-duster
+crop-dusting
+crop-ear
+crop-eared
+crop-farming
+crop-full
+crop-haired
+crophead
+crop-headed
+cropland
+croplands
+cropless
+cropman
+crop-nosed
+croppa
+cropped
+cropper
+croppers
+croppie
+croppies
+cropping
+cropplecrown
+crop-producing
+croppy
+crops
+Cropsey
+Cropseyville
+crop-shaped
+cropshin
+crop-sick
+cropsick
+cropsickness
+crop-tailed
+cropweed
+Cropwell
+croquet
+croqueted
+croqueting
+croquets
+croquette
+croquettes
+croquignole
+croquis
+crore
+crores
+crosa
+Crosby
+crosby
+Crosbyton
+crose
+croset
+crosette
+croshabell
+crosier
+crosiered
+crosiers
+croslet
+Crosley
+crosne
+crosnes
+Cross
+cross
+cross-
+crossability
+crossable
+cross-adoring
+cross-aisle
+cross-appeal
+crossarm
+cross-armed
+crossarms
+crossband
+cross-banded
+crossbanded
+cross-banding
+crossbanding
+cross-bar
+crossbar
+crossbarred
+crossbarring
+crossbars
+crossbbred
+cross-beak
+crossbeak
+cross-beam
+crossbeam
+crossbeams
+cross-bearer
+crossbearer
+cross-bearing
+cross-bearings
+cross-bedded
+cross-bedding
+crossbelt
+cross-bench
+crossbench
+cross-benched
+cross-benchedness
+cross-bencher
+crossbencher
+cross-bias
+cross-biased
+cross-biassed
+cross-bill
+crossbill
+cross-bind
+crossbirth
+crossbite
+crossbolt
+crossbolted
+cross-bombard
+cross-bond
+cross-bones
+crossbones
+Crossbow
+cross-bow
+crossbow
+crossbowman
+crossbowmen
+crossbows
+cross-bred
+crossbred
+crossbreds
+cross-breed
+crossbreed
+crossbreeded
+crossbreeding
+crossbreeds
+cross-bridge
+cross-brush
+cross-bun
+cross-buttock
+cross-buttocker
+cross-carve
+cross-channel
+cross-check
+crosscheck
+cross-church
+cross-claim
+cross-cloth
+cross-compound
+cross-connect
+cross-country
+cross-course
+crosscourt
+cross-cousin
+cross-crosslet
+crosscrosslet
+cross-crosslets
+crosscurrent
+crosscurrented
+crosscurrents
+cross-curve
+cross-cut
+crosscut
+crosscuts
+crosscutter
+crosscutting
+cross-datable
+cross-date
+cross-dating
+cross-days
+cross-disciplinary
+cross-division
+cross-drain
+cross-dye
+cross-dyeing
+Crosse
+crosse
+crossed
+crossed-h
+crossed-out
+cross-elbowed
+crosser
+crossers
+crosses
+crossest
+Crossett
+crossette
+cross-examination
+cross-examine
+cross-examined
+cross-examiner
+cross-examining
+cross-eye
+cross-eyed
+cross-eyedness
+cross-eyes
+cross-face
+cross-fade
+cross-faded
+cross-fading
+crossfall
+cross-feed
+cross-ferred
+cross-ferring
+cross-fertile
+cross-fertilizable
+crossfertilizable
+cross-fertilization
+cross-fertilize
+cross-fertilized
+cross-fertilizing
+cross-fiber
+cross-file
+cross-filed
+cross-filing
+cross-finger
+cross-fingered
+cross-fire
+crossfire
+crossfired
+cross-firing
+crossfiring
+cross-fish
+crossfish
+cross-fissured
+cross-fixed
+crossflow
+cross-flower
+crossflower
+cross-folded
+crossfoot
+cross-fox
+cross-fur
+cross-gagged
+cross-garnet
+cross-gartered
+cross-grain
+cross-grained
+cross-grainedly
+cross-grainedness
+crossgrainedness
+crosshackle
+crosshair
+crosshairs
+crosshand
+cross-handed
+cross-handled
+cross-hatch
+crosshatch
+crosshatched
+cross-hatcher
+crosshatcher
+crosshatches
+cross-hatching
+crosshatching
+crosshaul
+crosshauling
+cross-head
+crosshead
+cross-headed
+cross-hilted
+cross-immunity
+cross-immunization
+cross-index
+crossing
+crossing-out
+crossing-over
+crossings
+cross-interrogate
+cross-interrogation
+cross-interrogator
+cross-interrogatory
+cross-invite
+crossite
+cross-jack
+crossjack
+cross-joined
+cross-jostle
+cross-laced
+cross-laminated
+cross-land
+cross-lap
+crosslap
+cross-latticed
+cross-leaved
+cross-legged
+cross-leggedly
+cross-leggedness
+crosslegs
+crosslet
+crossleted
+crosslets
+cross-level
+crossley
+cross-license
+cross-licensed
+cross-licensing
+cross-lift
+cross-light
+crosslight
+crosslighted
+crosslike
+crossline
+cross-link
+crosslink
+cross-locking
+cross-lots
+crossly
+cross-marked
+cross-mate
+cross-mated
+cross-mating
+cross-multiplication
+crossness
+Crossnore
+crossopodia
+crossopt
+crossopterygian
+Crossopterygii
+Crossosoma
+Crossosomataceae
+crossosomataceous
+cross-out
+cross-over
+crossover
+crossovers
+cross-patch
+crosspatch
+crosspatches
+crosspath
+cross-pawl
+cross-peal
+cross-piece
+crosspiece
+crosspieces
+cross-piled
+cross-plough
+cross-plow
+cross-ply
+cross-point
+crosspoint
+crosspoints
+cross-pollen
+cross-pollenize
+cross-pollinate
+cross-pollinated
+cross-pollinating
+cross-pollination
+cross-pollinize
+cross-post
+crosspost
+cross-purpose
+cross-purposes
+cross-question
+cross-questionable
+cross-questioner
+cross-questioning
+crossrail
+cross-ratio
+cross-reaction
+cross-reading
+cross-refer
+cross-reference
+cross-remainder
+cross-road
+crossroad
+crossroading
+Crossroads
+crossroads
+cross-row
+crossrow
+cross-ruff
+crossruff
+cross-sail
+cross-section
+cross-sectional
+cross-shaped
+cross-shave
+cross-slide
+cross-spale
+cross-spall
+cross-springer
+cross-staff
+cross-staffs
+cross-star
+cross-staves
+cross-sterile
+cross-sterility
+cross-stitch
+cross-stitching
+cross-stone
+cross-stratification
+cross-stratified
+cross-striated
+cross-string
+cross-stringed
+cross-stringing
+cross-striped
+cross-strung
+cross-sue
+cross-surge
+cross-tail
+crosstail
+crosstalk
+crosstie
+crosstied
+crossties
+cross-tine
+crosstoes
+cross-town
+crosstown
+crosstrack
+cross-tree
+crosstree
+crosstrees
+cross-validation
+cross-vault
+cross-vaulted
+cross-vaulting
+cross-vein
+cross-veined
+cross-ventilate
+cross-ventilation
+Crossville
+cross-vine
+cross-voting
+crosswalk
+crosswalks
+cross-way
+crossway
+crossways
+crossweb
+crossweed
+Crosswicks
+cross-wind
+crosswind
+crosswise
+crosswiseness
+crossword
+cross-worder
+crossworder
+crosswords
+crosswort
+cross-wrapped
+crost
+crostarie
+Croswell
+crotal
+Crotalaria
+crotalaria
+crotalic
+crotalid
+Crotalidae
+crotaliform
+crotalin
+Crotalinae
+crotaline
+crotalism
+crotalo
+crotaloid
+crotalum
+Crotalus
+crotalus
+crotaphic
+crotaphion
+crotaphite
+crotaphitic
+Crotaphytus
+crotch
+crotched
+crotches
+crotchet
+crotcheted
+crotcheteer
+crotchetiness
+crotcheting
+crotchets
+crotchety
+crotching
+crotchwood
+crotchy
+Croteau
+crotesco
+Crothersville
+Crotia
+crotin
+Croton
+croton
+crotonaldehyde
+crotonate
+croton-bug
+crotonbug
+Crotone
+crotonic
+crotonization
+Croton-on-Hudson
+crotons
+crotonyl
+crotonylene
+Crotophaga
+Crotopus
+crottal
+crottels
+crottle
+Crotty
+Crotus
+crotyl
+crouch
+crouchant
+crouchback
+crouche
+crouched
+croucher
+crouches
+crouchie
+crouching
+crouchingly
+crouchmas
+crouch-ware
+crouke
+crounotherapy
+croup
+croupade
+croupal
+croupe
+crouperbush
+croupes
+croupier
+croupiers
+croupiest
+croupily
+croupiness
+croupon
+croupous
+croups
+croupy
+Crouse
+crouse
+crousely
+Crouseville
+croustade
+crout
+croute
+crouth
+crouton
+croutons
+Crow
+crow
+crowbait
+crow-bar
+crowbar
+crowbars
+crowbell
+crowberries
+crowberry
+crow-bill
+crowbill
+crowboot
+crowd
+crowded
+crowdedly
+crowdedness
+Crowder
+crowder
+crowders
+crowdie
+crowdies
+crowding
+crowdle
+crowds
+crowdweed
+crowdy
+Crowe
+crowed
+Crowell
+crower
+crowers
+crowfeet
+crow-flower
+crowflower
+crowfoot
+crowfooted
+crowfoots
+crow-garlic
+Crowheart
+crowhop
+crowhopper
+crowing
+crowingly
+crowkeeper
+crowl
+crow-leek
+Crowley
+Crown
+crown
+crownal
+crownation
+crownband
+crownbeard
+crowncapping
+crowned
+crowner
+crowners
+crownet
+crownets
+crown-glass
+crowning
+crown-land
+crownland
+crownless
+crownlet
+crownlike
+crownling
+crownmaker
+crownment
+crown-of-jewels
+crown-of-thorns
+crown-paper
+crown-piece
+crownpiece
+crown-post
+Crowns
+crowns
+crown-scab
+crown-shaped
+Crownsville
+crown-wheel
+crown-work
+crownwork
+crownwort
+crow-pheasant
+crow-quill
+crows
+crow's-feet
+crow's-foot
+crowshay
+crow-silk
+crow's-nest
+crow-soap
+crow-step
+crowstep
+crowstepped
+crowsteps
+crowstick
+crow-stone
+crowstone
+crow-toe
+crowtoe
+crow-tread
+crow-victuals
+Crowville
+croy
+croyden
+Croydon
+croydon
+croyl
+croze
+crozed
+crozer
+crozers
+crozes
+Crozet
+Crozier
+crozier
+croziers
+crozing
+crozle
+crozzle
+crozzly
+CRP
+crpe
+CRRES
+CRS
+crs
+CRSAB
+CRT
+CRTC
+crts
+cru
+crub
+crubeen
+Cruce
+cruce
+cruces
+crucethouse
+cruche
+crucial
+cruciality
+crucially
+crucialness
+crucian
+Crucianella
+crucians
+cruciate
+cruciated
+cruciately
+cruciating
+cruciation
+cruciato-
+crucible
+crucibles
+Crucibulum
+crucifer
+Cruciferae
+cruciferous
+crucifers
+crucificial
+crucified
+crucifier
+crucifies
+crucifige
+crucifix
+crucifixes
+Crucifixion
+crucifixion
+crucifixions
+cruciform
+cruciformity
+cruciformly
+crucify
+crucifyfied
+crucifyfying
+crucifying
+crucigerous
+crucilly
+crucily
+Crucis
+crucis
+cruck
+crucks
+crud
+crudded
+Crudden
+cruddier
+crudding
+cruddle
+cruddy
+crude
+crudelity
+crudely
+crudeness
+cruder
+crudes
+crudest
+crudites
+crudities
+crudity
+crudle
+cruds
+crudwort
+crudy
+cruel
+crueler
+cruelest
+cruel-hearted
+cruelhearted
+cruelize
+crueller
+cruellest
+cruelly
+cruelness
+cruels
+cruelties
+cruelty
+cruent
+cruentate
+cruentation
+cruentous
+cruet
+cruets
+cruety
+Cruger
+Cruickshank
+Cruikshank
+cruise
+cruised
+cruiser
+cruisers
+cruiserweight
+cruises
+cruiseway
+cruising
+cruisingly
+cruiskeen
+cruisken
+cruive
+crull
+cruller
+crullers
+Crum
+crum
+crumb
+crumbable
+crumbcloth
+crumbed
+crumber
+crumbers
+crumbier
+crumbiest
+crumbing
+crumble
+crumbled
+crumblement
+crumbles
+crumblet
+crumblier
+crumbliest
+crumbliness
+crumbling
+crumblingness
+crumblings
+crumbly
+crumbs
+crumbum
+crumbums
+crumby
+crumen
+crumena
+crumenal
+crumhorn
+crumlet
+crummable
+crummed
+crummer
+crummie
+crummier
+crummies
+crummiest
+crumminess
+crumming
+crummock
+crummy
+crump
+crumped
+crumper
+crumpet
+crumpets
+crumping
+crumple
+crumpled
+Crumpler
+crumpler
+crumples
+crumpling
+crumply
+crumps
+Crumpton
+crumpy
+Crumrod
+crumster
+crunch
+crunchable
+crunched
+cruncher
+crunchers
+crunches
+crunchier
+crunchiest
+crunchily
+crunchiness
+crunching
+crunchingly
+crunchingness
+crunchweed
+crunchy
+crunk
+crunkle
+crunodal
+crunode
+crunodes
+crunt
+cruor
+cruorin
+cruors
+crup
+cruppen
+crupper
+cruppered
+cruppering
+cruppers
+crura
+crural
+crureus
+crurogenital
+cruroinguinal
+crurotarsal
+crus
+crusade
+crusaded
+crusader
+crusaders
+Crusades
+crusades
+crusading
+crusado
+crusadoes
+crusados
+Crusca
+cruse
+cruses
+cruset
+crusets
+crush
+crushability
+crushable
+crushableness
+crushed
+crusher
+crushers
+crushes
+crushing
+crushingly
+crushproof
+crusie
+crusile
+crusilee
+crusily
+crusily-fitchy
+Crusoe
+crust
+crusta
+Crustacea
+crustacea
+crustaceal
+crustacean
+crustaceans
+crustaceological
+crustaceologist
+crustaceology
+crustaceorubrin
+crustaceous
+crustade
+crustal
+crustalogical
+crustalogist
+crustalogy
+crustate
+crustated
+crustation
+crusted
+crustedly
+cruster
+crust-hunt
+crust-hunter
+crust-hunting
+crustier
+crustiest
+crustific
+crustification
+crustily
+crustiness
+crusting
+crustless
+crustose
+crustosis
+crusts
+crusty
+crut
+crutch
+crutch-cross
+crutched
+Crutcher
+crutcher
+crutches
+crutching
+crutchlike
+crutch-stick
+cruth
+crutter
+Crux
+crux
+cruxes
+Cruyff
+Cruz
+cruzado
+cruzadoes
+cruzados
+cruzeiro
+cruzeiros
+cruziero
+cruzieros
+crwd
+crwth
+crwths
+CRY
+cry
+cry-
+cryable
+cryaesthesia
+cryal
+cryalgesia
+Cryan
+cryanesthesia
+crybabies
+crybaby
+cryesthesia
+crying
+cryingly
+crymoanesthesia
+crymodynia
+crymotherapy
+cryo-
+cryo-aerotherapy
+cryobiological
+cryobiologically
+cryobiologist
+cryobiology
+cryocautery
+cryochore
+cryochoric
+cryoconite
+cryogen
+cryogenic
+cryogenically
+cryogenics
+cryogenies
+cryogens
+cryogeny
+cryohydrate
+cryohydric
+cryolite
+cryolites
+cryological
+cryology
+cryometer
+cryometry
+cryonic
+cryonics
+cryopathy
+cryophile
+cryophilic
+cryophoric
+cryophorus
+cryophyllite
+cryophyte
+cryoplankton
+cryoprobe
+cryoprotective
+cryo-pump
+cryoscope
+cryoscopic
+cryoscopies
+cryoscopy
+cryosel
+cryosphere
+cryospheric
+cryostase
+cryostat
+cryostats
+cryosurgeon
+cryosurgery
+cryosurgical
+cryotherapies
+cryotherapy
+cryotron
+cryotrons
+crypt
+crypt-
+crypta
+cryptaesthesia
+cryptal
+cryptamnesia
+cryptamnesic
+cryptanalysis
+cryptanalyst
+cryptanalytic
+cryptanalytical
+cryptanalytically
+cryptanalytics
+cryptanalyze
+cryptanalyzed
+cryptanalyzing
+cryptarch
+cryptarchy
+crypted
+Crypteronia
+Crypteroniaceae
+cryptesthesia
+cryptesthetic
+cryptic
+cryptical
+cryptically
+crypticness
+crypto
+crypto-
+cryptoagnostic
+cryptoanalysis
+cryptoanalyst
+cryptoanalytic
+cryptoanalytically
+cryptoanalytics
+cryptobatholithic
+cryptobranch
+Cryptobranchia
+Cryptobranchiata
+cryptobranchiate
+Cryptobranchidae
+Cryptobranchus
+Crypto-calvinism
+Crypto-calvinist
+Crypto-calvinistic
+cryptocarp
+cryptocarpic
+cryptocarpous
+Cryptocarya
+Crypto-catholic
+Crypto-catholicism
+Cryptocephala
+cryptocephalous
+Cryptocerata
+cryptocerous
+Crypto-christian
+cryptoclastic
+Cryptocleidus
+cryptoclimate
+cryptoclimatology
+cryptococcal
+cryptococci
+cryptococcic
+cryptococcosis
+Cryptococcus
+cryptococcus
+cryptocommercial
+cryptocrystalline
+cryptocrystallization
+cryptodeist
+Cryptodira
+cryptodiran
+cryptodire
+cryptodirous
+cryptodouble
+cryptodynamic
+Crypto-fenian
+cryptogam
+cryptogame
+Cryptogamia
+cryptogamia
+cryptogamian
+cryptogamic
+cryptogamical
+cryptogamist
+cryptogamous
+cryptogamy
+cryptogenetic
+cryptogenic
+cryptogenous
+Cryptoglaux
+cryptoglioma
+cryptogram
+Cryptogramma
+cryptogrammatic
+cryptogrammatical
+cryptogrammatist
+cryptogrammic
+cryptograms
+cryptograph
+cryptographal
+cryptographer
+cryptographers
+cryptographic
+cryptographical
+cryptographically
+cryptographies
+cryptographist
+cryptography
+cryptoheresy
+cryptoheretic
+cryptoinflationist
+Crypto-jesuit
+Crypto-jew
+Crypto-jewish
+cryptolite
+cryptolith
+cryptologic
+cryptological
+cryptologist
+cryptology
+cryptolunatic
+cryptomere
+Cryptomeria
+cryptomeria
+cryptomerous
+cryptometer
+cryptomnesia
+cryptomnesic
+cryptomonad
+Cryptomonadales
+Cryptomonadina
+cryptonema
+Cryptonemiales
+cryptoneurous
+cryptonym
+cryptonymic
+cryptonymous
+cryptopapist
+cryptoperthite
+Cryptophagidae
+cryptophthalmos
+Cryptophyceae
+cryptophyte
+cryptophytic
+cryptopin
+cryptopine
+cryptoporticus
+Cryptoprocta
+cryptoproselyte
+cryptoproselytism
+Crypto-protestant
+cryptopyic
+cryptopyrrole
+cryptorchid
+cryptorchidism
+cryptorchis
+cryptorchism
+Cryptorhynchus
+Crypto-royalist
+cryptorrhesis
+cryptorrhetic
+cryptos
+cryptoscope
+cryptoscopy
+Crypto-socinian
+cryptosplenetic
+Cryptostegia
+cryptostoma
+Cryptostomata
+cryptostomate
+cryptostome
+Cryptotaenia
+cryptous
+cryptovalence
+cryptovalency
+cryptovolcanic
+cryptovolcanism
+cryptoxanthin
+Cryptozoic
+cryptozoic
+cryptozoite
+cryptozonate
+Cryptozonia
+Cryptozoon
+cryptozygosity
+cryptozygous
+cryptozygy
+crypts
+Crypturi
+Crypturidae
+cryst
+cryst.
+Crysta
+Crystal
+crystal
+crystal-clear
+crystal-clearness
+crystal-dropping
+crystaled
+crystal-flowing
+crystal-gazer
+crystal-girded
+crystaling
+Crystalite
+crystalitic
+crystalize
+crystall
+crystal-leaved
+crystalled
+crystallic
+crystalliferous
+crystalliform
+crystalligerous
+crystallike
+crystallin
+crystalline
+crystalling
+crystallinity
+crystallisability
+crystallisable
+crystallisation
+crystallise
+crystallised
+crystallising
+crystallite
+crystallites
+crystallitic
+crystallitis
+crystallizability
+crystallizable
+crystallization
+crystallizations
+crystallize
+crystallized
+crystallizer
+crystallizes
+crystallizing
+crystallo-
+crystalloblastic
+crystallochemical
+crystallochemistry
+crystallod
+crystallogenesis
+crystallogenetic
+crystallogenic
+crystallogenical
+crystallogeny
+crystallogram
+crystallograph
+crystallographer
+crystallographers
+crystallographic
+crystallographical
+crystallographically
+crystallography
+crystallogy
+crystalloid
+crystalloidal
+crystallology
+crystalloluminescence
+crystallomagnetic
+crystallomancy
+crystallometric
+crystallometry
+crystallophobia
+crystallophyllian
+Crystallose
+crystallose
+crystallurgy
+crystal-producing
+crystals
+crystal-smooth
+crystal-streaming
+crystal-winged
+crystalwort
+cryste
+crystic
+Crystie
+crystograph
+crystoleum
+Crystolon
+crystosphene
+crzette
+C.S.
+CS
+Cs
+cS
+cs
+cs.
+CSA
+CSAB
+CSACC
+CSACS
+CSAR
+csardas
+CSB
+CSC
+csc
+csch
+C-scroll
+CSD
+CSDC
+CSE
+csect
+csects
+Csel
+CSF
+C-shaped
+C-sharp
+CSI
+csi
+CSIRO
+CSIS
+csk
+CSL
+CSM
+CSMA
+CSMACA
+CSMACD
+csmp
+CSN
+CSNET
+csnet
+CSO
+CSOC
+CSP
+csp
+CSPAN
+CSR
+CSRG
+CSRI
+CSRS
+CSS
+CST
+cst
+C-star
+CSTC
+CSU
+csw
+C.T.
+CT
+Ct
+ct
+ct.
+CTA
+CTC
+CTD
+cte
+Cteatus
+ctelette
+Ctenacanthus
+ctene
+ctenidia
+ctenidial
+ctenidium
+cteniform
+ctenii
+cteninidia
+ctenizid
+cteno-
+Ctenocephalus
+ctenocyst
+ctenodactyl
+Ctenodipterini
+ctenodont
+Ctenodontidae
+Ctenodus
+ctenoid
+ctenoidean
+Ctenoidei
+ctenoidian
+ctenolium
+Ctenophora
+ctenophora
+ctenophoral
+ctenophoran
+ctenophore
+ctenophoric
+ctenophorous
+Ctenoplana
+Ctenostomata
+ctenostomatous
+ctenostome
+CTERM
+Ctesiphon
+Ctesippus
+Ctesius
+ctetology
+ctf
+ctg
+ctge
+Cthrine
+ctimo
+CTIO
+CTM
+CTMS
+ctn
+CTNE
+CTO
+cto
+ctr
+ctr.
+ctrl
+CTS
+cts
+cts.
+CTSS
+CTT
+CTTC
+CTTN
+CTV
+CU
+Cu
+cu
+CUA
+cuadra
+cuadrilla
+cuadrillas
+cuadrillero
+Cuailnge
+Cuajone
+cuamuchil
+cuapinole
+cuarenta
+cuarta
+cuartel
+cuarteron
+cuartilla
+cuartillo
+cuartino
+cuarto
+Cub
+cub
+Cuba
+cuba
+Cubage
+cubage
+cubages
+cubalaya
+Cuban
+cuban
+cubane
+cubangle
+cubanite
+Cubanize
+cubans
+cubas
+cubation
+cubatory
+cubature
+cubatures
+cubbies
+cubbing
+cubbish
+cubbishly
+cubbishness
+cubby
+cubbyhole
+cubbyholes
+cubbyhouse
+cubbyu
+cubbyyew
+cubdom
+cub-drawn
+cube
+cubeb
+cubebs
+cubed
+cubehead
+cubelet
+Cubelium
+cuber
+cubera
+Cubero
+cubers
+cubes
+cube-shaped
+cubhood
+cub-hunting
+cubi
+cubi-
+cubic
+cubica
+cubical
+cubically
+cubicalness
+cubicities
+cubicity
+cubicle
+cubicles
+cubicly
+cubicone
+cubicontravariant
+cubicovariant
+cubics
+cubicula
+cubicular
+cubiculary
+cubiculo
+cubiculum
+cubiform
+cubing
+Cubism
+cubism
+cubisms
+cubist
+cubistic
+cubistically
+cubists
+cubit
+cubital
+cubitale
+cubitalia
+cubited
+cubiti
+cubitiere
+cubito
+cubito-
+cubitocarpal
+cubitocutaneous
+cubitodigital
+cubitometacarpal
+cubitopalmar
+cubitoplantar
+cubitoradial
+cubits
+cubitus
+cubla
+cubmaster
+cubo-
+cubocalcaneal
+cuboctahedron
+cubocube
+cubocuneiform
+cubododecahedral
+cuboid
+cuboidal
+cuboides
+cuboids
+cubomancy
+Cubomedusae
+cubomedusan
+cubometatarsal
+cubonavicular
+cubo-octahedral
+cubo-octahedron
+Cu-bop
+Cubrun
+cubs
+cubti
+cuca
+cucaracha
+Cuchan
+cuchia
+Cuchillo
+Cuchulain
+Cuchulainn
+Cuchullain
+cuck
+cuckhold
+cucking
+cucking-stool
+cuckold
+cuckolded
+cuckolding
+cuckoldize
+cuckoldly
+cuckoldom
+cuckoldry
+cuckolds
+cuckoldy
+cuckoo
+cuckoo-babies
+cuckoo-bread
+cuckoo-bud
+cuckoo-button
+cuckooed
+cuckoo-flower
+cuckooflower
+cuckoo-fly
+cuckoo-fool
+cuckooing
+cuckoomaid
+cuckoomaiden
+cuckoomate
+cuckoo-meat
+cuckoo-pint
+cuckoopint
+cuckoo-pintle
+cuckoopintle
+cuckoos
+cuckoo-shrike
+cuckoo-spit
+cuckoo-spittle
+cuckquean
+cuck-stool
+cuckstool
+cucoline
+CUCRIT
+Cucujid
+Cucujidae
+Cucujus
+cucularis
+cucule
+Cuculi
+Cuculidae
+cuculiform
+Cuculiformes
+cuculine
+cuculla
+cucullaris
+cucullate
+cucullated
+cucullately
+cuculle
+cuculliform
+cucullus
+cuculoid
+Cuculus
+Cucumaria
+Cucumariidae
+cucumber
+cucumbers
+cucumiform
+Cucumis
+cucupha
+cucurb
+cucurbit
+Cucurbita
+Cucurbitaceae
+cucurbitaceous
+cucurbital
+cucurbite
+cucurbitine
+cucurbits
+Cucuta
+cucuy
+cucuyo
+cud
+Cuda
+cuda
+Cudahy
+cudava
+cudbear
+cudbears
+cud-chewing
+Cuddebackville
+cudden
+cuddie
+cuddies
+cuddle
+cuddleable
+cuddled
+cuddles
+cuddlesome
+cuddlier
+cuddliest
+cuddling
+cuddly
+Cuddy
+cuddy
+cuddyhole
+cudeigh
+cudgel
+cudgeled
+cudgeler
+cudgelers
+cudgeling
+cudgelled
+cudgeller
+cudgelling
+cudgels
+cudgerie
+Cudlip
+cuds
+cudweed
+cudweeds
+cudwort
+cue
+cueball
+cue-bid
+cue-bidden
+cue-bidding
+cueca
+cuecas
+cued
+cueing
+cueist
+cueman
+cuemanship
+cuemen
+Cuenca
+cue-owl
+cuerda
+Cuernavaca
+Cuero
+cuerpo
+Cuervo
+cues
+cuesta
+cuestas
+Cueva
+cuff
+cuffed
+cuffer
+cuffin
+cuffing
+cuffle
+cuffless
+cufflink
+cufflinks
+cuffs
+cuffy
+cuffyism
+Cufic
+cufic
+cuggermugger
+Cui
+Cuiaba
+cuichunchulli
+Cuicuilco
+cuidado
+cuiejo
+cuiejos
+cuif
+cuifs
+cuinage
+cuinfo
+cuing
+cuir
+cuirass
+cuirassed
+cuirasses
+cuirassier
+cuirassing
+cuir-bouilli
+cuirie
+cuish
+cuishes
+cuisinary
+cuisine
+cuisines
+cuisinier
+cuissard
+cuissart
+cuisse
+cuissen
+cuisses
+cuisten
+cuit
+Cuitlateco
+cuitle
+cuitled
+cuitling
+cuittikin
+cuittle
+cuittled
+cuittles
+cuittling
+cui-ui
+cuj
+Cujam
+cuke
+cukes
+Cukor
+CUL
+cul
+-cula
+culation
+Culavamsa
+Culberson
+Culbert
+culbert
+Culbertson
+culbut
+culbute
+culbuter
+culch
+culches
+Culdee
+culdee
+cul-de-four
+cul-de-lampe
+Culdesac
+cul-de-sac
+-cule
+Culebra
+culebra
+culerage
+culet
+culets
+culett
+culeus
+Culex
+culex
+culgee
+Culhert
+Culiac
+Culiacan
+culices
+culicid
+Culicidae
+culicidal
+culicide
+culicids
+culiciform
+culicifugal
+culicifuge
+Culicinae
+culicine
+culicines
+Culicoides
+culilawan
+culinarian
+culinarily
+culinary
+Culion
+Cull
+cull
+culla
+cullage
+Cullan
+cullas
+cullay
+cullays
+culled
+Cullen
+cullender
+Culleoka
+culler
+cullers
+cullet
+cullets
+Culley
+cullibility
+cullible
+Cullie
+cullied
+cullies
+Cullin
+culling
+cullion
+cullionly
+cullionry
+cullions
+cullis
+cullisance
+cullises
+Culliton
+Cullman
+Culloden
+Cullom
+Cullowhee
+culls
+Cully
+cully
+cullying
+Culm
+culm
+culmed
+culmen
+culmicolous
+culmiferous
+culmigenous
+culminal
+culminant
+culminatation
+culminatations
+culminate
+culminated
+culminates
+culminating
+culmination
+culminations
+culminative
+culming
+culms
+culmy
+Culosio
+culot
+culotte
+culottes
+culottic
+culottism
+culp
+culpa
+culpabilis
+culpability
+culpable
+culpableness
+culpably
+culpae
+culpas
+culpate
+culpatory
+culpeo
+Culpeper
+culpon
+culpose
+culprit
+culprits
+culrage
+culsdesac
+cult
+cultch
+cultches
+cultellation
+cultelli
+cultellus
+culter
+culteranismo
+culti
+cultic
+cultigen
+cultigens
+cultirostral
+Cultirostres
+cultish
+cultism
+cultismo
+cultisms
+cultist
+cultistic
+cultists
+cultivability
+cultivable
+cultivably
+cultivar
+cultivars
+cultivatability
+cultivatable
+cultivatation
+cultivatations
+cultivate
+cultivated
+cultivates
+cultivating
+cultivation
+cultivations
+cultivative
+cultivator
+cultivators
+cultive
+cultrate
+cultrated
+cultriform
+cultrirostral
+Cultrirostres
+cults
+culttelli
+cult-title
+cultual
+culturable
+cultural
+culturalist
+culturally
+cultural-nomadic
+culture
+cultured
+cultureless
+cultures
+culturine
+culturing
+culturist
+culturization
+culturize
+culturological
+culturologically
+culturologist
+culturology
+cultus
+cultus-cod
+cultuses
+-culus
+Culver
+culver
+culverfoot
+culverhouse
+culverin
+culverineer
+culveriner
+culverins
+culverkey
+culverkeys
+culvers
+culvert
+culvertage
+culverts
+culverwort
+cum
+Cumacea
+cumacean
+cumaceous
+Cumae
+Cumaean
+cumal
+cumaldehyde
+Cuman
+Cumana
+Cumanagoto
+cumaphyte
+cumaphytic
+cumaphytism
+Cumar
+cumara
+cumarin
+cumarins
+cumarone
+cumaru
+cumay
+cumbent
+cumber
+cumbered
+cumberer
+cumberers
+cumbering
+Cumberland
+cumberland
+cumberlandite
+cumberless
+cumberment
+Cumbernauld
+cumbers
+cumbersome
+cumbersomely
+cumbersomeness
+cumberworld
+cumbha
+cumble
+cumbly
+Cumbola
+cumbraite
+cumbrance
+cumbre
+Cumbria
+Cumbrian
+cumbrous
+cumbrously
+cumbrousness
+cumbu
+Cumby
+cumene
+cumengite
+cumenyl
+cumflutter
+cumhal
+cumic
+cumidin
+cumidine
+cumin
+cuminal
+Cumine
+Cumings
+cuminic
+cuminoin
+cuminol
+cuminole
+cumins
+cuminseed
+cuminyl
+cumly
+Cummaquid
+cummer
+cummerbund
+cummerbunds
+cummers
+cummin
+Cummine
+Cumming
+Cummings
+Cummington
+cummingtonite
+Cummins
+cummins
+cummock
+cumol
+cump
+cumquat
+cumquats
+cumsha
+cumshaw
+cumshaws
+cumu-cirro-stratus
+cumul-
+cumulant
+cumular
+cumular-spherulite
+cumulate
+cumulated
+cumulately
+cumulates
+cumulating
+cumulation
+cumulatist
+cumulative
+cumulatively
+cumulativeness
+cumulato-
+cumulene
+cumulet
+cumuli
+cumuliform
+cumulite
+cumulo-
+cumulo-cirro-stratus
+cumulo-cirrus
+cumulocirrus
+cumulo-nimbus
+cumulonimbus
+cumulophyric
+cumulose
+cumulo-stratus
+cumulostratus
+cumulous
+cumulo-volcano
+cumulus
+cumyl
+cun
+Cuna
+cunabula
+cunabular
+Cunan
+Cunard
+Cunarder
+Cunas
+Cunaxa
+cunctation
+cunctatious
+cunctative
+cunctator
+cunctatorship
+cunctatory
+cunctatury
+cunctipotent
+cund
+cundeamor
+Cundiff
+cundite
+cundum
+cundums
+cundurango
+cundy
+cunea
+cuneal
+cuneate
+cuneated
+cuneately
+cuneatic
+cuneator
+cunei
+cuneiform
+cuneiformist
+cunenei
+Cuneo
+cuneo-
+cuneocuboid
+cuneonavicular
+cuneoscaphoid
+cunette
+cuneus
+Cuney
+Cung
+cungeboi
+cungevoi
+cunicular
+cuniculi
+cuniculus
+cuniform
+cuniforms
+cunila
+cunili
+Cunina
+cunit
+cunjah
+cunjer
+cunjevoi
+cunner
+cunners
+cunni
+cunnilinctus
+cunnilinguism
+cunnilingus
+cunning
+cunningaire
+cunninger
+cunningest
+Cunningham
+Cunninghamia
+cunningly
+cunningness
+cunnings
+cunny
+Cunonia
+Cunoniaceae
+cunoniaceous
+cunt
+cunts
+CUNY
+cunye
+cunyie
+Cunza
+cunzie
+Cuon
+cuorin
+cup
+Cupania
+Cupavo
+cupay
+cup-bearer
+cupbearer
+cupbearers
+cupboard
+cupboards
+cupcake
+cupcakes
+cupel
+cupeled
+cupeler
+cupelers
+cupeling
+cupellation
+cupelled
+cupeller
+cupellers
+cupelling
+cupels
+Cupertino
+cupflower
+cupful
+cupfulfuls
+cupfuls
+Cuphea
+cuphead
+cup-headed
+cupholder
+Cupid
+cupid
+cupidinous
+cupidities
+cupidity
+cupidon
+cupidone
+cupids
+cupid's-bow
+Cupid's-dart
+cupiuba
+cupless
+cuplike
+cupmaker
+cupmaking
+cupman
+cup-mark
+cup-marked
+cupmate
+cup-moss
+Cupo
+cupola
+cupola-capped
+cupolaed
+cupolaing
+cupolaman
+cupolar
+cupola-roofed
+cupolas
+cupolated
+cuppa
+cuppas
+cupped
+cuppen
+cupper
+cuppers
+cuppier
+cuppiest
+cuppin
+cupping
+cuppings
+cuppy
+cuprammonia
+cuprammonium
+cuprate
+cuprein
+cupreine
+cuprene
+cupreo-
+cupreous
+Cupressaceae
+cupressineous
+Cupressinoxylon
+Cupressus
+cupric
+cupride
+cupriferous
+cuprite
+cuprites
+cupro-
+cuproammonium
+cuprobismutite
+cuprocyanide
+cuprodescloizite
+cuproid
+cuproiodargyrite
+cupromanganese
+cupronickel
+cuproplumbite
+cuproscheelite
+cuprose
+cuprosilicon
+cuproso-
+cuprotungstite
+cuprous
+cuprum
+cuprums
+cups
+cupseed
+cupsful
+cup-shake
+cup-shaped
+cup-shot
+cupstone
+cup-tied
+cup-tossing
+cupula
+cupulae
+cupular
+cupulate
+cupule
+cupules
+Cupuliferae
+cupuliferous
+cupuliform
+cur
+cur.
+cura
+Curaao
+curability
+curable
+curableness
+curably
+Curacao
+curacao
+curacaos
+curace
+curacies
+curacoa
+curacoas
+curacy
+curage
+curagh
+curaghs
+curara
+curaras
+Curare
+curare
+curares
+curari
+curarine
+curarines
+curaris
+curarization
+curarize
+curarized
+curarizes
+curarizing
+curassow
+curassows
+curat
+curatage
+curate
+curatel
+curates
+curateship
+curatess
+curatial
+curatic
+curatical
+curation
+curative
+curatively
+curativeness
+curatives
+curatize
+curatolatry
+curator
+curatorial
+curatorium
+curators
+curatorship
+curatory
+curatrices
+curatrix
+Curavecan
+curb
+curbable
+curbash
+curbed
+curber
+curbers
+curbing
+curbings
+curbless
+curblike
+curbline
+curb-plate
+curb-roof
+curbs
+curb-sending
+curbside
+curb-stone
+curbstone
+curbstoner
+curbstones
+curby
+curcas
+curch
+curchef
+curches
+curchy
+Curcio
+curcuddoch
+Curculio
+curculio
+curculionid
+Curculionidae
+curculionist
+curculios
+Curcuma
+curcuma
+curcumas
+curcumin
+curd
+curded
+curdier
+curdiest
+curdiness
+curding
+curdle
+curdled
+curdler
+curdlers
+curdles
+curdling
+curdly
+curdoo
+curds
+Curdsville
+curdwort
+curdy
+cure
+cure-all
+cured
+cureless
+curelessly
+curelessness
+curemaster
+curer
+curers
+cures
+curet
+Curetes
+curets
+curettage
+curette
+curetted
+curettement
+curettes
+curetting
+curf
+curfew
+curfewed
+curfewing
+curfews
+curfs
+Curhan
+Curia
+curia
+curiae
+curiage
+curial
+curialism
+curialist
+curialistic
+curialities
+curiality
+curiam
+curiara
+curiate
+Curiatii
+curiboca
+Curie
+curie
+curiegram
+curies
+curiescopy
+curiet
+curietherapy
+curin
+curine
+curing
+curio
+curiolofic
+curiologic
+curiological
+curiologically
+curiologics
+curiology
+curiomaniac
+curios
+curiosa
+curiosi
+curiosities
+curiosity
+curioso
+curiosos
+curious
+curiouser
+curiousest
+curiously
+curiousness
+curiousnesses
+curite
+curites
+Curitiba
+Curitis
+Curityba
+curium
+curiums
+Curkell
+curl
+curled
+curled-leaved
+curledly
+curledness
+curler
+curlers
+curlew
+curlewberry
+curlews
+Curley
+curl-flowered
+curlicue
+curlicued
+curlicues
+curlicuing
+curlier
+curliest
+curlie-wurlie
+curliewurlie
+curliewurly
+curlike
+curlily
+curliness
+curling
+curlingly
+curlings
+Curllsville
+curlpaper
+curls
+curly
+curly-coated
+curlycue
+curlycues
+curly-haired
+curlyhead
+curly-headed
+curlyheads
+curly-locked
+curlylocks
+curly-pate
+curly-pated
+curly-polled
+curly-toed
+curmudgeon
+curmudgeonery
+curmudgeonish
+curmudgeonly
+curmudgeons
+curmurging
+curmurring
+curn
+curney
+curneys
+curnie
+curnies
+Curnin
+curnock
+curns
+curpel
+curpin
+curple
+Curr
+curr
+currach
+currachs
+currack
+curragh
+curraghs
+currajong
+Curran
+curran
+currance
+currane
+currans
+currant
+currant-leaf
+currants
+currantworm
+curratow
+currawang
+currawong
+curred
+Curren
+currencies
+currency
+current
+currently
+currentness
+currents
+currentwise
+Currer
+Currey
+curricla
+curricle
+curricled
+curricles
+curricling
+curricula
+curricular
+curricularization
+curricularize
+curriculum
+curriculums
+Currie
+currie
+curried
+Currier
+currier
+currieries
+curriers
+curriery
+curries
+curriing
+currijong
+curring
+currish
+currishly
+currishness
+Currituck
+currock
+currs
+Curry
+curry
+curry-comb
+currycomb
+currycombed
+currycombing
+currycombs
+curry-favel
+curryfavel
+curryfavour
+currying
+Curryville
+curs
+Cursa
+cursal
+cursaro
+curse
+cursed
+curseder
+cursedest
+cursedly
+cursedness
+cursement
+cursen
+curser
+cursers
+curses
+curship
+cursillo
+cursing
+cursitate
+cursitor
+cursive
+cursively
+cursiveness
+cursives
+Curson
+cursor
+cursorary
+Cursores
+cursores
+Cursoria
+cursorial
+Cursoriidae
+cursorily
+cursoriness
+cursorious
+Cursorius
+cursors
+cursory
+curst
+curstful
+curstfully
+curstly
+curstness
+cursus
+Curt
+curt
+curtail
+curtailed
+curtailedly
+curtailer
+curtailing
+curtailment
+curtailments
+curtails
+curtail-step
+curtain
+curtained
+curtaining
+curtainless
+curtain-raiser
+curtains
+curtainwise
+curtal
+curtal-ax
+curtalax
+curtalaxes
+curtals
+Curtana
+curtana
+curtate
+curtation
+curtaxe
+curtays
+curted
+curtein
+curtelace
+curteous
+curter
+curtesies
+curtest
+curtesy
+Curt-hose
+curt-hose
+Curtice
+curtilage
+Curtin
+Curtis
+Curtise
+Curtiss
+Curtisville
+Curtius
+curtlax
+curtly
+curtness
+curtnesses
+curtsey
+curtseyed
+curtseying
+curtseys
+curtsied
+curtsies
+curtsy
+curtsying
+curua
+curuba
+Curucaneca
+Curucanecan
+curucucu
+curucui
+curule
+Curuminaca
+Curuminacan
+curupay
+curupays
+curupey
+Curupira
+cururo
+cururos
+Curuzu-Cuatia
+curvaceous
+curvaceously
+curvaceousness
+curvacious
+curval
+curvant
+curvate
+curvated
+curvation
+curvative
+curvature
+curvatures
+curve
+curve-ball
+curveball
+curve-billed
+curved
+curved-fruited
+curved-horned
+curvedly
+curvedness
+curved-veined
+curve-fruited
+curver
+curves
+curvesome
+curvesomeness
+curvet
+curveted
+curveting
+curvets
+curvette
+curvetted
+curvetting
+curve-veined
+curvey
+curvi-
+curvicaudate
+curvicostate
+curvidentate
+curvier
+curviest
+curvifoliate
+curviform
+curvilinead
+curvilineal
+curvilinear
+curvilinearity
+curvilinearly
+curvimeter
+curvinervate
+curvinerved
+curviness
+curving
+curvirostral
+Curvirostres
+curviserial
+curvital
+curvities
+curvity
+curvle
+curvograph
+curvometer
+curvous
+curvulate
+curvy
+Curwensville
+curwhibble
+curwillet
+cury
+curying
+Curzon
+Cusack
+Cusanus
+Cusco
+cusco-bark
+cuscohygrin
+cuscohygrine
+cusconin
+cusconine
+Cuscus
+cuscus
+cuscuses
+Cuscuta
+Cuscutaceae
+cuscutaceous
+cusec
+cusecs
+cuselite
+Cush
+cush
+cushag
+cushat
+cushats
+cushaw
+cushaws
+cush-cush
+cushew-bird
+cushewbird
+cushie
+cushier
+cushiest
+cushily
+cushiness
+Cushing
+cushing
+cushion
+cushioncraft
+cushioned
+cushionet
+cushionflower
+cushion-footed
+cushioniness
+cushioning
+cushionless
+cushionlike
+cushions
+cushion-shaped
+cushion-tired
+cushiony
+Cushite
+Cushitic
+cushitic
+cushlamochree
+Cushman
+cushy
+Cusick
+cusie
+cusinero
+cusk
+cusk-eel
+cusk-eels
+cusks
+CUSO
+Cusp
+cusp
+cuspal
+cusparia
+cusparidine
+cusparine
+cuspate
+cuspated
+cusped
+cuspid
+cuspidal
+cuspidate
+cuspidated
+cuspidation
+cuspides
+cuspidine
+cuspidor
+cuspidors
+cuspids
+cusping
+cuspis
+cusps
+cusp-shaped
+cuspule
+cuss
+cussed
+cussedly
+cussedness
+cusser
+cussers
+cusses
+Cusseta
+cussing
+cussing-out
+cusso
+cussos
+cussword
+cusswords
+cust
+Custar
+custard
+custard-cups
+custards
+Custer
+custerite
+custode
+custodee
+custodes
+custodia
+custodial
+custodiam
+custodian
+custodians
+custodianship
+custodier
+custodies
+custody
+custom
+customable
+customableness
+customably
+customance
+customaries
+customarily
+customariness
+customary
+custom-built
+custom-cut
+customed
+customer
+customers
+custom-house
+customhouse
+customhouses
+customing
+customizable
+customization
+customizations
+customize
+customized
+customizer
+customizers
+customizes
+customizing
+customly
+custom-made
+customs
+customs-exempt
+customs-house
+customshouse
+custom-tailored
+custos
+custrel
+custron
+custroun
+custumal
+custumals
+Cut
+cut
+cutability
+Cutaiar
+cut-and-cover
+cut-and-dried
+cut-and-dry
+cut-and-try
+cutaneal
+cutaneous
+cutaneously
+cut-away
+cutaway
+cutaways
+cut-back
+cutback
+cutbacks
+Cutbank
+cutbank
+cutbanks
+Cutch
+cutch
+cutcha
+Cutcheon
+cutcher
+cutcheries
+cutcherries
+cutcherry
+cutchery
+cutches
+Cutchogue
+Cutcliffe
+cut-down
+cutdown
+cutdowns
+cute
+cutely
+cuteness
+cutenesses
+cuter
+Cuterebra
+cutes
+cutesie
+cutesier
+cutesiest
+cutest
+cutesy
+cutey
+cuteys
+cut-finger
+cut-glass
+cut-grass
+cutgrass
+cutgrasses
+Cuthbert
+Cuthbertson
+Cuthburt
+cutheal
+cuticle
+cuticles
+cuticolor
+cuticula
+cuticulae
+cuticular
+cuticularization
+cuticularize
+cuticulate
+cutidure
+cutiduris
+cutie
+cuties
+cutification
+cutify
+cutigeral
+cutikin
+cut-in
+cutin
+cutinisation
+cutinise
+cutinised
+cutinises
+cutinising
+cutinization
+cutinize
+cutinized
+cutinizes
+cutinizing
+cutins
+cutireaction
+cutis
+cutisector
+cutises
+Cutiterebra
+cutitis
+cutization
+CUTK
+cutlas
+cutlases
+cutlash
+cutlass
+cutlasses
+cutlassfish
+cutlassfishes
+cut-leaf
+cut-leaved
+Cutler
+cutler
+cutleress
+Cutleria
+Cutleriaceae
+cutleriaceous
+Cutleriales
+cutleries
+Cutlerr
+cutlers
+cutlery
+cutlet
+cutlets
+cutline
+cutlines
+cutling
+cutlings
+Cutlip
+cutlips
+Cutlor
+cutocellulose
+cut-off
+cutoff
+cutoffs
+cutose
+cut-out
+cutout
+cutouts
+cutover
+cutovers
+cut-paper
+cut-price
+cutpurse
+cutpurses
+cut-rate
+CUTS
+cuts
+cutset
+Cutshin
+cuttable
+Cuttack
+cuttage
+cuttages
+cuttail
+cuttanee
+cutted
+Cutter
+cutter
+cutter-built
+cutter-down
+cutter-gig
+cutterhead
+cutterman
+cutter-off
+cutter-out
+cutter-rigged
+cutters
+cutter-up
+cutthroat
+cutthroats
+cut-through
+Cuttie
+cutties
+cuttikin
+cutting
+cuttingly
+cuttingness
+cuttings
+Cuttingsville
+cuttle
+cuttle-bone
+cuttlebone
+cuttlebones
+cuttled
+cuttle-fish
+cuttlefish
+cuttlefishes
+Cuttler
+cuttler
+cuttles
+cuttling
+cuttoe
+cuttoo
+cuttoos
+cut-toothed
+Cutty
+cutty
+Cuttyhunk
+cuttyhunk
+cutty-stool
+cut-under
+Cutuno
+cutup
+cutups
+cutwal
+cutwater
+cutwaters
+cutweed
+cut-work
+cutwork
+cutworks
+cutworm
+cutworms
+cuvage
+cuve
+cuvee
+cuvette
+cuvettes
+Cuvier
+Cuvierian
+cuvies
+cuvy
+Cuxhaven
+cuya
+Cuyab
+Cuyaba
+Cuyama
+Cuyapo
+cuyas
+Cuyler
+Cuyp
+Cuzceno
+cuzceno
+Cuzco
+Cuzzart
+CV
+cv
+CVA
+CVCC
+Cvennes
+C.V.O.
+CVO
+CVR
+CVT
+CW
+CWA
+CWC
+CWI
+cwierc
+Cwikielnik
+Cwlth
+cwm
+Cwmbran
+cwms
+CWO
+c.w.o.
+cwo
+cwrite
+CWRU
+cwt
+cwt.
+CXI
+-cy
+CY
+Cy
+cy
+cya-
+cyaathia
+cyamelid
+cyamelide
+cyamid
+cyamoid
+Cyamus
+cyan
+cyan-
+cyanacetic
+Cyanamid
+cyanamid
+cyanamide
+cyanamids
+cyananthrol
+Cyanastraceae
+Cyanastrum
+cyanate
+cyanates
+cyanaurate
+cyanauric
+cyanbenzyl
+cyan-blue
+cyancarbonic
+Cyane
+Cyanea
+cyanea
+cyanean
+Cyanee
+cyanemia
+cyaneous
+cyanephidrosis
+cyanformate
+cyanformic
+cyanhidrosis
+cyanhydrate
+cyanhydric
+cyanhydrin
+cyanic
+cyanicide
+cyanid
+cyanidation
+cyanide
+cyanided
+cyanides
+cyanidin
+cyanidine
+cyaniding
+cyanidrosis
+cyanids
+cyanimide
+cyanin
+cyanine
+cyanines
+cyanins
+cyanite
+cyanites
+cyanitic
+cyanize
+cyanized
+cyanizing
+cyanmethemoglobin
+cyano
+cyano-
+cyanoacetate
+cyanoacetic
+cyanoacrylate
+cyanoaurate
+cyanoauric
+cyanobenzene
+cyanocarbonic
+cyanochlorous
+cyanochroia
+cyanochroic
+Cyanocitta
+cyanocobalamin
+cyanocobalamine
+cyanocrystallin
+cyanoderma
+cyanoethylate
+cyanoethylation
+cyanogen
+cyanogenamide
+cyanogenesis
+cyanogenetic
+cyanogenic
+cyanogens
+cyanoguanidine
+cyanohermidin
+cyanohydrin
+cyanol
+cyanole
+cyanomaclurin
+cyanometer
+cyanomethaemoglobin
+cyanomethemoglobin
+cyanometric
+cyanometries
+cyanometry
+cyanopathic
+cyanopathy
+cyanophil
+cyanophile
+cyanophilous
+cyanophoric
+cyanophose
+Cyanophyceae
+cyanophycean
+cyanophyceous
+cyanophycin
+cyanopia
+cyanoplastid
+cyanoplatinite
+cyanoplatinous
+cyanopsia
+cyanose
+cyanosed
+cyanoses
+cyanosis
+cyanosite
+Cyanospiza
+cyanotic
+cyanotrichite
+cyanotype
+cyans
+cyanuramide
+cyanurate
+cyanuret
+cyanuric
+cyanurin
+cyanurine
+cyanus
+cyaphenine
+cyath
+Cyathaspis
+Cyathea
+Cyatheaceae
+cyatheaceous
+cyathi
+cyathia
+cyathiform
+cyathium
+cyathoid
+cyatholith
+Cyathophyllidae
+cyathophylline
+cyathophylloid
+Cyathophyllum
+cyathos
+cyathozooid
+cyathus
+Cyb
+Cybebe
+Cybele
+cybele
+cybercultural
+cyberculture
+cybernate
+cybernated
+cybernating
+cybernation
+cybernetic
+cybernetical
+cybernetically
+cybernetician
+cyberneticist
+cyberneticists
+cybernetics
+cybernion
+Cybil
+Cybill
+Cybister
+cyborg
+cyborgs
+cyc
+cycad
+Cycadaceae
+cycadaceous
+Cycadales
+cycadean
+cycadeoid
+Cycadeoidea
+cycadeous
+cycadiform
+cycadite
+cycadlike
+cycadofilicale
+Cycadofilicales
+cycadofilicales
+Cycadofilices
+cycadofilicinean
+Cycadophyta
+cycadophyte
+cycads
+Cycas
+cycas
+cycases
+cycasin
+cycasins
+Cychosz
+Cychreus
+cycl
+cycl-
+Cyclades
+cyclades
+Cycladic
+cyclamate
+cyclamates
+cyclamen
+cyclamens
+cyclamin
+cyclamine
+cyclammonium
+Cyclamycin
+cyclane
+Cyclanthaceae
+cyclanthaceous
+Cyclanthales
+Cyclanthus
+cyclar
+cyclarthrodial
+cyclarthrosis
+cyclarthrsis
+cyclas
+cyclase
+cyclases
+cyclazocine
+cycle
+cyclecar
+cyclecars
+cycled
+cycledom
+cyclene
+cycler
+cyclers
+cyclery
+cycles
+cyclesmith
+Cycliae
+cyclian
+cyclic
+cyclical
+cyclicality
+cyclically
+cyclicalness
+cyclicism
+cyclicity
+cyclicly
+cyclide
+cyclindroid
+cycling
+cyclings
+cyclism
+cyclist
+cyclistic
+cyclists
+cyclitic
+cyclitis
+cyclitol
+cyclitols
+cyclization
+cyclize
+cyclized
+cyclizes
+cyclizing
+cyclo
+cyclo-
+cycloacetylene
+cycloaddition
+cycloaliphatic
+cycloalkane
+Cyclobothra
+cyclobutane
+cyclocephaly
+cyclocoelic
+cyclocoelous
+Cycloconium
+cyclo-cross
+cyclode
+cyclodiene
+cyclodiolefin
+cyclodiolefine
+cycloganoid
+Cycloganoidei
+cyclogenesis
+cyclogram
+cyclograph
+cyclographer
+cycloheptane
+cycloheptanone
+cyclohexadienyl
+cyclohexane
+cyclohexanol
+cyclohexanone
+cyclohexatriene
+cyclohexene
+cycloheximide
+cyclohexyl
+cyclohexylamine
+cycloid
+cycloidal
+cycloidally
+cycloidean
+Cycloidei
+cycloidian
+cycloidotrope
+cycloids
+cyclolith
+Cycloloma
+cyclolysis
+cyclomania
+cyclometer
+cyclometers
+cyclometric
+cyclometrical
+cyclometries
+cyclometry
+Cyclomyaria
+cyclomyarian
+cyclonal
+cyclone
+cyclone-proof
+cyclones
+cyclonic
+cyclonical
+cyclonically
+cyclonist
+cyclonite
+cyclonologist
+cyclonology
+cyclonometer
+cyclonoscope
+cycloolefin
+cycloolefine
+cycloolefinic
+cyclop
+cyclopaedia
+cyclopaedias
+cyclopaedic
+cyclopaedically
+cyclopaedist
+cycloparaffin
+cyclope
+Cyclopean
+cyclopean
+cyclopedia
+cyclopedias
+cyclopedic
+cyclopedical
+cyclopedically
+cyclopedist
+cyclopentadiene
+cyclopentane
+cyclopentanone
+cyclopentene
+Cyclopes
+cyclopes
+cyclophoria
+cyclophoric
+Cyclophorus
+cyclophosphamide
+cyclophosphamides
+cyclophrenia
+cyclopia
+Cyclopic
+cyclopic
+cyclopism
+cyclopite
+cycloplegia
+cycloplegic
+cyclopoid
+cyclopropane
+Cyclops
+cyclops
+Cyclopteridae
+cyclopteroid
+cyclopterous
+cyclopy
+cyclorama
+cycloramas
+cycloramic
+Cyclorrhapha
+cyclorrhaphous
+cyclos
+cycloscope
+cyclose
+cycloserine
+cycloses
+cyclosilicate
+cyclosis
+cyclospermous
+Cyclospondyli
+cyclospondylic
+cyclospondylous
+Cyclosporales
+Cyclosporeae
+Cyclosporinae
+cyclosporous
+Cyclostoma
+Cyclostomata
+cyclostomate
+Cyclostomatidae
+cyclostomatous
+cyclostome
+Cyclostomes
+Cyclostomi
+Cyclostomidae
+cyclostomous
+cyclostrophic
+cyclostylar
+cyclostyle
+Cyclotella
+cyclothem
+cyclothure
+cyclothurine
+Cyclothurus
+cyclothyme
+cyclothymia
+cyclothymiac
+cyclothymic
+cyclotome
+cyclotomic
+cyclotomies
+cyclotomy
+Cyclotosaurus
+cyclotrimethylenetrinitramine
+cyclotron
+cyclotrons
+cyclovertebral
+cyclus
+Cycnus
+Cyd
+cyder
+cyders
+Cydippe
+cydippe
+cydippian
+cydippid
+Cydippida
+Cydnus
+cydon
+Cydonia
+Cydonian
+cydonium
+cyeses
+cyesiology
+cyesis
+cyetic
+cygneous
+Cygnet
+cygnet
+cygnets
+Cygni
+Cygnid
+Cygninae
+cygnine
+Cygnus
+cygnus
+Cykana
+cyke
+cyl
+cyl.
+Cyler
+cylices
+cylinder
+cylinder-bored
+cylinder-boring
+cylinder-dried
+cylindered
+cylinderer
+cylinder-grinding
+cylindering
+cylinderlike
+cylinders
+cylinder-shaped
+cylindraceous
+cylindrarthrosis
+Cylindrella
+cylindrelloid
+cylindrenchema
+cylindrenchyma
+cylindric
+cylindrical
+cylindricality
+cylindrically
+cylindricalness
+cylindric-campanulate
+cylindric-fusiform
+cylindricity
+cylindric-oblong
+cylindric-ovoid
+cylindric-subulate
+cylindricule
+cylindriform
+cylindrite
+cylindro-
+cylindrocellular
+cylindrocephalic
+cylindroconical
+cylindroconoidal
+cylindrocylindric
+cylindrodendrite
+cylindrograph
+cylindroid
+cylindroidal
+cylindroma
+cylindromata
+cylindromatous
+cylindrometric
+cylindroogival
+Cylindrophis
+Cylindrosporium
+cylindruria
+cylix
+Cyllene
+Cyllenian
+Cyllenius
+cylloses
+cyllosis
+Cylvia
+Cym
+Cyma
+cyma
+cymae
+cymagraph
+cymaise
+cymaphen
+cymaphyte
+cymaphytic
+cymaphytism
+cymar
+cymarin
+cymarose
+cymars
+cymas
+cymatia
+cymation
+cymatium
+cymba
+cymbaeform
+cymbal
+Cymbalaria
+cymbaled
+cymbaleer
+cymbaler
+cymbalers
+cymbaline
+cymbalist
+cymbalists
+cymballed
+cymballike
+cymballing
+cymbalo
+cymbalom
+cymbalon
+cymbals
+cymbate
+cymbel
+Cymbeline
+Cymbella
+cymbid
+cymbidia
+cymbidium
+cymbiform
+Cymbium
+cymblin
+cymbling
+cymblings
+cymbocephalic
+cymbocephalous
+cymbocephaly
+Cymbopogon
+Cymbre
+cyme
+cymelet
+cymene
+cymenes
+cymes
+cymiferous
+cymlin
+cymling
+cymlings
+cymlins
+cymobotryose
+Cymodoce
+Cymodoceaceae
+cymogene
+cymogenes
+cymograph
+cymographic
+cymoid
+Cymoidium
+cymol
+cymols
+cymometer
+cymophane
+cymophanous
+cymophenol
+cymophobia
+cymoscope
+cymose
+cymosely
+cymotrichous
+cymotrichy
+cymous
+Cymraeg
+Cymric
+cymric
+cymrite
+Cymry
+cymry
+cymtia
+cymule
+cymulose
+Cyn
+Cyna
+cynanche
+Cynanchum
+cynanthropy
+Cynar
+Cynara
+cynaraceous
+cynarctomachy
+cynareous
+cynaroid
+Cynarra
+Cynde
+Cyndi
+Cyndia
+Cyndie
+Cyndy
+cyne-
+cynebot
+cynegetic
+cynegetics
+cynegild
+Cynera
+Cynewulf
+cynghanedd
+cynhyena
+Cynias
+cyniatria
+cyniatrics
+Cynic
+cynic
+Cynical
+cynical
+cynically
+cynicalness
+Cynicism
+cynicism
+cynicisms
+cynicist
+cynics
+cynipid
+Cynipidae
+cynipidous
+cynipoid
+Cynipoidea
+Cynips
+cynips
+cynism
+cyno-
+cynocephalic
+cynocephalous
+cynocephalus
+cynoclept
+Cynocrambaceae
+cynocrambaceous
+Cynocrambe
+cynodictis
+Cynodon
+cynodon
+cynodont
+Cynodontia
+Cynogale
+cynogenealogist
+cynogenealogy
+Cynoglossum
+Cynognathus
+cynography
+cynoid
+Cynoidea
+cynology
+cynomolgus
+Cynomoriaceae
+cynomoriaceous
+Cynomorium
+Cynomorpha
+cynomorphic
+cynomorphous
+Cynomys
+cynophile
+cynophilic
+cynophilist
+cynophobe
+cynophobia
+Cynopithecidae
+cynopithecoid
+cynopodous
+cynorrhoda
+cynorrhodon
+Cynortes
+Cynosarges
+Cynoscephalae
+Cynoscion
+Cynosura
+cynosural
+cynosure
+cynosures
+Cynosurus
+cynotherapy
+Cynoxylon
+Cynth
+Cynthea
+Cynthia
+cynthia
+Cynthian
+Cynthiana
+Cynthie
+Cynthiidae
+Cynthius
+Cynthla
+Cynthy
+Cynurus
+Cynwulf
+Cynwyd
+CYO
+cyp
+Cyparissia
+Cyparissus
+Cyperaceae
+cyperaceous
+Cyperus
+cyperus
+cyphella
+cyphellae
+cyphellate
+cypher
+cyphered
+cyphering
+cyphers
+Cyphomandra
+cyphonautes
+cyphonism
+cyphosis
+Cypraea
+cypraea
+cypraeid
+Cypraeidae
+cypraeiform
+cypraeoid
+cypre
+cypres
+cypreses
+cypress
+cypressed
+cypresses
+Cypressinn
+cypressroot
+Cypria
+Cyprian
+cyprian
+cyprians
+cyprid
+Cyprididae
+Cypridina
+Cypridinidae
+cypridinoid
+Cyprina
+cyprine
+cyprinid
+Cyprinidae
+cyprinids
+cypriniform
+cyprinin
+cyprinine
+cyprinodont
+Cyprinodontes
+Cyprinodontidae
+cyprinodontoid
+cyprinoid
+Cyprinoidea
+cyprinoidean
+Cyprinus
+Cyprio
+Cypriot
+cypriot
+Cypriote
+cypriote
+cypriotes
+cypriots
+cypripedin
+Cypripedium
+cypripedium
+Cypris
+cypris
+Cypro
+cyproheptadine
+Cypro-Minoan
+Cypro-phoenician
+cyproterone
+Cyprus
+cyprus
+cypruses
+cypsela
+cypselae
+Cypseli
+Cypselid
+Cypselidae
+cypseliform
+Cypseliformes
+cypseline
+cypseloid
+cypselomorph
+Cypselomorphae
+cypselomorphic
+cypselous
+Cypselus
+cyptozoic
+Cyra
+Cyrano
+Cyrena
+Cyrenaic
+cyrenaic
+Cyrenaica
+Cyrenaicism
+Cyrene
+Cyrenian
+Cyrie
+Cyril
+Cyrill
+Cyrilla
+Cyrillaceae
+cyrillaceous
+Cyrille
+Cyrillian
+Cyrillianism
+Cyrillic
+cyrillic
+Cyrillus
+cyriologic
+cyriological
+Cyrtandraceae
+Cyrtidae
+cyrto-
+cyrtoceracone
+Cyrtoceras
+cyrtoceratite
+cyrtoceratitic
+cyrtograph
+cyrtolite
+cyrtometer
+Cyrtomium
+cyrtopia
+cyrtosis
+cyrtostyle
+Cyrus
+cyrus
+Cysatus
+-cyst
+cyst
+cyst-
+cystadenoma
+cystadenosarcoma
+cystal
+cystalgia
+cystamine
+cystaster
+cystathionine
+cystatrophia
+cystatrophy
+cysteamine
+cystectasia
+cystectasy
+cystectomies
+cystectomy
+cysted
+cystein
+cysteine
+cysteines
+cysteinic
+cysteins
+cystelcosis
+cystenchyma
+cystenchymatous
+cystenchyme
+cystencyte
+cysterethism
+cysti-
+cystic
+cysticarpic
+cysticarpium
+cysticercerci
+cysticerci
+cysticercoid
+cysticercoidal
+cysticercosis
+cysticercus
+cysticerus
+cysticle
+cysticolous
+cystid
+Cystidea
+cystidean
+cystidia
+cystidicolous
+cystidium
+cystidiums
+cystiferous
+cystiform
+cystigerous
+Cystignathidae
+cystignathine
+cystin
+cystine
+cystines
+cystinosis
+cystinuria
+cystirrhea
+cystis
+cystitides
+cystitis
+cystitome
+cysto-
+cystoadenoma
+cystocarcinoma
+cystocarp
+cystocarpic
+cystocele
+cystocolostomy
+cystocyte
+cystodynia
+cystoelytroplasty
+cystoenterocele
+cystoepiplocele
+cystoepithelioma
+cystofibroma
+Cystoflagellata
+cystoflagellate
+cystogenesis
+cystogenous
+cystogram
+cystoid
+Cystoidea
+cystoidean
+cystoids
+cystolith
+cystolithectomy
+cystolithiasis
+cystolithic
+cystoma
+cystomas
+cystomata
+cystomatous
+cystometer
+cystomorphous
+cystomyoma
+cystomyxoma
+Cystonectae
+cystonectous
+cystonephrosis
+cystoneuralgia
+cystoparalysis
+Cystophora
+cystophore
+cystophotography
+cystophthisis
+cystoplasty
+cystoplegia
+cystoproctostomy
+Cystopteris
+cystoptosis
+Cystopus
+cystopyelitis
+cystopyelography
+cystopyelonephritis
+cystoradiography
+cystorrhagia
+cystorrhaphy
+cystorrhea
+cystosarcoma
+cystoschisis
+cystoscope
+cystoscopic
+cystoscopies
+cystoscopy
+cystose
+cystospasm
+cystospastic
+cystospore
+cystostomies
+cystostomy
+cystosyrinx
+cystotome
+cystotomies
+cystotomy
+cystotrachelotomy
+cystoureteritis
+cystourethritis
+cystourethrography
+cystous
+cysts
+cyt-
+cytase
+cytasic
+cytaster
+cytasters
+-cyte
+Cythera
+cythera
+Cytherea
+cytherea
+Cytherean
+cytherean
+Cytherella
+Cytherellidae
+cytidine
+cytidines
+Cytinaceae
+cytinaceous
+Cytinus
+cytioderm
+cytioderma
+cytisine
+Cytissorus
+Cytisus
+cytisus
+cytitis
+cyto-
+cytoanalyzer
+cytoarchitectural
+cytoarchitecturally
+cytoarchitecture
+cytoblast
+cytoblastema
+cytoblastemal
+cytoblastematous
+cytoblastemic
+cytoblastemous
+cytocentrum
+cytochalasin
+cytochemical
+cytochemistry
+cytochrome
+cytochylema
+cytocide
+cytoclasis
+cytoclastic
+cytococci
+cytococcus
+cytocyst
+cytode
+cytodendrite
+cytoderm
+cytodiagnosis
+cytodieresis
+cytodieretic
+cytodifferentiation
+cytoecology
+cytogamy
+cytogene
+cytogenesis
+cytogenetic
+cytogenetical
+cytogenetically
+cytogeneticist
+cytogenetics
+cytogenic
+cytogenies
+cytogenous
+cytogeny
+cytoglobin
+cytoglobulin
+cytohyaloplasm
+cytoid
+cytokinesis
+cytokinetic
+cytokinin
+cytol
+cytolist
+cytologic
+cytological
+cytologically
+cytologies
+cytologist
+cytologists
+cytology
+cytolymph
+cytolysin
+cytolysis
+cytolytic
+cytoma
+cytome
+cytomegalic
+cytomegalovirus
+cytomere
+cytometer
+cytomicrosome
+cytomitome
+cytomorphological
+cytomorphology
+cytomorphosis
+cyton
+cytone
+cytons
+cytopahgous
+cytoparaplastin
+cytopathic
+cytopathogenic
+cytopathogenicity
+cytopathologic
+cytopathological
+cytopathologically
+cytopathology
+cytopenia
+Cytophaga
+cytophagic
+cytophagous
+cytophagy
+cytopharynges
+cytopharynx
+cytopharynxes
+cytophil
+cytophilic
+cytophysics
+cytophysiology
+cytoplasm
+cytoplasmic
+cytoplasmically
+cytoplast
+cytoplastic
+cytoproct
+cytopyge
+cytoreticulum
+cytoryctes
+cytosin
+cytosine
+cytosines
+cytosol
+cytosols
+cytosome
+cytospectrophotometry
+Cytospora
+Cytosporina
+cytost
+cytostatic
+cytostatically
+cytostomal
+cytostome
+cytostroma
+cytostromatic
+cytotactic
+cytotaxis
+cytotaxonomic
+cytotaxonomically
+cytotaxonomy
+cytotechnologist
+cytotechnology
+cytotoxic
+cytotoxicity
+cytotoxin
+cytotrophoblast
+cytotrophoblastic
+cytotrophy
+cytotropic
+cytotropism
+cytovirin
+cytozoa
+cytozoic
+cytozoon
+cytozymase
+cytozyme
+cytozzoa
+cytula
+cytulae
+cyul
+cywydd
+Cyzicene
+cyzicene
+Cyzicus
+CZ
+Czajer
+Czanne
+czar
+czardas
+czardases
+czardom
+czardoms
+czarevitch
+czarevna
+czarevnas
+czarian
+czaric
+czarina
+czarinas
+czarinian
+czarish
+czarism
+czarisms
+czarist
+czaristic
+czarists
+czaritza
+czaritzas
+czarowitch
+czarowitz
+Czarra
+czars
+czarship
+Czech
+Czech.
+czech
+Czechic
+Czechish
+Czechization
+Czechosl
+Czecho-Slovak
+Czechoslovak
+czechoslovak
+Czecho-Slovakia
+Czechoslovakia
+czechoslovakia
+Czecho-Slovakian
+Czechoslovakian
+czechoslovakian
+czechoslovakians
+czechoslovaks
+czechs
+Czerniak
+Czerniakov
+Czernowitz
+Czerny
+czigany
+Czstochowa
+Czur
diff --git a/hotspot/test/gc/7072527/TestFullGCCount.java b/hotspot/test/gc/7072527/TestFullGCCount.java
new file mode 100644
index 0000000..14a049a
--- /dev/null
+++ b/hotspot/test/gc/7072527/TestFullGCCount.java
@@ -0,0 +1,95 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test TestFullGCount.java
+ * @bug 7072527
+ * @summary CMS: JMM GC counters overcount in some cases
+ * @run main/othervm -XX:+UseConcMarkSweepGC TestFullGCCount
+ *
+ */
+import java.util.*;
+import java.lang.management.*;
+
+public class TestFullGCCount {
+
+    public String collectorName = "ConcurrentMarkSweep";
+
+    public static void main(String [] args) {
+
+        TestFullGCCount t = null;
+        if (args.length==2) {
+            t = new TestFullGCCount(args[0], args[1]);
+        } else {
+            t = new TestFullGCCount();
+        }
+        System.out.println("Monitoring collector: " + t.collectorName);
+        t.run();
+    }
+
+    public TestFullGCCount(String pool, String collector) {
+        collectorName = collector;
+    }
+
+    public TestFullGCCount() {
+    }
+
+    public void run() {
+        int count = 0;
+        int iterations = 20;
+        long counts[] = new long[iterations];
+        boolean diffAlways2 = true; // assume we will fail
+
+        for (int i=0; i<iterations; i++) {
+            System.gc();
+            counts[i] = getCollectionCount();
+            if (i>0) {
+                if (counts[i] - counts[i-1] != 2) {
+                    diffAlways2 = false;
+                }
+            }
+        }
+        if (diffAlways2) {
+            throw new RuntimeException("FAILED: System.gc must be incrementing count twice.");
+        }
+        System.out.println("Passed.");
+    }
+
+    private long getCollectionCount() {
+        long count = 0;
+        List<MemoryPoolMXBean> pools = ManagementFactory.getMemoryPoolMXBeans();
+        List<GarbageCollectorMXBean> collectors = ManagementFactory.getGarbageCollectorMXBeans();
+        for (int i=0; i<collectors.size(); i++) {
+            GarbageCollectorMXBean collector = collectors.get(i);
+            String name = collector.getName();
+            if (name.contains(collectorName)) {
+                System.out.println(name + ": collection count = "
+                                   + collector.getCollectionCount());
+                count = collector.getCollectionCount();
+            }
+        }
+        return count;
+    }
+
+}
+
diff --git a/hotspot/test/runtime/7020373/Test7020373.sh b/hotspot/test/runtime/7020373/Test7020373.sh
new file mode 100644
index 0000000..7f6b03c
--- /dev/null
+++ b/hotspot/test/runtime/7020373/Test7020373.sh
@@ -0,0 +1,86 @@
+#!/bin/sh
+
+##
+## @test
+## @bug 7020373 7055247
+## @key cte_test
+## @summary JSR rewriting can overflow memory address size variables
+## @ignore Ignore it until 7053586 fixed
+## @run shell Test7020373.sh
+##
+
+if [ "${TESTSRC}" = "" ]
+then TESTSRC=.
+fi
+
+if [ "${TESTJAVA}" = "" ]
+then
+  PARENT=`dirname \`which java\``
+  TESTJAVA=`dirname ${PARENT}`
+  echo "TESTJAVA not set, selecting " ${TESTJAVA}
+  echo "If this is incorrect, try setting the variable manually."
+fi
+
+if [ "${TESTCLASSES}" = "" ]
+then
+  echo "TESTCLASSES not set.  Test cannot execute.  Failed."
+  exit 1
+fi
+
+BIT_FLAG=""
+
+# set platform-dependent variables
+OS=`uname -s`
+case "$OS" in
+  SunOS | Linux )
+    NULL=/dev/null
+    PS=":"
+    FS="/"
+    ## for solaris, linux it's HOME
+    FILE_LOCATION=$HOME
+    if [ -f ${FILE_LOCATION}${FS}JDK64BIT -a ${OS} = "SunOS" ]
+    then
+        BIT_FLAG=`cat ${FILE_LOCATION}${FS}JDK64BIT | grep -v '^#'`
+    fi
+    ;;
+  Windows_* )
+    NULL=NUL
+    PS=";"
+    FS="\\"
+    ;;
+  * )
+    echo "Unrecognized system!"
+    exit 1;
+    ;;
+esac
+
+JEMMYPATH=${CPAPPEND}
+CLASSPATH=.${PS}${TESTCLASSES}${PS}${JEMMYPATH} ; export CLASSPATH
+
+THIS_DIR=`pwd`
+
+${TESTJAVA}${FS}bin${FS}java ${BIT_FLAG} -version
+
+${TESTJAVA}${FS}bin${FS}jar xvf ${TESTSRC}${FS}testcase.jar
+
+${TESTJAVA}${FS}bin${FS}java ${BIT_FLAG} OOMCrashClass4000_1 > test.out 2>&1
+
+cat test.out
+
+egrep "SIGSEGV|An unexpected error has been detected" test.out
+
+if [ $? = 0 ]
+then
+    echo "Test Failed"
+    exit 1
+else
+    grep "java.lang.LinkageError" test.out
+    if [ $? = 0 ]
+    then
+        echo "Test Passed"
+        exit 0
+    else
+        echo "Test Failed"
+        exit 1
+    fi
+fi
diff --git a/jaxp/.hgtags b/jaxp/.hgtags
index c1f48d3..9e48b65 100644
--- a/jaxp/.hgtags
+++ b/jaxp/.hgtags
@@ -122,3 +122,6 @@
 10ca7570f47f2ae4132648f7e8da1a05f1a98a15 jdk7-b145
 bcd31fa1e3c6f51b4fdd427ef905188cdac57164 jdk7-b146
 fc268cd1dd5d2e903ccd4b0275e1f9c2461ed30c jdk7-b147
+4f0fcb812767594fe9de509f946b56942db5a2f0 jdk8-b01
+ca4d6ad55a660f0469882e85b4dacf7822d50abf jdk8-b02
+7a74371ce0c64108b857c497ae130dfe9514532c jdk8-b03
diff --git a/jaxws/.hgtags b/jaxws/.hgtags
index afdf4c3..095b0b0 100644
--- a/jaxws/.hgtags
+++ b/jaxws/.hgtags
@@ -122,3 +122,6 @@
 42bfba80beb7d3260b7b135b9a39202b512eb8c2 jdk7-b145
 05469dd4c3662c454f8a019e492543add60795cc jdk7-b146
 d13b1f877bb5ed8dceb2f7ec10365d1db5f70b2d jdk7-b147
+64df57a1edeca74388bd62f0a87d056db981fbdf jdk8-b01
+1034127ed402e9d0f1ed1477238ef594e9cc8da6 jdk8-b02
+7dcb0307508f408507d878cd7c2048c102b15158 jdk8-b03
diff --git a/jdk/.hgtags b/jdk/.hgtags
index bf22521..75feff6 100644
--- a/jdk/.hgtags
+++ b/jdk/.hgtags
@@ -122,3 +122,7 @@
 1e04b38b3824a4a1d197ef681a302e6813e53f8b jdk7-b145
 539e576793a8e64aaf160e0d6ab0b9723cd0bef0 jdk7-b146
 f097ca2434b1412b12ab4a5c2397ce271bf681e7 jdk7-b147
+2cdbbc4a63592be7f1556fffe37b1253a77bd481 jdk8-b01
+13e70aa1398eb959c54bc68b783ca0eef1286ad2 jdk8-b02
+7989ee9fe673a87f4db3917fa6a005732a6a9b85 jdk8-b03
+fc569517f3cf242f90ce3503b743eb5553938946 jdk8-b04
diff --git a/jdk/make/com/sun/servicetag/Makefile b/jdk/make/com/sun/servicetag/Makefile
index 6a8bf6d..a31b9ae 100644
--- a/jdk/make/com/sun/servicetag/Makefile
+++ b/jdk/make/com/sun/servicetag/Makefile
@@ -47,7 +47,7 @@
 # Add all properties files to the FILES_copy list
 SWORDFISH_properties := $(shell \
        $(CD) $(SHARE_SRC)/classes/com/sun/servicetag/resources; \
-       $(FIND) . -name 'javase_*_swordfish.properties' -print ; \
+       $(FIND) . -name 'javase_*.properties' -print ; \
     )
 FILES_copy += $(shell \
    for f in $(SWORDFISH_properties) ; do \
diff --git a/jdk/make/common/Defs.gmk b/jdk/make/common/Defs.gmk
index 1e12d41..e46aede 100644
--- a/jdk/make/common/Defs.gmk
+++ b/jdk/make/common/Defs.gmk
@@ -300,6 +300,9 @@
 #where the demo source can be found
 DEMOSRCDIR          = $(SHARE_SRC)/demo
 
+#where the sample source can be found
+SAMPLESRCDIR          = $(SHARE_SRC)/sample
+
 # An attempt is made to generate unique enough directories for the
 # generated files to not have name collisisons. Most build units
 # defines PRODUCT (except Release.gmk), but then they may or may 
diff --git a/jdk/make/java/java/FILES_java.gmk b/jdk/make/java/java/FILES_java.gmk
index 58c763a..7aae087 100644
--- a/jdk/make/java/java/FILES_java.gmk
+++ b/jdk/make/java/java/FILES_java.gmk
@@ -208,7 +208,6 @@
     java/util/Observable.java \
     java/util/Observer.java \
     java/util/Properties.java \
-        java/util/XMLUtils.java \
         java/util/InvalidPropertiesFormatException.java \
     java/util/PropertyPermission.java \
     java/util/PropertyResourceBundle.java \
diff --git a/jdk/make/java/util/FILES_properties.gmk b/jdk/make/java/util/FILES_properties.gmk
index 4f9f7cd..5aa6cbf 100644
--- a/jdk/make/java/util/FILES_properties.gmk
+++ b/jdk/make/java/util/FILES_properties.gmk
@@ -151,6 +151,7 @@
         sun/util/resources/CurrencyNames_es_CL.properties \
         sun/util/resources/CurrencyNames_es_CO.properties \
         sun/util/resources/CurrencyNames_es_CR.properties \
+        sun/util/resources/CurrencyNames_es_CU.properties \
         sun/util/resources/CurrencyNames_es_DO.properties \
         sun/util/resources/CurrencyNames_es_EC.properties \
         sun/util/resources/CurrencyNames_es_ES.properties \
diff --git a/jdk/make/jprt.properties b/jdk/make/jprt.properties
index 0759ecd..e07910e 100644
--- a/jdk/make/jprt.properties
+++ b/jdk/make/jprt.properties
@@ -258,6 +258,15 @@
     windows_i586_5.1-product-c1-jdk_security3, 			\
     windows_x64_5.2-product-c2-jdk_security3, 			\
     								\
+    solaris_sparc_5.10-product-c1-jdk_sound, 			\
+    solaris_sparcv9_5.10-product-c2-jdk_sound, 			\
+    solaris_i586_5.10-product-c1-jdk_sound, 			\
+    solaris_x64_5.10-product-c2-jdk_sound, 			\
+    linux_i586_2.6-product-{c1|c2}-jdk_sound, 			\
+    linux_x64_2.6-product-c2-jdk_sound, 			\
+    windows_i586_5.1-product-c1-jdk_sound, 			\
+    windows_x64_5.2-product-c2-jdk_sound, 			\
+    								\
     solaris_sparc_5.10-product-c1-jdk_swing, 			\
     solaris_sparcv9_5.10-product-c2-jdk_swing, 			\
     solaris_i586_5.10-product-c1-jdk_swing, 			\
diff --git a/jdk/make/mkdemo/Makefile b/jdk/make/mkdemo/Makefile
index c134316..6bf93e5 100644
--- a/jdk/make/mkdemo/Makefile
+++ b/jdk/make/mkdemo/Makefile
@@ -39,9 +39,14 @@
 
 include $(BUILDDIR)/common/Subdirs.gmk
 
+TOPLEVEL_FILES =							\
+	$(DEMODIR)/README
+
 all build:: nbproject
 	$(SUBDIRS-loop)
 
+all build:: $(TOPLEVEL_FILES)
+
 nbproject:
 	$(RM) -r $(DEMODIR)/nbproject
 	$(MKDIR) -p $(DEMODIR)
@@ -54,8 +59,10 @@
 	  ( $(CD) $(DEMODIR) && $(TAR) -xf - )
 endif
 
+$(DEMODIR)/%: $(DEMOSRCDIR)/%
+	$(install-file)
+
 clean clobber::
 	$(SUBDIRS-loop)
 	$(RM) -r $(DEMODIR)
 	$(RM) -r $(DEMOCLASSDIR)
-
diff --git a/jdk/make/mksample/Makefile b/jdk/make/mksample/Makefile
index bdc770b..aa4e31d 100644
--- a/jdk/make/mksample/Makefile
+++ b/jdk/make/mksample/Makefile
@@ -49,8 +49,16 @@
 
 include $(BUILDDIR)/common/Subdirs.gmk
 
+TOPLEVEL_FILES =							\
+	$(SAMPLEDIR)/README
+
 all build clean clobber::
 	$(SUBDIRS-loop)
 
+all build:: $(TOPLEVEL_FILES)
+
+$(SAMPLEDIR)/%: $(SAMPLESRCDIR)/%
+	$(install-file)
+
 clobber clean ::
 	$(RM) -r $(SAMPLEDIR)
diff --git a/jdk/make/sun/Makefile b/jdk/make/sun/Makefile
index 4c19f4e..c3a8f18 100644
--- a/jdk/make/sun/Makefile
+++ b/jdk/make/sun/Makefile
@@ -68,7 +68,7 @@
 endif
 
 # nio need to be compiled before awt to have all charsets ready
-SUBDIRS            = jar security javazic misc net nio text launcher
+SUBDIRS            = jar security javazic misc net nio text util launcher
 
 ifdef BUILD_HEADLESS_ONLY
   DISPLAY_LIBS = awt $(HEADLESS_SUBDIR)
diff --git a/jdk/make/sun/javazic/tzdata/VERSION b/jdk/make/sun/javazic/tzdata/VERSION
index c520962..9ccfe4c 100644
--- a/jdk/make/sun/javazic/tzdata/VERSION
+++ b/jdk/make/sun/javazic/tzdata/VERSION
@@ -21,4 +21,4 @@
 # or visit www.oracle.com if you need additional information or have any
 # questions.
 #
-tzdata2011g
+tzdata2011j
diff --git a/jdk/make/sun/javazic/tzdata/africa b/jdk/make/sun/javazic/tzdata/africa
index a43e73c..6fb9d64 100644
--- a/jdk/make/sun/javazic/tzdata/africa
+++ b/jdk/make/sun/javazic/tzdata/africa
@@ -80,7 +80,7 @@
 # I invented the following abbreviations; corrections are welcome!
 #	 2:00	WAST	West Africa Summer Time
 #	 2:30	BEAT	British East Africa Time (no longer used)
-#	 2:44:45 BEAUT	British East Africa Unified Time (no longer used)
+#	 2:45	BEAUT	British East Africa Unified Time (no longer used)
 #	 3:00	CAST	Central Africa Summer Time (no longer used)
 #	 3:00	SAST	South Africa Summer Time (no longer used)
 #	 3:00	EAT	East Africa Time
@@ -418,7 +418,7 @@
 Zone	Africa/Nairobi	2:27:16	-	LMT	1928 Jul
 			3:00	-	EAT	1930
 			2:30	-	BEAT	1940
-			2:44:45	-	BEAUT	1960
+			2:45	-	BEAUT	1960
 			3:00	-	EAT
 
 # Lesotho
@@ -979,6 +979,11 @@
 			2:00	Sudan	CA%sT	2000 Jan 15 12:00
 			3:00	-	EAT
 
+# South Sudan
+Zone	Africa/Juba	2:06:24 -	LMT	1931
+			2:00	Sudan	CA%sT	2000 Jan 15 12:00
+			3:00	-	EAT
+
 # Swaziland
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Africa/Mbabane	2:04:24 -	LMT	1903 Mar
@@ -988,7 +993,7 @@
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone Africa/Dar_es_Salaam 2:37:08 -	LMT	1931
 			3:00	-	EAT	1948
-			2:44:45	-	BEAUT	1961
+			2:45	-	BEAUT	1961
 			3:00	-	EAT
 
 # Togo
@@ -1114,7 +1119,7 @@
 Zone	Africa/Kampala	2:09:40 -	LMT	1928 Jul
 			3:00	-	EAT	1930
 			2:30	-	BEAT	1948
-			2:44:45	-	BEAUT	1957
+			2:45	-	BEAUT	1957
 			3:00	-	EAT
 
 # Zambia
diff --git a/jdk/make/sun/javazic/tzdata/antarctica b/jdk/make/sun/javazic/tzdata/antarctica
index 17f44a8..2fa4232 100644
--- a/jdk/make/sun/javazic/tzdata/antarctica
+++ b/jdk/make/sun/javazic/tzdata/antarctica
@@ -41,18 +41,6 @@
 # I made up all time zone abbreviations mentioned here; corrections welcome!
 # FORMAT is `zzz' and GMTOFF is 0 for locations while uninhabited.
 
-# These rules are stolen from the `europe' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	RussAQ	1981	1984	-	Apr	 1	 0:00	1:00	S
-Rule	RussAQ	1981	1983	-	Oct	 1	 0:00	0	-
-Rule	RussAQ	1984	1991	-	Sep	lastSun	 2:00s	0	-
-Rule	RussAQ	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
-Rule	RussAQ	1992	only	-	Mar	lastSat	 23:00	1:00	S
-Rule	RussAQ	1992	only	-	Sep	lastSat	 23:00	0	-
-Rule	RussAQ	1993	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule	RussAQ	1993	1995	-	Sep	lastSun	 2:00s	0	-
-Rule	RussAQ	1996	max	-	Oct	lastSun	 2:00s	0	-
-
 # These rules are stolen from the `southamerica' file.
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	ArgAQ	1964	1966	-	Mar	 1	0:00	0	-
diff --git a/jdk/make/sun/javazic/tzdata/asia b/jdk/make/sun/javazic/tzdata/asia
index d4d8ab1..36c5237 100644
--- a/jdk/make/sun/javazic/tzdata/asia
+++ b/jdk/make/sun/javazic/tzdata/asia
@@ -99,6 +99,10 @@
 Rule RussiaAsia	1993	1995	-	Sep	lastSun	 2:00s	0	-
 Rule RussiaAsia	1996	max	-	Oct	lastSun	 2:00s	0	-
 
+# From Arthur David Olson (2011-06-15):
+# While Russia abandoned DST in 2011, Armenia may choose to
+# follow Russia's "old" rules.
+
 # Afghanistan
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone	Asia/Kabul	4:36:48 -	LMT	1890
diff --git a/jdk/make/sun/javazic/tzdata/australasia b/jdk/make/sun/javazic/tzdata/australasia
index 61d338f..0330fcd 100644
--- a/jdk/make/sun/javazic/tzdata/australasia
+++ b/jdk/make/sun/javazic/tzdata/australasia
@@ -521,7 +521,7 @@
 # http://www.parliament.gov.ws/documents/acts/Daylight%20Saving%20Act%20%202009%20%28English%29%20-%20Final%207-7-091.pdf
 # </a>
 
-# From Raymond Hughes (2010-10-07):
+# From Laupue Raymond Hughes (2010-10-07):
 # Please see
 # <a href="http://www.mcil.gov.ws">
 # http://www.mcil.gov.ws
@@ -531,7 +531,7 @@
 # to 01:00am and First Sunday April 2011 (03/04/11) - adjust clocks
 # backwards from 1:00am to 12:00am"
 
-# From Raymond Hughes (2011-03-07)
+# From Laupue Raymond Hughes (2011-03-07):
 # I believe this will be posted shortly on the website
 # <a href="http://www.mcil.gov.ws">
 # www.mcil.gov.ws
@@ -551,12 +551,74 @@
 # Margaret Fruean ACTING CHIEF EXECUTIVE OFFICER MINISTRY OF COMMERCE,
 # INDUSTRY AND LABOUR 28th February 2011
 
+# From David Zuelke (2011-05-09):
+# Subject: Samoa to move timezone from east to west of international date line
+# 
+# <a href="http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963">
+# http://www.morningstar.co.uk/uk/markets/newsfeeditem.aspx?id=138501958347963
+# </a>
+
+# From Mark Sim-Smith (2011-08-17):
+# I have been in contact with Leilani Tuala Warren from the Samoa Law
+# Reform Commission, and she has sent me a copy of the Bill that she
+# confirmed has been passed...Most of the sections are about maps rather
+# than the time zone change, but I'll paste the relevant bits below. But
+# the essence is that at midnight 29 Dec (UTC-11 I suppose), Samoa
+# changes from UTC-11 to UTC+13:
+#
+# International Date Line Bill 2011
+#
+# AN ACT to provide for the change to standard time in Samoa and to make
+# consequential amendments to the position of the International Date
+# Line, and for related purposes.
+#
+# BE IT ENACTED by the Legislative Assembly of Samoa in Parliament
+# assembled as follows:
+#
+# 1. Short title and commencement-(1) This Act may be cited as the
+# International Date Line Act 2011. (2) Except for section 5(3) this Act
+# commences at 12 o'clock midnight, on Thursday 29th December 2011. (3)
+# Section 5(3) commences on the date of assent by the Head of State.
+#
+# [snip]
+#
+# 3. Interpretation - [snip] "Samoa standard time" in this Act and any
+# other statute of Samoa which refers to 'Samoa standard time' means the
+# time 13 hours in advance of Co-ordinated Universal Time.
+#
+# 4. Samoa standard time - (1) Upon the commencement of this Act, Samoa
+# standard time shall be set at 13 hours in advance of Co-ordinated
+# Universal Time for the whole of Samoa. (2) All references to Samoa's
+# time zone and to Samoa standard time in Samoa in all legislation and
+# instruments after the commencement of this Act shall be references to
+# Samoa standard time as provided for in this Act. (3) Nothing in this
+# Act affects the provisions of the Daylight Saving Act 2009, except that
+# it defines Samoa standard time....
+
+# From Laupue Raymond Hughes (2011-09-02):
+# <a href="http://www.mcil.gov.ws/mcil_publications.html">
+# http://www.mcil.gov.ws/mcil_publications.html
+# </a>
+#
+# here is the official website publication for Samoa DST and dateline change
+#
+# DST
+# Year	End	Time	Start	Time
+# 2011	- - -	- - -	24 September	3:00am to 4:00am
+# 2012	01 April	4:00am to 3:00am	- - -	- - -
+#
+# Dateline Change skip Friday 30th Dec 2011
+# Thursday 29th December 2011	23:59:59 Hours
+# Saturday 31st December 2011	00:00:00 Hours
 Zone Pacific/Apia	 12:33:04 -	LMT	1879 Jul  5
 			-11:26:56 -	LMT	1911
 			-11:30	-	SAMT	1950		# Samoa Time
 			-11:00	-	WST	2010 Sep 26
 			-11:00	1:00	WSDT	2011 Apr 2 4:00
-			-11:00	-	WST
+			-11:00	-	WST	2011 Sep 24 3:00
+			-11:00	1:00	WSDT	2011 Dec 30
+			 13:00	1:00	WSDT	2012 Apr 1 4:00
+			 13:00	-	WST
 
 # Solomon Is
 # excludes Bougainville, for which see Papua New Guinea
@@ -1228,7 +1290,7 @@
 # Lord Howe Island Board (controlling authority for the Island) is
 # seeking the community's views on various options for summer time
 # arrangements on the Island, e.g. advance clocks by 1 full hour
-# instead of only 30 minutes.  Dependant on the wishes of residents
+# instead of only 30 minutes.  [Dependent] on the wishes of residents
 # the Board may approach the NSW government to change the existing
 # arrangements.  The starting date for summer time on the Island will
 # however always coincide with the rest of NSW.
@@ -1354,7 +1416,7 @@
 
 # From Paul Eggert (1996-01-22):
 # Today's _Wall Street Journal_ (page 1) reports that Kiribati
-# ``declared it the same day throught the country as of Jan. 1, 1995''
+# ``declared it the same day [throughout] the country as of Jan. 1, 1995''
 # as part of the competition to be first into the 21st century.
 
 
diff --git a/jdk/make/sun/javazic/tzdata/europe b/jdk/make/sun/javazic/tzdata/europe
index 89bf6c5..5c6abc1 100644
--- a/jdk/make/sun/javazic/tzdata/europe
+++ b/jdk/make/sun/javazic/tzdata/europe
@@ -587,6 +587,26 @@
 Rule	Russia	1993	1995	-	Sep	lastSun	 2:00s	0	-
 Rule	Russia	1996	max	-	Oct	lastSun	 2:00s	0	-
 
+# From Alexander Krivenyshev (2011-06-14):
+# According to Kremlin press service, Russian President Dmitry Medvedev
+# signed a federal law "On calculation of time" on June 9, 2011.
+# According to the law Russia is abolishing daylight saving time.
+# 
+# Medvedev signed a law "On the Calculation of Time" (in russian): 
+# <a href="http://bmockbe.ru/events/?ID=7583">
+# http://bmockbe.ru/events/?ID=7583
+# </a>
+# 
+# Medvedev signed a law on the calculation of the time (in russian):
+# <a href="http://www.regnum.ru/news/polit/1413906.html">
+# http://www.regnum.ru/news/polit/1413906.html
+# </a>
+
+# From Arthur David Olson (2011-06-15):
+# Take "abolishing daylight saving time" to mean that time is now considered
+# to be standard.
+# At least for now, keep the "old" Russia rules for the benefit of Belarus.
+
 # These are for backward compatibility with older versions.
 
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
@@ -2035,7 +2055,8 @@
 			 1:00	C-Eur	CE%sT	1945
 			 2:00	Poland	CE%sT	1946
 			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
-			 2:00	Russia	EE%sT
+			 2:00	Russia	EE%sT	2011 Mar 27 2:00s
+			 3:00	-	KALT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Respublika Adygeya, Arkhangel'skaya oblast',
@@ -2064,7 +2085,8 @@
 			 2:00	-	EET	1930 Jun 21
 			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
 			 2:00	Russia	EE%sT	1992 Jan 19 2:00s
-			 3:00	Russia	MSK/MSD
+			 3:00	Russia	MSK/MSD	2011 Mar 27 2:00s
+			 4:00	-	MSK
 #
 # Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
 # Volgogradskaya oblast'.  Shanks & Pottenger say Kirov is still at +0400
@@ -2077,7 +2099,8 @@
 			 4:00	Russia	VOL%sT	1989 Mar 26 2:00s # Volgograd T
 			 3:00	Russia	VOL%sT	1991 Mar 31 2:00s
 			 4:00	-	VOLT	1992 Mar 29 2:00s
-			 3:00	Russia	VOL%sT
+			 3:00	Russia	VOL%sT	2011 Mar 27 2:00s
+			 4:00	-	VOLT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Samarskaya oblast', Udmyrtskaya respublika
@@ -2089,7 +2112,8 @@
 			 2:00	Russia	KUY%sT	1991 Sep 29 2:00s
 			 3:00	-	KUYT	1991 Oct 20 3:00
 			 4:00	Russia	SAM%sT	2010 Mar 28 2:00s # Samara Time
-			 3:00	Russia	SAM%sT
+			 3:00	Russia	SAM%sT	2011 Mar 27 2:00s
+			 4:00	-	SAMT
 
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
@@ -2102,7 +2126,8 @@
 			 4:00	-	SVET	1930 Jun 21 # Sverdlovsk Time
 			 5:00	Russia	SVE%sT	1991 Mar 31 2:00s
 			 4:00	Russia	SVE%sT	1992 Jan 19 2:00s
-			 5:00	Russia	YEK%sT	# Yekaterinburg Time
+			 5:00	Russia	YEK%sT	2011 Mar 27 2:00s
+			 6:00	-	YEKT	# Yekaterinburg Time
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Respublika Altaj, Altajskij kraj, Omskaya oblast'.
@@ -2110,7 +2135,8 @@
 			 5:00	-	OMST	1930 Jun 21 # Omsk TIme
 			 6:00	Russia	OMS%sT	1991 Mar 31 2:00s
 			 5:00	Russia	OMS%sT	1992 Jan 19 2:00s
-			 6:00	Russia	OMS%sT
+			 6:00	Russia	OMS%sT	2011 Mar 27 2:00s
+			 7:00	-	OMST
 #
 # From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
 # not clear when it switched from +7 to +6.
@@ -2120,7 +2146,8 @@
 			 7:00	Russia	NOV%sT	1991 Mar 31 2:00s
 			 6:00	Russia	NOV%sT	1992 Jan 19 2:00s
 			 7:00	Russia	NOV%sT	1993 May 23 # say Shanks & P.
-			 6:00	Russia	NOV%sT
+			 6:00	Russia	NOV%sT	2011 Mar 27 2:00s
+			 7:00	-	NOVT
 
 # From Alexander Krivenyshev (2009-10-13):
 # Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
@@ -2153,7 +2180,8 @@
 			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
 			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
 			 7:00	Russia	KRA%sT	2010 Mar 28 2:00s
-			 6:00	Russia	NOV%sT # Novosibirsk/Novokuznetsk Time
+			 6:00	Russia	NOV%sT	2011 Mar 27 2:00s
+			 7:00	-	NOVT # Novosibirsk/Novokuznetsk Time
 
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
@@ -2164,7 +2192,8 @@
 			 6:00	-	KRAT	1930 Jun 21 # Krasnoyarsk Time
 			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
 			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
-			 7:00	Russia	KRA%sT
+			 7:00	Russia	KRA%sT	2011 Mar 27 2:00s
+			 8:00	-	KRAT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Respublika Buryatiya, Irkutskaya oblast',
@@ -2174,7 +2203,8 @@
 			 7:00	-	IRKT	1930 Jun 21 # Irkutsk Time
 			 8:00	Russia	IRK%sT	1991 Mar 31 2:00s
 			 7:00	Russia	IRK%sT	1992 Jan 19 2:00s
-			 8:00	Russia	IRK%sT
+			 8:00	Russia	IRK%sT	2011 Mar 27 2:00s
+			 9:00	-	IRKT
 #
 # From Oscar van Vlijmen (2003-10-18): [This region consists of]
 # Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
@@ -2197,7 +2227,8 @@
 			 8:00	-	YAKT	1930 Jun 21 # Yakutsk Time
 			 9:00	Russia	YAK%sT	1991 Mar 31 2:00s
 			 8:00	Russia	YAK%sT	1992 Jan 19 2:00s
-			 9:00	Russia	YAK%sT
+			 9:00	Russia	YAK%sT	2011 Mar 27 2:00s
+			 10:00	-	YAKT
 #
 # From Oscar van Vlijmen (2003-10-18): [This region consists of]
 # Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
@@ -2210,7 +2241,8 @@
 			 9:00	-	VLAT	1930 Jun 21 # Vladivostok Time
 			10:00	Russia	VLA%sT	1991 Mar 31 2:00s
 			 9:00	Russia	VLA%sST	1992 Jan 19 2:00s
-			10:00	Russia	VLA%sT
+			10:00	Russia	VLA%sT	2011 Mar 27 2:00s
+			11:00	-	VLAT
 #
 # Sakhalinskaya oblast'.
 # The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
@@ -2220,7 +2252,8 @@
 			11:00	Russia	SAK%sT	1991 Mar 31 2:00s # Sakhalin T.
 			10:00	Russia	SAK%sT	1992 Jan 19 2:00s
 			11:00	Russia	SAK%sT	1997 Mar lastSun 2:00s
-			10:00	Russia	SAK%sT
+			10:00	Russia	SAK%sT	2011 Mar 27 2:00s
+			11:00	-	SAKT
 #
 # From Oscar van Vlijmen (2003-10-18): [This region consists of]
 # Magadanskaya oblast', Respublika Sakha (Yakutiya).
@@ -2233,7 +2266,8 @@
 			10:00	-	MAGT	1930 Jun 21 # Magadan Time
 			11:00	Russia	MAG%sT	1991 Mar 31 2:00s
 			10:00	Russia	MAG%sT	1992 Jan 19 2:00s
-			11:00	Russia	MAG%sT
+			11:00	Russia	MAG%sT	2011 Mar 27 2:00s
+			12:00	-	MAGT
 #
 # From Oscar van Vlijmen (2001-08-25): [This region consists of]
 # Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
@@ -2244,7 +2278,8 @@
 			12:00	Russia	PET%sT	1991 Mar 31 2:00s
 			11:00	Russia	PET%sT	1992 Jan 19 2:00s
 			12:00	Russia	PET%sT	2010 Mar 28 2:00s
-			11:00	Russia	PET%sT
+			11:00	Russia	PET%sT	2011 Mar 27 2:00s
+			12:00	-	PETT
 #
 # Chukotskij avtonomnyj okrug
 Zone Asia/Anadyr	11:49:56 -	LMT	1924 May  2
@@ -2253,7 +2288,8 @@
 			12:00	Russia	ANA%sT	1991 Mar 31 2:00s
 			11:00	Russia	ANA%sT	1992 Jan 19 2:00s
 			12:00	Russia	ANA%sT	2010 Mar 28 2:00s
-			11:00	Russia	ANA%sT
+			11:00	Russia	ANA%sT	2011 Mar 27 2:00s
+			12:00	-	ANAT
 
 # Serbia
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
diff --git a/jdk/make/sun/javazic/tzdata/iso3166.tab b/jdk/make/sun/javazic/tzdata/iso3166.tab
index f582cad..fee3f33 100644
--- a/jdk/make/sun/javazic/tzdata/iso3166.tab
+++ b/jdk/make/sun/javazic/tzdata/iso3166.tab
@@ -43,6 +43,9 @@
 #
 # Lines beginning with `#' are comments.
 #
+# From Arthur David Olson (2011-08-17):
+# Resynchronized today with the ISO 3166 site (adding SS for South Sudan).
+#
 #country-
 #code	country name
 AD	Andorra
@@ -52,7 +55,6 @@
 AI	Anguilla
 AL	Albania
 AM	Armenia
-AN	Netherlands Antilles
 AO	Angola
 AQ	Antarctica
 AR	Argentina
@@ -75,6 +77,7 @@
 BM	Bermuda
 BN	Brunei
 BO	Bolivia
+BQ	Bonaire Sint Eustatius & Saba
 BR	Brazil
 BS	Bahamas
 BT	Bhutan
@@ -97,6 +100,7 @@
 CR	Costa Rica
 CU	Cuba
 CV	Cape Verde
+CW	Curacao
 CX	Christmas Island
 CY	Cyprus
 CZ	Czech Republic
@@ -251,8 +255,10 @@
 SN	Senegal
 SO	Somalia
 SR	Suriname
+SS	South Sudan
 ST	Sao Tome & Principe
 SV	El Salvador
+SX	Sint Maarten
 SY	Syria
 SZ	Swaziland
 TC	Turks & Caicos Is
diff --git a/jdk/make/sun/javazic/tzdata/northamerica b/jdk/make/sun/javazic/tzdata/northamerica
index 7111cb7..d31b7f0 100644
--- a/jdk/make/sun/javazic/tzdata/northamerica
+++ b/jdk/make/sun/javazic/tzdata/northamerica
@@ -490,6 +490,10 @@
 # own time. I asked about daylight saving; they said it wasn't used. I
 # did not inquire about practices in the past.
 
+# From Arthur David Olson (2011-08-17):
+# For lack of better information, assume that Metlakatla's
+# abandonment of use of daylight saving resulted from the 1983 vote.
+
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
 Zone America/Juneau	 15:02:19 -	LMT	1867 Oct 18
 			 -8:57:41 -	LMT	1900 Aug 20 12:00
@@ -515,7 +519,7 @@
 			 -8:00	US	P%sT	1946
 			 -8:00	-	PST	1969
 			 -8:00	US	P%sT	1983 Oct 30 2:00
-			 -8:00	US	MeST
+			 -8:00	-	MeST
 Zone America/Yakutat	 14:41:05 -	LMT	1867 Oct 18
 			 -9:18:55 -	LMT	1900 Aug 20 12:00
 			 -9:00	-	YST	1942
@@ -615,8 +619,8 @@
 			-10:30	-	HST	1933 Apr 30 2:00 #Laws 1933
 			-10:30	1:00	HDT	1933 May 21 12:00 #Laws 1933+12
 			-10:30	-	HST	1942 Feb 09 2:00 #Schmitt&Cox+2
-			-10:30	1:00	HDT	1945 Sep 30 2:00 #Schmitt&Fox+2
-			-10:30	US	H%sT	1947 Jun  8 2:00 #Schmitt&Fox+2
+			-10:30	1:00	HDT	1945 Sep 30 2:00 #Schmitt&Cox+2
+			-10:30	-	HST	1947 Jun  8 2:00 #Schmitt&Cox+2
 			-10:00	-	HST
 
 # Now we turn to US areas that have diverged from the consensus since 1970.
@@ -1185,12 +1189,39 @@
 # From Paul Eggert (2000-10-02):
 # INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
 # at 00:01 local time.  For now, assume it started in 1987.
+
+# From Michael Pelley (2011-08-05):
+# The Government of Newfoundland and Labrador has pending changes to
+# modify the hour for daylight savings time to come into effect in
+# November 2011. This modification would change the time from 12:01AM to
+# 2:00AM on the dates of the switches of Daylight Savings Time to/from
+# Standard Time.
+#
+# As a matter of reference, in Canada provinces have the authority of
+# setting time zone information. The legislation has passed our
+# legislative body (The House of Assembly) and is awaiting the
+# proclamation to come into effect. You may find this information at:
+# <a href="http://www.assembly.nl.ca/legislation/sr/lists/Proclamation.htm">
+# http://www.assembly.nl.ca/legislation/sr/lists/Proclamation.htm
+# </a>
+# and
+# search within that web page for Standard Time (Amendment) Act. The Act
+# may be found at:
+# <a href="http://www.assembly.nl.ca/business/bills/Bill1106.htm">
+# http://www.assembly.nl.ca/business/bills/Bill1106.htm
+# </a>
+# ...
+# MICHAEL PELLEY | Manager of Enterprise Architecture - Solution Delivery
+# Office of the Chief Information Officer Executive Council Government of
+# Newfoundland & Labrador P.O. Box 8700, 40 Higgins Line, St. John's NL
+# A1B 4J6
+
 Rule	StJohns	1987	only	-	Apr	Sun>=1	0:01	1:00	D
 Rule	StJohns	1987	2006	-	Oct	lastSun	0:01	0	S
 Rule	StJohns	1988	only	-	Apr	Sun>=1	0:01	2:00	DD
 Rule	StJohns	1989	2006	-	Apr	Sun>=1	0:01	1:00	D
-Rule	StJohns	2007	max	-	Mar	Sun>=8	0:01	1:00	D
-Rule	StJohns	2007	max	-	Nov	Sun>=1	0:01	0	S
+Rule	StJohns	2007	2011	-	Mar	Sun>=8	0:01	1:00	D
+Rule	StJohns	2007	2010	-	Nov	Sun>=1	0:01	0	S
 #
 # St John's has an apostrophe, but Posix file names can't have apostrophes.
 # Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
@@ -1200,7 +1231,8 @@
 			-3:30:52 StJohns N%sT	1935 Mar 30
 			-3:30	StJohns	N%sT	1942 May 11
 			-3:30	Canada	N%sT	1946
-			-3:30	StJohns	N%sT
+			-3:30	StJohns	N%sT	2011 Nov
+			-3:30	Canada	N%sT
 
 # most of east Labrador
 
@@ -1214,7 +1246,8 @@
 			-3:30	StJohns	N%sT	1942 May 11
 			-3:30	Canada	N%sT	1946
 			-3:30	StJohns	N%sT	1966 Mar 15 2:00
-			-4:00	StJohns	A%sT
+			-4:00	StJohns	A%sT	2011 Nov
+			-4:00	Canada	A%sT
 
 
 # west Labrador, Nova Scotia, Prince Edward I
@@ -1946,20 +1979,69 @@
 # daylight saving....
 # http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
 
-# From Chris Walton (2007-03-14):
-# Today I phoned the "hamlet office" to find out what Resolute was doing with
-# its clocks.
+# From Chris Walton (2011-03-21):
+# Back in 2007 I initiated the creation of a new "zone file" for Resolute
+# Bay. Resolute Bay is a small community located about 900km north of
+# the Arctic Circle. The zone file was required because Resolute Bay had
+# decided to use UTC-5 instead of UTC-6 for the winter of 2006-2007.
 #
-# The individual that answered the phone confirmed that the clocks did not
-# move at the end of daylight saving on October 29/2006.  He also told me that
-# the clocks did not move this past weekend (March 11/2007)....
-
-# From Chris Walton (2008-11-13):
-# ...the residents of Resolute believe that they are changing "time zones"
-# twice a year.  In winter months, local time is qualified with "Eastern
-# Time" which is really "Eastern Standard Time (UTC-5)".  In summer
-# months, local time is qualified with "Central Time" which is really
-# "Central Daylight Time (UTC-5)"...
+# According to new information which I received last week, Resolute Bay
+# went back to using UTC-6 in the winter of 2007-2008...
+#
+# On March 11/2007 most of Canada went onto daylight saving. On March
+# 14/2007 I phoned the Resolute Bay hamlet office to do a "time check." I
+# talked to somebody that was both knowledgeable and helpful. I was able
+# to confirm that Resolute Bay was still operating on UTC-5. It was
+# explained to me that Resolute Bay had been on the Eastern Time zone
+# (EST) in the winter, and was now back on the Central Time zone (CDT).
+# i.e. the time zone had changed twice in the last year but the clocks
+# had not moved. The residents had to know which time zone they were in
+# so they could follow the correct TV schedule...
+#
+# On Nov 02/2008 most of Canada went onto standard time. On Nov 03/2008 I
+# phoned the Resolute Bay hamlet office...[D]ue to the challenging nature
+# of the phone call, I decided to seek out an alternate source of
+# information. I found an e-mail address for somebody by the name of
+# Stephanie Adams whose job was listed as "Inns North Support Officer for
+# Arctic Co-operatives." I was under the impression that Stephanie lived
+# and worked in Resolute Bay...
+#
+# On March 14/2011 I phoned the hamlet office again. I was told that
+# Resolute Bay had been using Central Standard Time over the winter of
+# 2010-2011 and that the clocks had therefore been moved one hour ahead
+# on March 13/2011. The person I talked to was aware that Resolute Bay
+# had previously experimented with Eastern Standard Time but he could not
+# tell me when the practice had stopped.
+#
+# On March 17/2011 I searched the Web to find an e-mail address of
+# somebody that might be able to tell me exactly when Resolute Bay went
+# off Eastern Standard Time. I stumbled on the name "Aziz Kheraj." Aziz
+# used to be the mayor of Resolute Bay and he apparently owns half the
+# businesses including "South Camp Inn." This website has some info on
+# Aziz:
+# <a href="http://www.uphere.ca/node/493">
+# http://www.uphere.ca/node/493
+# </a>
+#
+# I sent Aziz an e-mail asking when Resolute Bay had stopped using
+# Eastern Standard Time.
+#
+# Aziz responded quickly with this: "hi, The time was not changed for the
+# 1 year only, the following year, the community went back to the old way
+# of "spring ahead-fall behind" currently we are zulu plus 5 hrs and in
+# the winter Zulu plus 6 hrs"
+#
+# This of course conflicted with everything I had ascertained in November 2008.
+#
+# I sent Aziz a copy of my 2008 e-mail exchange with Stephanie. Aziz
+# responded with this: "Hi, Stephanie lives in Winnipeg. I live here, You
+# may want to check with the weather office in Resolute Bay or do a
+# search on the weather through Env. Canada. web site"
+#
+# If I had realized the Stephanie did not live in Resolute Bay I would
+# never have contacted her.  I now believe that all the information I
+# obtained in November 2008 should be ignored...
+# I apologize for reporting incorrect information in 2008.
 
 # Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
 Rule	NT_YK	1918	only	-	Apr	14	2:00	1:00	D
@@ -1987,14 +2069,12 @@
 			-6:00	Canada	C%sT	2000 Oct 29 2:00
 			-5:00	Canada	E%sT
 # aka Qausuittuq
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Resolute 2006	max	-	Nov	Sun>=1	2:00	0	ES
-Rule	Resolute 2007	max	-	Mar	Sun>=8	2:00	0	CD
 Zone America/Resolute	0	-	zzz	1947 Aug 31 # Resolute founded
 			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
 			-5:00	-	EST	2001 Apr  1 3:00
 			-6:00	Canada	C%sT	2006 Oct 29 2:00
-			-5:00	Resolute	%sT
+			-5:00	-	EST	2007 Mar 11 3:00
+			-6:00	Canada	C%sT
 # aka Kangiqiniq
 Zone America/Rankin_Inlet 0	-	zzz	1957 # Rankin Inlet founded
 			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
diff --git a/jdk/make/sun/javazic/tzdata/southamerica b/jdk/make/sun/javazic/tzdata/southamerica
index 7717d12..215d95d 100644
--- a/jdk/make/sun/javazic/tzdata/southamerica
+++ b/jdk/make/sun/javazic/tzdata/southamerica
@@ -1298,6 +1298,14 @@
 			-4:30	-	ANT	1965 # Netherlands Antilles Time
 			-4:00	-	AST
 
+# From Arthur David Olson (2011-06-15):
+# At least for now, use links for places with new iso3166 codes.
+# The name "Lower Prince's Quarter" is both longer than fourteen charaters
+# and contains an apostrophe; use "Lower_Princes" below.
+
+Link	America/Curacao	America/Lower_Princes # Sint Maarten
+Link	America/Curacao	America/Kralendijk # Bonaire, Sint Estatius and Saba
+
 # Ecuador
 #
 # From Paul Eggert (2007-03-04):
diff --git a/jdk/make/sun/javazic/tzdata/zone.tab b/jdk/make/sun/javazic/tzdata/zone.tab
index 0b158ec..81ce7f5 100644
--- a/jdk/make/sun/javazic/tzdata/zone.tab
+++ b/jdk/make/sun/javazic/tzdata/zone.tab
@@ -54,7 +54,6 @@
 AI	+1812-06304	America/Anguilla
 AL	+4120+01950	Europe/Tirane
 AM	+4011+04430	Asia/Yerevan
-AN	+1211-06900	America/Curacao
 AO	-0848+01314	Africa/Luanda
 AQ	-7750+16636	Antarctica/McMurdo	McMurdo Station, Ross Island
 AQ	-9000+00000	Antarctica/South_Pole	Amundsen-Scott Station, South Pole
@@ -109,6 +108,7 @@
 BM	+3217-06446	Atlantic/Bermuda
 BN	+0456+11455	Asia/Brunei
 BO	-1630-06809	America/La_Paz
+BQ	+120903-0681636	America/Kralendijk
 BR	-0351-03225	America/Noronha	Atlantic islands
 BR	-0127-04829	America/Belem	Amapa, E Para
 BR	-0343-03830	America/Fortaleza	NE Brazil (MA, PI, CE, RN, PB)
@@ -142,7 +142,7 @@
 CA	+4823-08915	America/Thunder_Bay	Eastern Time - Thunder Bay, Ontario
 CA	+6344-06828	America/Iqaluit	Eastern Time - east Nunavut - most locations
 CA	+6608-06544	America/Pangnirtung	Eastern Time - Pangnirtung, Nunavut
-CA	+744144-0944945	America/Resolute	Eastern Standard Time - Resolute, Nunavut
+CA	+744144-0944945	America/Resolute	Central Standard Time - Resolute, Nunavut
 CA	+484531-0913718	America/Atikokan	Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
 CA	+624900-0920459	America/Rankin_Inlet	Central Time - central Nunavut
 CA	+4953-09709	America/Winnipeg	Central Time - Manitoba & west Ontario
@@ -177,6 +177,7 @@
 CR	+0956-08405	America/Costa_Rica
 CU	+2308-08222	America/Havana
 CV	+1455-02331	Atlantic/Cape_Verde
+CW	+1211-06900	America/Curacao
 CX	-1025+10543	Indian/Christmas
 CY	+3510+03322	Asia/Nicosia
 CZ	+5005+01426	Europe/Prague
@@ -382,8 +383,10 @@
 SN	+1440-01726	Africa/Dakar
 SO	+0204+04522	Africa/Mogadishu
 SR	+0550-05510	America/Paramaribo
+SS	+0451+03136	Africa/Juba
 ST	+0020+00644	Africa/Sao_Tome
 SV	+1342-08912	America/El_Salvador
+SX	+180305-0630250	America/Lower_Princes
 SY	+3330+03618	Asia/Damascus
 SZ	-2618+03106	Africa/Mbabane
 TC	+2128-07108	America/Grand_Turk
diff --git a/jdk/make/sun/util/Makefile b/jdk/make/sun/util/Makefile
new file mode 100644
index 0000000..70d9075
--- /dev/null
+++ b/jdk/make/sun/util/Makefile
@@ -0,0 +1,40 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.util
+PRODUCT = sun
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+AUTO_FILES_JAVA_DIRS = sun/util/xml
+
+#
+# Rules
+#
+include $(BUILDDIR)/common/Classes.gmk
+
diff --git a/jdk/make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java b/jdk/make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java
index 3c6aebf..0533517 100644
--- a/jdk/make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java
+++ b/jdk/make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java
@@ -120,7 +120,7 @@
     private static int[] specialCaseOldCurrenciesNumericCode = new int[maxSpecialCases];
     private static int[] specialCaseNewCurrenciesNumericCode = new int[maxSpecialCases];
 
-    private static final int maxOtherCurrencies = 65;
+    private static final int maxOtherCurrencies = 70;
     private static int otherCurrenciesCount = 0;
     private static StringBuffer otherCurrencies = new StringBuffer();
     private static int[] otherCurrenciesDefaultFractionDigits = new int[maxOtherCurrencies];
diff --git a/jdk/make/tools/src/build/tools/javazic/Mappings.java b/jdk/make/tools/src/build/tools/javazic/Mappings.java
index 954d3d5..5e5498a 100644
--- a/jdk/make/tools/src/build/tools/javazic/Mappings.java
+++ b/jdk/make/tools/src/build/tools/javazic/Mappings.java
@@ -76,8 +76,8 @@
             // If the GMT offset of this Zone will change in some
             // future time, this Zone is added to the exclude list.
             boolean isExcluded = false;
-            if (zone.size() > 1) {
-                ZoneRec zrec = zone.get(zone.size()-2);
+            for (int i = 0; i < zone.size(); i++) {
+                ZoneRec zrec = zone.get(i);
                 if ((zrec.getGmtOffset() != rawOffset)
                     && (zrec.getUntilTime(0) > Time.getCurrentTime())) {
                     if (excludeList == null) {
@@ -85,6 +85,7 @@
                     }
                     excludeList.add(zone.getName());
                     isExcluded = true;
+                    break;
                 }
             }
 
diff --git a/jdk/src/share/classes/com/sun/servicetag/Installer.java b/jdk/src/share/classes/com/sun/servicetag/Installer.java
index ae5ed4b..40ae99e 100644
--- a/jdk/src/share/classes/com/sun/servicetag/Installer.java
+++ b/jdk/src/share/classes/com/sun/servicetag/Installer.java
@@ -61,8 +61,8 @@
     private static RegistrationData registration;
     private static boolean supportRegistration;
     private static String registerHtmlParent;
-    private static Set<Locale> supportedLocales = new HashSet<Locale>();
-    private static Properties swordfishProps = null;
+    private static Set<Locale> supportedLocales = new HashSet<>();
+    private static Properties svcTagProps = null;
     private static String[] jreArchs = null;
     static {
         String dir = System.getProperty(SVCTAG_DIR_PATH);
@@ -94,7 +94,7 @@
         boolean cleanup = false;
         try {
             // Check if we have the swordfish entries for this JRE version
-            if (loadSwordfishEntries() == null) {
+            if (loadServiceTagProps() == null) {
                 return null;
             }
 
@@ -144,18 +144,14 @@
             return registration;
         }
         if (regXmlFile.exists()) {
-            BufferedInputStream in = null;
-            try {
-                in = new BufferedInputStream(new FileInputStream(regXmlFile));
+            try (BufferedInputStream in =
+                    new BufferedInputStream(new FileInputStream(regXmlFile)))
+            {
                 registration = RegistrationData.loadFromXML(in);
             } catch (IllegalArgumentException ex) {
                 System.err.println("Error: Bad registration data \"" +
                                     regXmlFile + "\":" + ex.getMessage());
                 throw ex;
-            } finally {
-                if (in != null) {
-                    in.close();
-                }
             }
         } else {
             registration = new RegistrationData();
@@ -186,18 +182,14 @@
         deleteRegistrationHtmlPage();
         getRegistrationHtmlPage();
 
-        BufferedOutputStream out = null;
-        try {
-            out = new BufferedOutputStream(new FileOutputStream(regXmlFile));
+        try (BufferedOutputStream out =
+                new BufferedOutputStream(new FileOutputStream(regXmlFile)))
+        {
             getRegistrationData().storeToXML(out);
         } catch (IllegalArgumentException ex) {
             System.err.println("Error: Bad registration data \"" +
                                 regXmlFile + "\":" + ex.getMessage());
             throw ex;
-        } finally {
-            if (out != null) {
-                out.close();
-            }
         }
     }
 
@@ -206,11 +198,9 @@
      * or empty set if file not exists.
      */
     private static Set<String> getInstalledURNs() throws IOException {
-        Set<String> urnSet = new HashSet<String>();
+        Set<String> urnSet = new HashSet<>();
         if (serviceTagFile.exists()) {
-            BufferedReader in = null;
-            try {
-                in = new BufferedReader(new FileReader(serviceTagFile));
+            try (BufferedReader in = new BufferedReader(new FileReader(serviceTagFile))) {
                 String urn;
                 while ((urn = in.readLine()) != null) {
                     urn = urn.trim();
@@ -218,10 +208,6 @@
                         urnSet.add(urn);
                     }
                 }
-            } finally {
-                if (in != null) {
-                    in.close();
-                }
             }
         }
         return urnSet;
@@ -237,9 +223,9 @@
     private static ServiceTag[] getJavaServiceTagArray() throws IOException {
         RegistrationData regData = getRegistrationData();
         Set<ServiceTag> svcTags = regData.getServiceTags();
-        Set<ServiceTag> result = new HashSet<ServiceTag>();
+        Set<ServiceTag> result = new HashSet<>();
 
-        Properties props = loadSwordfishEntries();
+        Properties props = loadServiceTagProps();
         String jdkUrn = props.getProperty("servicetag.jdk.urn");
         String jreUrn = props.getProperty("servicetag.jre.urn");
         for (ServiceTag st : svcTags) {
@@ -343,8 +329,7 @@
     }
 
     private static ServiceTag newServiceTag(String svcTagSource) throws IOException {
-        // Load the swoRDFish information for the service tag creation
-        Properties props = loadSwordfishEntries();
+        Properties props = loadServiceTagProps();
 
         // Determine the product URN and name
         String productURN;
@@ -442,52 +427,35 @@
             return;
         }
 
-        PrintWriter out = null;
-        try {
-            out = new PrintWriter(serviceTagFile);
-
+        try (PrintWriter out = new PrintWriter(serviceTagFile)) {
             ServiceTag[] javaSvcTags = getJavaServiceTagArray();
             for (ServiceTag st : javaSvcTags) {
                 // Write the instance_run to the servicetag file
                 String instanceURN = st.getInstanceURN();
                 out.println(instanceURN);
             }
-        } finally {
-            if (out != null) {
-                out.close();
-            }
         }
     }
 
     /**
-     * Load the values associated with the swoRDFish metadata entries
-     * for Java SE. The swoRDFish metadata entries are different for
-     * different release.
+     * Load the properties for generating Java SE service tags.
      *
      * @param version Version of Java SE
      */
-    private static synchronized Properties loadSwordfishEntries() throws IOException {
-        if (swordfishProps != null) {
-            return swordfishProps;
+    private static synchronized Properties loadServiceTagProps() throws IOException {
+        if (svcTagProps != null) {
+            return svcTagProps;
         }
 
-        // The version string for Java SE 6 is 1.6.0
-        // We just need the minor number in the version string
-        int version = Util.getJdkVersion();
-
-        String filename = "/com/sun/servicetag/resources/javase_" +
-                version + "_swordfish.properties";
-        InputStream in = Installer.class.getResourceAsStream(filename);
-        if (in == null) {
-            return null;
+        // For Java SE 8 and later releases, JDK and JRE both use
+        // the same product number.  The sworRDFish metadata were
+        // for legacy Sun part number.
+        String filename = "/com/sun/servicetag/resources/javase_servicetag.properties";
+        try (InputStream in = Installer.class.getResourceAsStream(filename)) {
+            svcTagProps = new Properties();
+            svcTagProps.load(in);
         }
-        swordfishProps = new Properties();
-        try {
-            swordfishProps.load(in);
-        } finally {
-            in.close();
-        }
-        return swordfishProps;
+        return svcTagProps;
     }
 
     /**
@@ -546,7 +514,7 @@
             return jreArchs;
         }
 
-        Set<String> archs = new HashSet<String>();
+        Set<String> archs = new HashSet<>();
 
         String os = System.getProperty("os.name");
         if (os.equals("SunOS") || os.equals("Linux")) {
@@ -681,16 +649,16 @@
         String country = locale.getCountry();
         String variant = locale.getVariant();
 
-        List<Locale> locales = new ArrayList<Locale>(3);
+        List<Locale> locales = new ArrayList<>(3);
         if (variant.length() > 0) {
             locales.add(locale);
         }
         if (country.length() > 0) {
-            locales.add((locales.size() == 0) ?
+            locales.add((locales.isEmpty()) ?
                         locale : new Locale(language, country, ""));
         }
         if (language.length() > 0) {
-            locales.add((locales.size() == 0) ?
+            locales.add((locales.isEmpty()) ?
                         locale : new Locale(language, "", ""));
         }
         return locales;
@@ -788,14 +756,11 @@
         // Format the registration data in one single line
         StringBuilder payload = new StringBuilder();
         String xml = regData.toString().replaceAll("\"", "%22");
-        BufferedReader reader = new BufferedReader(new StringReader(xml));
-        try {
+        try (BufferedReader reader = new BufferedReader(new StringReader(xml))) {
             String line = null;
             while ((line = reader.readLine()) != null) {
                 payload.append(line.trim());
             }
-        } finally {
-            reader.close();
         }
 
         String resourceFilename = "/com/sun/servicetag/resources/register";
diff --git a/jdk/src/share/classes/com/sun/servicetag/resources/javase_servicetag.properties b/jdk/src/share/classes/com/sun/servicetag/resources/javase_servicetag.properties
new file mode 100644
index 0000000..7ff81b2
--- /dev/null
+++ b/jdk/src/share/classes/com/sun/servicetag/resources/javase_servicetag.properties
@@ -0,0 +1,29 @@
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+
+servicetag.jdk.urn     = Q8549
+servicetag.jdk.name    = Java Development Kit
+servicetag.jre.urn     = Q8549
+servicetag.jre.name    = Java Runtime Environment
+servicetag.parent.urn  = Q8549
+servicetag.parent.name = Java Platform, Standard Edition
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties
index d222689..67e2890 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Look In:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Save In:
 FileChooser.fileNameLabelText=File Name:
-FileChooser.folderNameLabelText=Folder name:
+FileChooser.fileNameLabelMnemonic=78
+FileChooser.folderNameLabelText=Folder Name:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Files of Type:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Up One Level
 FileChooser.upFolderAccessibleName=Up
 FileChooser.homeFolderToolTipText=Home
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties
index 990f344..8da54b8 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_de.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Suchen in:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Speichern in:
 FileChooser.fileNameLabelText=Dateiname:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=Ordnername:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Dateityp:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Eine Ebene h\u00F6her
 FileChooser.upFolderAccessibleName=Nach oben
 FileChooser.homeFolderToolTipText=Home
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties
index 03d2166..14229e8 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_es.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Buscar en:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Guardar en:
 FileChooser.fileNameLabelText=Nombre de Archivo:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=Nombre de la Carpeta:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Archivos de Tipo:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Subir un Nivel
 FileChooser.upFolderAccessibleName=Arriba
 FileChooser.homeFolderToolTipText=Inicio
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties
index 273351d..7660e7d 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Rechercher dans :
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Enregistrer dans :
 FileChooser.fileNameLabelText=Nom du fichier :
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=Nom du dossier :
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Fichiers de type :
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Remonte d'un niveau.
 FileChooser.upFolderAccessibleName=Monter
 FileChooser.homeFolderToolTipText=R\u00E9pertoire d'origine
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties
index da2e2c7..8a1535e 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_it.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Cerca in:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Salva in:
 FileChooser.fileNameLabelText=Nome file:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=Nome della cartella:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Tipo file:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Cartella superiore
 FileChooser.upFolderAccessibleName=Superiore
 FileChooser.homeFolderToolTipText=Home
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties
index 382fcf8..d49e038 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ja.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=\u53C2\u7167:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=\u4FDD\u5B58:
 FileChooser.fileNameLabelText=\u30D5\u30A1\u30A4\u30EB\u540D:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=\u30D5\u30A9\u30EB\u30C0\u540D:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=\u30D5\u30A1\u30A4\u30EB\u306E\u30BF\u30A4\u30D7:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=1\u30EC\u30D9\u30EB\u4E0A\u3078
 FileChooser.upFolderAccessibleName=\u4E0A\u3078
 FileChooser.homeFolderToolTipText=\u30DB\u30FC\u30E0
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties
index adc9b1d..ff3b382 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_ko.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=\uAC80\uC0C9 \uC704\uCE58:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=\uC800\uC7A5 \uC704\uCE58:
 FileChooser.fileNameLabelText=\uD30C\uC77C \uC774\uB984:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=\uD3F4\uB354 \uC774\uB984:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=\uD30C\uC77C \uC720\uD615:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=\uD55C \uB808\uBCA8 \uC704\uB85C
 FileChooser.upFolderAccessibleName=\uC704\uB85C
 FileChooser.homeFolderToolTipText=\uD648
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties
index b14a61f..bb94bb1 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_pt_BR.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Consultar Em:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Salvar Em:
 FileChooser.fileNameLabelText=Nome do Arquivo:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=Nome da pasta:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Arquivos do Tipo:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Um N\u00EDvel Acima
 FileChooser.upFolderAccessibleName=Acima
 FileChooser.homeFolderToolTipText=In\u00EDcio
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties
index 9167b72..1d23ec8 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_sv.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=Leta i:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=Spara i:
 FileChooser.fileNameLabelText=Filnamn:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=Mapp:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=Filformat:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=Upp en niv\u00E5
 FileChooser.upFolderAccessibleName=Upp
 FileChooser.homeFolderToolTipText=Hem
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties
index 547fd15..5269dcc 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=\u67E5\u770B: 
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=\u4FDD\u5B58: 
 FileChooser.fileNameLabelText=\u6587\u4EF6\u540D: 
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=\u6587\u4EF6\u5939\u540D: 
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=\u6587\u4EF6\u7C7B\u578B: 
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=\u5411\u4E0A\u4E00\u7EA7
 FileChooser.upFolderAccessibleName=\u5411\u4E0A
 FileChooser.homeFolderToolTipText=\u4E3B\u76EE\u5F55
diff --git a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties
index 1144f61..b76aa0b 100644
--- a/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties
+++ b/jdk/src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.properties
@@ -19,10 +19,14 @@
 ############ FILE CHOOSER STRINGS #############
 
 FileChooser.lookInLabelText=\u67E5\u8A62:
+FileChooser.lookInLabelMnemonic=73
 FileChooser.saveInLabelText=\u5132\u5B58\u65BC: 
 FileChooser.fileNameLabelText=\u6A94\u6848\u540D\u7A31:
+FileChooser.fileNameLabelMnemonic=78
 FileChooser.folderNameLabelText=\u8CC7\u6599\u593E\u540D\u7A31:
+FileChooser.folderNameLabelMnemonic=78
 FileChooser.filesOfTypeLabelText=\u6A94\u6848\u985E\u578B:
+FileChooser.filesOfTypeLabelMnemonic=84
 FileChooser.upFolderToolTipText=\u5F80\u4E0A\u4E00\u5C64
 FileChooser.upFolderAccessibleName=\u5F80\u4E0A
 FileChooser.homeFolderToolTipText=\u4E3B\u76EE\u9304
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java
index 09e3f7e..8cfe90f 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java
index 667cbb2..139d688 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class AmbiguousMethodException extends Exception
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java
index 541582e..9e5da40 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public abstract class BreakpointSpec extends EventRequestSpec {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java
index 917b0d8..7469709 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java
index 0e0a6b0..9163e5b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class EvaluationException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java
index 796d580..5a9c1d7 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java
index a489827..ce5dcce 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpecList.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java
index fa3fcb3..c26d8b8 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.ReferenceType;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java
index 35f2075..4a79f43 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java
index 5d70918..4f1ebd2 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class FrameIndexOutOfBoundsException extends IndexOutOfBoundsException {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/InputListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/InputListener.java
index a06d39b..d32d1da 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/InputListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/InputListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public interface InputListener {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java
index dedc247..bd34832 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java
index 0a1e0b1..838fe55 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java
index 6d906a8..97f023a 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class LineNotFoundException extends Exception
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java
index c73e685..1dea517 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 class MalformedMemberNameException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java
index 7a9748a..387f92f 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java
index 9fd3aa9..75331cc 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class MethodNotFoundException extends Exception
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java
index 7043d66..7d30378 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java
index 32988ab..df1c82d 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class NoSessionException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java
index 460b1a4..48ed6ba 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class NoThreadException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/OutputListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/OutputListener.java
index 777926b..2f5db08 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/OutputListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/OutputListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public interface OutputListener {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ParseException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ParseException.java
index c730c6c..413e7aa 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ParseException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ParseException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 // dummy placeholder for javaCC-generated code.
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java
index 4f6d73e..382b6da 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java
index fc47806..199df81 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Session.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Session.java
index 4599cb1..d2cd7ce 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Session.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Session.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.VirtualMachine;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SessionListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SessionListener.java
index df109a5..1b22055 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SessionListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SessionListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import java.util.EventObject;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java
index c788f5d..ff954d2 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java
index c6b9f4e..2ba571e 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class SpecErrorEvent extends SpecEvent {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java
index 625a263..8492f4d 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import java.util.EventObject;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecListener.java
index 9771e9f..a5d6bc4 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/SpecListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import java.util.EventListener;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java
index c6ec121..736bf2e 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.ThreadGroupReference;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java
index b9516c4..9f36408 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java
index 6fafd71..ac61bbd 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 import com.sun.jdi.ThreadGroupReference;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Utils.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Utils.java
index d3e0173..3ccaad6 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Utils.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/Utils.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;   //### does it belong here?
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java
index d0c482c..4996184 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class VMLaunchFailureException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java
index ef12d6d..f14a5f4 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public class VMNotInterruptedException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java
index 469b423..7b77173 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.bdi;
 
 public abstract class WatchpointSpec extends EventRequestSpec {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java
index 80cbd9a..c239f0f 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java
index 37b73e5..e8b0f08 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java
index 69050d3..09e8340 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java
index c043b23..b9e70d6 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java
index c94fa28..7c48539 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java
index fb3e7a8..706e206 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 /**
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIListener.java
index 16eef96..a0637e3 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/JDIListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import java.util.EventListener;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java
index 303af12..6cafff9 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java
index b30bea5..ab52678 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java
index 382a8f3..591bcd5 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java
index ad432f7..dd17a05 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java
index 63b1fb4..c96e298 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java
index 017f11f..ee05411 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java
index 4edf4b8..0ac988c 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.event.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java
index 896fa78..0de4700 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java b/jdk/src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java
index 628f21c..e662b10 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.event;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ASCII_UCodeESC_CharStream.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ASCII_UCodeESC_CharStream.java
index 1ec552e..69f2433 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ASCII_UCodeESC_CharStream.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ASCII_UCodeESC_CharStream.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ASCII_UCodeESC_CharStream.java Version 0.7pre6 */
 
 package com.sun.tools.example.debug.expr;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java
index c2c7901..063c29d 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ExpressionParser.java */
 package com.sun.tools.example.debug.expr;
 
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserConstants.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserConstants.java
index 9f1f725..390d238 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserConstants.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserConstants.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ExpressionParserConstants.java */
 package com.sun.tools.example.debug.expr;
 
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java
index 9787d5d..6720997 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ExpressionParserTokenManager.java */
 package com.sun.tools.example.debug.expr;
 
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/LValue.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/LValue.java
index 42ef296..57e2950 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/LValue.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/LValue.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.expr;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ParseException.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ParseException.java
index 8ee5372..1f5c30b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/ParseException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/ParseException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. ParseException.java Version 0.7pre6 */
 package com.sun.tools.example.debug.expr;
 
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/Token.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/Token.java
index 5341200..1b6a63d 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/Token.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/Token.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. Token.java Version 0.7pre3 */
 package com.sun.tools.example.debug.expr;
 
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java b/jdk/src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java
index 16a40df..fc84002 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 0.7pre2 */
 package com.sun.tools.example.debug.expr;
 
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java
index e9a4c0b..4157f98 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassManager.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassManager.java
index bdddc24..f5561d1 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassManager.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassManager.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 public class ClassManager {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java
index 9452434..bc4a766 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java
index 97ab320..af1b9eb 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java
index 42157e4..1e0f78b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextListener.java
index 4ac03a0..b4b63f0 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 public interface ContextListener {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java
index 2ce0490..01f96d4 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java
index 00c827f..90f2967 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/Environment.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/Environment.java
index f9884c7..6dc57a9 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/Environment.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/Environment.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/GUI.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/GUI.java
index 1fa88bb..b9ae173 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/GUI.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/GUI.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/Icons.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/Icons.java
index bdbb700..87173d2 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/Icons.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/Icons.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.Icon;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java
index 3a6f107..6d6bf77 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.File;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java
index c224b57..22329cf 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java
index 02982b9..8031fab 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java
index cb1d77b..febce66 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.List;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java
index c46219f..9203206 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java
index cf7c10c..ebdca54 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/OutputSink.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/OutputSink.java
index 413878f..321e162 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/OutputSink.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/OutputSink.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java
index 3090569..9e6da58 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java
index 47df28d..0de002a 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.tree.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceListener.java
index 94c1dbc..d98251a 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 public interface SourceListener {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java
index eda8346..7465bfb 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java
index b65be0b..9510218 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java
index cecbeaf..a358c71 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java
index 5f572c7..e21b027 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java
index 975571b..88a26f9 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.EventObject;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java
index 1e3b68e..405c7ec 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import javax.swing.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java
index 02cf374..05e1836 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.util.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java
index c99a4cd..254e9fa 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.awt.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java
index bb3cda6..e284e77 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import com.sun.tools.example.debug.bdi.OutputListener;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java b/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java
index 64b5ec2..462d4a5 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.gui;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java
index 1b83363..0f72fb4 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java
index eb210dd..35329bc 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 public class AmbiguousMethodException extends Exception
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java
index ed6c2a1..87a9a30 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/Commands.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/Commands.java
index 14a8826..d6fa909 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/Commands.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/Commands.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/Env.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/Env.java
index e397326..060f8a3 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/Env.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/Env.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java
index 31e5035..55bf2bf 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventNotifier.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventNotifier.java
index f03e97d..97dabf9 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventNotifier.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventNotifier.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.event.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java
index 5c0177b..ba668d2 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java
index 58dc664..8ad6528 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.request.EventRequest;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java
index f1a3c27..8c1e652 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ReferenceType;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java
index 442b798..8e188aa 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 public class LineNotFoundException extends Exception
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java
index 3f2bf46..3e64927 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 class MalformedMemberNameException extends Exception {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/MessageOutput.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/MessageOutput.java
index 54e3b37..b86d89f 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/MessageOutput.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/MessageOutput.java
@@ -22,6 +22,15 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.tools.example.debug.tty;
 
 import java.util.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java
index ee3a63e..846f74b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java
index cc4473c..e719222 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java
index 0e76be0..12f1fc6 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java
index 941f6c2..e7f67f0 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.Location;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTY.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTY.java
index 6514592..f86f177 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTY.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTY.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java
index f6ba9d7..2c844c2 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 /**
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java
index 2dcace1..1a82e3b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 /**
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java
index dc84bdf..1bad495 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 /**
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java
index dd3ad08..c361a83 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ThreadGroupReference;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java
index 8ac294f..b1654ac 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ThreadReference;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java
index 6acb2ea..31b996b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.ThreadGroupReference;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java
index 0b77f98..73a075b 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java
index 780301c..bde3c12 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 public class VMNotConnectedException extends RuntimeException {
diff --git a/jdk/src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java b/jdk/src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java
index 6c7da78..c9b3c4e 100644
--- a/jdk/src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java
+++ b/jdk/src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.debug.tty;
 
 abstract class WatchpointSpec extends EventRequestSpec {
diff --git a/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java b/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java
index 229a416..22a3fdc 100644
--- a/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java
+++ b/jdk/src/share/classes/com/sun/tools/example/trace/EventThread.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.trace;
 
 import com.sun.jdi.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java b/jdk/src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java
index b6e6e59..be5b028 100644
--- a/jdk/src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java
+++ b/jdk/src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.trace;
 
 import java.io.*;
diff --git a/jdk/src/share/classes/com/sun/tools/example/trace/Trace.java b/jdk/src/share/classes/com/sun/tools/example/trace/Trace.java
index 2e1b961..04fc096 100644
--- a/jdk/src/share/classes/com/sun/tools/example/trace/Trace.java
+++ b/jdk/src/share/classes/com/sun/tools/example/trace/Trace.java
@@ -23,6 +23,15 @@
  * questions.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.tools.example.trace;
 
 import com.sun.jdi.VirtualMachine;
diff --git a/jdk/src/share/classes/java/io/FileInputStream.java b/jdk/src/share/classes/java/io/FileInputStream.java
index 3aec508..9dc1955 100644
--- a/jdk/src/share/classes/java/io/FileInputStream.java
+++ b/jdk/src/share/classes/java/io/FileInputStream.java
@@ -56,16 +56,6 @@
     private final Object closeLock = new Object();
     private volatile boolean closed = false;
 
-    private static final ThreadLocal<Boolean> runningFinalize =
-        new ThreadLocal<>();
-
-    private static boolean isRunningFinalize() {
-        Boolean val;
-        if ((val = runningFinalize.get()) != null)
-            return val.booleanValue();
-        return false;
-    }
-
     /**
      * Creates a <code>FileInputStream</code> by
      * opening a connection to an actual file,
@@ -319,10 +309,10 @@
         int useCount = fd.decrementAndGetUseCount();
 
         /*
-         * If FileDescriptor is still in use by another stream, the finalizer
+         * If FileDescriptor is still in use by another stream, we
          * will not close it.
          */
-        if ((useCount <= 0) || !isRunningFinalize()) {
+        if (useCount <= 0) {
             close0();
         }
     }
@@ -391,18 +381,7 @@
      */
     protected void finalize() throws IOException {
         if ((fd != null) &&  (fd != FileDescriptor.in)) {
-
-            /*
-             * Finalizer should not release the FileDescriptor if another
-             * stream is still using it. If the user directly invokes
-             * close() then the FileDescriptor is also released.
-             */
-            runningFinalize.set(Boolean.TRUE);
-            try {
                 close();
-            } finally {
-                runningFinalize.set(Boolean.FALSE);
-            }
         }
     }
 }
diff --git a/jdk/src/share/classes/java/io/FileOutputStream.java b/jdk/src/share/classes/java/io/FileOutputStream.java
index 6f1a776..4a8a724 100644
--- a/jdk/src/share/classes/java/io/FileOutputStream.java
+++ b/jdk/src/share/classes/java/io/FileOutputStream.java
@@ -63,21 +63,12 @@
     private final boolean append;
 
     /**
-     * The associated channel, initalized lazily.
+     * The associated channel, initialized lazily.
      */
     private FileChannel channel;
 
     private final Object closeLock = new Object();
     private volatile boolean closed = false;
-    private static final ThreadLocal<Boolean> runningFinalize =
-        new ThreadLocal<>();
-
-    private static boolean isRunningFinalize() {
-        Boolean val;
-        if ((val = runningFinalize.get()) != null)
-            return val.booleanValue();
-        return false;
-    }
 
     /**
      * Creates a file output stream to write to the file with the
@@ -355,10 +346,10 @@
         int useCount = fd.decrementAndGetUseCount();
 
         /*
-         * If FileDescriptor is still in use by another stream, the finalizer
+         * If FileDescriptor is still in use by another stream, we
          * will not close it.
          */
-        if ((useCount <= 0) || !isRunningFinalize()) {
+        if (useCount <= 0) {
             close0();
         }
     }
@@ -424,18 +415,7 @@
             if (fd == FileDescriptor.out || fd == FileDescriptor.err) {
                 flush();
             } else {
-
-                /*
-                 * Finalizer should not release the FileDescriptor if another
-                 * stream is still using it. If the user directly invokes
-                 * close() then the FileDescriptor is also released.
-                 */
-                runningFinalize.set(Boolean.TRUE);
-                try {
                     close();
-                } finally {
-                    runningFinalize.set(Boolean.FALSE);
-                }
             }
         }
     }
diff --git a/jdk/src/share/classes/java/io/RandomAccessFile.java b/jdk/src/share/classes/java/io/RandomAccessFile.java
index 2c16791..a2863c5 100644
--- a/jdk/src/share/classes/java/io/RandomAccessFile.java
+++ b/jdk/src/share/classes/java/io/RandomAccessFile.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1994, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -590,8 +590,15 @@
          * Decrement FD use count associated with this stream.
          * The count got incremented by FileDescriptor during its construction.
          */
-        fd.decrementAndGetUseCount();
-        close0();
+        int useCount = fd.decrementAndGetUseCount();
+
+        /*
+         * If FileDescriptor is still in use by another stream, we
+         * will not close it.
+         */
+        if (useCount <= 0) {
+            close0();
+        }
     }
 
     //
diff --git a/jdk/src/share/classes/java/lang/SafeVarargs.java b/jdk/src/share/classes/java/lang/SafeVarargs.java
index 818ea21..cb14134 100644
--- a/jdk/src/share/classes/java/lang/SafeVarargs.java
+++ b/jdk/src/share/classes/java/lang/SafeVarargs.java
@@ -82,6 +82,7 @@
  *
  * </ul>
  *
+ * @since 1.7
  * @jls 4.7 Reifiable Types
  * @jls 8.4.1 Formal Parameters
  */
diff --git a/jdk/src/share/classes/java/lang/reflect/TypeVariable.java b/jdk/src/share/classes/java/lang/reflect/TypeVariable.java
index 4c5d3de..b55a99f 100644
--- a/jdk/src/share/classes/java/lang/reflect/TypeVariable.java
+++ b/jdk/src/share/classes/java/lang/reflect/TypeVariable.java
@@ -48,7 +48,7 @@
  *
  * @since 1.5
  */
-public interface TypeVariable<D extends GenericDeclaration> extends Type {
+public interface TypeVariable<D extends GenericDeclaration> extends Type, AnnotatedElement {
     /**
      * Returns an array of {@code Type} objects representing the
      * upper bound(s) of this type variable.  Note that if no upper bound is
diff --git a/jdk/src/share/classes/java/math/BigDecimal.java b/jdk/src/share/classes/java/math/BigDecimal.java
index 369d9df..d95b1cb 100644
--- a/jdk/src/share/classes/java/math/BigDecimal.java
+++ b/jdk/src/share/classes/java/math/BigDecimal.java
@@ -3715,26 +3715,28 @@
         }
     }
 
-    private static final sun.misc.Unsafe unsafe = sun.misc.Unsafe.getUnsafe();
-    private static final long intCompactOffset;
-    private static final long intValOffset;
-    static {
-        try {
-            intCompactOffset = unsafe.objectFieldOffset
-                (BigDecimal.class.getDeclaredField("intCompact"));
-            intValOffset = unsafe.objectFieldOffset
-                (BigDecimal.class.getDeclaredField("intVal"));
-        } catch (Exception ex) {
-            throw new Error(ex);
+    private static class UnsafeHolder {
+        private static final sun.misc.Unsafe unsafe;
+        private static final long intCompactOffset;
+        private static final long intValOffset;
+        static {
+            try {
+                unsafe = sun.misc.Unsafe.getUnsafe();
+                intCompactOffset = unsafe.objectFieldOffset
+                    (BigDecimal.class.getDeclaredField("intCompact"));
+                intValOffset = unsafe.objectFieldOffset
+                    (BigDecimal.class.getDeclaredField("intVal"));
+            } catch (Exception ex) {
+                throw new ExceptionInInitializerError(ex);
+            }
         }
-    }
+        static void setIntCompactVolatile(BigDecimal bd, long val) {
+            unsafe.putLongVolatile(bd, intCompactOffset, val);
+        }
 
-    private void setIntCompactVolatile(long val) {
-        unsafe.putLongVolatile(this, intCompactOffset, val);
-    }
-
-    private void setIntValVolatile(BigInteger val) {
-        unsafe.putObjectVolatile(this, intValOffset, val);
+        static void setIntValVolatile(BigDecimal bd, BigInteger val) {
+            unsafe.putObjectVolatile(bd, intValOffset, val);
+        }
     }
 
     /**
@@ -3753,7 +3755,7 @@
             throw new java.io.StreamCorruptedException(message);
         // [all values of scale are now allowed]
         }
-        setIntCompactVolatile(compactValFor(intVal));
+        UnsafeHolder.setIntCompactVolatile(this, compactValFor(intVal));
     }
 
    /**
@@ -3765,7 +3767,7 @@
        throws java.io.IOException {
        // Must inflate to maintain compatible serial form.
        if (this.intVal == null)
-           this.setIntValVolatile(BigInteger.valueOf(this.intCompact));
+           UnsafeHolder.setIntValVolatile(this, BigInteger.valueOf(this.intCompact));
        // Could reset intVal back to null if it has to be set.
        s.defaultWriteObject();
    }
diff --git a/jdk/src/share/classes/java/math/BigInteger.java b/jdk/src/share/classes/java/math/BigInteger.java
index d783c2b..a4988de 100644
--- a/jdk/src/share/classes/java/math/BigInteger.java
+++ b/jdk/src/share/classes/java/math/BigInteger.java
@@ -2919,6 +2919,7 @@
      * result with the opposite sign.
      *
      * @return this BigInteger converted to an {@code int}.
+     * @see #intValueExact()
      */
     public int intValue() {
         int result = 0;
@@ -2939,6 +2940,7 @@
      * result with the opposite sign.
      *
      * @return this BigInteger converted to a {@code long}.
+     * @see #longValueExact()
      */
     public long longValue() {
         long result = 0;
@@ -3303,25 +3305,35 @@
         }
 
         // Commit final fields via Unsafe
-        unsafe.putIntVolatile(this, signumOffset, sign);
+        UnsafeHolder.putSign(this, sign);
 
         // Calculate mag field from magnitude and discard magnitude
-        unsafe.putObjectVolatile(this, magOffset,
-                                 stripLeadingZeroBytes(magnitude));
+        UnsafeHolder.putMag(this, stripLeadingZeroBytes(magnitude));
     }
 
     // Support for resetting final fields while deserializing
-    private static final sun.misc.Unsafe unsafe = sun.misc.Unsafe.getUnsafe();
-    private static final long signumOffset;
-    private static final long magOffset;
-    static {
-        try {
-            signumOffset = unsafe.objectFieldOffset
-                (BigInteger.class.getDeclaredField("signum"));
-            magOffset = unsafe.objectFieldOffset
-                (BigInteger.class.getDeclaredField("mag"));
-        } catch (Exception ex) {
-            throw new Error(ex);
+    private static class UnsafeHolder {
+        private static final sun.misc.Unsafe unsafe;
+        private static final long signumOffset;
+        private static final long magOffset;
+        static {
+            try {
+                unsafe = sun.misc.Unsafe.getUnsafe();
+                signumOffset = unsafe.objectFieldOffset
+                    (BigInteger.class.getDeclaredField("signum"));
+                magOffset = unsafe.objectFieldOffset
+                    (BigInteger.class.getDeclaredField("mag"));
+            } catch (Exception ex) {
+                throw new ExceptionInInitializerError(ex);
+            }
+        }
+
+        static void putSign(BigInteger bi, int sign) {
+            unsafe.putIntVolatile(bi, signumOffset, sign);
+        }
+
+        static void putMag(BigInteger bi, int[] magnitude) {
+            unsafe.putObjectVolatile(bi, magOffset, magnitude);
         }
     }
 
@@ -3372,4 +3384,84 @@
         }
         return result;
     }
+
+    /**
+     * Converts this {@code BigInteger} to a {@code long}, checking
+     * for lost information.  If the value of this {@code BigInteger}
+     * is out of the range of the {@code long} type, then an
+     * {@code ArithmeticException} is thrown.
+     *
+     * @return this {@code BigInteger} converted to a {@code long}.
+     * @throws ArithmeticException if the value of {@code this} will
+     * not exactly fit in a {@code long}.
+     * @see BigInteger#longValue
+     * @since  1.8
+     */
+    public long longValueExact() {
+        if (mag.length <= 2 && bitLength() <= 63)
+            return longValue();
+        else
+            throw new ArithmeticException("BigInteger out of long range");
+    }
+
+    /**
+     * Converts this {@code BigInteger} to an {@code int}, checking
+     * for lost information.  If the value of this {@code BigInteger}
+     * is out of the range of the {@code int} type, then an
+     * {@code ArithmeticException} is thrown.
+     *
+     * @return this {@code BigInteger} converted to an {@code int}.
+     * @throws ArithmeticException if the value of {@code this} will
+     * not exactly fit in a {@code int}.
+     * @see BigInteger#intValue
+     * @since  1.8
+     */
+    public int intValueExact() {
+        if (mag.length <= 1 && bitLength() <= 31)
+            return intValue();
+        else
+            throw new ArithmeticException("BigInteger out of int range");
+    }
+
+    /**
+     * Converts this {@code BigInteger} to a {@code short}, checking
+     * for lost information.  If the value of this {@code BigInteger}
+     * is out of the range of the {@code short} type, then an
+     * {@code ArithmeticException} is thrown.
+     *
+     * @return this {@code BigInteger} converted to a {@code short}.
+     * @throws ArithmeticException if the value of {@code this} will
+     * not exactly fit in a {@code short}.
+     * @see BigInteger#shortValue
+     * @since  1.8
+     */
+    public short shortValueExact() {
+        if (mag.length <= 1 && bitLength() <= 31) {
+            int value = intValue();
+            if (value >= Short.MIN_VALUE && value <= Short.MAX_VALUE)
+                return shortValue();
+        }
+        throw new ArithmeticException("BigInteger out of short range");
+    }
+
+    /**
+     * Converts this {@code BigInteger} to a {@code byte}, checking
+     * for lost information.  If the value of this {@code BigInteger}
+     * is out of the range of the {@code byte} type, then an
+     * {@code ArithmeticException} is thrown.
+     *
+     * @return this {@code BigInteger} converted to a {@code byte}.
+     * @throws ArithmeticException if the value of {@code this} will
+     * not exactly fit in a {@code byte}.
+     * @see BigInteger#byteValue
+     * @since  1.8
+     */
+    public byte byteValueExact() {
+        if (mag.length <= 1 && bitLength() <= 31) {
+            int value = intValue();
+            if (value >= Byte.MIN_VALUE && value <= Byte.MAX_VALUE)
+                return byteValue();
+        }
+        throw new ArithmeticException("BigInteger out of byte range");
+    }
 }
diff --git a/jdk/src/share/classes/java/net/DatagramSocket.java b/jdk/src/share/classes/java/net/DatagramSocket.java
index 31db339..7166c5f 100644
--- a/jdk/src/share/classes/java/net/DatagramSocket.java
+++ b/jdk/src/share/classes/java/net/DatagramSocket.java
@@ -174,9 +174,7 @@
      * @see SecurityManager#checkListen
      */
     public DatagramSocket() throws SocketException {
-        // create a datagram socket.
-        createImpl();
-        bind(new InetSocketAddress(0));
+        this(new InetSocketAddress(0));
     }
 
     /**
@@ -221,7 +219,12 @@
         // create a datagram socket.
         createImpl();
         if (bindaddr != null) {
-            bind(bindaddr);
+            try {
+                bind(bindaddr);
+            } finally {
+                if (!isBound())
+                    close();
+            }
         }
     }
 
diff --git a/jdk/src/share/classes/java/net/MulticastSocket.java b/jdk/src/share/classes/java/net/MulticastSocket.java
index 4ec3a2d..bb4760f 100644
--- a/jdk/src/share/classes/java/net/MulticastSocket.java
+++ b/jdk/src/share/classes/java/net/MulticastSocket.java
@@ -162,7 +162,12 @@
         setReuseAddress(true);
 
         if (bindaddr != null) {
-            bind(bindaddr);
+            try {
+                bind(bindaddr);
+            } finally {
+                if (!isBound())
+                    close();
+            }
         }
     }
 
diff --git a/jdk/src/share/classes/java/net/Socket.java b/jdk/src/share/classes/java/net/Socket.java
index 0b047e4..91ec586 100644
--- a/jdk/src/share/classes/java/net/Socket.java
+++ b/jdk/src/share/classes/java/net/Socket.java
@@ -420,10 +420,13 @@
             createImpl(stream);
             if (localAddr != null)
                 bind(localAddr);
-            if (address != null)
-                connect(address);
-        } catch (IOException e) {
-            close();
+            connect(address);
+        } catch (IOException | IllegalArgumentException | SecurityException e) {
+            try {
+                close();
+            } catch (IOException ce) {
+                e.addSuppressed(ce);
+            }
             throw e;
         }
     }
diff --git a/jdk/src/share/classes/java/util/CurrencyData.properties b/jdk/src/share/classes/java/util/CurrencyData.properties
index 20425d0..5cfc139 100644
--- a/jdk/src/share/classes/java/util/CurrencyData.properties
+++ b/jdk/src/share/classes/java/util/CurrencyData.properties
@@ -29,7 +29,7 @@
 # It is a serial number that accompanies with each amendment, such as 
 # 'MAxxx.doc'
 
-dataVersion=140
+dataVersion=151
 
 # List of all valid ISO 4217 currency codes.
 # To ensure compatibility, do not remove codes.
@@ -37,7 +37,7 @@
 all=ADP020-AED784-AFA004-AFN971-ALL008-AMD051-ANG532-AOA973-ARS032-ATS040-AUD036-\
     AWG533-AYM945-AZM031-AZN944-BAM977-BBD052-BDT050-BEF056-BGL100-BGN975-BHD048-BIF108-\
     BMD060-BND096-BOB068-BOV984-BRL986-BSD044-BTN064-BWP072-BYB112-BYR974-\
-    BZD084-CAD124-CDF976-CHF756-CLF990-CLP152-CNY156-COP170-CRC188-CSD891-CUP192-\
+    BZD084-CAD124-CDF976-CHF756-CLF990-CLP152-CNY156-COP170-CRC188-CSD891-CUP192-CUC931-\
     CVE132-CYP196-CZK203-DEM276-DJF262-DKK208-DOP214-DZD012-EEK233-EGP818-\
     ERN232-ESP724-ETB230-EUR978-FIM246-FJD242-FKP238-FRF250-GBP826-GEL981-\
     GHC288-GHS936-GIP292-GMD270-GNF324-GRD300-GTQ320-GWP624-GYD328-HKD344-HNL340-\
@@ -49,11 +49,11 @@
     NIO558-NLG528-NOK578-NPR524-NZD554-OMR512-PAB590-PEN604-PGK598-PHP608-\
     PKR586-PLN985-PTE620-PYG600-QAR634-ROL946-RON946-RSD941-RUB643-RUR810-RWF646-SAR682-\
     SBD090-SCR690-SDD736-SDG938-SEK752-SGD702-SHP654-SIT705-SKK703-SLL694-SOS706-\
-    SRD968-SRG740-STD678-SVC222-SYP760-SZL748-THB764-TJS972-TMM795-TND788-TOP776-\
+    SRD968-SRG740-STD678-SVC222-SYP760-SZL748-THB764-TJS972-TMM795-TMT934-TND788-TOP776-\
     TPE626-TRL792-TRY949-TTD780-TWD901-TZS834-UAH980-UGX800-USD840-USN997-USS998-\
     UYU858-UZS860-VEB862-VEF937-VND704-VUV548-WST882-XAF950-XAG961-XAU959-XBA955-\
     XBB956-XBC957-XBD958-XCD951-XDR960-XFO000-XFU000-XOF952-XPD964-XPF953-\
-    XPT962-XTS963-XXX999-YER886-YUM891-ZAR710-ZMK894-ZWD716-ZWN942
+    XPT962-XSU994-XTS963-XUA965-XXX999-YER886-YUM891-ZAR710-ZMK894-ZWD716-ZWL932-ZWN942-ZWR935
 
 
 # Mappings from ISO 3166 country codes to ISO 4217 currency codes.
@@ -124,6 +124,8 @@
 BJ=XOF
 # BERMUDA
 BM=BMD
+# Bonaire, Sint Eustatius and Saba
+BQ=USD
 # BHUTAN
 BT=BTN
 # BOLIVIA
@@ -186,6 +188,8 @@
 HR=HRK
 # CUBA
 CU=CUP
+# Cura\u00e7ao
+CW=ANG
 # CYPRUS
 CY=EUR
 # CZECH REPUBLIC
@@ -210,7 +214,7 @@
 # ERITREA
 ER=ERN
 # ESTONIA
-EE=EEK
+EE=EUR
 # ETHIOPIA
 ET=ETB
 # FALKLAND ISLANDS (MALVINAS)
@@ -476,7 +480,7 @@
 # SINGAPORE
 SG=SGD
 # SLOVAKIA
-SK=SKK
+SK=EUR
 # SLOVENIA
 SI=EUR
 # SOLOMON ISLANDS
@@ -497,6 +501,8 @@
 SR=SRD
 # SVALBARD AND JAN MAYEN
 SJ=NOK
+# Sint Maarten (Dutch part)
+SX=ANG
 # SWAZILAND
 SZ=SZL
 # SWEDEN
@@ -528,7 +534,7 @@
 # TURKEY
 TR=TRL;2004-12-31-22-00-00;TRY
 # TURKMENISTAN
-TM=TMM
+TM=TMT
 # TURKS AND CAICOS ISLANDS
 TC=USD
 # TUVALU
@@ -568,7 +574,7 @@
 # ZAMBIA
 ZM=ZMK
 # ZIMBABWE
-ZW=ZWD
+ZW=ZWL
 
 
 # List of currencies with 0, 1, OR 3 decimals for minor units, or where there
@@ -583,4 +589,4 @@
     BHD-IQD-JOD-KWD-LYD-OMR-TND
 minorUndefined=\
     XAG-XAU-XBA-XBB-XBC-XBD-XDR-XFO-XFU-XPD-\
-    XPT-XTS-XXX
+    XPT-XSU-XTS-XUA-XXX
diff --git a/jdk/src/share/classes/java/util/LocaleISOData.java b/jdk/src/share/classes/java/util/LocaleISOData.java
index 5fe3fb5..6330c34 100644
--- a/jdk/src/share/classes/java/util/LocaleISOData.java
+++ b/jdk/src/share/classes/java/util/LocaleISOData.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -254,6 +254,7 @@
         + "BM" + "BMU"  // Bermuda
         + "BN" + "BRN"  // Brunei Darussalam
         + "BO" + "BOL"  // Bolivia, Republic of
+        + "BQ" + "BES"  // Bonaire, Sint Eustatius and Saba
         + "BR" + "BRA"  // Brazil, Federative Republic of
         + "BS" + "BHS"  // Bahamas, Commonwealth of the
         + "BT" + "BTN"  // Bhutan, Kingdom of
@@ -277,6 +278,7 @@
 //      + "CS" + "SCG"  // Serbia and Montenegro
         + "CU" + "CUB"  // Cuba, Republic of
         + "CV" + "CPV"  // Cape Verde, Republic of
+        + "CW" + "CUW"  // Cura\u00e7ao
         + "CX" + "CXR"  // Christmas Island
         + "CY" + "CYP"  // Cyprus, Republic of
         + "CZ" + "CZE"  // Czech Republic
@@ -433,6 +435,7 @@
         + "SR" + "SUR"  // Suriname, Republic of
         + "ST" + "STP"  // Sao Tome and Principe, Democratic Republic of
         + "SV" + "SLV"  // El Salvador, Republic of
+        + "SX" + "SXM"  // Sint Maarten (Dutch part)
         + "SY" + "SYR"  // Syrian Arab Republic
         + "SZ" + "SWZ"  // Swaziland, Kingdom of
         + "TC" + "TCA"  // Turks and Caicos Islands
diff --git a/jdk/src/share/classes/java/util/Properties.java b/jdk/src/share/classes/java/util/Properties.java
index d27e608..1cd19a0 100644
--- a/jdk/src/share/classes/java/util/Properties.java
+++ b/jdk/src/share/classes/java/util/Properties.java
@@ -34,6 +34,7 @@
 import java.io.Writer;
 import java.io.OutputStreamWriter;
 import java.io.BufferedWriter;
+import java.lang.reflect.*;
 
 /**
  * The <code>Properties</code> class represents a persistent set of
@@ -1111,4 +1112,60 @@
     private static final char[] hexDigit = {
         '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
     };
+
+
+    private static class XMLUtils {
+        private static Method load = null;
+        private static Method save = null;
+        static {
+            try {
+                // reference sun.util.xml.Utils reflectively
+                // to allow the Properties class be compiled in
+                // the absence of XML
+                Class<?> c = Class.forName("sun.util.xml.XMLUtils", true, null);
+                load = c.getMethod("load", Properties.class, InputStream.class);
+                save = c.getMethod("save", Properties.class, OutputStream.class,
+                                   String.class, String.class);
+            } catch (ClassNotFoundException cnf) {
+                throw new AssertionError(cnf);
+            } catch (NoSuchMethodException e) {
+                throw new AssertionError(e);
+            }
+        }
+
+        static void invoke(Method m, Object... args) throws IOException {
+            try {
+                m.invoke(null, args);
+            } catch (IllegalAccessException e) {
+                throw new AssertionError(e);
+            } catch (InvocationTargetException e) {
+                Throwable t = e.getCause();
+                if (t instanceof RuntimeException)
+                    throw (RuntimeException)t;
+
+                if (t instanceof IOException) {
+                    throw (IOException)t;
+                } else {
+                    throw new AssertionError(t);
+                }
+            }
+        }
+
+        static void load(Properties props, InputStream in)
+            throws IOException, InvalidPropertiesFormatException
+        {
+            if (load == null)
+                throw new InternalError("sun.util.xml.XMLUtils not found");
+            invoke(load, props, in);
+        }
+
+        static void save(Properties props, OutputStream os, String comment,
+                         String encoding)
+            throws IOException
+        {
+            if (save == null)
+                throw new InternalError("sun.util.xml.XMLUtils not found");
+            invoke(save, props, os, comment, encoding);
+        }
+    }
 }
diff --git a/jdk/src/share/classes/javax/swing/SwingUtilities.java b/jdk/src/share/classes/javax/swing/SwingUtilities.java
index 06d59c6..1602eff 100644
--- a/jdk/src/share/classes/javax/swing/SwingUtilities.java
+++ b/jdk/src/share/classes/javax/swing/SwingUtilities.java
@@ -1274,8 +1274,7 @@
      * <p>
      * Additional documentation and examples for this method can be
      * found in
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How to Use Threads</a>,
-     * in <em>The Java Tutorial</em>.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency in Swing</a>.
      * <p>
      * As of 1.3 this method is just a cover for <code>java.awt.EventQueue.invokeLater()</code>.
      * <p>
@@ -1326,8 +1325,7 @@
      * <p>
      * Additional documentation and examples for this method can be
      * found in
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How to Use Threads</a>,
-     * in <em>The Java Tutorial</em>.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency in Swing</a>.
      * <p>
      * As of 1.3 this method is just a cover for
      * <code>java.awt.EventQueue.invokeAndWait()</code>.
diff --git a/jdk/src/share/classes/javax/swing/SwingWorker.java b/jdk/src/share/classes/javax/swing/SwingWorker.java
index 8bad4c9..2948081 100644
--- a/jdk/src/share/classes/javax/swing/SwingWorker.java
+++ b/jdk/src/share/classes/javax/swing/SwingWorker.java
@@ -50,8 +50,8 @@
  * When writing a multi-threaded application using Swing, there are
  * two constraints to keep in mind:
  * (refer to
- * <a href="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">
- *   How to Use Threads
+ * <a href="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">
+ *   Concurrency in Swing
  * </a> for more details):
  * <ul>
  *   <li> Time-consuming tasks should not be run on the <i>Event
diff --git a/jdk/src/share/classes/javax/swing/package.html b/jdk/src/share/classes/javax/swing/package.html
index 9399248..fcf18c2 100644
--- a/jdk/src/share/classes/javax/swing/package.html
+++ b/jdk/src/share/classes/javax/swing/package.html
@@ -119,9 +119,9 @@
 processing when working with Swing.
 <p>
 More information on this topic can be found in the
-<a href="http://java.sun.com/docs/books/tutorial/uiswing/">Swing tutorial</a>,
+<a href="http://download.oracle.com/javase/tutorial/uiswing/">Swing tutorial</a>,
 in particular the section on
-<a href="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How to Use Threads</a>.
+<a href="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency in Swing</a>.
 
 
 <H2>
diff --git a/jdk/src/share/classes/javax/swing/text/AbstractDocument.java b/jdk/src/share/classes/javax/swing/text/AbstractDocument.java
index 97c8dfe..7dbc9ec 100644
--- a/jdk/src/share/classes/javax/swing/text/AbstractDocument.java
+++ b/jdk/src/share/classes/javax/swing/text/AbstractDocument.java
@@ -409,8 +409,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param r the renderer to execute
      */
@@ -570,8 +570,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offs the starting offset >= 0
      * @param len the number of characters to remove >= 0
@@ -683,8 +683,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offs the starting offset >= 0
      * @param str the string to insert; does nothing with null/empty strings
@@ -818,8 +818,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offs the position in the model >= 0
      * @return the position
diff --git a/jdk/src/share/classes/javax/swing/text/DefaultCaret.java b/jdk/src/share/classes/javax/swing/text/DefaultCaret.java
index 4cfddbe..ecbfdf0 100644
--- a/jdk/src/share/classes/javax/swing/text/DefaultCaret.java
+++ b/jdk/src/share/classes/javax/swing/text/DefaultCaret.java
@@ -237,8 +237,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      */
     protected final synchronized void repaint() {
         if (component != null) {
diff --git a/jdk/src/share/classes/javax/swing/text/DefaultStyledDocument.java b/jdk/src/share/classes/javax/swing/text/DefaultStyledDocument.java
index 8552eb9..0ab766b 100644
--- a/jdk/src/share/classes/javax/swing/text/DefaultStyledDocument.java
+++ b/jdk/src/share/classes/javax/swing/text/DefaultStyledDocument.java
@@ -173,8 +173,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offset the starting offset >= 0
      * @param data the element data
@@ -426,8 +426,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param pos the offset from the start of the document >= 0
      * @param s  the logical style to assign to the paragraph, null if none
@@ -483,8 +483,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offset the offset in the document >= 0
      * @param length the length >= 0
@@ -536,8 +536,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offset the offset into the paragraph >= 0
      * @param length the number of characters affected >= 0
diff --git a/jdk/src/share/classes/javax/swing/text/JTextComponent.java b/jdk/src/share/classes/javax/swing/text/JTextComponent.java
index 113fd58..274ae9d 100644
--- a/jdk/src/share/classes/javax/swing/text/JTextComponent.java
+++ b/jdk/src/share/classes/javax/swing/text/JTextComponent.java
@@ -2213,8 +2213,8 @@
      * <p>
      * This method is thread-safe, although most Swing methods are not. Please
      * see <A
-     * HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">
-     * How to Use Threads</A> for more information.
+     * HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">
+     * Concurrency in Swing</A> for more information.
      *
      * <p>
      * <b>Sample Usage</b>. This code snippet shows a cross-platform print
@@ -2471,8 +2471,8 @@
      * <p>
      * This method is thread-safe, although most Swing methods are not. Please
      * see <A
-     * HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">
-     * How to Use Threads</A> for more information.
+     * HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">
+     * Concurrency in Swing</A> for more information.
      *
      * <p>
      * The returned {@code Printable} can be printed on any thread.
diff --git a/jdk/src/share/classes/javax/swing/text/PlainDocument.java b/jdk/src/share/classes/javax/swing/text/PlainDocument.java
index 84dc684..05fd221 100644
--- a/jdk/src/share/classes/javax/swing/text/PlainDocument.java
+++ b/jdk/src/share/classes/javax/swing/text/PlainDocument.java
@@ -100,8 +100,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offs the starting offset >= 0
      * @param str the string to insert; does nothing with null/empty strings
diff --git a/jdk/src/share/classes/javax/swing/text/StyleContext.java b/jdk/src/share/classes/javax/swing/text/StyleContext.java
index c81b0f8..ca0eeea 100644
--- a/jdk/src/share/classes/javax/swing/text/StyleContext.java
+++ b/jdk/src/share/classes/javax/swing/text/StyleContext.java
@@ -292,8 +292,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param old the old attribute set
      * @param name the non-null attribute name
@@ -321,8 +321,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param old the old attribute set
      * @param attr the attributes to add
@@ -349,8 +349,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param old the old set of attributes
      * @param name the non-null attribute name
@@ -377,8 +377,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param old the old attribute set
      * @param names the attribute names
@@ -405,8 +405,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param old the old attribute set
      * @param attrs the attributes
@@ -445,8 +445,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param a the set to reclaim
      */
diff --git a/jdk/src/share/classes/javax/swing/text/html/CSS.java b/jdk/src/share/classes/javax/swing/text/html/CSS.java
index 60efa6c..f0f8cb2 100644
--- a/jdk/src/share/classes/javax/swing/text/html/CSS.java
+++ b/jdk/src/share/classes/javax/swing/text/html/CSS.java
@@ -806,15 +806,11 @@
             // translate border width into the cells, if it has non-zero value.
             AttributeSet tableAttr = elem.getParentElement().
                                      getParentElement().getAttributes();
-            int borderWidth;
-            try {
-                borderWidth = Integer.parseInt(
-                    (String) tableAttr.getAttribute(HTML.Attribute.BORDER));
-            } catch (NumberFormatException e) {
-                borderWidth = 0;
-            }
+
+            int borderWidth = getTableBorder(tableAttr);
             if (borderWidth > 0) {
-                translateAttribute(HTML.Attribute.BORDER, tableAttr, cssAttrSet);
+                // If table contains the BORDER attribute cells should have border width equals 1
+                translateAttribute(HTML.Attribute.BORDER, "1", cssAttrSet);
             }
             String pad = (String)tableAttr.getAttribute(HTML.Attribute.CELLPADDING);
             if (pad != null) {
@@ -850,6 +846,21 @@
         return cssAttrSet;
     }
 
+    private static int getTableBorder(AttributeSet tableAttr) {
+        String borderValue = (String) tableAttr.getAttribute(HTML.Attribute.BORDER);
+
+        if (borderValue == HTML.NULL_ATTRIBUTE_VALUE || "".equals(borderValue)) {
+            // Some browsers accept <TABLE BORDER> and <TABLE BORDER=""> with the same semantics as BORDER=1
+            return 1;
+        }
+
+        try {
+            return Integer.parseInt(borderValue);
+        } catch (NumberFormatException e) {
+            return 0;
+        }
+    }
+
     private static final Hashtable<String, Attribute> attributeMap = new Hashtable<String, Attribute>();
     private static final Hashtable<String, Value> valueMap = new Hashtable<String, Value>();
 
@@ -1400,17 +1411,20 @@
                         }
                     }
                 } else {
-
-                    /*
-                     * The html size attribute has a mapping in the CSS world only
-                     * if it is par of a font or base font tag.
-                     */
-
                     if (key == HTML.Attribute.SIZE && !isHTMLFontTag(tag)) {
-                        continue;
-                    }
+                        /*
+                         * The html size attribute has a mapping in the CSS world only
+                         * if it is par of a font or base font tag.
+                         */
+                    } else if (tag == HTML.Tag.TABLE && key == HTML.Attribute.BORDER) {
+                        int borderWidth = getTableBorder(htmlAttrSet);
 
-                    translateAttribute(key, htmlAttrSet, cssAttrSet);
+                        if (borderWidth > 0) {
+                            translateAttribute(HTML.Attribute.BORDER, Integer.toString(borderWidth), cssAttrSet);
+                        }
+                    } else {
+                        translateAttribute(key, (String) htmlAttrSet.getAttribute(key), cssAttrSet);
+                    }
                 }
             } else if (name instanceof CSS.Attribute) {
                 cssAttrSet.addAttribute(name, htmlAttrSet.getAttribute(name));
@@ -1419,7 +1433,7 @@
     }
 
     private void translateAttribute(HTML.Attribute key,
-                                           AttributeSet htmlAttrSet,
+                                           String htmlAttrValue,
                                            MutableAttributeSet cssAttrSet) {
         /*
          * In the case of all remaining HTML.Attribute's they
@@ -1427,8 +1441,6 @@
          */
         CSS.Attribute[] cssAttrList = getCssAttribute(key);
 
-        String htmlAttrValue = (String)htmlAttrSet.getAttribute(key);
-
         if (cssAttrList == null || htmlAttrValue == null) {
             return;
         }
diff --git a/jdk/src/share/classes/javax/swing/text/html/HTMLDocument.java b/jdk/src/share/classes/javax/swing/text/html/HTMLDocument.java
index 1ce7893..5fc8c0f 100644
--- a/jdk/src/share/classes/javax/swing/text/html/HTMLDocument.java
+++ b/jdk/src/share/classes/javax/swing/text/html/HTMLDocument.java
@@ -474,8 +474,8 @@
      * <p>
      * This method is thread safe, although most Swing methods
      * are not. Please see
-     * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
-     * to Use Threads</A> for more information.
+     * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+     * in Swing</A> for more information.
      *
      * @param offset the offset into the paragraph (must be at least 0)
      * @param length the number of characters affected (must be at least 0)
diff --git a/jdk/src/share/classes/javax/swing/text/html/TableView.java b/jdk/src/share/classes/javax/swing/text/html/TableView.java
index a941fbd..65f4fc0 100644
--- a/jdk/src/share/classes/javax/swing/text/html/TableView.java
+++ b/jdk/src/share/classes/javax/swing/text/html/TableView.java
@@ -242,7 +242,8 @@
             if (lv != null) {
                 cellSpacing = (int) lv.getValue();
             } else {
-                cellSpacing = 0;
+                // Default cell spacing equals 2
+                cellSpacing = 2;
             }
             lv = (CSS.LengthValue)
                     attr.getAttribute(CSS.Attribute.BORDER_TOP_WIDTH);
@@ -251,8 +252,7 @@
             } else {
                     borderWidth = 0;
             }
-
-                }
+        }
     }
 
     /**
diff --git a/jdk/src/share/classes/sun/reflect/generics/reflectiveObjects/TypeVariableImpl.java b/jdk/src/share/classes/sun/reflect/generics/reflectiveObjects/TypeVariableImpl.java
index 20f9475..5eab5e8 100644
--- a/jdk/src/share/classes/sun/reflect/generics/reflectiveObjects/TypeVariableImpl.java
+++ b/jdk/src/share/classes/sun/reflect/generics/reflectiveObjects/TypeVariableImpl.java
@@ -25,9 +25,11 @@
 
 package sun.reflect.generics.reflectiveObjects;
 
+import java.lang.annotation.Annotation;
 import java.lang.reflect.GenericDeclaration;
 import java.lang.reflect.Type;
 import java.lang.reflect.TypeVariable;
+import java.util.Objects;
 
 import sun.reflect.generics.factory.GenericsFactory;
 import sun.reflect.generics.tree.FieldTypeSignature;
@@ -178,4 +180,27 @@
     public int hashCode() {
         return genericDeclaration.hashCode() ^ name.hashCode();
     }
+
+    // Currently vacuous implementations of AnnotatedElement methods.
+    public boolean isAnnotationPresent(Class<? extends Annotation> annotationClass) {
+        Objects.requireNonNull(annotationClass);
+        return false;
+    }
+
+    public <T extends Annotation> T getAnnotation(Class<T> annotationClass) {
+        Objects.requireNonNull(annotationClass);
+        return null;
+    }
+
+    public Annotation[] getAnnotations() {
+        // Since zero-length, don't need defensive clone
+        return EMPTY_ANNOTATION_ARRAY;
+    }
+
+    public Annotation[] getDeclaredAnnotations() {
+        // Since zero-length, don't need defensive clone
+        return EMPTY_ANNOTATION_ARRAY;
+    }
+
+    private static final Annotation[] EMPTY_ANNOTATION_ARRAY = new Annotation[0];
 }
diff --git a/jdk/src/share/classes/sun/security/krb5/EncryptionKey.java b/jdk/src/share/classes/sun/security/krb5/EncryptionKey.java
index 1de0329..ebf794e 100644
--- a/jdk/src/share/classes/sun/security/krb5/EncryptionKey.java
+++ b/jdk/src/share/classes/sun/security/krb5/EncryptionKey.java
@@ -151,11 +151,36 @@
     }
 
     /**
+     * Obtains a key for a given etype of a principal with possible new salt
+     * and s2kparams
+     * @param cname NOT null
+     * @param password NOT null
+     * @param etype
+     * @param snp can be NULL
+     * @returns never null
+     */
+    public static EncryptionKey acquireSecretKey(PrincipalName cname,
+            char[] password, int etype, PAData.SaltAndParams snp)
+            throws KrbException {
+        String salt;
+        byte[] s2kparams;
+        if (snp != null) {
+            salt = snp.salt != null ? snp.salt : cname.getSalt();
+            s2kparams = snp.params;
+        } else {
+            salt = cname.getSalt();
+            s2kparams = null;
+        }
+        return acquireSecretKey(password, salt, etype, s2kparams);
+    }
+
+    /**
      * Obtains a key for a given etype with salt and optional s2kparams
      * @param password NOT null
      * @param salt NOT null
      * @param etype
      * @param s2kparams can be NULL
+     * @returns never null
      */
     public static EncryptionKey acquireSecretKey(char[] password,
             String salt, int etype, byte[] s2kparams)
diff --git a/jdk/src/share/classes/sun/security/krb5/KrbAsRep.java b/jdk/src/share/classes/sun/security/krb5/KrbAsRep.java
index 29a7a5b..c2b0df3 100644
--- a/jdk/src/share/classes/sun/security/krb5/KrbAsRep.java
+++ b/jdk/src/share/classes/sun/security/krb5/KrbAsRep.java
@@ -131,13 +131,11 @@
             KrbAsReq asReq, PrincipalName cname)
             throws KrbException, Asn1Exception, IOException {
         int encPartKeyType = rep.encPart.getEType();
-        PAData.SaltAndParams snp =
-                PAData.getSaltAndParams(encPartKeyType, rep.pAData);
-        EncryptionKey dkey = null;
-        dkey = EncryptionKey.acquireSecretKey(password,
-                snp.salt == null ? cname.getSalt() : snp.salt,
+        EncryptionKey dkey = EncryptionKey.acquireSecretKey(
+                cname,
+                password,
                 encPartKeyType,
-                snp.params);
+                PAData.getSaltAndParams(encPartKeyType, rep.pAData));
         decrypt(dkey, asReq);
     }
 
diff --git a/jdk/src/share/classes/sun/security/krb5/KrbAsReqBuilder.java b/jdk/src/share/classes/sun/security/krb5/KrbAsReqBuilder.java
index dd9b8dc..3426d8b 100644
--- a/jdk/src/share/classes/sun/security/krb5/KrbAsReqBuilder.java
+++ b/jdk/src/share/classes/sun/security/krb5/KrbAsReqBuilder.java
@@ -169,34 +169,44 @@
              * from a keytab on acceptor, but unfortunately (?) Java supports
              * acceptor using password. In this case, if the service ticket is
              * encrypted using an etype which we don't have PA-DATA new salt,
-             * using the default salt is normally wrong (say, case-insensitive
+             * using the default salt might be wrong (say, case-insensitive
              * user name). Instead, we would use the new salt of another etype.
              */
 
             String salt = null;     // the saved new salt
-            for (int i=0; i<eTypes.length; i++) {
-                PAData.SaltAndParams snp =
-                        PAData.getSaltAndParams(eTypes[i], paList);
-                // First round, only calculate those with new salt
-                if (snp.salt != null) {
-                    salt = snp.salt;
-                    result[i] = EncryptionKey.acquireSecretKey(password,
-                            snp.salt,
-                            eTypes[i],
-                            snp.params);
-                }
-            }
-            if (salt == null) salt = cname.getSalt();
-            for (int i=0; i<eTypes.length; i++) {
-                // Second round, calculate those with no new salt
-                if (result[i] == null) {
+            try {
+                for (int i=0; i<eTypes.length; i++) {
+                    // First round, only calculate those have a PA entry
                     PAData.SaltAndParams snp =
                             PAData.getSaltAndParams(eTypes[i], paList);
-                    result[i] = EncryptionKey.acquireSecretKey(password,
-                            salt,
-                            eTypes[i],
-                            snp.params);
+                    if (snp != null) {
+                        // Never uses a salt for rc4-hmac, it does not use
+                        // a salt at all
+                        if (eTypes[i] != EncryptedData.ETYPE_ARCFOUR_HMAC &&
+                                snp.salt != null) {
+                            salt = snp.salt;
+                        }
+                        result[i] = EncryptionKey.acquireSecretKey(cname,
+                                password,
+                                eTypes[i],
+                                snp);
+                    }
                 }
+                // No new salt from PA, maybe empty, maybe only rc4-hmac
+                if (salt == null) salt = cname.getSalt();
+                for (int i=0; i<eTypes.length; i++) {
+                    // Second round, calculate those with no PA entry
+                    if (result[i] == null) {
+                        result[i] = EncryptionKey.acquireSecretKey(password,
+                                salt,
+                                eTypes[i],
+                                null);
+                    }
+                }
+            } catch (IOException ioe) {
+                KrbException ke = new KrbException(Krb5.ASN1_PARSE_ERROR);
+                ke.initCause(ioe);
+                throw ke;
             }
             return result;
         } else {
@@ -315,27 +325,19 @@
                     }
                     preAuthFailedOnce = true;
                     KRBError kerr = ke.getError();
+                    int paEType = PAData.getPreferredEType(kerr.getPA(),
+                            EType.getDefaults("default_tkt_enctypes")[0]);
                     if (password == null) {
                         EncryptionKey[] ks = Krb5Util.keysFromJavaxKeyTab(ktab, cname);
-                        pakey = EncryptionKey.findKey(kerr.getEType(), ks);
+                        pakey = EncryptionKey.findKey(paEType, ks);
                         if (pakey != null) pakey = (EncryptionKey)pakey.clone();
                         for (EncryptionKey k: ks) k.destroy();
                     } else {
-                        PAData.SaltAndParams snp = PAData.getSaltAndParams(
-                                kerr.getEType(), kerr.getPA());
-                        if (kerr.getEType() == 0) {
-                            // Possible if PA-PW-SALT is in KRB-ERROR. RFC
-                            // does not recommend this
-                            pakey = EncryptionKey.acquireSecretKey(password,
-                                    snp.salt == null ? cname.getSalt() : snp.salt,
-                                    EType.getDefaults("default_tkt_enctypes")[0],
-                                    null);
-                        } else {
-                            pakey = EncryptionKey.acquireSecretKey(password,
-                                    snp.salt == null ? cname.getSalt() : snp.salt,
-                                    kerr.getEType(),
-                                    snp.params);
-                        }
+                        pakey = EncryptionKey.acquireSecretKey(cname,
+                                password,
+                                paEType,
+                                PAData.getSaltAndParams(
+                                    paEType, kerr.getPA()));
                     }
                     paList = kerr.getPA();  // Update current paList
                 } else {
diff --git a/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java b/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java
index 30ba326..a8b117e 100644
--- a/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java
+++ b/jdk/src/share/classes/sun/security/krb5/internal/KRBError.java
@@ -99,7 +99,6 @@
     private Checksum eCksum; //optional
 
     private PAData[] pa;    // PA-DATA in eData
-    private int pa_eType;   // The 1st etype appeared in salt-related PAData
 
     private static boolean DEBUG = Krb5.DEBUG;
 
@@ -266,50 +265,8 @@
             DerValue tmp = derPA.data.getDerValue();
             PAData pa_data = new PAData(tmp);
             paList.add(pa_data);
-            int pa_type = pa_data.getType();
-            byte[] pa_value = pa_data.getValue();
             if (DEBUG) {
-                System.out.println(">>>Pre-Authentication Data:");
-                System.out.println("\t PA-DATA type = " + pa_type);
-            }
-
-            switch(pa_type) {
-                case Krb5.PA_ENC_TIMESTAMP:
-                    if (DEBUG) {
-                        System.out.println("\t PA-ENC-TIMESTAMP");
-                    }
-                    break;
-                case Krb5.PA_ETYPE_INFO:
-                    if (pa_value != null) {
-                        DerValue der = new DerValue(pa_value);
-                        while (der.data.available() > 0) {
-                            DerValue value = der.data.getDerValue();
-                            ETypeInfo info = new ETypeInfo(value);
-                            if (pa_eType == 0) pa_eType = info.getEType();
-                            if (DEBUG) {
-                                System.out.println("\t PA-ETYPE-INFO etype = " + info.getEType());
-                                System.out.println("\t PA-ETYPE-INFO salt = " + info.getSalt());
-                            }
-                        }
-                    }
-                    break;
-                case Krb5.PA_ETYPE_INFO2:
-                    if (pa_value != null) {
-                        DerValue der = new DerValue(pa_value);
-                        while (der.data.available() > 0) {
-                            DerValue value = der.data.getDerValue();
-                            ETypeInfo2 info2 = new ETypeInfo2(value);
-                            if (pa_eType == 0) pa_eType = info2.getEType();
-                            if (DEBUG) {
-                                System.out.println("\t PA-ETYPE-INFO2 etype = " + info2.getEType());
-                                System.out.println("\t PA-ETYPE-INFO2 salt = " + info2.getSalt());
-                            }
-                        }
-                    }
-                    break;
-                default:
-                    // Unknown Pre-auth type
-                    break;
+                System.out.println(pa_data);
             }
         }
         pa = paList.toArray(new PAData[paList.size()]);
@@ -340,10 +297,6 @@
         return pa;
     }
 
-    public final int getEType() {
-        return pa_eType;
-    }
-
     public final String getErrorString() {
         return eText;
     }
diff --git a/jdk/src/share/classes/sun/security/krb5/internal/PAData.java b/jdk/src/share/classes/sun/security/krb5/internal/PAData.java
index d32bbc4..573b4f2 100644
--- a/jdk/src/share/classes/sun/security/krb5/internal/PAData.java
+++ b/jdk/src/share/classes/sun/security/krb5/internal/PAData.java
@@ -139,9 +139,56 @@
     }
 
     /**
+     * Gets the preferred etype from the PAData array.
+     * 1. ETYPE-INFO2-ENTRY with unknown s2kparams ignored
+     * 2. ETYPE-INFO2 preferred to ETYPE-INFO
+     * 3. multiple entries for same etype in one PA-DATA, use the first one.
+     * 4. Multiple PA-DATA with same type, choose the last one
+     * (This is useful when PA-DATAs from KRB-ERROR and AS-REP are combined).
+     * @return the etype, or defaultEType if not enough info
+     * @throws Asn1Exception|IOException if there is an encoding error
+     */
+    public static int getPreferredEType(PAData[] pas, int defaultEType)
+            throws IOException, Asn1Exception {
+
+        if (pas == null) return defaultEType;
+
+        DerValue d = null, d2 = null;
+        for (PAData p: pas) {
+            if (p.getValue() == null) continue;
+            switch (p.getType()) {
+                case Krb5.PA_ETYPE_INFO:
+                    d = new DerValue(p.getValue());
+                    break;
+                case Krb5.PA_ETYPE_INFO2:
+                    d2 = new DerValue(p.getValue());
+                    break;
+            }
+        }
+        if (d2 != null) {
+            while (d2.data.available() > 0) {
+                DerValue value = d2.data.getDerValue();
+                ETypeInfo2 tmp = new ETypeInfo2(value);
+                if (tmp.getParams() == null) {
+                    // we don't support non-null s2kparams
+                    return tmp.getEType();
+                }
+            }
+        }
+        if (d != null) {
+            while (d.data.available() > 0) {
+                DerValue value = d.data.getDerValue();
+                ETypeInfo tmp = new ETypeInfo(value);
+                return tmp.getEType();
+            }
+        }
+        return defaultEType;
+    }
+
+    /**
      * A place to store a pair of salt and s2kparams.
-     * An empty salt is changed to null, to be interopable
-     * with Windows 2000 server.
+     * An empty salt is changed to null, to be interoperable
+     * with Windows 2000 server. This is in fact not correct.
      */
     public static class SaltAndParams {
         public final String salt;
@@ -155,57 +202,120 @@
 
     /**
      * Fetches salt and s2kparams value for eType in a series of PA-DATAs.
-     * The preference order is PA-ETYPE-INFO2 > PA-ETYPE-INFO > PA-PW-SALT.
-     * If multiple PA-DATA for the same etype appears, use the last one.
+     * 1. ETYPE-INFO2-ENTRY with unknown s2kparams ignored
+     * 2. PA-ETYPE-INFO2 preferred to PA-ETYPE-INFO preferred to PA-PW-SALT.
+     * 3. multiple entries for same etype in one PA-DATA, use the first one.
+     * 4. Multiple PA-DATA with same type, choose the last one
      * (This is useful when PA-DATAs from KRB-ERROR and AS-REP are combined).
-     * @return salt and s2kparams. never null, its field might be null.
+     * @return salt and s2kparams. can be null if not found
      */
     public static SaltAndParams getSaltAndParams(int eType, PAData[] pas)
-            throws Asn1Exception, KrbException {
+            throws Asn1Exception, IOException {
 
-        if (pas == null || pas.length == 0) {
-            return new SaltAndParams(null, null);
-        }
+        if (pas == null) return null;
 
+        DerValue d = null, d2 = null;
         String paPwSalt = null;
-        ETypeInfo2 info2 = null;
-        ETypeInfo info = null;
 
         for (PAData p: pas) {
-            if (p.getValue() != null) {
-                try {
-                    switch (p.getType()) {
-                        case Krb5.PA_PW_SALT:
-                            paPwSalt = new String(p.getValue(),
-                                    KerberosString.MSNAME?"UTF8":"8859_1");
-                            break;
-                        case Krb5.PA_ETYPE_INFO:
-                            DerValue der = new DerValue(p.getValue());
-                            while (der.data.available() > 0) {
-                                DerValue value = der.data.getDerValue();
-                                ETypeInfo tmp = new ETypeInfo(value);
-                                if (tmp.getEType() == eType) info = tmp;
-                            }
-                            break;
-                        case Krb5.PA_ETYPE_INFO2:
-                            der = new DerValue(p.getValue());
-                            while (der.data.available() > 0) {
-                                DerValue value = der.data.getDerValue();
-                                ETypeInfo2 tmp = new ETypeInfo2(value);
-                                if (tmp.getEType() == eType) info2 = tmp;
-                            }
-                            break;
-                    }
-                } catch (IOException ioe) {
-                    // Ignored
+            if (p.getValue() == null) continue;
+            switch (p.getType()) {
+                case Krb5.PA_PW_SALT:
+                    paPwSalt = new String(p.getValue(),
+                            KerberosString.MSNAME?"UTF8":"8859_1");
+                    break;
+                case Krb5.PA_ETYPE_INFO:
+                    d = new DerValue(p.getValue());
+                    break;
+                case Krb5.PA_ETYPE_INFO2:
+                    d2 = new DerValue(p.getValue());
+                    break;
+            }
+        }
+        if (d2 != null) {
+            while (d2.data.available() > 0) {
+                DerValue value = d2.data.getDerValue();
+                ETypeInfo2 tmp = new ETypeInfo2(value);
+                if (tmp.getParams() == null && tmp.getEType() == eType) {
+                    // we don't support non-null s2kparams
+                    return new SaltAndParams(tmp.getSalt(), tmp.getParams());
                 }
             }
         }
-        if (info2 != null) {
-            return new SaltAndParams(info2.getSalt(), info2.getParams());
-        } else if (info != null) {
-            return new SaltAndParams(info.getSalt(), null);
+        if (d != null) {
+            while (d.data.available() > 0) {
+                DerValue value = d.data.getDerValue();
+                ETypeInfo tmp = new ETypeInfo(value);
+                if (tmp.getEType() == eType) {
+                    return new SaltAndParams(tmp.getSalt(), null);
+                }
+            }
         }
-        return new SaltAndParams(paPwSalt, null);
+        if (paPwSalt != null) {
+            return new SaltAndParams(paPwSalt, null);
+        }
+        return null;
+    }
+
+    @Override
+    public String toString(){
+        StringBuilder sb = new StringBuilder();
+        sb.append(">>>Pre-Authentication Data:\n\t PA-DATA type = ")
+                .append(pADataType).append('\n');
+
+        switch(pADataType) {
+            case Krb5.PA_ENC_TIMESTAMP:
+                sb.append("\t PA-ENC-TIMESTAMP");
+                break;
+            case Krb5.PA_ETYPE_INFO:
+                if (pADataValue != null) {
+                    try {
+                        DerValue der = new DerValue(pADataValue);
+                        while (der.data.available() > 0) {
+                            DerValue value = der.data.getDerValue();
+                            ETypeInfo info = new ETypeInfo(value);
+                            sb.append("\t PA-ETYPE-INFO etype = ")
+                                    .append(info.getEType())
+                                    .append(", salt = ")
+                                    .append(info.getSalt())
+                                    .append('\n');
+                        }
+                    } catch (IOException|Asn1Exception e) {
+                        sb.append("\t <Unparseable PA-ETYPE-INFO>\n");
+                    }
+                }
+                break;
+            case Krb5.PA_ETYPE_INFO2:
+                if (pADataValue != null) {
+                    try {
+                        DerValue der = new DerValue(pADataValue);
+                        while (der.data.available() > 0) {
+                            DerValue value = der.data.getDerValue();
+                            ETypeInfo2 info2 = new ETypeInfo2(value);
+                            sb.append("\t PA-ETYPE-INFO2 etype = ")
+                                    .append(info2.getEType())
+                                    .append(", salt = ")
+                                    .append(info2.getSalt())
+                                    .append(", s2kparams = ");
+                            byte[] s2kparams = info2.getParams();
+                            if (s2kparams == null) {
+                                sb.append("null\n");
+                            } else if (s2kparams.length == 0) {
+                                sb.append("empty\n");
+                            } else {
+                                sb.append(new sun.misc.HexDumpEncoder()
+                                        .encodeBuffer(s2kparams));
+                            }
+                        }
+                    } catch (IOException|Asn1Exception e) {
+                        sb.append("\t <Unparseable PA-ETYPE-INFO>\n");
+                    }
+                }
+                break;
+            default:
+                // Unknown Pre-auth type
+                break;
+        }
+        return sb.toString();
     }
 }
diff --git a/jdk/src/share/classes/sun/security/tools/KeyTool.java b/jdk/src/share/classes/sun/security/tools/KeyTool.java
index b3dcebd..2e67bce 100644
--- a/jdk/src/share/classes/sun/security/tools/KeyTool.java
+++ b/jdk/src/share/classes/sun/security/tools/KeyTool.java
@@ -1141,17 +1141,14 @@
             if (token) {
                 keyStore.store(null, null);
             } else {
-                FileOutputStream fout = null;
-                try {
-                    fout = (nullStream ?
-                                        (FileOutputStream)null :
-                                        new FileOutputStream(ksfname));
-                    keyStore.store
-                        (fout,
-                        (storePassNew!=null) ? storePassNew : storePass);
-                } finally {
-                    if (fout != null) {
-                        fout.close();
+                char[] pass = (storePassNew!=null) ? storePassNew : storePass;
+                if (nullStream) {
+                    keyStore.store(null, pass);
+                } else {
+                    ByteArrayOutputStream bout = new ByteArrayOutputStream();
+                    keyStore.store(bout, pass);
+                    try (FileOutputStream fout = new FileOutputStream(ksfname)) {
+                        fout.write(bout.toByteArray());
                     }
                 }
             }
@@ -1399,7 +1396,7 @@
     private char[] promptForKeyPass(String alias, String orig, char[] origPass) throws Exception{
         if (P12KEYSTORE.equalsIgnoreCase(storetype)) {
             return origPass;
-        } else if (!token) {
+        } else if (!token && !protectedPath) {
             // Prompt for key password
             int count;
             for (count = 0; count < 3; count++) {
@@ -1446,7 +1443,7 @@
                 }
             }
         }
-        return null;    // PKCS11
+        return null;    // PKCS11, MSCAPI, or -protected
     }
     /**
      * Creates a new secret key.
diff --git a/jdk/src/share/classes/sun/security/x509/AVA.java b/jdk/src/share/classes/sun/security/x509/AVA.java
index e1d4961..b07e565 100644
--- a/jdk/src/share/classes/sun/security/x509/AVA.java
+++ b/jdk/src/share/classes/sun/security/x509/AVA.java
@@ -1071,8 +1071,17 @@
                  * to need quoting, or at least escaping.  So do leading or
                  * trailing spaces, and multiple internal spaces.
                  */
-                for (int i = 0; i < valStr.length(); i++) {
+                int length = valStr.length();
+                boolean alreadyQuoted =
+                    (length > 1 && valStr.charAt(0) == '\"'
+                     && valStr.charAt(length - 1) == '\"');
+
+                for (int i = 0; i < length; i++) {
                     char c = valStr.charAt(i);
+                    if (alreadyQuoted && (i == 0 || i == length - 1)) {
+                        sbuffer.append(c);
+                        continue;
+                    }
                     if (DerValue.isPrintableStringChar(c) ||
                         escapees.indexOf(c) >= 0) {
 
@@ -1136,7 +1145,8 @@
                 }
 
                 // Emit the string ... quote it if needed
-                if (quoteNeeded) {
+                // if string is already quoted, don't re-quote
+                if (!alreadyQuoted && quoteNeeded) {
                     retval.append("\"" + sbuffer.toString() + "\"");
                 } else {
                     retval.append(sbuffer.toString());
diff --git a/jdk/src/share/classes/sun/swing/PrintingStatus.java b/jdk/src/share/classes/sun/swing/PrintingStatus.java
index 19b26da..af3658b 100644
--- a/jdk/src/share/classes/sun/swing/PrintingStatus.java
+++ b/jdk/src/share/classes/sun/swing/PrintingStatus.java
@@ -43,8 +43,8 @@
  * <p/>
  * Methods of these class are thread safe, although most Swing methods
  * are not. Please see
- * <A HREF="http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html">How
- * to Use Threads</A> for more information.
+ * <A HREF="http://download.oracle.com/javase/tutorial/uiswing/concurrency/index.html">Concurrency
+ * in Swing</A> for more information.
  *
  * @author Alexander Potochkin
  * @since 1.6
diff --git a/jdk/src/share/classes/sun/tools/jar/JarImageSource.java b/jdk/src/share/classes/sun/tools/jar/JarImageSource.java
deleted file mode 100644
index 254eebd..0000000
--- a/jdk/src/share/classes/sun/tools/jar/JarImageSource.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 1996, 1998, Oracle and/or its affiliates. All rights reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Oracle designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Oracle in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
- * or visit www.oracle.com if you need additional information or have any
- * questions.
- */
-
-
-package sun.tools.jar;
-
-import sun.awt.image.URLImageSource;
-import sun.awt.image.ImageDecoder;
-import java.net.URL;
-import java.net.JarURLConnection;
-import java.util.jar.JarFile;
-import java.util.jar.JarEntry;
-import java.io.InputStream;
-import java.io.IOException;
-
-
-public class JarImageSource extends URLImageSource {
-    String mimeType;
-    String entryName = null;
-    URL url;
-
-    /**
-     * Create an image source from a Jar entry URL with the specified
-     * mime type.
-     */
-    public JarImageSource(URL u, String type) {
-        super(u);
-        url = u;
-        mimeType = type;
-    }
-
-    /**
-     * Create an image source from a Jar file/entry URL
-     * with the specified entry name and mime type.
-     */
-    public JarImageSource(URL u, String name, String type) {
-        this(u, type);
-        this.entryName = name;
-    }
-
-    protected ImageDecoder getDecoder() {
-        InputStream is = null;
-        try {
-            JarURLConnection c = (JarURLConnection)url.openConnection();
-            JarFile f = c.getJarFile();
-            JarEntry e = c.getJarEntry();
-
-            if (entryName != null && e == null) {
-                e = f.getJarEntry(entryName);
-            }
-            if (e == null || (e != null && entryName != null
-                              && (!(entryName.equals(e.getName()))))) {
-                return null;
-            }
-            is = f.getInputStream(e);
-        } catch (IOException e) {
-            return null;
-        }
-
-        ImageDecoder id = decoderForType(is, mimeType);
-        if (id == null) {
-            id = getDecoder(is);
-        }
-        return id;
-    }
-}
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames.properties
index 6fac2dd..1339e05 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames.properties
@@ -106,6 +106,7 @@
 COP=COP
 CRC=CRC
 CSD=CSD
+CUC=CUC
 CUP=CUP
 CVE=CVE
 CYP=CYP
@@ -232,6 +233,7 @@
 THB=THB
 TJS=TJS
 TMM=TMM
+TMT=TMT
 TND=TND
 TOP=TOP
 TPE=TPE
@@ -267,14 +269,18 @@
 XPD=XPD
 XPF=XPF
 XPT=XPT
+XSU=XSU
 XTS=XTS
+XUA=XUA
 XXX=XXX
 YER=YER
 YUM=YUM
 ZAR=ZAR
 ZMK=ZMK
 ZWD=ZWD
+ZWL=ZWL
 ZWN=ZWN
+ZWR=ZWR
 adp=Andorran Peseta
 aed=United Arab Emirates Dirham
 afa=Afghan Afghani (1927-2002)
@@ -317,6 +323,7 @@
 cop=Colombian Peso
 crc=Costa Rican Col\u00f3n
 csd=Serbian Dinar (2002-2006)
+cuc=Cuban Convertible Peso
 cup=Cuban Peso
 cve=Cape Verdean Escudo
 cyp=Cypriot Pound
@@ -443,6 +450,7 @@
 thb=Thai Baht
 tjs=Tajikistani Somoni
 tmm=Turkmenistani Manat (1993-2009)
+tmt=Turkmenistani Manat
 tnd=Tunisian Dinar
 top=Tongan Pa\u02bbanga
 tpe=Timorese Escudo
@@ -485,3 +493,5 @@
 zar=South African Rand
 zmk=Zambian Kwacha
 zwd=Zimbabwean Dollar (1980-2008)
+zwl=Zimbabwean Dollar (2009)
+zwr=Zimbabwean Dollar (2008)
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_de.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_de.properties
index 5e8f14b..7f193bcc 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_de.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_de.properties
@@ -105,6 +105,7 @@
 cop=Kolumbianischer Peso
 crc=Costa Rica Colon
 csd=Alter Serbischer Dinar
+cuc=Kubanischer Peso (konvertibel)
 cup=Kubanischer Peso
 cve=Kap Verde Escudo
 cyp=Zypern-Pfund
@@ -229,6 +230,7 @@
 thb=Baht
 tjs=Tadschikistan Somoni
 tmm=Turkmenistan-Manat
+tmt=Neuer Turkmenistan-Manat
 tnd=Tunesischer Dinar
 top=Pa\u02bbanga
 tpe=Timor-Escudo
@@ -270,3 +272,4 @@
 zar=S\u00fcdafrikanischer Rand
 zmk=Kwacha
 zwd=Simbabwe-Dollar
+zwl=Simbabwe-Dollar (2009)
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_es.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_es.properties
index c973b48..9ea7553 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_es.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_es.properties
@@ -105,6 +105,7 @@
 cop=peso colombiano
 crc=col\u00f3n costarricense
 csd=antiguo dinar serbio
+cuc=peso cubano convertible
 cup=peso cubano
 cve=escudo de Cabo Verde
 cyp=libra chipriota
@@ -231,6 +232,7 @@
 thb=baht tailand\u00e9s
 tjs=somoni tayiko
 tmm=manat turcomano
+tmt=nuevo manat turcomano
 tnd=dinar tunecino
 top=pa\u02bbanga tongano
 tpe=escudo timorense
@@ -273,3 +275,4 @@
 zar=rand sudafricano
 zmk=kwacha zambiano
 zwd=d\u00f3lar de Zimbabue
+zwl=d\u00f3lar zimbabuense
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_es_CU.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_es_CU.properties
new file mode 100644
index 0000000..23ebbef
--- /dev/null
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_es_CU.properties
@@ -0,0 +1,67 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  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.
+#
+
+#
+# COPYRIGHT AND PERMISSION NOTICE
+#
+# Copyright (C) 1991-2011 Unicode, Inc. All rights reserved.
+# Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of the Unicode data files and any associated documentation (the
+# "Data Files") or Unicode software and any associated documentation
+# (the "Software") to deal in the Data Files or Software without
+# restriction, including without limitation the rights to use, copy,
+# modify, merge, publish, distribute, and/or sell copies of the Data
+# Files or Software, and to permit persons to whom the Data Files or
+# Software are furnished to do so, provided that (a) the above copyright
+# notice(s) and this permission notice appear with all copies of the
+# Data Files or Software, (b) both the above copyright notice(s) and
+# this permission notice appear in associated documentation, and (c)
+# there is clear notice in each modified Data File or in the Software as
+# well as in the documentation associated with the Data File(s) or
+# Software that the data or software has been modified.
+#
+# THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+# ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT
+# HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR
+# ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR
+# SOFTWARE.
+#
+# Except as contained in this notice, the name of a copyright holder
+# shall not be used in advertising or otherwise to promote the sale, use
+# or other dealings in these Data Files or Software without prior
+# written authorization of the copyright holder.
+
+#
+# Generated automatically from the Common Locale Data Repository. DO NOT EDIT!
+#
+CUP=CU$
+CUC=CUC$
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_et_EE.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_et_EE.properties
index d2f9259..333360e 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_et_EE.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_et_EE.properties
@@ -1,5 +1,5 @@
-# 
-# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -21,18 +21,49 @@
 # 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.
-# 
-
-# (C) Copyright Taligent, Inc. 1996, 1997 - All Rights Reserved
-# (C) Copyright IBM Corp. 1996 - 1999 - All Rights Reserved
 #
-# The original version of this source code and documentation
-# is copyrighted and owned by Taligent, Inc., a wholly-owned
-# subsidiary of IBM. These materials are provided under terms
-# of a License Agreement between Taligent and Sun. This technology
-# is protected by multiple US and International patents.
-#
-# This notice and attribution to Taligent may not be removed.
-# Taligent is a registered trademark of Taligent, Inc.
 
+#
+# COPYRIGHT AND PERMISSION NOTICE
+#
+# Copyright (C) 1991-2011 Unicode, Inc. All rights reserved.
+# Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of the Unicode data files and any associated documentation (the
+# "Data Files") or Unicode software and any associated documentation
+# (the "Software") to deal in the Data Files or Software without
+# restriction, including without limitation the rights to use, copy,
+# modify, merge, publish, distribute, and/or sell copies of the Data
+# Files or Software, and to permit persons to whom the Data Files or
+# Software are furnished to do so, provided that (a) the above copyright
+# notice(s) and this permission notice appear with all copies of the
+# Data Files or Software, (b) both the above copyright notice(s) and
+# this permission notice appear in associated documentation, and (c)
+# there is clear notice in each modified Data File or in the Software as
+# well as in the documentation associated with the Data File(s) or
+# Software that the data or software has been modified.
+#
+# THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+# ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT
+# HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR
+# ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR
+# SOFTWARE.
+#
+# Except as contained in this notice, the name of a copyright holder
+# shall not be used in advertising or otherwise to promote the sale, use
+# or other dealings in these Data Files or Software without prior
+# written authorization of the copyright holder.
+
+#
+# Generated automatically from the Common Locale Data Repository. DO NOT EDIT!
+#
 EEK=kr
+eek=Eesti kroon
+EUR=\u20ac
+eur=euro
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_fr.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_fr.properties
index 3bea1c0..ecba10c 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_fr.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_fr.properties
@@ -105,6 +105,7 @@
 cop=peso colombien
 crc=col\u00f3n costaricain
 csd=dinar serbo-mont\u00e9n\u00e9grin
+cuc=peso cubain convertible
 cup=peso cubain
 cve=escudo capverdien
 cyp=livre chypriote
@@ -231,6 +232,7 @@
 thb=baht tha\u00eflandais
 tjs=somoni tadjik
 tmm=manat turkm\u00e8ne
+tmt=nouveau manat turkm\u00e8ne
 tnd=dinar tunisien
 top=pa\u2019anga tongan
 tpe=escudo timorais
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_ja.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_ja.properties
index a476238..afbc0c7 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_ja.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_ja.properties
@@ -105,6 +105,7 @@
 cop=\u30b3\u30ed\u30f3\u30d3\u30a2 \u30da\u30bd
 crc=\u30b3\u30b9\u30bf\u30ea\u30ab \u30b3\u30ed\u30f3
 csd=\u30bb\u30eb\u30d3\u30a2\u30f3 \u30c7\u30a3\u30ca\u30fc\u30eb
+cuc=\u30ad\u30e5\u30fc\u30d0 \u514c\u63db\u30da\u30bd
 cup=\u30ad\u30e5\u30fc\u30d0 \u30da\u30bd
 cve=\u30ab\u30fc\u30dc\u30d9\u30eb\u30c7 \u30a8\u30b9\u30af\u30fc\u30c9
 cyp=\u30ad\u30d7\u30ed\u30b9 \u30dd\u30f3\u30c9
@@ -231,6 +232,7 @@
 thb=\u30bf\u30a4 \u30d0\u30fc\u30c4
 tjs=\u30bf\u30b8\u30ad\u30b9\u30bf\u30f3 \u30bd\u30e2\u30cb
 tmm=\u30c8\u30eb\u30af\u30e1\u30cb\u30b9\u30bf\u30f3 \u30de\u30ca\u30c8
+tmt=\u30c8\u30eb\u30af\u30e1\u30cb\u30b9\u30bf\u30f3 \u65b0\u30de\u30ca\u30c8
 tnd=\u30c1\u30e5\u30cb\u30b8\u30a2 \u30c7\u30a3\u30ca\u30fc\u30eb
 top=\u30c8\u30f3\u30ac \u30d1\u30fb\u30a2\u30f3\u30ac
 tpe=\u30c6\u30a3\u30e2\u30fc\u30eb \u30a8\u30b9\u30af\u30fc\u30c9
@@ -273,3 +275,4 @@
 zar=\u5357\u30a2\u30d5\u30ea\u30ab \u30e9\u30f3\u30c9
 zmk=\u30b6\u30f3\u30d3\u30a2 \u30af\u30ef\u30c1\u30e3
 zwd=\u30b8\u30f3\u30d0\u30d6\u30a8 \u30c9\u30eb
+zwl=\u30b8\u30f3\u30d0\u30d6\u30a8 \u30c9\u30eb (2009)
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_ko.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_ko.properties
index 608e5d5..959bf7c 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_ko.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_ko.properties
@@ -105,6 +105,7 @@
 cop=\ucf5c\ub86c\ube44\uc544 \ud398\uc18c
 crc=\ucf54\uc2a4\ud0c0\ub9ac\uce74 \ucf5c\ub860
 csd=\uace0 \uc138\ub974\ube44\uc544 \ub514\ub098\ub974
+cuc=\ucfe0\ubc14 \ud0dc\ud658 \ud398\uc18c
 cup=\ucfe0\ubc14 \ud398\uc18c
 cve=\uce74\ubcf4\ubca0\ub974\ub370 \uc5d0\uc2a4\ucfe0\ub3c4
 cyp=\uc2f8\uc774\ud504\ub7ec\uc2a4 \ud30c\uc6b4\ub4dc
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_pt.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_pt.properties
index d033ea7..20a62c8 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_pt.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_pt.properties
@@ -87,6 +87,7 @@
 bif=Franco do Burundi
 bmd=D\u00f3lar das Bermudas
 bnd=D\u00f3lar do Brunei
+bob=Boliviano
 bov=Mvdol boliviano
 brl=Real brasileiro
 bsd=D\u00f3lar das Bahamas
@@ -104,6 +105,7 @@
 cop=Peso colombiano
 crc=Colon da Costa Rica
 csd=Dinar s\u00e9rvio antigo
+cuc=Peso cubano convers\u00edvel
 cup=Peso cubano
 cve=Escudo cabo-verdiano
 cyp=Libra cipriota
@@ -229,6 +231,7 @@
 thb=Baht tailand\u00eas
 tjs=Somoni tadjique
 tmm=Manat do Turcomenist\u00e3o
+tmt=Novo Manat do Turcomenist\u00e3o
 tnd=Dinar tunisiano
 top=Pa\u02bbanga de Tonga
 tpe=Escudo timorense
@@ -271,3 +274,5 @@
 zar=Rand sul-africano
 zmk=Cuacha zambiano
 zwd=D\u00f3lar do Zimb\u00e1bue
+zwl=D\u00f3lar do Zimb\u00e1bue (2009)
+zwr=D\u00f3lar do Zimb\u00e1bue (2008)
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_sk_SK.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_sk_SK.properties
index a2130a2..eb10a65 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_sk_SK.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_sk_SK.properties
@@ -1,5 +1,5 @@
-# 
-# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+#
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -21,18 +21,48 @@
 # 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.
-# 
-
-# (C) Copyright Taligent, Inc. 1996, 1997 - All Rights Reserved
-# (C) Copyright IBM Corp. 1996 - 1999 - All Rights Reserved
 #
-# The original version of this source code and documentation
-# is copyrighted and owned by Taligent, Inc., a wholly-owned
-# subsidiary of IBM. These materials are provided under terms
-# of a License Agreement between Taligent and Sun. This technology
-# is protected by multiple US and International patents.
-#
-# This notice and attribution to Taligent may not be removed.
-# Taligent is a registered trademark of Taligent, Inc.
 
+#
+# COPYRIGHT AND PERMISSION NOTICE
+#
+# Copyright (C) 1991-2011 Unicode, Inc. All rights reserved.
+# Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of the Unicode data files and any associated documentation (the
+# "Data Files") or Unicode software and any associated documentation
+# (the "Software") to deal in the Data Files or Software without
+# restriction, including without limitation the rights to use, copy,
+# modify, merge, publish, distribute, and/or sell copies of the Data
+# Files or Software, and to permit persons to whom the Data Files or
+# Software are furnished to do so, provided that (a) the above copyright
+# notice(s) and this permission notice appear with all copies of the
+# Data Files or Software, (b) both the above copyright notice(s) and
+# this permission notice appear in associated documentation, and (c)
+# there is clear notice in each modified Data File or in the Software as
+# well as in the documentation associated with the Data File(s) or
+# Software that the data or software has been modified.
+#
+# THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+# ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT
+# HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR
+# ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
+# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR
+# SOFTWARE.
+#
+# Except as contained in this notice, the name of a copyright holder
+# shall not be used in advertising or otherwise to promote the sale, use
+# or other dealings in these Data Files or Software without prior
+# written authorization of the copyright holder.
+
+#
+# Generated automatically from the Common Locale Data Repository. DO NOT EDIT!
+#
 SKK=Sk
+skk=Slovensk\u00e1 koruna
+EUR=\u20ac
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_CN.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_CN.properties
index ed541a1..804ac91 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_CN.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_CN.properties
@@ -106,6 +106,7 @@
 cop=\u54e5\u4f26\u6bd4\u4e9a\u6bd4\u7d22
 crc=\u54e5\u65af\u8fbe\u9ece\u52a0\u79d1\u6717
 csd=\u65e7\u585e\u5c14\u7ef4\u4e9a\u7b2c\u7eb3\u5c14
+cuc=\u53e4\u5df4\u53ef\u5151\u6362\u6bd4\u7d22
 cup=\u53e4\u5df4\u6bd4\u7d22
 cve=\u4f5b\u5f97\u89d2\u57c3\u65af\u5e93\u591a
 cyp=\u585e\u6d66\u8def\u65af\u9551
@@ -231,6 +232,7 @@
 thb=\u6cf0\u94e2
 tjs=\u5854\u5409\u514b\u65af\u5766\u7d22\u83ab\u5c3c
 tmm=\u571f\u5e93\u66fc\u65af\u5766\u9a6c\u7eb3\u7279
+tmt=\u571f\u5e93\u66fc\u65af\u5766\u65b0\u9a6c\u7eb3\u7279
 tnd=\u7a81\u5c3c\u65af\u7b2c\u7eb3\u5c14
 top=\u6c64\u52a0\u6f58\u52a0
 tpe=\u5e1d\u6c76\u57c3\u65af\u5e93\u591a
@@ -273,3 +275,4 @@
 zar=\u5357\u975e\u5170\u7279
 zmk=\u8d5e\u6bd4\u4e9a\u514b\u74e6\u67e5
 zwd=\u6d25\u5df4\u5e03\u97e6\u5143
+zwl=\u6d25\u5df4\u5e03\u97e6\u5143 (2009)
diff --git a/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_TW.properties b/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_TW.properties
index 9630c6e..3ec99f1 100644
--- a/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_TW.properties
+++ b/jdk/src/share/classes/sun/util/resources/CurrencyNames_zh_TW.properties
@@ -107,6 +107,7 @@
 cop=\u54e5\u502b\u6bd4\u4e9e\u62ab\u7d22
 crc=\u54e5\u65af\u5927\u9ece\u52a0\u79d1\u90ce
 csd=\u65e7\u585e\u5c14\u7ef4\u4e9a\u7b2c\u7eb3\u5c14
+cuc=\u53e4\u5df4\u53ef\u8f49\u63db\u62ab\u7d22
 cup=\u53e4\u5df4\u62ab\u7d22
 cve=\u7dad\u5fb7\u89d2\u57c3\u65af\u5eab\u591a
 cyp=\u8cfd\u666e\u52d2\u65af\u938a
@@ -233,6 +234,7 @@
 thb=\u6cf0\u9296
 tjs=\u5854\u5409\u514b\u65af\u5766\u7d22\u83ab\u5c3c
 tmm=\u571f\u5eab\u66fc\u99ac\u7d0d\u7279
+tmt=\u571f\u5eab\u66fc\u65b0\u99ac\u7d0d\u7279
 tnd=\u7a81\u5c3c\u897f\u4e9e\u7b2c\u7d0d\u723e
 top=\u6771\u52a0\u6f58\u52a0
 tpe=\u5e1d\u6c76\u57c3\u65af\u5e93\u591a
@@ -274,3 +276,4 @@
 zar=\u5357\u975e\u862d\u7279
 zmk=\u5c1a\u6bd4\u4e9e\u514b\u74e6\u67e5
 zwd=\u8f9b\u5df4\u5a01\u5143
+zwl=\u8f9b\u5df4\u5a01\u5143 (2009)
diff --git a/jdk/src/share/classes/sun/util/resources/LocaleNames.properties b/jdk/src/share/classes/sun/util/resources/LocaleNames.properties
index 6756add..0552c94 100644
--- a/jdk/src/share/classes/sun/util/resources/LocaleNames.properties
+++ b/jdk/src/share/classes/sun/util/resources/LocaleNames.properties
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -898,6 +898,7 @@
 BM=Bermuda
 BN=Brunei
 BO=Bolivia
+BQ=Bonaire, Sint Eustatius and Saba
 BR=Brazil
 BS=Bahamas
 BT=Bhutan
@@ -921,6 +922,7 @@
 CS=Serbia and Montenegro
 CU=Cuba
 CV=Cape Verde
+CW=Cura\u00e7ao
 CX=Christmas Island
 CY=Cyprus
 CZ=Czech Republic
@@ -1077,6 +1079,7 @@
 SR=Suriname
 ST=Sao Tome And Principe
 SV=El Salvador
+SX=Sint Maarten (Dutch part)
 SY=Syria
 SZ=Swaziland
 TC=Turks And Caicos Islands
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames.java
index f39fae2..c4862dc 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Pacific Standard Time", "PST",
                                      "Pacific Daylight Time", "PDT"};
-        String RST[] = new String[] {"Eastern Standard Time", "EST",
-                                     "Central Daylight Time", "CDT"};
         String SAST[] = new String[] {"South Africa Standard Time", "SAST",
                                       "South Africa Summer Time", "SAST"};
         String SBT[] = new String[] {"Solomon Is. Time", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Bolivia Time", "BOT",
                                              "Bolivia Summer Time", "BOST"}},
             {"America/Lima", new String[] {"Peru Time", "PET",
                                            "Peru Summer Time", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_de.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_de.java
index e74074f..763f7f5 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_de.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_de.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Pazifische Normalzeit", "PST",
                                      "Pazifische Sommerzeit", "PDT"};
-        String RST[] = new String[] {"\u00d6stliche Normalzeit", "EST",
-                                     "Zentrale Sommerzeit", "CDT"};
         String SAST[] = new String[] {"S\u00fcdafrikanische Normalzeit", "SAST",
                                       "S\u00fcdafrikanische Sommerzeit", "SAST"};
         String SBT[] = new String[] {"Salomoninseln Zeit", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Bolivianische Zeit", "BOT",
                                              "Bolivianische Sommerzeit", "BOST"}},
             {"America/Lima", new String[] {"Peruanische Zeit", "PET",
                                            "Peruanische Sommerzeit", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_es.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_es.java
index 1a87c33..1c09f1e 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_es.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_es.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Hora est\u00e1ndar del Pac\u00edfico", "PST",
                                      "Hora de verano del Pac\u00edfico", "PDT"};
-        String RST[] = new String[] {"Hora est\u00e1ndar Oriental", "EST",
-                                     "Hora de verano Central", "CDT"};
         String SAST[] = new String[] {"Hora est\u00e1ndar de Sud\u00e1frica", "SAST",
                                       "Hora de verano de Sud\u00e1frica", "SAST"};
         String SBT[] = new String[] {"Hora de las Islas Solomon", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Hora de Bolivia", "BOT",
                                              "Hora de verano de Bolivia", "BOST"}},
             {"America/Lima", new String[] {"Hora de Per\u00fa", "PET",
                                            "Hora de verano de Per\u00fa", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_fr.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_fr.java
index 56701d6..fba1e82 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_fr.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_fr.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Heure normale du Pacifique", "PST",
                                      "Heure avanc\u00e9e du Pacifique", "PDT"} ;
-        String RST[] = new String[] {"Heure normale de l'Est", "EST",
-                                     "Heure avanc\u00e9e du Centre", "CDT"} ;
         String SAST[] = new String[] {"Heure normale d'Afrique du Sud", "SAST",
                                       "Heure d'\u00e9t\u00e9 d'Afrique du Sud", "SAST"} ;
         String SBT[] = new String[] {"Heure des \u00celes Salomon", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Heure de Bolivie", "BOT",
                                              "Heure d'\u00e9t\u00e9 de Bolivie", "BOST"}},
             {"America/Lima", new String[] {"Heure du P\u00e9rou", "PET",
                                            "Heure d'\u00e9t\u00e9 du P\u00e9rou", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_it.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_it.java
index a02535f..c2bb1d6 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_it.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_it.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Ora solare della costa occidentale USA", "PST",
                                      "Ora legale della costa occidentale USA", "PDT"};
-        String RST[] = new String[] {"Ora solare USA orientale", "EST",
-                                     "Ora legale USA centrale", "CDT"};
         String SAST[] = new String[] {"Ora solare del Sudafrica", "SAST",
                                       "Ora estiva del Sudafrica", "SAST"};
         String SBT[] = new String[] {"Ora delle Isole Salomone", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Ora della Bolivia", "BOT",
                                              "Ora estiva della Bolivia", "BOST"}},
             {"America/Lima", new String[] {"Ora del Per\u00f9", "PET",
                                            "Ora estiva del Per\u00f9", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ja.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ja.java
index bb28e3c..a0d9d7c 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ja.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ja.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\u592a\u5e73\u6d0b\u6a19\u6e96\u6642", "PST",
                                      "\u592a\u5e73\u6d0b\u590f\u6642\u9593", "PDT"};
-        String RST[] = new String[] {"\u6771\u90e8\u6a19\u6e96\u6642", "EST",
-                                     "\u4e2d\u90e8\u590f\u6642\u9593", "CDT"};
         String SAST[] = new String[] {"\u5357\u30a2\u30d5\u30ea\u30ab\u6a19\u6e96\u6642", "SAST",
                                       "\u5357\u30a2\u30d5\u30ea\u30ab\u590f\u6642\u9593", "SAST"};
         String SBT[] = new String[] {"\u30bd\u30ed\u30e2\u30f3\u8af8\u5cf6\u6642\u9593", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\u30dc\u30ea\u30d3\u30a2\u6642\u9593", "BOT",
                                              "\u30dc\u30ea\u30d3\u30a2\u590f\u6642\u9593", "BOST"}},
             {"America/Lima", new String[] {"\u30da\u30eb\u30fc\u6642\u9593", "PET",
                                            "\u30da\u30eb\u30fc\u590f\u6642\u9593", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ko.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ko.java
index baaa5f0..2079655 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ko.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_ko.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\ud0dc\ud3c9\uc591 \ud45c\uc900\uc2dc", "PST",
                                      "\ud0dc\ud3c9\uc591 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PDT"};
-        String RST[] = new String[] {"\ub3d9\ubd80 \ud45c\uc900\uc2dc", "EST",
-                                     "\uc911\ubd80 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "CDT"};
         String SAST[] = new String[] {"\ub0a8\uc544\ud504\ub9ac\uce74 \ud45c\uc900\uc2dc", "SAST",
                                       "\ub0a8\uc544\ud504\ub9ac\uce74 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "SAST"};
         String SBT[] = new String[] {"\uc194\ub85c\ubaac \uad70\ub3c4 \uc2dc\uac04", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\ubcfc\ub9ac\ube44\uc544 \uc2dc\uac04", "BOT",
                                             "\ubcfc\ub9ac\ube44\uc544 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "BOST"}},
             {"America/Lima", new String[] {"\ud398\ub8e8 \uc2dc\uac04", "PET",
                                             "\ud398\ub8e8 \uc77c\uad11\uc808\uc57d\uc2dc\uac04", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java
index d7b485b..89191d0 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java
@@ -157,8 +157,6 @@
                                       "Fuso hor\u00e1rio de ver\u00e3o de Pohnpei", "PONST"};
         String PST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o do Pac\u00edfico", "PST",
                                      "Hor\u00e1rio de luz natural do Pac\u00edfico", "PDT"};
-        String RST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o oriental", "EST",
-                                     "Hor\u00e1rio de luz natural central", "CDT"};
         String SAST[] = new String[] {"Fuso hor\u00e1rio padr\u00e3o da \u00c1frica do Sul", "SAST",
                                       "Fuso hor\u00e1rio de ver\u00e3o da \u00c1frica do Sul", "SAST"};
         String SBT[] = new String[] {"Fuso hor\u00e1rio das Ilhas Salom\u00e3o", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Fuso hor\u00e1rio da Bol\u00edvia", "BOT",
                                              "Fuso hor\u00e1rio de ver\u00e3o da Bol\u00edvia", "BOST"}},
             {"America/Lima", new String[] {"Fuso hor\u00e1rio do Peru", "PET",
                                            "Fuso hor\u00e1rio de ver\u00e3o do Peru", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_sv.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_sv.java
index 0ddaa34..007e553 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_sv.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_sv.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"Stilla havet, normaltid", "PST",
                                      "Stilla havet, sommartid", "PDT"};
-        String RST[] = new String[] {"Eastern, normaltid", "EST",
-                                     "Central sommartid", "CDT"};
         String SAST[] = new String[] {"Sydafrika, normaltid", "SAST",
                                       "Sydafrika, sommartid", "SAST"};
         String SBT[] = new String[] {"Salomon\u00f6arna, normaltid", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"Bolivia, normaltid", "BOT",
                                              "Bolivia, sommartid", "BOST"}},
             {"America/Lima", new String[] {"Peru, normaltid", "PET",
                                            "Peru, sommartid", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java
index 17f72a6..d752137 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\u592a\u5e73\u6d0b\u6807\u51c6\u65f6\u95f4", "PST",
                                      "\u592a\u5e73\u6d0b\u590f\u4ee4\u65f6", "PDT"};
-        String RST[] = new String[] {"\u4e1c\u90e8\u6807\u51c6\u65f6\u95f4", "EST",
-                                     "\u4e2d\u592e\u590f\u4ee4\u65f6", "CDT"};
         String SAST[] = new String[] {"\u5357\u975e\u6807\u51c6\u65f6\u95f4", "SAST",
                                       "\u5357\u975e\u590f\u4ee4\u65f6", "SAST"};
         String SBT[] = new String[] {"\u6240\u7f57\u95e8\u7fa4\u5c9b\u65f6\u95f4", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\u73bb\u5229\u7ef4\u4e9a\u65f6\u95f4", "BOT",
                                              "\u73bb\u5229\u7ef4\u4e9a\u590f\u4ee4\u65f6", "BOST"}},
             {"America/Lima", new String[] {"\u79d8\u9c81\u65f6\u95f4", "PET",
                                            "\u79d8\u9c81\u590f\u4ee4\u65f6", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -673,7 +674,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java
index d7f1b10..9a7fbe9 100644
--- a/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java
+++ b/jdk/src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java
@@ -159,8 +159,6 @@
                                       "Pohnpei Summer Time", "PONST"};
         String PST[] = new String[] {"\u592a\u5e73\u6d0b\u6a19\u6e96\u6642\u9593", "PST",
                                      "\u592a\u5e73\u6d0b\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "PDT"};
-        String RST[] = new String[] {"\u6771\u65b9\u6a19\u6e96\u6642\u9593", "EST",
-                                     "\u4e2d\u592e\u65e5\u5149\u7bc0\u7d04\u6642\u9593", "CDT"};
         String SAST[] = new String[] {"\u5357\u975e\u6a19\u6e96\u6642\u9593", "SAST",
                                       "\u5357\u975e\u590f\u4ee4\u6642\u9593", "SAST"};
         String SBT[] = new String[] {"\u6240\u7f85\u9580\u7fa4\u5cf6\u6642\u9593", "SBT",
@@ -262,6 +260,7 @@
             {"Africa/Gaborone", CAT},
             {"Africa/Harare", CAT},
             {"Africa/Johannesburg", SAST},
+            {"Africa/Juba", EAT},
             {"Africa/Kampala", EAT},
             {"Africa/Khartoum", EAT},
             {"Africa/Kigali", CAT},
@@ -378,11 +377,13 @@
             {"America/Kentucky/Louisville", EST},
             {"America/Kentucky/Monticello", EST},
             {"America/Knox_IN", CST},
+            {"America/Kralendijk", AST},
             {"America/La_Paz", new String[] {"\u73bb\u5229\u7dad\u4e9e\u6642\u9593", "BOT",
                                              "\u73bb\u5229\u7dad\u4e9e\u590f\u4ee4\u6642\u9593", "BOST"}},
             {"America/Lima", new String[] {"\u7955\u9b6f\u6642\u9593", "PET",
                                            "\u7955\u9b6f\u590f\u4ee4\u6642\u9593", "PEST"}},
             {"America/Louisville", EST},
+            {"America/Lower_Princes", AST},
             {"America/Maceio", BRT},
             {"America/Managua", CST},
             {"America/Manaus", AMT},
@@ -425,7 +426,7 @@
             {"America/Rankin_Inlet", CST},
             {"America/Recife", BRT},
             {"America/Regina", CST},
-            {"America/Resolute", RST},
+            {"America/Resolute", CST},
             {"America/Rio_Branco", AMT},
             {"America/Rosario", AGT},
             {"America/Santa_Isabel", PST},
@@ -674,7 +675,8 @@
             {"Europe/Isle_of_Man", GMTBST},
             {"Europe/Istanbul", EET},
             {"Europe/Jersey", GMTBST},
-            {"Europe/Kaliningrad", EET},
+            {"Europe/Kaliningrad", new String[] {"Kaliningrad Time", "KALT",
+                                                 "Kaliningrad Summer Time", "KALST"}},
             {"Europe/Kiev", EET},
             {"Europe/Lisbon", WET},
             {"Europe/Ljubljana", CET},
diff --git a/jdk/src/share/classes/java/util/XMLUtils.java b/jdk/src/share/classes/sun/util/xml/XMLUtils.java
similarity index 97%
rename from jdk/src/share/classes/java/util/XMLUtils.java
rename to jdk/src/share/classes/sun/util/xml/XMLUtils.java
index 1666c63..ab7ca85 100644
--- a/jdk/src/share/classes/java/util/XMLUtils.java
+++ b/jdk/src/share/classes/sun/util/xml/XMLUtils.java
@@ -23,9 +23,10 @@
  * questions.
  */
 
-package java.util;
+package sun.util.xml;
 
 import java.io.*;
+import java.util.*;
 import org.xml.sax.*;
 import org.xml.sax.helpers.*;
 import org.w3c.dom.*;
@@ -42,7 +43,7 @@
  * @author  Michael McCloskey
  * @since   1.3
  */
-class XMLUtils {
+public class XMLUtils {
 
     // XML loading and saving methods for Properties
 
@@ -66,7 +67,7 @@
      */
     private static final String EXTERNAL_XML_VERSION = "1.0";
 
-    static void load(Properties props, InputStream in)
+    public static void load(Properties props, InputStream in)
         throws IOException, InvalidPropertiesFormatException
     {
         Document doc = null;
@@ -120,7 +121,7 @@
         }
     }
 
-    static void save(Properties props, OutputStream os, String comment,
+    public static void save(Properties props, OutputStream os, String comment,
                      String encoding)
         throws IOException
     {
diff --git a/jdk/src/share/demo/README b/jdk/src/share/demo/README
new file mode 100644
index 0000000..ae56b64
--- /dev/null
+++ b/jdk/src/share/demo/README
@@ -0,0 +1,6 @@
+The source code provided with samples and demos for the JDK is meant
+to illustrate the usage of a given feature or technique and has been
+deliberately simplified. Additional steps required for a
+production-quality application, such as security checks, input
+validation, and proper error handling, might not be present in the
+sample code.
diff --git a/jdk/src/share/demo/applets/ArcTest/ArcTest.java b/jdk/src/share/demo/applets/ArcTest/ArcTest.java
index d58ef44b..9e9e02c 100644
--- a/jdk/src/share/demo/applets/ArcTest/ArcTest.java
+++ b/jdk/src/share/demo/applets/ArcTest/ArcTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.*;
 import java.awt.event.*;
diff --git a/jdk/src/share/demo/applets/BarChart/BarChart.java b/jdk/src/share/demo/applets/BarChart/BarChart.java
index 81cab8f..7bac8af 100644
--- a/jdk/src/share/demo/applets/BarChart/BarChart.java
+++ b/jdk/src/share/demo/applets/BarChart/BarChart.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.*;
 
diff --git a/jdk/src/share/demo/applets/Blink/Blink.java b/jdk/src/share/demo/applets/Blink/Blink.java
index ab6f979..de3f69f 100644
--- a/jdk/src/share/demo/applets/Blink/Blink.java
+++ b/jdk/src/share/demo/applets/Blink/Blink.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * I love blinking things.
diff --git a/jdk/src/share/demo/applets/CardTest/CardTest.java b/jdk/src/share/demo/applets/CardTest/CardTest.java
index 38110ef..b1395a4 100644
--- a/jdk/src/share/demo/applets/CardTest/CardTest.java
+++ b/jdk/src/share/demo/applets/CardTest/CardTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.BorderLayout;
diff --git a/jdk/src/share/demo/applets/Clock/Clock.java b/jdk/src/share/demo/applets/Clock/Clock.java
index ea698ff..6a41b45 100644
--- a/jdk/src/share/demo/applets/Clock/Clock.java
+++ b/jdk/src/share/demo/applets/Clock/Clock.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.Color;
diff --git a/jdk/src/share/demo/applets/DitherTest/DitherTest.java b/jdk/src/share/demo/applets/DitherTest/DitherTest.java
index 0416573..4875042 100644
--- a/jdk/src/share/demo/applets/DitherTest/DitherTest.java
+++ b/jdk/src/share/demo/applets/DitherTest/DitherTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.AWTEvent;
diff --git a/jdk/src/share/demo/applets/DrawTest/DrawTest.java b/jdk/src/share/demo/applets/DrawTest/DrawTest.java
index 50af991..b2edecd 100644
--- a/jdk/src/share/demo/applets/DrawTest/DrawTest.java
+++ b/jdk/src/share/demo/applets/DrawTest/DrawTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.BorderLayout;
diff --git a/jdk/src/share/demo/applets/Fractal/CLSFractal.java b/jdk/src/share/demo/applets/Fractal/CLSFractal.java
index be391e6..9f7812c 100644
--- a/jdk/src/share/demo/applets/Fractal/CLSFractal.java
+++ b/jdk/src/share/demo/applets/Fractal/CLSFractal.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Graphics;
 import java.util.Stack;
diff --git a/jdk/src/share/demo/applets/GraphicsTest/AppletFrame.java b/jdk/src/share/demo/applets/GraphicsTest/AppletFrame.java
index bf61a18..53b7628 100644
--- a/jdk/src/share/demo/applets/GraphicsTest/AppletFrame.java
+++ b/jdk/src/share/demo/applets/GraphicsTest/AppletFrame.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Frame;
 import java.awt.Event;
diff --git a/jdk/src/share/demo/applets/GraphicsTest/GraphicsTest.java b/jdk/src/share/demo/applets/GraphicsTest/GraphicsTest.java
index 821b119..573c587 100644
--- a/jdk/src/share/demo/applets/GraphicsTest/GraphicsTest.java
+++ b/jdk/src/share/demo/applets/GraphicsTest/GraphicsTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.*;
 import java.util.*;
diff --git a/jdk/src/share/demo/applets/MoleculeViewer/Matrix3D.java b/jdk/src/share/demo/applets/MoleculeViewer/Matrix3D.java
index 0dda042..e7afced 100644
--- a/jdk/src/share/demo/applets/MoleculeViewer/Matrix3D.java
+++ b/jdk/src/share/demo/applets/MoleculeViewer/Matrix3D.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /** A fairly conventional 3D matrix object that can transform sets of
 3D points and perform a variety of manipulations on the transform */
diff --git a/jdk/src/share/demo/applets/MoleculeViewer/XYZApp.java b/jdk/src/share/demo/applets/MoleculeViewer/XYZApp.java
index 78717be..5ee3afe 100644
--- a/jdk/src/share/demo/applets/MoleculeViewer/XYZApp.java
+++ b/jdk/src/share/demo/applets/MoleculeViewer/XYZApp.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.Image;
diff --git a/jdk/src/share/demo/applets/NervousText/NervousText.java b/jdk/src/share/demo/applets/NervousText/NervousText.java
index c3d8d08..12dd678 100644
--- a/jdk/src/share/demo/applets/NervousText/NervousText.java
+++ b/jdk/src/share/demo/applets/NervousText/NervousText.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Graphics;
 import java.awt.Font;
diff --git a/jdk/src/share/demo/applets/SimpleGraph/GraphApplet.java b/jdk/src/share/demo/applets/SimpleGraph/GraphApplet.java
index b1d166a..dabbc20 100644
--- a/jdk/src/share/demo/applets/SimpleGraph/GraphApplet.java
+++ b/jdk/src/share/demo/applets/SimpleGraph/GraphApplet.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Graphics;
 
diff --git a/jdk/src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java b/jdk/src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java
index 6a54d64..c2478f8 100644
--- a/jdk/src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java
+++ b/jdk/src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A bi-directional bubble sort demonstration algorithm
diff --git a/jdk/src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java b/jdk/src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java
index 62be88c..946c864 100644
--- a/jdk/src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java
+++ b/jdk/src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A bubble sort demonstration algorithm
diff --git a/jdk/src/share/demo/applets/SortDemo/QSortAlgorithm.java b/jdk/src/share/demo/applets/SortDemo/QSortAlgorithm.java
index 7fa4890..045f222 100644
--- a/jdk/src/share/demo/applets/SortDemo/QSortAlgorithm.java
+++ b/jdk/src/share/demo/applets/SortDemo/QSortAlgorithm.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A quick sort demonstration algorithm
diff --git a/jdk/src/share/demo/applets/SortDemo/SortAlgorithm.java b/jdk/src/share/demo/applets/SortDemo/SortAlgorithm.java
index 8917cf9..c1a80aa 100644
--- a/jdk/src/share/demo/applets/SortDemo/SortAlgorithm.java
+++ b/jdk/src/share/demo/applets/SortDemo/SortAlgorithm.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A generic sort demonstration algorithm
diff --git a/jdk/src/share/demo/applets/SortDemo/SortItem.java b/jdk/src/share/demo/applets/SortDemo/SortItem.java
index 9a155e3..0ee60c9 100644
--- a/jdk/src/share/demo/applets/SortDemo/SortItem.java
+++ b/jdk/src/share/demo/applets/SortDemo/SortItem.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Dimension;
diff --git a/jdk/src/share/demo/applets/SpreadSheet/SpreadSheet.java b/jdk/src/share/demo/applets/SpreadSheet/SpreadSheet.java
index d221e34..9aa3286 100644
--- a/jdk/src/share/demo/applets/SpreadSheet/SpreadSheet.java
+++ b/jdk/src/share/demo/applets/SpreadSheet/SpreadSheet.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.*;
diff --git a/jdk/src/share/demo/applets/WireFrame/Matrix3D.java b/jdk/src/share/demo/applets/WireFrame/Matrix3D.java
index 0dda042..e7afced 100644
--- a/jdk/src/share/demo/applets/WireFrame/Matrix3D.java
+++ b/jdk/src/share/demo/applets/WireFrame/Matrix3D.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /** A fairly conventional 3D matrix object that can transform sets of
 3D points and perform a variety of manipulations on the transform */
diff --git a/jdk/src/share/demo/applets/WireFrame/ThreeD.java b/jdk/src/share/demo/applets/WireFrame/ThreeD.java
index 7f22833..935ca0a 100644
--- a/jdk/src/share/demo/applets/WireFrame/ThreeD.java
+++ b/jdk/src/share/demo/applets/WireFrame/ThreeD.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.applet.Applet;
 import java.awt.Graphics;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Destinations.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Destinations.java
index 9cd94a5..a0a70e1 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Destinations.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Destinations.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.awt.Image;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Group.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Group.java
index 713a716..007df98 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Group.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Group.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.io.PrintWriter;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java
index c4d5055..15eb0c5 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/J2DBench.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.io.PrintWriter;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Modifier.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Modifier.java
index 3f07b2d..32c4ad9 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Modifier.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Modifier.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 public interface Modifier {
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Node.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Node.java
index d8430e0..a725757 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Node.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Node.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.io.PrintWriter;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java
index 1266eda..88656a1 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Option.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.awt.BorderLayout;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java
index a89342f..2f40cd2 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Result.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.util.Vector;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ResultSet.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ResultSet.java
index 862498f..7b17770 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ResultSet.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ResultSet.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.util.Hashtable;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Test.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Test.java
index ffd2ca9..d727aaa 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Test.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/Test.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 public abstract class Test extends Option.Enable {
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/TestEnvironment.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/TestEnvironment.java
index 0dccbed..c0211a8 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/TestEnvironment.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/TestEnvironment.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench;
 
 import java.awt.Canvas;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/HTMLSeriesReporter.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/HTMLSeriesReporter.java
index 7ac7ee0..fa0838c 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/HTMLSeriesReporter.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/HTMLSeriesReporter.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * HTMLSeriesReporter.java
  *
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/IIOComparator.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/IIOComparator.java
index 85c8782..e0399f0 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/IIOComparator.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/IIOComparator.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.report;
 
 import java.io.*;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java
index 5f5b945..a30e1aa 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/J2DAnalyzer.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.report;
 
 import java.util.Vector;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/XMLHTMLReporter.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/XMLHTMLReporter.java
index b10017c..f72f902 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/XMLHTMLReporter.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/report/XMLHTMLReporter.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * XMLHTMLReporter.java
  *
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java
index 3b04ad1..92cfe7c 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/GraphicsTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import java.awt.Graphics;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/ImageTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/ImageTests.java
index 813995e..52378b2 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/ImageTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/ImageTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import j2dbench.Destinations;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/MiscTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/MiscTests.java
index 1d25d0f..84bddea 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/MiscTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/MiscTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import java.awt.Dimension;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/PixelTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/PixelTests.java
index 8184c1a..99f6113 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/PixelTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/PixelTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import j2dbench.Destinations;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/RenderTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/RenderTests.java
index 769b372..addba01 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/RenderTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/RenderTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests;
 
 import java.awt.Graphics;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/IIOTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/IIOTests.java
index 5b23e1a..d535fe6 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/IIOTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/IIOTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.awt.AlphaComposite;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputImageTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputImageTests.java
index c530253..b0c9a94 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputImageTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputImageTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.awt.Component;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputStreamTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputStreamTests.java
index d76d0fd..ec54485 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputStreamTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputStreamTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.File;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputTests.java
index 57a6a06..d643de4 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/InputTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.BufferedInputStream;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputImageTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputImageTests.java
index 583986e..0eea6e2 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputImageTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputImageTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.awt.Graphics;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputStreamTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputStreamTests.java
index 36b48b6..bf1da9a 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputStreamTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputStreamTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.File;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputTests.java
index 86f1937..a1662c3 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/iio/OutputTests.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.tests.iio;
 
 import java.io.BufferedOutputStream;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextConstructionTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextConstructionTests.java
index e91c607..cd92674 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextConstructionTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextConstructionTests.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextMeasureTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextMeasureTests.java
index 51fb975..1fb4863 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextMeasureTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextMeasureTests.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextRenderTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextRenderTests.java
index f6cad64..3f5c385 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextRenderTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextRenderTests.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java
index 1569f9d..deb78a4 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/text/TextTests.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * (C) Copyright IBM Corp. 2003, All Rights Reserved.
  * This technology is protected by multiple US and International
  * patents. This notice and attribution to IBM may not be removed.
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/CompactLayout.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/CompactLayout.java
index 06be9e6..40ed4e6 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/CompactLayout.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/CompactLayout.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.ui;
 
 import java.awt.Dimension;
diff --git a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/EnableButton.java b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/EnableButton.java
index acebd6c..0663a59 100644
--- a/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/EnableButton.java
+++ b/jdk/src/share/demo/java2d/J2DBench/src/j2dbench/ui/EnableButton.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package j2dbench.ui;
 
 import j2dbench.Group;
diff --git a/jdk/src/share/demo/jfc/CodePointIM/CodePointIM.java b/jdk/src/share/demo/jfc/CodePointIM/CodePointIM.java
index 6d02ecd..6345e61 100644
--- a/jdk/src/share/demo/jfc/CodePointIM/CodePointIM.java
+++ b/jdk/src/share/demo/jfc/CodePointIM/CodePointIM.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.util.Locale;
 import java.util.MissingResourceException;
diff --git a/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethod.java b/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethod.java
index 67ff106..add460a 100644
--- a/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethod.java
+++ b/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethod.java
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.inputmethods.internal.codepointim;
 
 
diff --git a/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java b/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java
index 1ee6216..ee8ccb5 100644
--- a/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java
+++ b/jdk/src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.inputmethods.internal.codepointim;
 
 
diff --git a/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java b/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java
index 3a0897b..f557bde 100644
--- a/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java
+++ b/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.io.File;
 import java.io.IOException;
diff --git a/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileView.java b/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileView.java
index cec4e72..52c486d 100644
--- a/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileView.java
+++ b/jdk/src/share/demo/jfc/FileChooserDemo/ExampleFileView.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import javax.swing.filechooser.*;
diff --git a/jdk/src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java b/jdk/src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java
index 67e1dae..bfb74b4 100644
--- a/jdk/src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java
+++ b/jdk/src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.lang.reflect.InvocationTargetException;
 import java.util.logging.Level;
diff --git a/jdk/src/share/demo/jfc/Font2DTest/Font2DTest.java b/jdk/src/share/demo/jfc/Font2DTest/Font2DTest.java
index 5625d96..1487c42 100644
--- a/jdk/src/share/demo/jfc/Font2DTest/Font2DTest.java
+++ b/jdk/src/share/demo/jfc/Font2DTest/Font2DTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Component;
diff --git a/jdk/src/share/demo/jfc/Font2DTest/Font2DTestApplet.java b/jdk/src/share/demo/jfc/Font2DTest/Font2DTestApplet.java
index 4ee1168..7e663c2 100644
--- a/jdk/src/share/demo/jfc/Font2DTest/Font2DTestApplet.java
+++ b/jdk/src/share/demo/jfc/Font2DTest/Font2DTestApplet.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import java.awt.AWTPermission;
diff --git a/jdk/src/share/demo/jfc/Font2DTest/FontPanel.java b/jdk/src/share/demo/jfc/Font2DTest/FontPanel.java
index 5506051..c939f0b 100644
--- a/jdk/src/share/demo/jfc/Font2DTest/FontPanel.java
+++ b/jdk/src/share/demo/jfc/Font2DTest/FontPanel.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Color;
diff --git a/jdk/src/share/demo/jfc/Font2DTest/RangeMenu.java b/jdk/src/share/demo/jfc/Font2DTest/RangeMenu.java
index 20a3113..54b6ad8 100644
--- a/jdk/src/share/demo/jfc/Font2DTest/RangeMenu.java
+++ b/jdk/src/share/demo/jfc/Font2DTest/RangeMenu.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import java.awt.BorderLayout;
diff --git a/jdk/src/share/demo/jfc/Metalworks/AquaMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/AquaMetalTheme.java
index 363a0cf..3510f7a 100644
--- a/jdk/src/share/demo/jfc/Metalworks/AquaMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/AquaMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.ColorUIResource;
 import javax.swing.plaf.metal.DefaultMetalTheme;
diff --git a/jdk/src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java
index 3402320..d965d63 100644
--- a/jdk/src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.*;
 import javax.swing.plaf.metal.*;
diff --git a/jdk/src/share/demo/jfc/Metalworks/ContrastMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/ContrastMetalTheme.java
index 62d7f39..4d19ed1 100644
--- a/jdk/src/share/demo/jfc/Metalworks/ContrastMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/ContrastMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.UIDefaults;
 import javax.swing.border.Border;
diff --git a/jdk/src/share/demo/jfc/Metalworks/DemoMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/DemoMetalTheme.java
index 3724630..865932c 100644
--- a/jdk/src/share/demo/jfc/Metalworks/DemoMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/DemoMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Font;
 import javax.swing.UIDefaults;
diff --git a/jdk/src/share/demo/jfc/Metalworks/GreenMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/GreenMetalTheme.java
index ceb299d..45c9ab4 100644
--- a/jdk/src/share/demo/jfc/Metalworks/GreenMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/GreenMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.ColorUIResource;
 import javax.swing.plaf.metal.DefaultMetalTheme;
diff --git a/jdk/src/share/demo/jfc/Metalworks/KhakiMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/KhakiMetalTheme.java
index 90e1259..3074fd8 100644
--- a/jdk/src/share/demo/jfc/Metalworks/KhakiMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/KhakiMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.plaf.ColorUIResource;
 import javax.swing.plaf.metal.DefaultMetalTheme;
diff --git a/jdk/src/share/demo/jfc/Metalworks/MetalThemeMenu.java b/jdk/src/share/demo/jfc/Metalworks/MetalThemeMenu.java
index a837228..e7947d7 100644
--- a/jdk/src/share/demo/jfc/Metalworks/MetalThemeMenu.java
+++ b/jdk/src/share/demo/jfc/Metalworks/MetalThemeMenu.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
diff --git a/jdk/src/share/demo/jfc/Metalworks/Metalworks.java b/jdk/src/share/demo/jfc/Metalworks/Metalworks.java
index 22322c2..3db6eaa 100644
--- a/jdk/src/share/demo/jfc/Metalworks/Metalworks.java
+++ b/jdk/src/share/demo/jfc/Metalworks/Metalworks.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Toolkit;
 import javax.swing.JDialog;
diff --git a/jdk/src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java b/jdk/src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java
index 5802e77..813e3b7 100644
--- a/jdk/src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java
+++ b/jdk/src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Component;
diff --git a/jdk/src/share/demo/jfc/Metalworks/MetalworksFrame.java b/jdk/src/share/demo/jfc/Metalworks/MetalworksFrame.java
index 77fa685..4333d7b 100644
--- a/jdk/src/share/demo/jfc/Metalworks/MetalworksFrame.java
+++ b/jdk/src/share/demo/jfc/Metalworks/MetalworksFrame.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Dimension;
 import java.awt.Toolkit;
diff --git a/jdk/src/share/demo/jfc/Metalworks/MetalworksHelp.java b/jdk/src/share/demo/jfc/Metalworks/MetalworksHelp.java
index f9dd142..d46bc7b 100644
--- a/jdk/src/share/demo/jfc/Metalworks/MetalworksHelp.java
+++ b/jdk/src/share/demo/jfc/Metalworks/MetalworksHelp.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import java.awt.*;
diff --git a/jdk/src/share/demo/jfc/Metalworks/MetalworksInBox.java b/jdk/src/share/demo/jfc/Metalworks/MetalworksInBox.java
index 48e71ca..e165723 100644
--- a/jdk/src/share/demo/jfc/Metalworks/MetalworksInBox.java
+++ b/jdk/src/share/demo/jfc/Metalworks/MetalworksInBox.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.JInternalFrame;
 import javax.swing.JScrollPane;
diff --git a/jdk/src/share/demo/jfc/Metalworks/MetalworksPrefs.java b/jdk/src/share/demo/jfc/Metalworks/MetalworksPrefs.java
index fa88a88..36626ee 100644
--- a/jdk/src/share/demo/jfc/Metalworks/MetalworksPrefs.java
+++ b/jdk/src/share/demo/jfc/Metalworks/MetalworksPrefs.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Component;
diff --git a/jdk/src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java b/jdk/src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java
index ec729f1..af1abf2 100644
--- a/jdk/src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java
+++ b/jdk/src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.io.IOException;
 import java.io.InputStream;
diff --git a/jdk/src/share/demo/jfc/Metalworks/UISwitchListener.java b/jdk/src/share/demo/jfc/Metalworks/UISwitchListener.java
index d75fb3f..6dc77ce 100644
--- a/jdk/src/share/demo/jfc/Metalworks/UISwitchListener.java
+++ b/jdk/src/share/demo/jfc/Metalworks/UISwitchListener.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
diff --git a/jdk/src/share/demo/jfc/Notepad/ElementTreePanel.java b/jdk/src/share/demo/jfc/Notepad/ElementTreePanel.java
index 0a208c9..e1bac63 100644
--- a/jdk/src/share/demo/jfc/Notepad/ElementTreePanel.java
+++ b/jdk/src/share/demo/jfc/Notepad/ElementTreePanel.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Dimension;
diff --git a/jdk/src/share/demo/jfc/Notepad/Notepad.java b/jdk/src/share/demo/jfc/Notepad/Notepad.java
index a6d7e03..c809669 100644
--- a/jdk/src/share/demo/jfc/Notepad/Notepad.java
+++ b/jdk/src/share/demo/jfc/Notepad/Notepad.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.BorderLayout;
 import java.awt.Color;
diff --git a/jdk/src/share/demo/jfc/SampleTree/DynamicTreeNode.java b/jdk/src/share/demo/jfc/SampleTree/DynamicTreeNode.java
index fa6db4d..60a11fe 100644
--- a/jdk/src/share/demo/jfc/SampleTree/DynamicTreeNode.java
+++ b/jdk/src/share/demo/jfc/SampleTree/DynamicTreeNode.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Font;
diff --git a/jdk/src/share/demo/jfc/SampleTree/SampleData.java b/jdk/src/share/demo/jfc/SampleTree/SampleData.java
index 48a92dd..66f7c16 100644
--- a/jdk/src/share/demo/jfc/SampleTree/SampleData.java
+++ b/jdk/src/share/demo/jfc/SampleTree/SampleData.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.Color;
 import java.awt.Font;
diff --git a/jdk/src/share/demo/jfc/SampleTree/SampleTree.java b/jdk/src/share/demo/jfc/SampleTree/SampleTree.java
index 831d70c..efde28f 100644
--- a/jdk/src/share/demo/jfc/SampleTree/SampleTree.java
+++ b/jdk/src/share/demo/jfc/SampleTree/SampleTree.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.lang.reflect.InvocationTargetException;
 import java.util.logging.Level;
diff --git a/jdk/src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java b/jdk/src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java
index d45bf4e..9e9a04b 100644
--- a/jdk/src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java
+++ b/jdk/src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.Icon;
 import javax.swing.ImageIcon;
diff --git a/jdk/src/share/demo/jfc/SampleTree/SampleTreeModel.java b/jdk/src/share/demo/jfc/SampleTree/SampleTreeModel.java
index 51ee2da..1d7bfdc 100644
--- a/jdk/src/share/demo/jfc/SampleTree/SampleTreeModel.java
+++ b/jdk/src/share/demo/jfc/SampleTree/SampleTreeModel.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.tree.DefaultTreeModel;
 import javax.swing.tree.TreeNode;
diff --git a/jdk/src/share/demo/jfc/SwingApplet/SwingApplet.java b/jdk/src/share/demo/jfc/SwingApplet/SwingApplet.java
index 281ca70..b239893 100644
--- a/jdk/src/share/demo/jfc/SwingApplet/SwingApplet.java
+++ b/jdk/src/share/demo/jfc/SwingApplet/SwingApplet.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.FlowLayout;
 import java.lang.reflect.InvocationTargetException;
diff --git a/jdk/src/share/demo/jfc/TableExample/JDBCAdapter.java b/jdk/src/share/demo/jfc/TableExample/JDBCAdapter.java
index 4dbfe42..02d0d38 100644
--- a/jdk/src/share/demo/jfc/TableExample/JDBCAdapter.java
+++ b/jdk/src/share/demo/jfc/TableExample/JDBCAdapter.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.sql.Connection;
 import java.sql.DriverManager;
diff --git a/jdk/src/share/demo/jfc/TableExample/OldJTable.java b/jdk/src/share/demo/jfc/TableExample/OldJTable.java
index 28a3f21..bc90794 100644
--- a/jdk/src/share/demo/jfc/TableExample/OldJTable.java
+++ b/jdk/src/share/demo/jfc/TableExample/OldJTable.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.util.EventObject;
 import java.util.List;
diff --git a/jdk/src/share/demo/jfc/TableExample/TableExample.java b/jdk/src/share/demo/jfc/TableExample/TableExample.java
index 03d798f..f046e2f 100644
--- a/jdk/src/share/demo/jfc/TableExample/TableExample.java
+++ b/jdk/src/share/demo/jfc/TableExample/TableExample.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * A a UI around the JDBCAdaptor, allowing database data to be interactively
diff --git a/jdk/src/share/demo/jfc/TableExample/TableExample2.java b/jdk/src/share/demo/jfc/TableExample/TableExample2.java
index 9423f17..e7fc9be 100644
--- a/jdk/src/share/demo/jfc/TableExample/TableExample2.java
+++ b/jdk/src/share/demo/jfc/TableExample/TableExample2.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;
diff --git a/jdk/src/share/demo/jfc/TableExample/TableExample3.java b/jdk/src/share/demo/jfc/TableExample/TableExample3.java
index 5164639..ba10101 100644
--- a/jdk/src/share/demo/jfc/TableExample/TableExample3.java
+++ b/jdk/src/share/demo/jfc/TableExample/TableExample3.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import javax.swing.table.*;
diff --git a/jdk/src/share/demo/jfc/TableExample/TableExample4.java b/jdk/src/share/demo/jfc/TableExample/TableExample4.java
index e75e2db..9ea30b8 100644
--- a/jdk/src/share/demo/jfc/TableExample/TableExample4.java
+++ b/jdk/src/share/demo/jfc/TableExample/TableExample4.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.*;
 import javax.swing.table.*;
diff --git a/jdk/src/share/demo/jfc/TableExample/TableMap.java b/jdk/src/share/demo/jfc/TableExample/TableMap.java
index 2511397..b0c24f0 100644
--- a/jdk/src/share/demo/jfc/TableExample/TableMap.java
+++ b/jdk/src/share/demo/jfc/TableExample/TableMap.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /**
  * In a chain of data manipulators some behaviour is common. TableMap
diff --git a/jdk/src/share/demo/jfc/TableExample/TableSorter.java b/jdk/src/share/demo/jfc/TableExample/TableSorter.java
index 625b6f2..0ec49b7 100644
--- a/jdk/src/share/demo/jfc/TableExample/TableSorter.java
+++ b/jdk/src/share/demo/jfc/TableExample/TableSorter.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 import javax.swing.table.TableModel;
 import javax.swing.event.TableModelEvent;
diff --git a/jdk/src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java b/jdk/src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java
index 707151f..fcba7ac 100644
--- a/jdk/src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java
+++ b/jdk/src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package transparentruler;
 
 
diff --git a/jdk/src/share/demo/jvmti/agent_util/agent_util.c b/jdk/src/share/demo/jvmti/agent_util/agent_util.c
index 74796a9..1855885 100644
--- a/jdk/src/share/demo/jvmti/agent_util/agent_util.c
+++ b/jdk/src/share/demo/jvmti/agent_util/agent_util.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <agent_util.h>
 
 /* ------------------------------------------------------------------- */
diff --git a/jdk/src/share/demo/jvmti/agent_util/agent_util.h b/jdk/src/share/demo/jvmti/agent_util/agent_util.h
index 14ec703..1518e93 100644
--- a/jdk/src/share/demo/jvmti/agent_util/agent_util.h
+++ b/jdk/src/share/demo/jvmti/agent_util/agent_util.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef AGENT_UTIL_H
 #define AGENT_UTIL_H
 
diff --git a/jdk/src/share/demo/jvmti/compiledMethodLoad/compiledMethodLoad.c b/jdk/src/share/demo/jvmti/compiledMethodLoad/compiledMethodLoad.c
index 5117c93..cfc9ab2 100644
--- a/jdk/src/share/demo/jvmti/compiledMethodLoad/compiledMethodLoad.c
+++ b/jdk/src/share/demo/jvmti/compiledMethodLoad/compiledMethodLoad.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/jdk/src/share/demo/jvmti/gctest/gctest.c b/jdk/src/share/demo/jvmti/gctest/gctest.c
index f982b3f..7d430f4 100644
--- a/jdk/src/share/demo/jvmti/gctest/gctest.c
+++ b/jdk/src/share/demo/jvmti/gctest/gctest.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Example of using JVMTI_EVENT_GARBAGE_COLLECTION_START and
  *                  JVMTI_EVENT_GARBAGE_COLLECTION_FINISH events.
  */
diff --git a/jdk/src/share/demo/jvmti/heapTracker/HeapTracker.java b/jdk/src/share/demo/jvmti/heapTracker/HeapTracker.java
index faec6ba..041c88b 100644
--- a/jdk/src/share/demo/jvmti/heapTracker/HeapTracker.java
+++ b/jdk/src/share/demo/jvmti/heapTracker/HeapTracker.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /* Java class to hold static methods which will be called in byte code
  *    injections of all class files.
diff --git a/jdk/src/share/demo/jvmti/heapTracker/heapTracker.c b/jdk/src/share/demo/jvmti/heapTracker/heapTracker.c
index 439de6e..c1019ad 100644
--- a/jdk/src/share/demo/jvmti/heapTracker/heapTracker.c
+++ b/jdk/src/share/demo/jvmti/heapTracker/heapTracker.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "stdlib.h"
 
 #include "heapTracker.h"
diff --git a/jdk/src/share/demo/jvmti/heapTracker/heapTracker.h b/jdk/src/share/demo/jvmti/heapTracker/heapTracker.h
index 0cc49c0..b0df4bb 100644
--- a/jdk/src/share/demo/jvmti/heapTracker/heapTracker.h
+++ b/jdk/src/share/demo/jvmti/heapTracker/heapTracker.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Primary heapTracker #include file, should be included by most if not
  *    all heapTracker source files. Gives access to the global data structure
  *    and all global macros.
diff --git a/jdk/src/share/demo/jvmti/heapViewer/heapViewer.c b/jdk/src/share/demo/jvmti/heapViewer/heapViewer.c
index 1d4742d..a6da56d 100644
--- a/jdk/src/share/demo/jvmti/heapViewer/heapViewer.c
+++ b/jdk/src/share/demo/jvmti/heapViewer/heapViewer.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stddef.h>
 #include <stdlib.h>
diff --git a/jdk/src/share/demo/jvmti/hprof/debug_malloc.c b/jdk/src/share/demo/jvmti/hprof/debug_malloc.c
index ea7fece..a0155c0 100644
--- a/jdk/src/share/demo/jvmti/hprof/debug_malloc.c
+++ b/jdk/src/share/demo/jvmti/hprof/debug_malloc.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* **************************************************************************
  *
  * Set of malloc/realloc/calloc/strdup/free replacement macros that
diff --git a/jdk/src/share/demo/jvmti/hprof/debug_malloc.h b/jdk/src/share/demo/jvmti/hprof/debug_malloc.h
index 1325f94..6b6b4c6 100644
--- a/jdk/src/share/demo/jvmti/hprof/debug_malloc.h
+++ b/jdk/src/share/demo/jvmti/hprof/debug_malloc.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* ***********************************************************************
  *
  * The source file debug_malloc.c should be included with your sources.
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof.h b/jdk/src/share/demo/jvmti/hprof/hprof.h
index a577f88..44afbf4 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Primary hprof #include file, should be included by most if not
  *    all hprof source files. Gives access to the global data structure
  *    and all global macros, and everything declared in the #include
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_blocks.c b/jdk/src/share/demo/jvmti/hprof/hprof_blocks.c
index 1405665..13534a9 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_blocks.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_blocks.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Allocations from large blocks, no individual free's */
 
 #include "hprof.h"
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_blocks.h b/jdk/src/share/demo/jvmti/hprof/hprof_blocks.h
index cf3157a..e35433e 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_blocks.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_blocks.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_BLOCKS_H
 #define HPROF_BLOCKS_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_check.c b/jdk/src/share/demo/jvmti/hprof/hprof_check.c
index b26a413..c91a54a 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_check.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_check.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Functionality for checking hprof format=b output. */
 
 /* ONLY used with logflags=4. */
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_check.h b/jdk/src/share/demo/jvmti/hprof/hprof_check.h
index 2861306..2840bf1 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_check.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_check.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_CHECK_H
 #define HPROF_CHECK_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_class.c b/jdk/src/share/demo/jvmti/hprof/hprof_class.c
index 8ffc41e..d89a804 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_class.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_class.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Table of class information.
  *
  *   Each element in this table is identified with a ClassIndex.
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_class.h b/jdk/src/share/demo/jvmti/hprof/hprof_class.h
index 270bf08..5bcf1b8 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_class.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_class.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_CLASS_H
 #define HPROF_CLASS_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_cpu.c b/jdk/src/share/demo/jvmti/hprof/hprof_cpu.c
index 7726289..358b478 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_cpu.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_cpu.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "hprof.h"
 
 /* This file contains the cpu loop for the option cpu=samples */
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_cpu.h b/jdk/src/share/demo/jvmti/hprof/hprof_cpu.h
index b22744f..6a96239 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_cpu.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_cpu.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_CPU_H
 #define HPROF_CPU_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_error.c b/jdk/src/share/demo/jvmti/hprof/hprof_error.c
index c7ddd62..8088a49b 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_error.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_error.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "hprof.h"
 
 /* The error handling logic. */
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_error.h b/jdk/src/share/demo/jvmti/hprof/hprof_error.h
index 968c31f..c0d6aed 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_error.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_error.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_ERROR_H
 #define HPROF_ERROR_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_event.c b/jdk/src/share/demo/jvmti/hprof/hprof_event.c
index 734d8af..66d89e7 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_event.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_event.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* This file contains all class, method and allocation event support functions,
  *   both JVMTI and BCI events.
  *   (See hprof_monitor.c for the monitor event handlers).
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_event.h b/jdk/src/share/demo/jvmti/hprof/hprof_event.h
index 207f875..198824a 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_event.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_event.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_EVENT_H
 #define HPROF_EVENT_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_frame.c b/jdk/src/share/demo/jvmti/hprof/hprof_frame.c
index 23a1606..284b6a5 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_frame.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_frame.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* This file contains support for handling frames, or (method,location) pairs. */
 
 #include "hprof.h"
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_frame.h b/jdk/src/share/demo/jvmti/hprof/hprof_frame.h
index 5f9798c..8443aee 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_frame.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_frame.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_FRAME_H
 #define HPROF_FRAME_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_init.c b/jdk/src/share/demo/jvmti/hprof/hprof_init.c
index 9ac1733..e3add30 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_init.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_init.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Main source file, the basic JVMTI connection/startup code. */
 
 #include "hprof.h"
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_init.h b/jdk/src/share/demo/jvmti/hprof/hprof_init.h
index 413e3e0..5004917 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_init.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_init.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_INIT_H
 #define HPROF_INIT_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_io.c b/jdk/src/share/demo/jvmti/hprof/hprof_io.c
index 9d9c0ae..51c7c25 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_io.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_io.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* All I/O functionality for hprof. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_io.h b/jdk/src/share/demo/jvmti/hprof/hprof_io.h
index 29cae3a..0cb7d85 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_io.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_io.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_IO_H
 #define HPROF_IO_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_ioname.c b/jdk/src/share/demo/jvmti/hprof/hprof_ioname.c
index 4935e21..b14ecb1 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_ioname.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_ioname.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Used to store strings written out to the binary format (see hprof_io.c) */
 
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_ioname.h b/jdk/src/share/demo/jvmti/hprof/hprof_ioname.h
index c070491..03ac048 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_ioname.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_ioname.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_IONAME_H
 #define HPROF_IONAME_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_listener.c b/jdk/src/share/demo/jvmti/hprof/hprof_listener.c
index 05d4768..f5fb896 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_listener.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_listener.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* The hprof listener loop thread. net=hostname:port option */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_listener.h b/jdk/src/share/demo/jvmti/hprof/hprof_listener.h
index d077f4f..1e82ca5 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_listener.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_listener.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_LISTENER_H
 #define HPROF_LISTENER_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_loader.c b/jdk/src/share/demo/jvmti/hprof/hprof_loader.c
index eaabed6..f0c1f1d 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_loader.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_loader.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* The Class Loader table. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_loader.h b/jdk/src/share/demo/jvmti/hprof/hprof_loader.h
index ec40c32..ef15f76 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_loader.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_loader.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_LOADER_H
 #define HPROF_LOADER_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_md.h b/jdk/src/share/demo/jvmti/hprof/hprof_md.h
index 9396381..6145a03 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_md.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_md.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_MD_H
 #define HPROF_MD_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_monitor.c b/jdk/src/share/demo/jvmti/hprof/hprof_monitor.c
index 81c9dc1..65495df 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_monitor.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_monitor.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Monitor contention tracking and monitor wait handling. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_monitor.h b/jdk/src/share/demo/jvmti/hprof/hprof_monitor.h
index 752c1c1..1356163 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_monitor.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_monitor.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_MONITOR_H
 #define HPROF_MONITOR_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_object.c b/jdk/src/share/demo/jvmti/hprof/hprof_object.c
index 619cf3f..ce21c23 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_object.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_object.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Object table. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_object.h b/jdk/src/share/demo/jvmti/hprof/hprof_object.h
index efa643a..ccbf8e0 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_object.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_object.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_OBJECT_H
 #define HPROF_OBJECT_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_reference.c b/jdk/src/share/demo/jvmti/hprof/hprof_reference.c
index fafaf82..e7a668d 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_reference.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_reference.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Object references table (used in hprof_object.c). */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_reference.h b/jdk/src/share/demo/jvmti/hprof/hprof_reference.h
index c6b36f0..2464f58 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_reference.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_reference.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_REFERENCE_H
 #define HPROF_REFERENCE_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_site.c b/jdk/src/share/demo/jvmti/hprof/hprof_site.c
index b90cf4f..f1ae184 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_site.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_site.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Allocation site table. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_site.h b/jdk/src/share/demo/jvmti/hprof/hprof_site.h
index cf6f04c..b922981 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_site.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_site.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_SITE_H
 #define HPROF_SITE_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_stack.c b/jdk/src/share/demo/jvmti/hprof/hprof_stack.c
index f283866..2f0127c 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_stack.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_stack.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Simple stack storage mechanism (or simple List). */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_stack.h b/jdk/src/share/demo/jvmti/hprof/hprof_stack.h
index 7aaa8ae..32efdce 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_stack.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_stack.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_STACK_H
 #define HPROF_STACK_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_string.c b/jdk/src/share/demo/jvmti/hprof/hprof_string.c
index 1937488..f2f53a4 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_string.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_string.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Table of byte arrays (e.g. char* string + NULL byte) */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_string.h b/jdk/src/share/demo/jvmti/hprof/hprof_string.h
index ed58c98..13e4f42 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_string.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_string.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_STRING_H
 #define HPROF_STRING_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_table.c b/jdk/src/share/demo/jvmti/hprof/hprof_table.c
index d78719c..19b0c42 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_table.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_table.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Lookup Table of generic elements. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_table.h b/jdk/src/share/demo/jvmti/hprof/hprof_table.h
index e2ded55..84e3acd 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_table.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_table.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_TABLE_H
 #define HPROF_TABLE_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_tag.c b/jdk/src/share/demo/jvmti/hprof/hprof_tag.c
index d2cdcda..363be9a 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_tag.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_tag.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* JVMTI tag definitions. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_tag.h b/jdk/src/share/demo/jvmti/hprof/hprof_tag.h
index 54e339a..14ef616 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_tag.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_tag.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_TAG_H
 #define HPROF_TAG_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_tls.c b/jdk/src/share/demo/jvmti/hprof/hprof_tls.c
index 9925b64..3c62aac 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_tls.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_tls.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "hprof.h"
 
 /* Thread Local Storage Table and method entry/exit handling. */
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_tls.h b/jdk/src/share/demo/jvmti/hprof/hprof_tls.h
index 8bd5cee..695e78a 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_tls.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_tls.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_TLS_H
 #define HPROF_TLS_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_trace.c b/jdk/src/share/demo/jvmti/hprof/hprof_trace.c
index bc6e2f0..e56bfe9 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_trace.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_trace.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Trace table. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_trace.h b/jdk/src/share/demo/jvmti/hprof/hprof_trace.h
index 06b87ae..b24ac1e 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_trace.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_trace.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_TRACE_H
 #define HPROF_TRACE_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_tracker.c b/jdk/src/share/demo/jvmti/hprof/hprof_tracker.c
index 0d07e55..56e1125 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_tracker.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_tracker.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Tracker class support functions. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_tracker.h b/jdk/src/share/demo/jvmti/hprof/hprof_tracker.h
index 4c35b20..9aec082 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_tracker.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_tracker.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_TRACKER_H
 #define HPROF_TRACKER_H
 
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_util.c b/jdk/src/share/demo/jvmti/hprof/hprof_util.c
index 2948483..0a19117 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_util.c
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_util.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* General utility functions. */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/hprof/hprof_util.h b/jdk/src/share/demo/jvmti/hprof/hprof_util.h
index aebf2a1..c052394 100644
--- a/jdk/src/share/demo/jvmti/hprof/hprof_util.h
+++ b/jdk/src/share/demo/jvmti/hprof/hprof_util.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef HPROF_UTIL_H
 #define HPROF_UTIL_H
 
diff --git a/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.c b/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.c
index 2add266..28ef3b6 100644
--- a/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.c
+++ b/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Class reader writer (java_crw_demo) for instrumenting bytecodes */
 
 /*
diff --git a/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.h b/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.h
index c8c80ed..06b6e01 100644
--- a/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.h
+++ b/jdk/src/share/demo/jvmti/java_crw_demo/java_crw_demo.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef JAVA_CRW_DEMO_H
 #define JAVA_CRW_DEMO_H
 
diff --git a/jdk/src/share/demo/jvmti/minst/Minst.java b/jdk/src/share/demo/jvmti/minst/Minst.java
index 04504c7..c75edfe 100644
--- a/jdk/src/share/demo/jvmti/minst/Minst.java
+++ b/jdk/src/share/demo/jvmti/minst/Minst.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /* Java class to hold static methods which will be called in byte code
  *    injections of all class files.
diff --git a/jdk/src/share/demo/jvmti/minst/minst.c b/jdk/src/share/demo/jvmti/minst/minst.c
index ea70fcd..e811c63a 100644
--- a/jdk/src/share/demo/jvmti/minst/minst.c
+++ b/jdk/src/share/demo/jvmti/minst/minst.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "stdlib.h"
 
 #include "minst.h"
diff --git a/jdk/src/share/demo/jvmti/minst/minst.h b/jdk/src/share/demo/jvmti/minst/minst.h
index e2e3ece..8ffc14c 100644
--- a/jdk/src/share/demo/jvmti/minst/minst.h
+++ b/jdk/src/share/demo/jvmti/minst/minst.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Primary minst #include file, should be included by most if not
  *    all minst source files. Gives access to the global data structure
  *    and all global macros.
diff --git a/jdk/src/share/demo/jvmti/mtrace/Mtrace.java b/jdk/src/share/demo/jvmti/mtrace/Mtrace.java
index 085d5a6..061400a 100644
--- a/jdk/src/share/demo/jvmti/mtrace/Mtrace.java
+++ b/jdk/src/share/demo/jvmti/mtrace/Mtrace.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 /* Java class to hold static methods which will be called in byte code
  *    injections of all class files.
diff --git a/jdk/src/share/demo/jvmti/mtrace/mtrace.c b/jdk/src/share/demo/jvmti/mtrace/mtrace.c
index 86e8e60..4a43b54f 100644
--- a/jdk/src/share/demo/jvmti/mtrace/mtrace.c
+++ b/jdk/src/share/demo/jvmti/mtrace/mtrace.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include "stdlib.h"
 
 #include "mtrace.h"
diff --git a/jdk/src/share/demo/jvmti/mtrace/mtrace.h b/jdk/src/share/demo/jvmti/mtrace/mtrace.h
index c442c19..15c0824 100644
--- a/jdk/src/share/demo/jvmti/mtrace/mtrace.h
+++ b/jdk/src/share/demo/jvmti/mtrace/mtrace.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Primary mtrace #include file, should be included by most if not
  *    all mtrace source files. Gives access to the global data structure
  *    and all global macros.
diff --git a/jdk/src/share/demo/jvmti/versionCheck/versionCheck.c b/jdk/src/share/demo/jvmti/versionCheck/versionCheck.c
index 5dd6140..b49d7b8 100644
--- a/jdk/src/share/demo/jvmti/versionCheck/versionCheck.c
+++ b/jdk/src/share/demo/jvmti/versionCheck/versionCheck.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/jdk/src/share/demo/jvmti/waiters/Agent.cpp b/jdk/src/share/demo/jvmti/waiters/Agent.cpp
index 551c75d..4fd87d0 100644
--- a/jdk/src/share/demo/jvmti/waiters/Agent.cpp
+++ b/jdk/src/share/demo/jvmti/waiters/Agent.cpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/jdk/src/share/demo/jvmti/waiters/Agent.hpp b/jdk/src/share/demo/jvmti/waiters/Agent.hpp
index 79ea61c..c508863 100644
--- a/jdk/src/share/demo/jvmti/waiters/Agent.hpp
+++ b/jdk/src/share/demo/jvmti/waiters/Agent.hpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* C++ Agent class */
 
 class Agent {
diff --git a/jdk/src/share/demo/jvmti/waiters/Monitor.cpp b/jdk/src/share/demo/jvmti/waiters/Monitor.cpp
index 9e19708..a99d5a6 100644
--- a/jdk/src/share/demo/jvmti/waiters/Monitor.cpp
+++ b/jdk/src/share/demo/jvmti/waiters/Monitor.cpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/jdk/src/share/demo/jvmti/waiters/Monitor.hpp b/jdk/src/share/demo/jvmti/waiters/Monitor.hpp
index 3508ea0..cd5444b 100644
--- a/jdk/src/share/demo/jvmti/waiters/Monitor.hpp
+++ b/jdk/src/share/demo/jvmti/waiters/Monitor.hpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* C++ Monitor class */
 
 class Monitor {
diff --git a/jdk/src/share/demo/jvmti/waiters/Thread.cpp b/jdk/src/share/demo/jvmti/waiters/Thread.cpp
index 7e12d4e..ca90567 100644
--- a/jdk/src/share/demo/jvmti/waiters/Thread.cpp
+++ b/jdk/src/share/demo/jvmti/waiters/Thread.cpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff --git a/jdk/src/share/demo/jvmti/waiters/Thread.hpp b/jdk/src/share/demo/jvmti/waiters/Thread.hpp
index 19adb98..32697c0 100644
--- a/jdk/src/share/demo/jvmti/waiters/Thread.hpp
+++ b/jdk/src/share/demo/jvmti/waiters/Thread.hpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* C++ Thread class */
 
 class Thread {
diff --git a/jdk/src/share/demo/jvmti/waiters/waiters.cpp b/jdk/src/share/demo/jvmti/waiters/waiters.cpp
index 1bc53f7..c6d34c3 100644
--- a/jdk/src/share/demo/jvmti/waiters/waiters.cpp
+++ b/jdk/src/share/demo/jvmti/waiters/waiters.cpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* Example of using JVMTI events:
  *      JVMTI_EVENT_VM_INIT
  *      JVMTI_EVENT_VM_DEATH
diff --git a/jdk/src/share/demo/management/FullThreadDump/Deadlock.java b/jdk/src/share/demo/management/FullThreadDump/Deadlock.java
index 2cc2d3e..452335f 100644
--- a/jdk/src/share/demo/management/FullThreadDump/Deadlock.java
+++ b/jdk/src/share/demo/management/FullThreadDump/Deadlock.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import java.util.concurrent.CyclicBarrier;
diff --git a/jdk/src/share/demo/management/FullThreadDump/FullThreadDump.java b/jdk/src/share/demo/management/FullThreadDump/FullThreadDump.java
index 15c95de..09e85ee 100644
--- a/jdk/src/share/demo/management/FullThreadDump/FullThreadDump.java
+++ b/jdk/src/share/demo/management/FullThreadDump/FullThreadDump.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import javax.management.*;
diff --git a/jdk/src/share/demo/management/FullThreadDump/ThreadMonitor.java b/jdk/src/share/demo/management/FullThreadDump/ThreadMonitor.java
index eb4ed78..2942ce1 100644
--- a/jdk/src/share/demo/management/FullThreadDump/ThreadMonitor.java
+++ b/jdk/src/share/demo/management/FullThreadDump/ThreadMonitor.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import static java.lang.management.ManagementFactory.*;
diff --git a/jdk/src/share/demo/management/JTop/JTop.java b/jdk/src/share/demo/management/JTop/JTop.java
index 39f4cab..4c1539d 100644
--- a/jdk/src/share/demo/management/JTop/JTop.java
+++ b/jdk/src/share/demo/management/JTop/JTop.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  *
  * Example of using the java.lang.management API to sort threads
  * by CPU usage.
diff --git a/jdk/src/share/demo/management/JTop/JTopPlugin.java b/jdk/src/share/demo/management/JTop/JTopPlugin.java
index 9586f9a..478d865 100644
--- a/jdk/src/share/demo/management/JTop/JTopPlugin.java
+++ b/jdk/src/share/demo/management/JTop/JTopPlugin.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  *
  * Example of a JConsole Plugin.  This loads JTop as a JConsole tab.
  *
diff --git a/jdk/src/share/demo/management/MemoryMonitor/MemoryMonitor.java b/jdk/src/share/demo/management/MemoryMonitor/MemoryMonitor.java
index 676b698f3..717e34b 100644
--- a/jdk/src/share/demo/management/MemoryMonitor/MemoryMonitor.java
+++ b/jdk/src/share/demo/management/MemoryMonitor/MemoryMonitor.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import java.awt.*;
diff --git a/jdk/src/share/demo/management/VerboseGC/PrintGCStat.java b/jdk/src/share/demo/management/VerboseGC/PrintGCStat.java
index d448504..d3f84df 100644
--- a/jdk/src/share/demo/management/VerboseGC/PrintGCStat.java
+++ b/jdk/src/share/demo/management/VerboseGC/PrintGCStat.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import static java.lang.management.ManagementFactory.*;
diff --git a/jdk/src/share/demo/management/VerboseGC/VerboseGC.java b/jdk/src/share/demo/management/VerboseGC/VerboseGC.java
index 9633894..b70cebb 100644
--- a/jdk/src/share/demo/management/VerboseGC/VerboseGC.java
+++ b/jdk/src/share/demo/management/VerboseGC/VerboseGC.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  */
 
 import javax.management.*;
diff --git a/jdk/src/share/demo/nio/zipfs/Demo.java b/jdk/src/share/demo/nio/zipfs/Demo.java
index 394a5f7..17927b1 100644
--- a/jdk/src/share/demo/nio/zipfs/Demo.java
+++ b/jdk/src/share/demo/nio/zipfs/Demo.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 import java.nio.channels.*;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java
index b9ea826..72dc217 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java
@@ -28,6 +28,15 @@
  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
 package com.sun.nio.zipfs;
 
 import java.nio.file.*;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java
index 92c5535..d78c485 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipCoder.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.nio.ByteBuffer;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipConstants.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipConstants.java
index 24c28cf..dd15bf8 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipConstants.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipConstants.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipDirectoryStream.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipDirectoryStream.java
index 543220f..7ee803c 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipDirectoryStream.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipDirectoryStream.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.nio.file.DirectoryStream;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java
index c646a09..2498acd 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 package com.sun.nio.zipfs;
 
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributes.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributes.java
index 687f926..7e532ca1 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributes.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributes.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 
 package com.sun.nio.zipfs;
 
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java
index 94ec030..996f7cc 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.io.IOException;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java
index 000a025..d09da8e 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.io.BufferedOutputStream;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java
index c6dd243..49d9ee7 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.io.*;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipInfo.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipInfo.java
index 56954e1..71274e2 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipInfo.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipInfo.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.nio.file.Paths;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java
index 8c97818..3527e5d 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.io.*;
diff --git a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipUtils.java b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipUtils.java
index cddec6f..8938d9e 100644
--- a/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipUtils.java
+++ b/jdk/src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipUtils.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.nio.zipfs;
 
 import java.io.IOException;
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java b/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
index fa9bf1d..9dbc34e 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.demo.scripting.jconsole;
 
 import javax.swing.text.*;
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java b/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
index 6bae2c8..330fd7d 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.demo.scripting.jconsole;
 
 import com.sun.tools.jconsole.*;
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java b/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
index 54731af..c6b87d6 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.demo.scripting.jconsole;
 
 import java.awt.*;
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/resources/jconsole.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/resources/jconsole.js
index dd1f724..f7253b3 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/resources/jconsole.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/resources/jconsole.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are met:
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/heapdump.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/heapdump.js
index 2577b2a..d2af00d 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/heapdump.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/heapdump.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This file defines heapdump function to heap dump
  * in binary format. User can call this function
  * based on events. For example, a timer thread can
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/hello.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/hello.js
index 1454cc7..0cbdb6d 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/hello.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/hello.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This is sample JavaScript file that can be loaded into script console.
  * This file prints "hello, world".
  */
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/invoke.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/invoke.js
index 09a060a..4bac941 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/invoke.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/invoke.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script demonstrates "invokeMBean" function. Instead 
  * of using MXBean proxy or script wrapper object returned by
  * 'mbean' function, this file uses direct invoke on MBean.
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jstack.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jstack.js
index 831377d..2114b6e 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jstack.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jstack.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This file defines 'jstack' function to print stack traces of
  * threads.'jstack' function which can be called once or periodically 
  * from a timer thread (calling it periodically would slow down the target
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jtop.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jtop.js
index 55e75ac..ff79bf6 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jtop.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/jtop.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This code is "ported" from JTop demo. This file defines
  * 'jtop' function. jtop prints threads sorting by CPU time. 
  * jtop can be called once or periodically from a timer thread. 
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/sysprops.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/sysprops.js
index 012b92b..a78fde4 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/sysprops.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/sysprops.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This file defines 'sysprops' function to print Java System
  * properties.'sysprops' function which can be called once or periodically 
  * from a timer thread (calling it periodically would slow down the target
diff --git a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/verbose.js b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/verbose.js
index b57011e..4e5bb97 100644
--- a/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/verbose.js
+++ b/jdk/src/share/demo/scripting/jconsole-plugin/src/scripts/verbose.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script demonstrates "getMBeanAttribute"
  * and "setMBeanAttribute" functions. Instead of using
  * MXBean proxy or script wrapper object returned by
diff --git a/jdk/src/share/sample/README b/jdk/src/share/sample/README
new file mode 100644
index 0000000..ae56b64
--- /dev/null
+++ b/jdk/src/share/sample/README
@@ -0,0 +1,6 @@
+The source code provided with samples and demos for the JDK is meant
+to illustrate the usage of a given feature or technique and has been
+deliberately simplified. Additional steps required for a
+production-quality application, such as security checks, input
+validation, and proper error handling, might not be present in the
+sample code.
diff --git a/jdk/src/share/sample/forkjoin/mergesort/MergeDemo.java b/jdk/src/share/sample/forkjoin/mergesort/MergeDemo.java
index f7daf05..528f383 100644
--- a/jdk/src/share/sample/forkjoin/mergesort/MergeDemo.java
+++ b/jdk/src/share/sample/forkjoin/mergesort/MergeDemo.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.util.Arrays;
 import java.util.Random;
 
diff --git a/jdk/src/share/sample/forkjoin/mergesort/MergeSort.java b/jdk/src/share/sample/forkjoin/mergesort/MergeSort.java
index b9cf0f5..0ae48dc 100644
--- a/jdk/src/share/sample/forkjoin/mergesort/MergeSort.java
+++ b/jdk/src/share/sample/forkjoin/mergesort/MergeSort.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.util.Arrays;
 import java.util.concurrent.ForkJoinPool;
 import java.util.concurrent.ForkJoinTask;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
index 1c761e1..0187dc5 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import static com.sun.jmx.examples.scandir.ScanManager.getNextSeqNumber;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
index ecb4cfc..5da41d1 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import com.sun.jmx.examples.scandir.ScanManagerMXBean.ScanState;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
index 46aaaaa..364543f 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import static com.sun.jmx.examples.scandir.ScanManager.getNextSeqNumber;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
index 379e412..49ac5d6 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import com.sun.jmx.examples.scandir.config.ResultRecord;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
index bf620d6..6957e5d 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import com.sun.jmx.examples.scandir.ScanManagerMXBean.ScanState;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
index b6e7f8f..57f948f 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import java.net.InetAddress;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
index 2a71689..2e63a53 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import static com.sun.jmx.examples.scandir.ScanManager.getNextSeqNumber;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
index 2714cee..d207add 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import com.sun.jmx.examples.scandir.config.DirectoryScannerConfig;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
index 52c7cc1..90cedeb 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import static com.sun.jmx.examples.scandir.ScanManagerMXBean.ScanState.*;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
index 3eac061..fa9b03b 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import java.io.IOException;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
index ec71766..e186046 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import java.io.File;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
index ae75835..133ad64 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import java.io.File;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
index a621eec..8277f47 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import java.util.Arrays;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
index b1d9067..c230928 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import java.util.Date;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
index 5da3f97..dbae7a8 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import java.util.Arrays;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
index 75e4f74..e450eaa 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import java.io.ByteArrayInputStream;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
index b38a2d6..247b1d4 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import com.sun.jmx.examples.scandir.config.DirectoryScannerConfig;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
index 36cda48..f9cac94 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import com.sun.jmx.examples.scandir.config.XmlConfigUtils;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
index 9c700f3..7c4e031 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import java.util.concurrent.LinkedBlockingQueue;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
index 1916cc9..de9b99d 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir;
 
 import java.lang.reflect.InvocationHandler;
diff --git a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
index c63dca1..7b15d68 100644
--- a/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
+++ b/jdk/src/share/sample/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.jmx.examples.scandir.config;
 
 import junit.framework.*;
diff --git a/jdk/src/share/sample/nio/chatserver/ChatServer.java b/jdk/src/share/sample/nio/chatserver/ChatServer.java
index 072999b..f807aa1 100644
--- a/jdk/src/share/sample/nio/chatserver/ChatServer.java
+++ b/jdk/src/share/sample/nio/chatserver/ChatServer.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.IOException;
 import java.net.InetSocketAddress;
 import java.net.SocketAddress;
diff --git a/jdk/src/share/sample/nio/chatserver/Client.java b/jdk/src/share/sample/nio/chatserver/Client.java
index d89516a..31ee034 100644
--- a/jdk/src/share/sample/nio/chatserver/Client.java
+++ b/jdk/src/share/sample/nio/chatserver/Client.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.IOException;
 import java.nio.ByteBuffer;
 import java.nio.channels.AsynchronousSocketChannel;
diff --git a/jdk/src/share/sample/nio/chatserver/ClientReader.java b/jdk/src/share/sample/nio/chatserver/ClientReader.java
index 5308805..ee84b08 100644
--- a/jdk/src/share/sample/nio/chatserver/ClientReader.java
+++ b/jdk/src/share/sample/nio/chatserver/ClientReader.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.ByteBuffer;
 import java.nio.channels.CompletionHandler;
 
diff --git a/jdk/src/share/sample/nio/chatserver/DataReader.java b/jdk/src/share/sample/nio/chatserver/DataReader.java
index 574c69d..8858c9f 100644
--- a/jdk/src/share/sample/nio/chatserver/DataReader.java
+++ b/jdk/src/share/sample/nio/chatserver/DataReader.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.ByteBuffer;
 
 public interface DataReader {
diff --git a/jdk/src/share/sample/nio/chatserver/MessageReader.java b/jdk/src/share/sample/nio/chatserver/MessageReader.java
index 46fde6f..81c370b 100644
--- a/jdk/src/share/sample/nio/chatserver/MessageReader.java
+++ b/jdk/src/share/sample/nio/chatserver/MessageReader.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.ByteBuffer;
 
 /**
diff --git a/jdk/src/share/sample/nio/chatserver/NameReader.java b/jdk/src/share/sample/nio/chatserver/NameReader.java
index d0484d0..341d4da 100644
--- a/jdk/src/share/sample/nio/chatserver/NameReader.java
+++ b/jdk/src/share/sample/nio/chatserver/NameReader.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.ByteBuffer;
 
 /**
diff --git a/jdk/src/share/sample/nio/file/AclEdit.java b/jdk/src/share/sample/nio/file/AclEdit.java
index 02b6ae7..90af865 100644
--- a/jdk/src/share/sample/nio/file/AclEdit.java
+++ b/jdk/src/share/sample/nio/file/AclEdit.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.file.*;
 import java.nio.file.attribute.*;
 import java.io.IOException;
diff --git a/jdk/src/share/sample/nio/file/Chmod.java b/jdk/src/share/sample/nio/file/Chmod.java
index 321f455..05c16b9 100644
--- a/jdk/src/share/sample/nio/file/Chmod.java
+++ b/jdk/src/share/sample/nio/file/Chmod.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.file.*;
 import java.nio.file.attribute.*;
 import static java.nio.file.attribute.PosixFilePermission.*;
diff --git a/jdk/src/share/sample/nio/file/Copy.java b/jdk/src/share/sample/nio/file/Copy.java
index 7cb6841..0d61ef3 100644
--- a/jdk/src/share/sample/nio/file/Copy.java
+++ b/jdk/src/share/sample/nio/file/Copy.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.file.*;
 import static java.nio.file.StandardCopyOption.*;
 import java.nio.file.attribute.*;
diff --git a/jdk/src/share/sample/nio/file/DiskUsage.java b/jdk/src/share/sample/nio/file/DiskUsage.java
index 8d6bbb6..7d30bdf 100644
--- a/jdk/src/share/sample/nio/file/DiskUsage.java
+++ b/jdk/src/share/sample/nio/file/DiskUsage.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.file.*;
 import java.nio.file.attribute.*;
 import java.io.IOException;
diff --git a/jdk/src/share/sample/nio/file/FileType.java b/jdk/src/share/sample/nio/file/FileType.java
index dc754b5..d001d60 100644
--- a/jdk/src/share/sample/nio/file/FileType.java
+++ b/jdk/src/share/sample/nio/file/FileType.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.file.*;
 import java.io.IOException;
 
diff --git a/jdk/src/share/sample/nio/file/WatchDir.java b/jdk/src/share/sample/nio/file/WatchDir.java
index 49e278e..4c73820 100644
--- a/jdk/src/share/sample/nio/file/WatchDir.java
+++ b/jdk/src/share/sample/nio/file/WatchDir.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.file.*;
 import static java.nio.file.StandardWatchEventKinds.*;
 import static java.nio.file.LinkOption.*;
diff --git a/jdk/src/share/sample/nio/file/Xdd.java b/jdk/src/share/sample/nio/file/Xdd.java
index f07802f..c0c7f87 100644
--- a/jdk/src/share/sample/nio/file/Xdd.java
+++ b/jdk/src/share/sample/nio/file/Xdd.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.ByteBuffer;
 import java.nio.charset.Charset;
 import java.nio.file.*;
diff --git a/jdk/src/share/sample/nio/multicast/MulticastAddress.java b/jdk/src/share/sample/nio/multicast/MulticastAddress.java
index df0619d..400eb32 100644
--- a/jdk/src/share/sample/nio/multicast/MulticastAddress.java
+++ b/jdk/src/share/sample/nio/multicast/MulticastAddress.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.net.InetAddress;
 import java.net.NetworkInterface;
 import java.net.UnknownHostException;
diff --git a/jdk/src/share/sample/nio/multicast/Reader.java b/jdk/src/share/sample/nio/multicast/Reader.java
index 59190f5..5780d73 100644
--- a/jdk/src/share/sample/nio/multicast/Reader.java
+++ b/jdk/src/share/sample/nio/multicast/Reader.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.channels.*;
 import java.nio.charset.*;
 import java.nio.ByteBuffer;
diff --git a/jdk/src/share/sample/nio/multicast/Sender.java b/jdk/src/share/sample/nio/multicast/Sender.java
index d22d334..6bc76af 100644
--- a/jdk/src/share/sample/nio/multicast/Sender.java
+++ b/jdk/src/share/sample/nio/multicast/Sender.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.channels.*;
 import java.nio.charset.Charset;
 import java.net.*;
diff --git a/jdk/src/share/sample/nio/server/AcceptHandler.java b/jdk/src/share/sample/nio/server/AcceptHandler.java
index f24e7d3..2efd309 100644
--- a/jdk/src/share/sample/nio/server/AcceptHandler.java
+++ b/jdk/src/share/sample/nio/server/AcceptHandler.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 import javax.net.ssl.*;
diff --git a/jdk/src/share/sample/nio/server/Acceptor.java b/jdk/src/share/sample/nio/server/Acceptor.java
index a9fb52b..502e632 100644
--- a/jdk/src/share/sample/nio/server/Acceptor.java
+++ b/jdk/src/share/sample/nio/server/Acceptor.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 import javax.net.ssl.*;
diff --git a/jdk/src/share/sample/nio/server/B1.java b/jdk/src/share/sample/nio/server/B1.java
index e858e4e..71011db 100644
--- a/jdk/src/share/sample/nio/server/B1.java
+++ b/jdk/src/share/sample/nio/server/B1.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.channels.*;
 
 /**
diff --git a/jdk/src/share/sample/nio/server/BN.java b/jdk/src/share/sample/nio/server/BN.java
index 57c2b7a..8a268c5 100644
--- a/jdk/src/share/sample/nio/server/BN.java
+++ b/jdk/src/share/sample/nio/server/BN.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 
diff --git a/jdk/src/share/sample/nio/server/BP.java b/jdk/src/share/sample/nio/server/BP.java
index a0d8e9e..5029cdd 100644
--- a/jdk/src/share/sample/nio/server/BP.java
+++ b/jdk/src/share/sample/nio/server/BP.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.channels.*;
 import java.util.concurrent.*;
 
diff --git a/jdk/src/share/sample/nio/server/ChannelIO.java b/jdk/src/share/sample/nio/server/ChannelIO.java
index 244a506..80fe9ef 100644
--- a/jdk/src/share/sample/nio/server/ChannelIO.java
+++ b/jdk/src/share/sample/nio/server/ChannelIO.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 import java.nio.channels.*;
diff --git a/jdk/src/share/sample/nio/server/ChannelIOSecure.java b/jdk/src/share/sample/nio/server/ChannelIOSecure.java
index 7cc05cb..3ec6c937 100644
--- a/jdk/src/share/sample/nio/server/ChannelIOSecure.java
+++ b/jdk/src/share/sample/nio/server/ChannelIOSecure.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 import java.nio.channels.*;
diff --git a/jdk/src/share/sample/nio/server/Content.java b/jdk/src/share/sample/nio/server/Content.java
index 7eebc90..4a6938a 100644
--- a/jdk/src/share/sample/nio/server/Content.java
+++ b/jdk/src/share/sample/nio/server/Content.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * An Sendable interface extension that adds additional
  * methods for additional information, such as Files
diff --git a/jdk/src/share/sample/nio/server/Dispatcher.java b/jdk/src/share/sample/nio/server/Dispatcher.java
index 6607904..d82cc55 100644
--- a/jdk/src/share/sample/nio/server/Dispatcher.java
+++ b/jdk/src/share/sample/nio/server/Dispatcher.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 
diff --git a/jdk/src/share/sample/nio/server/Dispatcher1.java b/jdk/src/share/sample/nio/server/Dispatcher1.java
index 78e9389..16d80aa 100644
--- a/jdk/src/share/sample/nio/server/Dispatcher1.java
+++ b/jdk/src/share/sample/nio/server/Dispatcher1.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 import java.util.*;
diff --git a/jdk/src/share/sample/nio/server/DispatcherN.java b/jdk/src/share/sample/nio/server/DispatcherN.java
index 51355d6..1b0d406 100644
--- a/jdk/src/share/sample/nio/server/DispatcherN.java
+++ b/jdk/src/share/sample/nio/server/DispatcherN.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 import java.util.*;
diff --git a/jdk/src/share/sample/nio/server/FileContent.java b/jdk/src/share/sample/nio/server/FileContent.java
index 36b7c6c..675b00a 100644
--- a/jdk/src/share/sample/nio/server/FileContent.java
+++ b/jdk/src/share/sample/nio/server/FileContent.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.net.*;
 import java.nio.channels.*;
diff --git a/jdk/src/share/sample/nio/server/Handler.java b/jdk/src/share/sample/nio/server/Handler.java
index 5705fad..29e0b18 100644
--- a/jdk/src/share/sample/nio/server/Handler.java
+++ b/jdk/src/share/sample/nio/server/Handler.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.channels.*;
 
diff --git a/jdk/src/share/sample/nio/server/MalformedRequestException.java b/jdk/src/share/sample/nio/server/MalformedRequestException.java
index 089805a..bc785ed 100644
--- a/jdk/src/share/sample/nio/server/MalformedRequestException.java
+++ b/jdk/src/share/sample/nio/server/MalformedRequestException.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * Exception class used when a request can't be properly parsed.
  *
diff --git a/jdk/src/share/sample/nio/server/N1.java b/jdk/src/share/sample/nio/server/N1.java
index 6aa03fe..761ec6e 100644
--- a/jdk/src/share/sample/nio/server/N1.java
+++ b/jdk/src/share/sample/nio/server/N1.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.nio.channels.*;
 
 /**
diff --git a/jdk/src/share/sample/nio/server/N2.java b/jdk/src/share/sample/nio/server/N2.java
index 49a4abd..aff22cc 100644
--- a/jdk/src/share/sample/nio/server/N2.java
+++ b/jdk/src/share/sample/nio/server/N2.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /**
  * A non-blocking/dual-threaded which performs accept()s in one thread,
  * and services requests in a second.  Both threads use select().
diff --git a/jdk/src/share/sample/nio/server/Reply.java b/jdk/src/share/sample/nio/server/Reply.java
index ff3da89..c2d7f3b 100644
--- a/jdk/src/share/sample/nio/server/Reply.java
+++ b/jdk/src/share/sample/nio/server/Reply.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 import java.nio.charset.*;
diff --git a/jdk/src/share/sample/nio/server/Request.java b/jdk/src/share/sample/nio/server/Request.java
index 3b227fe..7767d1a 100644
--- a/jdk/src/share/sample/nio/server/Request.java
+++ b/jdk/src/share/sample/nio/server/Request.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.net.*;
 import java.nio.*;
 import java.nio.charset.*;
diff --git a/jdk/src/share/sample/nio/server/RequestHandler.java b/jdk/src/share/sample/nio/server/RequestHandler.java
index 7b7ca78..59953c7 100644
--- a/jdk/src/share/sample/nio/server/RequestHandler.java
+++ b/jdk/src/share/sample/nio/server/RequestHandler.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 import java.nio.channels.*;
diff --git a/jdk/src/share/sample/nio/server/RequestServicer.java b/jdk/src/share/sample/nio/server/RequestServicer.java
index 9f9e099..149e3de 100644
--- a/jdk/src/share/sample/nio/server/RequestServicer.java
+++ b/jdk/src/share/sample/nio/server/RequestServicer.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 
diff --git a/jdk/src/share/sample/nio/server/Sendable.java b/jdk/src/share/sample/nio/server/Sendable.java
index 57219b0..b12dacf 100644
--- a/jdk/src/share/sample/nio/server/Sendable.java
+++ b/jdk/src/share/sample/nio/server/Sendable.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 
 /**
diff --git a/jdk/src/share/sample/nio/server/Server.java b/jdk/src/share/sample/nio/server/Server.java
index f18fcc8..40d31ca 100644
--- a/jdk/src/share/sample/nio/server/Server.java
+++ b/jdk/src/share/sample/nio/server/Server.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.net.*;
 import java.nio.channels.*;
diff --git a/jdk/src/share/sample/nio/server/StringContent.java b/jdk/src/share/sample/nio/server/StringContent.java
index a66b864..4fb5088 100644
--- a/jdk/src/share/sample/nio/server/StringContent.java
+++ b/jdk/src/share/sample/nio/server/StringContent.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.nio.*;
 import java.nio.charset.*;
diff --git a/jdk/src/share/sample/nio/server/URLDumper.java b/jdk/src/share/sample/nio/server/URLDumper.java
index 481fe61..b2864c7 100644
--- a/jdk/src/share/sample/nio/server/URLDumper.java
+++ b/jdk/src/share/sample/nio/server/URLDumper.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.net.*;
 
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java b/jdk/src/share/sample/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
index 5bb9376..d5c154c 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
+++ b/jdk/src/share/sample/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 package com.sun.sample.scriptpad;
 
 import javax.script.*;
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/resources/Main.js b/jdk/src/share/sample/scripting/scriptpad/src/resources/Main.js
index 3674853..5c057a4 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/resources/Main.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/resources/Main.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script can be loaded in jrunscript to start scriptpad.
  *
  *    jrunscript -f Main.js -f -
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/resources/conc.js b/jdk/src/share/sample/scripting/scriptpad/src/resources/conc.js
index 92df812..d9a2412 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/resources/conc.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/resources/conc.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * Concurrency utilities for JavaScript. These are based on
  * java.lang and java.util.concurrent API. The following functions 
  * provide a simpler API for scripts. Instead of directly using java.lang
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/resources/gui.js b/jdk/src/share/sample/scripting/scriptpad/src/resources/gui.js
index 13e1020..cdf6949 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/resources/gui.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/resources/gui.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * Few user interface utilities. 
  */
 
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/resources/mm.js b/jdk/src/share/sample/scripting/scriptpad/src/resources/mm.js
index 1558aff..7d7cfe4 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/resources/mm.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/resources/mm.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This is a collection of utilities for Monitoring
  * and management API. 
  *
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/resources/scriptpad.js b/jdk/src/share/sample/scripting/scriptpad/src/resources/scriptpad.js
index 28c8ed5..cdc9657 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/resources/scriptpad.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/resources/scriptpad.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script creates a simple Notepad-like interface, which 
  * serves as a simple script editor, runner.
  *
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/browse.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/browse.js
index cd03f90..3bbc457 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/browse.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/browse.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This function uses new Swing Desktop API in JDK 6.
  * To use this with scriptpad, open this in scriptpad
  * and use "Tools->Run Script" menu.
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/insertfile.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/insertfile.js
index 68d8602..c57519a 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/insertfile.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/insertfile.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script adds "Insert File" mode menu item to "Tools" menu.
  * When selected, this menu shows a file dialog box and inserts
  * contents of the selected file into current document (at the
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/linewrap.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/linewrap.js
index 66c4c74..fcdbe8d 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/linewrap.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/linewrap.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script adds "Line Wrap" mode menu item to "Tools" menu.
  * When selected, this menu toggles the current word wrap mode
  * of the editor.
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/mail.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/mail.js
index 2a5db2a..9f6cc54 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/mail.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/mail.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This function uses new Swing Desktop API in JDK 6.
  * To use this with scriptpad, open this in scriptpad
  * and use "Tools->Run Script" menu.
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/memmonitor.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/memmonitor.js
index 641314b..d1c286b 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/memmonitor.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/memmonitor.js
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 // this checker function runs asynchronously
 function memoryChecker(memoryBean, threshold, interval) {
     while (true) {
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/memory.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/memory.js
index 9bd1989..4bd1301 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/memory.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/memory.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script serves as a simple "monitored application".
  * Start this script using memory.bat or memory.sh in the
  * current directory.
diff --git a/jdk/src/share/sample/scripting/scriptpad/src/scripts/textcolor.js b/jdk/src/share/sample/scripting/scriptpad/src/scripts/textcolor.js
index ae61327..ff12ba7 100644
--- a/jdk/src/share/sample/scripting/scriptpad/src/scripts/textcolor.js
+++ b/jdk/src/share/sample/scripting/scriptpad/src/scripts/textcolor.js
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  * This script adds "Selected Text Color" menu item to "Tools" menu.
  * When selected, this menu changes the "selected text" color.
  */
diff --git a/jdk/src/share/sample/vm/clr-jvm/invoked.java b/jdk/src/share/sample/vm/clr-jvm/invoked.java
index 7470715..ec619c6 100644
--- a/jdk/src/share/sample/vm/clr-jvm/invoked.java
+++ b/jdk/src/share/sample/vm/clr-jvm/invoked.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 public class invoked {
     public static void main(String args[]) {
 
diff --git a/jdk/src/share/sample/vm/clr-jvm/jinvoker.cpp b/jdk/src/share/sample/vm/clr-jvm/jinvoker.cpp
index d4a333f..5504b93 100644
--- a/jdk/src/share/sample/vm/clr-jvm/jinvoker.cpp
+++ b/jdk/src/share/sample/vm/clr-jvm/jinvoker.cpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <memory.h>
 #include <stdlib.h>
 #include "jinvokerExp.h"
diff --git a/jdk/src/share/sample/vm/clr-jvm/jinvokerExp.h b/jdk/src/share/sample/vm/clr-jvm/jinvokerExp.h
index 7cd878d..7edf4da 100644
--- a/jdk/src/share/sample/vm/clr-jvm/jinvokerExp.h
+++ b/jdk/src/share/sample/vm/clr-jvm/jinvokerExp.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <windows.h>
 #include <jni.h>
 
diff --git a/jdk/src/share/sample/vm/jvm-clr/invoker.cpp b/jdk/src/share/sample/vm/jvm-clr/invoker.cpp
index 633c579..66a4daf 100644
--- a/jdk/src/share/sample/vm/jvm-clr/invoker.cpp
+++ b/jdk/src/share/sample/vm/jvm-clr/invoker.cpp
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #define _WIN32_WINNT 0x0400
 #include "windows.h"
 #include "Oleauto.h"
diff --git a/jdk/src/share/sample/vm/jvm-clr/invoker.h b/jdk/src/share/sample/vm/jvm-clr/invoker.h
index 7005df2..768e810 100644
--- a/jdk/src/share/sample/vm/jvm-clr/invoker.h
+++ b/jdk/src/share/sample/vm/jvm-clr/invoker.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 /* DO NOT EDIT THIS FILE - it is machine generated */
 #include <jni.h>
 /* Header for class invoker */
diff --git a/jdk/src/share/sample/vm/jvm-clr/invoker.java b/jdk/src/share/sample/vm/jvm-clr/invoker.java
index a1c8309..4d8154d 100644
--- a/jdk/src/share/sample/vm/jvm-clr/invoker.java
+++ b/jdk/src/share/sample/vm/jvm-clr/invoker.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 public class invoker {
 
     static {
diff --git a/jdk/src/share/sample/vm/jvm-clr/invokerExp.h b/jdk/src/share/sample/vm/jvm-clr/invokerExp.h
index cea8c94..3565d1d 100644
--- a/jdk/src/share/sample/vm/jvm-clr/invokerExp.h
+++ b/jdk/src/share/sample/vm/jvm-clr/invokerExp.h
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #ifndef _invoker_h
 #define _invoker_h
 
diff --git a/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java b/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java
index 641d821..9f29d73 100644
--- a/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java
+++ b/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java
@@ -1532,6 +1532,10 @@
     }
 
     public synchronized void addPropertyChangeListener(String name, PropertyChangeListener pcl) {
+        if (name == null) {
+            // See JavaDoc for the Toolkit.addPropertyChangeListener() method
+            return;
+        }
         initXSettingsIfNeeded(name);
         super.addPropertyChangeListener(name, pcl);
     }
diff --git a/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java b/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java
index a4aae24..ffb920b 100644
--- a/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java
+++ b/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java
@@ -95,11 +95,11 @@
                     }
 
                     // Now check for XRender system property
-                    boolean xRenderRequested = false;
+                    boolean xRenderRequested = true;
                     String xProp = System.getProperty("sun.java2d.xrender");
                         if (xProp != null) {
-                        if (xProp.equals("true") || xProp.equals("t")) {
-                            xRenderRequested = true;
+                        if (xProp.equals("false") || xProp.equals("f")) {
+                            xRenderRequested = false;
                         } else if (xProp.equals("True") || xProp.equals("T")) {
                             xRenderRequested = true;
                             xRenderVerbose = true;
diff --git a/jdk/src/solaris/demo/jni/Poller/Client.java b/jdk/src/solaris/demo/jni/Poller/Client.java
index f2e69be..759ae62 100644
--- a/jdk/src/solaris/demo/jni/Poller/Client.java
+++ b/jdk/src/solaris/demo/jni/Poller/Client.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import  java.util.*;
 import  java.net.*;
 import  java.io.*;
diff --git a/jdk/src/solaris/demo/jni/Poller/LinkedQueue.java b/jdk/src/solaris/demo/jni/Poller/LinkedQueue.java
index 46d1586..fcebf47 100644
--- a/jdk/src/solaris/demo/jni/Poller/LinkedQueue.java
+++ b/jdk/src/solaris/demo/jni/Poller/LinkedQueue.java
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
   File: SLQ.java
   Originally: LinkedQueue.java
 
diff --git a/jdk/src/solaris/demo/jni/Poller/Poller.c b/jdk/src/solaris/demo/jni/Poller/Poller.c
index aa96db0..39a6ce4 100644
--- a/jdk/src/solaris/demo/jni/Poller/Poller.c
+++ b/jdk/src/solaris/demo/jni/Poller/Poller.c
@@ -30,6 +30,15 @@
  */
 
 /*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
+/*
  **********************************************************************
  * Poller.c :
  * JNI code for use with Poller.java, principally to take advantage
diff --git a/jdk/src/solaris/demo/jni/Poller/Poller.java b/jdk/src/solaris/demo/jni/Poller/Poller.java
index 71de5de..8b8d6af 100644
--- a/jdk/src/solaris/demo/jni/Poller/Poller.java
+++ b/jdk/src/solaris/demo/jni/Poller/Poller.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.lang.reflect.*;
 import java.io.*;
 import java.net.*;
diff --git a/jdk/src/solaris/demo/jni/Poller/PollingServer.java b/jdk/src/solaris/demo/jni/Poller/PollingServer.java
index 82f7f49..095f3cc 100644
--- a/jdk/src/solaris/demo/jni/Poller/PollingServer.java
+++ b/jdk/src/solaris/demo/jni/Poller/PollingServer.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.net.*;
 import java.lang.Byte;
diff --git a/jdk/src/solaris/demo/jni/Poller/SimpleServer.java b/jdk/src/solaris/demo/jni/Poller/SimpleServer.java
index 5b59565..4658a2f 100644
--- a/jdk/src/solaris/demo/jni/Poller/SimpleServer.java
+++ b/jdk/src/solaris/demo/jni/Poller/SimpleServer.java
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 import java.io.*;
 import java.net.*;
 import java.lang.Byte;
diff --git a/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c b/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c
index 5a1b67c..d3b8484 100644
--- a/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c
+++ b/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
diff --git a/jdk/src/windows/classes/sun/awt/windows/WToolkit.java b/jdk/src/windows/classes/sun/awt/windows/WToolkit.java
index 57f889e..26b234f 100644
--- a/jdk/src/windows/classes/sun/awt/windows/WToolkit.java
+++ b/jdk/src/windows/classes/sun/awt/windows/WToolkit.java
@@ -879,6 +879,10 @@
     }
 
     public synchronized void addPropertyChangeListener(String name, PropertyChangeListener pcl) {
+        if (name == null) {
+            // See JavaDoc for the Toolkit.addPropertyChangeListener() method
+            return;
+        }
         if ( WDesktopProperties.isWindowsProperty(name)
              || name.startsWith(awtPrefix)
              || name.startsWith(dndPrefix))
diff --git a/jdk/src/windows/demo/jvmti/hprof/hprof_md.c b/jdk/src/windows/demo/jvmti/hprof/hprof_md.c
index 073a946..2f3ba24 100644
--- a/jdk/src/windows/demo/jvmti/hprof/hprof_md.c
+++ b/jdk/src/windows/demo/jvmti/hprof/hprof_md.c
@@ -29,6 +29,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/*
+ * This source code is provided to illustrate the usage of a given feature
+ * or technique and has been deliberately simplified. Additional steps
+ * required for a production-quality application, such as security checks,
+ * input validation and proper error handling, might not be present in
+ * this sample code.
+ */
+
+
 // To ensure winsock2.h is used, it has to be included ahead of
 // windows.h, which includes winsock.h by default.
 #include <winsock2.h>
diff --git a/jdk/test/Makefile b/jdk/test/Makefile
index f0207c1..29d8713 100644
--- a/jdk/test/Makefile
+++ b/jdk/test/Makefile
@@ -423,7 +423,8 @@
 # Stable othervm testruns (minus items from PROBLEM_LIST)
 #   Using samevm has problems, and doesn't help performance as much as others.
 JDK_ALL_TARGETS += jdk_awt
-jdk_awt: $(call TestDirs, com/sun/awt java/awt sun/awt)
+jdk_awt: $(call TestDirs, com/sun/awt java/awt sun/awt \
+         javax/imageio javax/print sun/pisces)
 	$(call RunOthervmBatch)
 
 # Stable samevm testruns (minus items from PROBLEM_LIST)
@@ -486,9 +487,8 @@
 # Stable samevm testruns (minus items from PROBLEM_LIST)
 JDK_ALL_TARGETS += jdk_misc
 jdk_misc: $(call TestDirs, \
-          demo javax/imageio javax/naming javax/print javax/script \
-          javax/smartcardio javax/sound com/sun/java com/sun/jndi \
-	  com/sun/org com/sun/xml sun/misc sun/pisces)
+          demo/jvmti demo/zipfs javax/naming javax/script \
+          javax/smartcardio com/sun/jndi com/sun/xml sun/misc)
 	$(call RunSamevmBatch)
 
 # Stable samevm testruns (minus items from PROBLEM_LIST)
@@ -532,17 +532,15 @@
 jdk_security1: $(call TestDirs, java/security)
 	$(call RunSamevmBatch)
 
-# Stable othervm testruns (minus items from PROBLEM_LIST)
-#   Using samevm has serious problems with these tests
+# Stable samevm testruns (minus items from PROBLEM_LIST)
 JDK_ALL_TARGETS += jdk_security2
 jdk_security2: $(call TestDirs, javax/crypto javax/xml/crypto com/sun/crypto)
 	$(call RunSamevmBatch)
 
-# Stable othervm testruns (minus items from PROBLEM_LIST)
-#   Using samevm has serious problems with these tests
+# Stable samevm testruns (minus items from PROBLEM_LIST)
 JDK_ALL_TARGETS += jdk_security3
-jdk_security3: $(call TestDirs, com/sun/security lib/security \
-               javax/security sun/security)
+jdk_security3: $(call TestDirs, com/sun/security lib/security javax/security \
+        sun/security com/sun/org/apache/xml/internal/security)
 	$(call SharedLibraryPermissions,sun/security)
 	$(call RunSamevmBatch)
 
@@ -550,10 +548,16 @@
 jdk_security: jdk_security1 jdk_security2 jdk_security3
 	@$(SummaryInfo)
 
+# Stable samevm testruns (minus items from PROBLEM_LIST)
+JDK_ALL_TARGETS += jdk_sound
+jdk_sound: $(call TestDirs, javax/sound)
+	$(call RunSamevmBatch)
+
 # Stable othervm testruns (minus items from PROBLEM_LIST)
 #   Using samevm has problems, and doesn't help performance as much as others.
 JDK_ALL_TARGETS += jdk_swing
-jdk_swing: $(call TestDirs, javax/swing sun/java2d)
+jdk_swing: $(call TestDirs, javax/swing sun/java2d \
+           demo/jfc com/sun/java/swing)
 	$(call RunOthervmBatch)
 
 # Stable samevm testruns (minus items from PROBLEM_LIST)
@@ -802,17 +806,17 @@
 # The jtjck.jar utility to use to run the tests
 JTJCK_JAR = $(JCK_HOME)/lib/jtjck.jar
 JTJCK_JAVA_ARGS =  -XX:MaxPermSize=256m -Xmx512m
-JTJCK_OPTIONS = -headless -v 
+JTJCK_OPTIONS = -headless -v
 
 # Default tests to run
 ifndef JCK_COMPILER_TESTS
-  JCK_COMPILER_TESTS = 
+  JCK_COMPILER_TESTS =
 endif
 ifndef JCK_RUNTIME_TESTS
-  JCK_RUNTIME_TESTS  = 
+  JCK_RUNTIME_TESTS  =
 endif
 ifndef JCK_DEVTOOLS_TESTS
-  JCK_DEVTOOLS_TESTS = 
+  JCK_DEVTOOLS_TESTS =
 endif
 
 # Generic rule used to run jck tests
@@ -838,14 +842,14 @@
                 _generic_jck_tests
 
 # JCK7 runtime tests
-jck7runtime: 
+jck7runtime:
 	$(MAKE) UNIQUE_DIR=$@ \
 	        JCK_HOME=$(JCK7RUNTIME_HOME) \
 	        TESTDIRS="$(JCK_RUNTIME_TESTS)" \
                 _generic_jck_tests
 
 # JCK7 devtools tests
-jck7devtools: 
+jck7devtools:
 	$(MAKE) UNIQUE_DIR=$@ \
 	        JCK_HOME=$(JCK7DEVTOOLS_HOME) \
                 TESTDIRS="$(JCK_DEVTOOLS_TESTS)" \
diff --git a/jdk/test/com/sun/servicetag/JavaServiceTagTest.java b/jdk/test/com/sun/servicetag/JavaServiceTagTest.java
index 0ebe0d5..6122b14 100644
--- a/jdk/test/com/sun/servicetag/JavaServiceTagTest.java
+++ b/jdk/test/com/sun/servicetag/JavaServiceTagTest.java
@@ -25,7 +25,7 @@
 
 /*
  * @test
- * @bug     6622366
+ * @bug     6622366 7078024
  * @summary Basic Test for ServiceTag.getJavaServiceTag()
  *          Disable creating the service tag in the system registry.
  *          Verify the existence of registration.xml file and the
@@ -86,23 +86,42 @@
         }
     }
 
+    /**
+     * Tests if the running platform is a JDK.
+     */
+    static boolean isJDK() {
+        // Determine the JRE path by checking the existence of
+        // <HOME>/jre/lib and <HOME>/lib.
+        String javaHome = System.getProperty("java.home");
+        String jrepath = javaHome + File.separator + "jre";
+        File f = new File(jrepath, "lib");
+        if (!f.exists()) {
+            // java.home usually points to the JRE path
+            jrepath = javaHome;
+        }
+
+        return jrepath.endsWith(File.separator + "jre");
+    }
+
     private static void checkServiceTag(ServiceTag st) throws IOException {
-        Properties props = loadSwordfishEntries();
-        if (st.getProductURN().
-                equals(props.getProperty("servicetag.jdk.urn"))) {
-            if (!st.getProductName().
-                    equals(props.getProperty("servicetag.jdk.name"))) {
-                throw new RuntimeException("Product URN and name don't match.");
-            }
-        } else if (st.getProductURN().
-                equals(props.getProperty("servicetag.jre.urn"))) {
-            if (!st.getProductName().
-                    equals(props.getProperty("servicetag.jre.name"))) {
+        Properties props = loadServiceTagProps();
+        // jdk 8 and later, JDK and JRE have the same product URN.
+        String jdkUrn = props.getProperty("servicetag.jdk.urn");
+        String jreUrn = props.getProperty("servicetag.jre.urn");
+        boolean isJdk = isJDK();
+
+        if (isJdk) {
+            if (!st.getProductURN().equals(jdkUrn) ||
+                    !st.getProductName().equals(
+                         props.getProperty("servicetag.jdk.name"))) {
                 throw new RuntimeException("Product URN and name don't match.");
             }
         } else {
-            throw new RuntimeException("Unexpected product_urn: " +
-                st.getProductURN());
+            if (!st.getProductURN().equals(jreUrn) ||
+                    !st.getProductName().equals(
+                        props.getProperty("servicetag.jre.name"))) {
+                throw new RuntimeException("Product URN and name don't match.");
+            }
         }
         if (!st.getProductVersion().
                 equals(System.getProperty("java.version"))) {
@@ -160,18 +179,13 @@
         }
     }
 
-    private static Properties loadSwordfishEntries()
+    private static Properties loadServiceTagProps()
            throws IOException {
-        int version = sun.misc.Version.jdkMinorVersion();
-        String filename = "/com/sun/servicetag/resources/javase_" +
-                version + "_swordfish.properties";
-        InputStream in = Installer.class.getClass().getResourceAsStream(filename);
-        Properties props = new Properties();
-        try {
+        String filename = "/com/sun/servicetag/resources/javase_servicetag.properties";
+        try (InputStream in = Installer.class.getClass().getResourceAsStream(filename)) {
+            Properties props = new Properties();
             props.load(in);
-        } finally {
-            in.close();
+            return props;
         }
-        return props;
     }
 }
diff --git a/jdk/test/com/sun/servicetag/JavaServiceTagTest1.java b/jdk/test/com/sun/servicetag/JavaServiceTagTest1.java
index 64e8b31..ffe3744 100644
--- a/jdk/test/com/sun/servicetag/JavaServiceTagTest1.java
+++ b/jdk/test/com/sun/servicetag/JavaServiceTagTest1.java
@@ -25,7 +25,7 @@
 
 /*
  * @test
- * @bug     6622366
+ * @bug     6622366 7078024
  * @summary Basic Test for ServiceTag.getJavaServiceTag(String)
  *          to verify that the registration.xml and servicetag files
  *          are both created correctly.
@@ -157,25 +157,45 @@
         return svctag;
     }
 
+    /**
+     * Tests if the running platform is a JDK.
+     */
+    static boolean isJDK() {
+        // Determine the JRE path by checking the existence of
+        // <HOME>/jre/lib and <HOME>/lib.
+        String javaHome = System.getProperty("java.home");
+        String jrepath = javaHome + File.separator + "jre";
+        File f = new File(jrepath, "lib");
+        if (!f.exists()) {
+            // java.home usually points to the JRE path
+            jrepath = javaHome;
+        }
+
+        return jrepath.endsWith(File.separator + "jre");
+    }
+
     private static void checkServiceTag(ServiceTag st, String source)
             throws IOException {
-        Properties props = loadSwordfishEntries();
-        if (st.getProductURN().
-                equals(props.getProperty("servicetag.jdk.urn"))) {
-            if (!st.getProductName().
-                    equals(props.getProperty("servicetag.jdk.name"))) {
-                throw new RuntimeException("Product URN and name don't match.");
-            }
-        } else if (st.getProductURN().
-                equals(props.getProperty("servicetag.jre.urn"))) {
-            if (!st.getProductName().
-                    equals(props.getProperty("servicetag.jre.name"))) {
+        Properties props = loadServiceTagProps();
+        // jdk 8 and later, JDK and JRE have the same product URN.
+        String jdkUrn = props.getProperty("servicetag.jdk.urn");
+        String jreUrn = props.getProperty("servicetag.jre.urn");
+        boolean isJdk = isJDK();
+
+        if (isJdk) {
+            if (!st.getProductURN().equals(jdkUrn) ||
+                    !st.getProductName().equals(
+                         props.getProperty("servicetag.jdk.name"))) {
                 throw new RuntimeException("Product URN and name don't match.");
             }
         } else {
-            throw new RuntimeException("Unexpected product_urn: " +
-                st.getProductURN());
+            if (!st.getProductURN().equals(jreUrn) ||
+                    !st.getProductName().equals(
+                        props.getProperty("servicetag.jre.name"))) {
+                throw new RuntimeException("Product URN and name don't match.");
+            }
         }
+
         if (!st.getProductVersion().
                 equals(System.getProperty("java.version"))) {
             throw new RuntimeException("Unexpected product_version: " +
@@ -233,18 +253,13 @@
         }
     }
 
-    private static Properties loadSwordfishEntries()
+    private static Properties loadServiceTagProps()
            throws IOException {
-        int version = sun.misc.Version.jdkMinorVersion();
-        String filename = "/com/sun/servicetag/resources/javase_" +
-                version + "_swordfish.properties";
-        InputStream in = Installer.class.getClass().getResourceAsStream(filename);
-        Properties props = new Properties();
-        try {
+        String filename = "/com/sun/servicetag/resources/javase_servicetag.properties";
+        try (InputStream in = Installer.class.getClass().getResourceAsStream(filename)) {
+            Properties props = new Properties();
             props.load(in);
-        } finally {
-            in.close();
+            return props;
         }
-        return props;
     }
 }
diff --git a/jdk/test/java/io/etc/FileDescriptorSharing.java b/jdk/test/java/io/etc/FileDescriptorSharing.java
new file mode 100644
index 0000000..d46f61a
--- /dev/null
+++ b/jdk/test/java/io/etc/FileDescriptorSharing.java
@@ -0,0 +1,336 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 6322678 7082769
+ * @summary FileInputStream/FileOutputStream/RandomAccessFile allow file descriptor
+ *          to be closed while still in use.
+ * @run main/othervm FileDescriptorSharing
+ */
+
+import java.io.*;
+import java.nio.channels.FileChannel;
+import java.nio.channels.FileLock;
+import java.util.concurrent.CountDownLatch;
+
+public class FileDescriptorSharing {
+
+    final static int numFiles = 10;
+    volatile static boolean fail;
+
+    public static void main(String[] args) throws Exception {
+        TestFinalizer();
+        TestMultipleFD();
+        TestIsValid();
+        MultiThreadedFD();
+    }
+
+    /**
+     * We shouldn't discard a file descriptor until all streams have
+     * finished with it
+     */
+    private static void TestFinalizer() throws Exception {
+        FileDescriptor fd = null;
+        File tempFile = new File("TestFinalizer1.txt");
+        tempFile.deleteOnExit();
+        try (Writer writer = new FileWriter(tempFile)) {
+            for (int i=0; i<5; i++) {
+                writer.write("test file content test file content");
+            }
+        }
+
+        FileInputStream fis1 = new FileInputStream(tempFile);
+        fd = fis1.getFD();
+        // Create a new FIS based on the existing FD (so the two FIS's share the same native fd)
+        try (FileInputStream fis2 = new FileInputStream(fd)) {
+            // allow fis1 to be gc'ed
+            fis1 = null;
+            int ret = 0;
+            while(ret >= 0) {
+                // encourage gc
+                System.gc();
+                // read from fis2 - when fis1 is gc'ed and finalizer is run, read will fail
+                System.out.print(".");
+                ret = fis2.read();
+            }
+        }
+
+        // variation of above. Use RandomAccessFile to obtain a filedescriptor
+        File testFinalizerFile = new File("TestFinalizer");
+        RandomAccessFile raf = new RandomAccessFile(testFinalizerFile, "rw");
+        raf.writeBytes("test file content test file content");
+        raf.seek(0L);
+        fd = raf.getFD();
+        try (FileInputStream fis3 = new FileInputStream(fd)) {
+            // allow raf to be gc'ed
+            raf = null;
+            int ret = 0;
+            while (ret >= 0) {
+                // encourage gc
+                System.gc();
+                /*
+                 * read from fis3 - when raf is gc'ed and finalizer is run,
+                 * fd should still be valid.
+                 */
+                System.out.print(".");
+                ret = fis3.read();
+            }
+            if(!fd.valid()) {
+                throw new RuntimeException("TestFinalizer() : FileDescriptor should be valid");
+            }
+        } finally {
+            testFinalizerFile.delete();
+        }
+    }
+
+    /**
+     * Exercise FileDispatcher close()/preClose()
+     */
+    private static void TestMultipleFD() throws Exception {
+        RandomAccessFile raf = null;
+        FileOutputStream fos = null;
+        FileInputStream fis = null;
+        FileChannel fc = null;
+        FileLock fileLock = null;
+
+        File test1 = new File("test1");
+        try {
+            raf = new RandomAccessFile(test1, "rw");
+            fos = new FileOutputStream(raf.getFD());
+            fis = new FileInputStream(raf.getFD());
+            fc = raf.getChannel();
+            fileLock = fc.lock();
+            raf.setLength(0L);
+            fos.flush();
+            fos.write("TEST".getBytes());
+        } finally {
+            if (fileLock != null) fileLock.release();
+            if (fis != null) fis.close();
+            if (fos != null) fos.close();
+            if (raf != null) raf.close();
+            test1.delete();
+        }
+
+        /*
+         * Close out in different order to ensure FD is not
+         * closed out too early
+         */
+        File test2 = new File("test2");
+        try {
+            raf = new RandomAccessFile(test2, "rw");
+            fos = new FileOutputStream(raf.getFD());
+            fis = new FileInputStream(raf.getFD());
+            fc = raf.getChannel();
+            fileLock = fc.lock();
+            raf.setLength(0L);
+            fos.flush();
+            fos.write("TEST".getBytes());
+        } finally {
+            if (fileLock != null) fileLock.release();
+            if (raf != null) raf.close();
+            if (fos != null) fos.close();
+            if (fis != null) fis.close();
+            test2.delete();
+        }
+
+        // one more time, fos first this time
+        File test3 = new File("test3");
+        try {
+            raf = new RandomAccessFile(test3, "rw");
+            fos = new FileOutputStream(raf.getFD());
+            fis = new FileInputStream(raf.getFD());
+            fc = raf.getChannel();
+            fileLock = fc.lock();
+            raf.setLength(0L);
+            fos.flush();
+            fos.write("TEST".getBytes());
+        } finally {
+            if (fileLock != null) fileLock.release();
+            if (fos != null) fos.close();
+            if (raf != null) raf.close();
+            if (fis != null) fis.close();
+            test3.delete();
+        }
+    }
+
+    /**
+     * Similar to TestMultipleFD() but this time we
+     * just get and use FileDescriptor.valid() for testing.
+     */
+    private static void TestIsValid() throws Exception {
+        FileDescriptor fd = null;
+        RandomAccessFile raf = null;
+        FileOutputStream fos = null;
+        FileInputStream fis = null;
+        FileChannel fc = null;
+
+        File test1 = new File("test1");
+        try {
+            raf = new RandomAccessFile(test1, "rw");
+            fd = raf.getFD();
+            fos = new FileOutputStream(fd);
+            fis = new FileInputStream(fd);
+        } finally {
+            try {
+                if (fis != null) fis.close();
+                if (fos != null) fos.close();
+                if (!fd.valid()) {
+                    throw new RuntimeException("FileDescriptor should be valid");
+                }
+                if (raf != null) raf.close();
+                if (fd.valid()) {
+                    throw new RuntimeException("close() called and FileDescriptor still valid");
+                }
+            } finally {
+                if (raf != null) raf.close();
+                test1.delete();
+            }
+        }
+
+        /*
+         * Close out in different order to ensure FD is not
+         * closed out too early
+         */
+        File test2 = new File("test2");
+        try {
+            raf = new RandomAccessFile(test2, "rw");
+            fd = raf.getFD();
+            fos = new FileOutputStream(fd);
+            fis = new FileInputStream(fd);
+        } finally {
+            try {
+                if (raf != null) raf.close();
+                if (fos != null) fos.close();
+                if (!fd.valid()) {
+                    throw new RuntimeException("FileDescriptor should be valid");
+                }
+                if (fis != null) fis.close();
+                if (fd.valid()) {
+                    throw new RuntimeException("close() called and FileDescriptor still valid");
+                }
+            } finally {
+                test2.delete();
+            }
+        }
+
+        // one more time, fos first this time
+        File test3 = new File("test3");
+        try {
+            raf = new RandomAccessFile(test3, "rw");
+            fd = raf.getFD();
+            fos = new FileOutputStream(fd);
+            fis = new FileInputStream(fd);
+        } finally {
+            try {
+                if (fos != null) fos.close();
+                if (raf != null) raf.close();
+                if (!fd.valid()) {
+                    throw new RuntimeException("FileDescriptor should be valid");
+                }
+                if (fis != null) fis.close();
+                if (fd.valid()) {
+                    throw new RuntimeException("close() called and FileDescriptor still valid");
+                }
+            } finally {
+                test3.delete();
+            }
+        }
+    }
+
+    /**
+     * Test concurrent access to the same fd.useCount field
+     */
+    private static void MultiThreadedFD() throws Exception {
+        RandomAccessFile raf = null;
+        FileDescriptor fd = null;
+        int numThreads = 2;
+        CountDownLatch done = new CountDownLatch(numThreads);
+        OpenClose[] fileOpenClose = new OpenClose[numThreads];
+        File MultipleThreadedFD = new File("MultipleThreadedFD");
+        try {
+            raf = new RandomAccessFile(MultipleThreadedFD, "rw");
+            fd = raf.getFD();
+            for(int count=0;count<numThreads;count++) {
+                fileOpenClose[count] = new OpenClose(fd, done);
+                fileOpenClose[count].start();
+            }
+            done.await();
+        } finally {
+            try {
+                if(raf != null) raf.close();
+                // fd should now no longer be valid
+                if(fd.valid()) {
+                    throw new RuntimeException("FileDescriptor should not be valid");
+                }
+                // OpenClose thread tests failed
+                if(fail) {
+                    throw new RuntimeException("OpenClose thread tests failed.");
+                }
+            } finally {
+                MultipleThreadedFD.delete();
+            }
+        }
+    }
+
+    /**
+     * A thread which will open and close a number of FileInputStreams and
+     * FileOutputStreams referencing the same native file descriptor.
+     */
+    private static class OpenClose extends Thread {
+        private FileDescriptor fd = null;
+        private CountDownLatch done;
+        FileInputStream[] fisArray = new FileInputStream[numFiles];
+        FileOutputStream[] fosArray = new FileOutputStream[numFiles];
+
+        OpenClose(FileDescriptor filedescriptor, CountDownLatch done) {
+            this.fd = filedescriptor;
+            this.done = done;
+        }
+
+        public void run() {
+             try {
+                 for(int i=0;i<numFiles;i++) {
+                     fisArray[i] = new FileInputStream(fd);
+                     fosArray[i] = new FileOutputStream(fd);
+                 }
+
+                 // Now close out
+                 for(int i=0;i<numFiles;i++) {
+                     if(fisArray[i] != null) fisArray[i].close();
+                     if(fosArray[i] != null) fosArray[i].close();
+                 }
+
+             } catch(IOException ioe) {
+                 System.out.println("OpenClose encountered IO issue :" + ioe);
+                 fail = true;
+             } finally {
+                 if (!fd.valid()) { // fd should still be valid given RAF reference
+                     System.out.println("OpenClose: FileDescriptor should be valid");
+                     fail = true;
+                 }
+                 done.countDown();
+             }
+         }
+    }
+}
diff --git a/jdk/test/java/lang/invoke/InvokeGenericTest.java b/jdk/test/java/lang/invoke/InvokeGenericTest.java
index fecd2f0..87393b4 100644
--- a/jdk/test/java/lang/invoke/InvokeGenericTest.java
+++ b/jdk/test/java/lang/invoke/InvokeGenericTest.java
@@ -25,7 +25,7 @@
 
 /* @test
  * @summary unit tests for java.lang.invoke.MethodHandle.invoke
- * @compile -target 7 InvokeGenericTest.java
+ * @compile InvokeGenericTest.java
  * @run junit/othervm test.java.lang.invoke.InvokeGenericTest
  */
 
diff --git a/jdk/test/java/lang/reflect/TypeVariable/TestAnnotatedElement.java b/jdk/test/java/lang/reflect/TypeVariable/TestAnnotatedElement.java
new file mode 100644
index 0000000..94f8d45
--- /dev/null
+++ b/jdk/test/java/lang/reflect/TypeVariable/TestAnnotatedElement.java
@@ -0,0 +1,88 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7086192
+ * @summary Verify functionality of AnnotatedElement methods on type variables
+ * @author Joseph D. Darcy
+ */
+
+import java.lang.reflect.*;
+import java.lang.annotation.*;
+
+public class TestAnnotatedElement<A> {
+    // Type variable on a method
+    private static <B> B m(B b) {return null;}
+
+    // Type variable on a construtor
+    private <C> TestAnnotatedElement(){super();}
+
+    public static void main(String... argv) throws ReflectiveOperationException {
+        int errors = 0;
+
+        Class<?> clazz = TestAnnotatedElement.class;
+        errors += testTypeVariable(clazz.getTypeParameters());
+        errors += testTypeVariable(clazz.getDeclaredConstructor().getTypeParameters());
+        errors += testTypeVariable(clazz.getDeclaredMethod("m", Object.class).getTypeParameters());
+
+        if (errors > 0)
+            throw new RuntimeException(errors + " failures");
+    }
+
+
+    private static int testTypeVariable(TypeVariable<?>[] typeVars) {
+        int errors = 0;
+        if (typeVars.length == 0)
+            return ++errors;
+
+        for(TypeVariable<?> typeVar : typeVars) {
+            try {
+                typeVar.getAnnotation(null);
+                errors++;
+            } catch(NullPointerException npe) {
+                ; // Expected
+            }
+
+            if (typeVar.getAnnotation(SuppressWarnings.class) != null)
+                errors++;
+
+            try {
+                typeVar.isAnnotationPresent(null);
+                errors++;
+            } catch(NullPointerException npe) {
+                ; // Expected
+            }
+
+            if (typeVar.isAnnotationPresent(SuppressWarnings.class))
+                errors++;
+
+            if(typeVar.getAnnotations().length != 0)
+                errors++;
+
+            if(typeVar.getDeclaredAnnotations().length != 0)
+                errors++;
+        }
+        return errors;
+    }
+}
diff --git a/jdk/test/java/math/BigInteger/TestValueExact.java b/jdk/test/java/math/BigInteger/TestValueExact.java
new file mode 100644
index 0000000..63ee158
--- /dev/null
+++ b/jdk/test/java/math/BigInteger/TestValueExact.java
@@ -0,0 +1,194 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 6371401
+ * @summary Tests of fooValueExact methods
+ * @author Joseph D. Darcy
+ */
+import java.math.BigInteger;
+
+public class TestValueExact {
+    public static void main(String... args) {
+        int errors = 0;
+
+        errors += testLongValueExact();
+        errors += testIntValueExact();
+        errors += testShortValueExact();
+        errors += testByteValueExact();
+
+        if (errors > 0)
+            throw new RuntimeException();
+    }
+
+    private static int testLongValueExact() {
+        int errors = 0;
+        BigInteger[] inRange = {
+            BigInteger.valueOf(Long.MIN_VALUE),
+            BigInteger.ZERO,
+            BigInteger.valueOf(Long.MAX_VALUE)
+        };
+
+        BigInteger[] outOfRange = {
+            BigInteger.valueOf(Long.MIN_VALUE).subtract(BigInteger.ONE),
+            BigInteger.valueOf(Long.MAX_VALUE).add(BigInteger.ONE)
+        };
+
+        for (BigInteger bi : inRange) {
+            if (bi.longValueExact() != bi.longValue()) {
+                System.err.println("Mismatching int conversion for " + bi);
+                errors++;
+            }
+        }
+
+        for (BigInteger bi : outOfRange) {
+            try {
+                long value = bi.longValueExact();
+                System.err.println("Failed to get expected exception on " +
+                                   bi + " got " + value);
+                errors++;
+            } catch(ArithmeticException ae) {
+                ; // Expected
+            }
+        }
+        return errors;
+    }
+
+    private static int testIntValueExact() {
+        int errors = 0;
+        BigInteger[] inRange = {
+            BigInteger.valueOf(Integer.MIN_VALUE),
+            BigInteger.ZERO,
+            BigInteger.ONE,
+            BigInteger.TEN,
+            BigInteger.valueOf(Integer.MAX_VALUE)
+        };
+
+        BigInteger[] outOfRange = {
+            BigInteger.valueOf((long)Integer.MIN_VALUE - 1),
+            BigInteger.valueOf((long)Integer.MAX_VALUE + 1)
+        };
+
+        for (BigInteger bi : inRange) {
+            if (bi.intValueExact() != bi.intValue()) {
+                System.err.println("Mismatching int conversion for " + bi);
+                errors++;
+            }
+        }
+
+        for (BigInteger bi : outOfRange) {
+            try {
+                int value = bi.intValueExact();
+                System.err.println("Failed to get expected exception on " +
+                                   bi + " got " + value);
+                errors++;
+            } catch(ArithmeticException ae) {
+                ; // Expected
+            }
+        }
+        return errors;
+    }
+
+    private static int testShortValueExact() {
+        int errors = 0;
+        BigInteger[] inRange = {
+            BigInteger.valueOf(Short.MIN_VALUE),
+            BigInteger.ZERO,
+            BigInteger.ONE,
+            BigInteger.TEN,
+            BigInteger.valueOf(Short.MAX_VALUE)
+        };
+
+        BigInteger[] outOfRange = {
+            BigInteger.valueOf((long)Integer.MIN_VALUE - 1),
+            BigInteger.valueOf((long)Integer.MIN_VALUE),
+            BigInteger.valueOf(   (int)Short.MIN_VALUE - 1),
+            BigInteger.valueOf(   (int)Short.MAX_VALUE + 1),
+            BigInteger.valueOf((long)Integer.MAX_VALUE),
+            BigInteger.valueOf((long)Integer.MAX_VALUE + 1)
+        };
+
+        for (BigInteger bi : inRange) {
+            if (bi.shortValueExact() != bi.shortValue()) {
+                System.err.println("Mismatching short  conversion for " + bi);
+                errors++;
+            }
+        }
+
+        for (BigInteger bi : outOfRange) {
+            try {
+                int value = bi.shortValueExact();
+                System.err.println("Failed to get expected exception on " +
+                                   bi + " got " + value);
+                errors++;
+            } catch(ArithmeticException ae) {
+                ; // Expected
+            }
+        }
+        return errors;
+    }
+
+    private static int testByteValueExact() {
+        int errors = 0;
+        BigInteger[] inRange = {
+            BigInteger.valueOf(Byte.MIN_VALUE),
+            BigInteger.valueOf(0),
+            BigInteger.ONE,
+            BigInteger.TEN,
+            BigInteger.valueOf(Byte.MAX_VALUE)
+        };
+
+        BigInteger[] outOfRange = {
+            BigInteger.valueOf((long)Integer.MIN_VALUE - 1),
+            BigInteger.valueOf((long)Integer.MIN_VALUE),
+            BigInteger.valueOf(   (int)Short.MIN_VALUE - 1),
+            BigInteger.valueOf(   (int)Short.MIN_VALUE),
+            BigInteger.valueOf(    (int)Byte.MIN_VALUE - 1),
+            BigInteger.valueOf(    (int)Byte.MAX_VALUE + 1),
+            BigInteger.valueOf(   (int)Short.MAX_VALUE + 1),
+            BigInteger.valueOf(   (int)Short.MAX_VALUE),
+            BigInteger.valueOf((long)Integer.MAX_VALUE),
+            BigInteger.valueOf((long)Integer.MAX_VALUE + 1)
+        };
+
+        for (BigInteger bi : inRange) {
+            if (bi.byteValueExact() != bi.byteValue()) {
+                System.err.println("Mismatching byte conversion for " + bi);
+                errors++;
+            }
+        }
+
+        for (BigInteger bi : outOfRange) {
+            try {
+                int value = bi.byteValueExact();
+                System.err.println("Failed to get expected exception on " +
+                                   bi + " got " + value);
+                errors++;
+            } catch(ArithmeticException ae) {
+                ; // Expected
+            }
+        }
+        return errors;
+    }
+}
diff --git a/jdk/test/java/util/Currency/ValidateISO4217.java b/jdk/test/java/util/Currency/ValidateISO4217.java
index cfbe28b..3f50780 100644
--- a/jdk/test/java/util/Currency/ValidateISO4217.java
+++ b/jdk/test/java/util/Currency/ValidateISO4217.java
@@ -22,7 +22,7 @@
  */
 /*
  * @test
- * @bug 4691089 4819436 4942982 5104960 6544471 6627549
+ * @bug 4691089 4819436 4942982 5104960 6544471 6627549 7066203
  * @summary Validate ISO 4217 data for Currency class.
  */
 
@@ -92,7 +92,7 @@
 
     /* Codes that are obsolete, do not have related country */
     static final String otherCodes =
-        "ADP-AFA-ATS-AYM-BEF-BGL-BOV-BYB-CLF-CYP-DEM-ESP-FIM-FRF-GRD-GWP-IEP-ITL-LUF-MGF-MTL-MXV-NLG-PTE-RUR-SDD-SIT-SRG-TPE-TRL-VEF-USN-USS-XAG-XAU-XBA-XBB-XBC-XBD-XDR-XFO-XFU-XPD-XPT-XTS-XXX-YUM-ZWN";
+        "ADP-AFA-ATS-AYM-BEF-BGL-BOV-BYB-CLF-CUC-CYP-DEM-EEK-ESP-FIM-FRF-GRD-GWP-IEP-ITL-LUF-MGF-MTL-MXV-NLG-PTE-RUR-SDD-SIT-SKK-SRG-TMM-TPE-TRL-VEF-USN-USS-XAG-XAU-XBA-XBB-XBC-XBD-XDR-XFO-XFU-XPD-XPT-XSU-XTS-XUA-XXX-YUM-ZWD-ZWN-ZWR";
 
     static boolean err = false;
 
diff --git a/jdk/test/java/util/Currency/tablea1.txt b/jdk/test/java/util/Currency/tablea1.txt
index 6968435..898af09 100644
--- a/jdk/test/java/util/Currency/tablea1.txt
+++ b/jdk/test/java/util/Currency/tablea1.txt
@@ -1,12 +1,12 @@
 #
 #
-# Based on BSi's ISO4217 data - "TABLE A1.doc" + amendments up until MA140.doc
-#   (As of 24 September  2007)
+# Based on BSi's ISO4217 data - "TABLE A1.doc" + amendments up until MA151.doc
+#   (As of 7 April 2011)
 #
 
 # Version
 FILEVERSION=1
-DATAVERSION=140
+DATAVERSION=151
 
 # ISO 4217 currency data
 AF	AFN	971	2
@@ -33,6 +33,7 @@
 BZ	BZD	84	2
 BJ	XOF	952	0
 BM	BMD	60	2
+BQ	USD	840	2
 #BT	INR	356	2
 BT	BTN	64	2
 BO	BOB	68	2
@@ -68,6 +69,7 @@
 CI	XOF	952	0
 HR	HRK	191	2
 CU	CUP	192	2
+CW	ANG	532	2
 CY	EUR	978	2
 CZ	CZK	203	2
 DK	DKK	208	2
@@ -80,7 +82,7 @@
 #SV	USD	840	2
 GQ	XAF	950	0
 ER	ERN	232	2
-EE	EEK	233	2
+EE	EUR	978	2
 ET	ETB	230	2
 FK	FKP	238	2
 FO	DKK	208	2
@@ -218,7 +220,7 @@
 SC	SCR	690	2
 SL	SLL	694	2
 SG	SGD	702	2
-SK	SKK	703	2
+SK	EUR	978	2
 # MA 131
 #SI	SIT	705	2
 SI	EUR	978	2
@@ -230,6 +232,7 @@
 SD	SDG	938	2
 SR	SRD	968	2
 SJ	NOK	578	2
+SX	ANG	532	2
 SZ	SZL	748	2
 SE	SEK	752	2
 CH	CHF	756	2
@@ -249,7 +252,7 @@
 # MA 128
 #TR	TRL	792	0
 TR	TRY	949	2
-TM	TMM	795	2
+TM	TMT	934	2
 TC	USD	840	2
 TV	AUD	36	2
 UG	UGX	800	2
@@ -271,7 +274,7 @@
 EH	MAD	504	2
 YE	YER	886	2
 ZM	ZMK	894	2
-ZW	ZWD	716	2
+ZW	ZWL	932	2
 #XAU	XAU	959
 #XBA	XBA	955
 #XBB	XBB	956
diff --git a/jdk/test/java/util/Locale/LocaleTest.java b/jdk/test/java/util/Locale/LocaleTest.java
index 88a0165..4d269ee 100644
--- a/jdk/test/java/util/Locale/LocaleTest.java
+++ b/jdk/test/java/util/Locale/LocaleTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
  * @bug 4052404 4052440 4084688 4092475 4101316 4105828 4107014 4107953 4110613
  * 4118587 4118595 4122371 4126371 4126880 4135316 4135752 4139504 4139940 4143951
  * 4147315 4147317 4147552 4335196 4778440 4940539 5010672 6475525 6544471 6627549
- * 6786276
+ * 6786276 7066203
  * @summary test Locales
  */
 /*
@@ -400,7 +400,7 @@
     }
 
     /**
-     * @bug 4106155 4118587
+     * @bug 4106155 4118587 7066203
      */
     public void TestGetLangsAndCountries() {
         // It didn't seem right to just do an exhaustive test of everything here, so I check
@@ -440,8 +440,8 @@
         String[] spotCheck2 = { "US", "CA", "GB", "FR", "DE", "IT", "JP", "KR", "CN", "TW", "TH" };
 
 
-        if (test.length != 246)
-            errln("Expected getISOCountries to return 246 countries; it returned " + test.length);
+        if (test.length != 249)
+            errln("Expected getISOCountries to return 249 countries; it returned " + test.length);
         else {
             for (int i = 0; i < spotCheck2.length; i++) {
                 int j;
diff --git a/jdk/test/javax/swing/JPopupMenu/6694823/bug6694823.java b/jdk/test/javax/swing/JPopupMenu/6694823/bug6694823.java
index 171113c..e8d24d0 100644
--- a/jdk/test/javax/swing/JPopupMenu/6694823/bug6694823.java
+++ b/jdk/test/javax/swing/JPopupMenu/6694823/bug6694823.java
@@ -69,7 +69,12 @@
 
         toolkit.realSync();
         System.out.println("Test passed!");
-        frame.dispose();
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            public void run() {
+                frame.dispose();
+            }
+        });
     }
 
     private static void createGui() {
@@ -88,30 +93,44 @@
         frame.setSize(200, 200);
     }
 
-    private static void showPopup(final boolean shouldBeShifted) {
-        SwingUtilities.invokeLater(new Runnable() {
+    private static void showPopup(final boolean shouldBeShifted) throws Exception {
+        SwingUtilities.invokeAndWait(new Runnable() {
             public void run() {
                 // Place frame just above the task bar
                 Dimension screenSize = toolkit.getScreenSize();
                 frame.setLocation(screenSize.width / 2,
                         screenSize.height - frame.getHeight() - screenInsets.bottom);
                 frame.setVisible(true);
+            }
+        });
 
+        // Ensure frame is visible
+        toolkit.realSync();
+
+        final Point point = new Point();
+        SwingUtilities.invokeAndWait(new Runnable() {
+            public void run() {
                 // Place popup over the task bar
-                Point frameLoc = frame.getLocationOnScreen();
-                int x = 0;
-                int y = frame.getHeight()
-                        - popup.getPreferredSize().height + screenInsets.bottom;
-                popup.show(frame, x, y);
+                point.x = 0;
+                point.y = frame.getHeight() - popup.getPreferredSize().height + screenInsets.bottom;
+                popup.show(frame, point.x, point.y);
+            }
+        });
 
+        // Ensure popup is visible
+        toolkit.realSync();
+
+        SwingUtilities.invokeAndWait(new Runnable() {
+            public void run() {
+                Point frameLoc = frame.getLocationOnScreen();
                 if (shouldBeShifted) {
                     if (popup.getLocationOnScreen()
-                            .equals(new Point(frameLoc.x, frameLoc.y + y))) {
+                            .equals(new Point(frameLoc.x, frameLoc.y + point.y))) {
                         throw new RuntimeException("Popup is not shifted");
                     }
                 } else {
                     if (!popup.getLocationOnScreen()
-                            .equals(new Point(frameLoc.x, frameLoc.y + y))) {
+                            .equals(new Point(frameLoc.x, frameLoc.y + point.y))) {
                         throw new RuntimeException("Popup is unexpectedly shifted");
                     }
                 }
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/bug7030332.html b/jdk/test/javax/swing/text/html/TableView/7030332/bug7030332.html
new file mode 100644
index 0000000..9a62f79
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/bug7030332.html
@@ -0,0 +1,12 @@
+<html>
+<body>
+<applet  code="bug7030332.class" width=600 height=400></applet>
+
+Compare Golden Images with rendered JEditorPane.
+They should looks simalar in each line. Pay attention to:
+
+1. Border width around tables
+2. Border width around cells
+
+</body>
+</html>
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/bug7030332.java b/jdk/test/javax/swing/text/html/TableView/7030332/bug7030332.java
new file mode 100644
index 0000000..7038edb
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/bug7030332.java
@@ -0,0 +1,98 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/* @test
+   @bug 7030332
+   @summary Default borders in tables looks incorrect JEditorPane
+   @author Pavel Porvatov
+ * @run applet/manual=yesno bug7030332.html
+*/
+
+import javax.swing.*;
+import java.awt.*;
+import java.net.URL;
+
+public class bug7030332 extends JApplet {
+    public static final String[] HTML_SAMPLES = new String[]{
+            "<table border><tr><th>Column1</th><th>Column2</th></tr></table>",
+            "<table border=\"\"><tr><th>Column1</th><th>Column2</th></tr></table>",
+            "<table border=\"1\"><tr><th>Column1</th><th>Column2</th></tr></table>",
+            "<table border=\"2\"><tr><th>Column1</th><th>Column2</th></tr></table>",
+    };
+
+    public static void main(String[] args) throws Exception {
+        SwingUtilities.invokeLater(new Runnable() {
+            public void run() {
+                JFrame frame = new JFrame();
+
+                frame.setContentPane(createContentPane());
+                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+                frame.setSize(600, 400);
+                frame.setLocationRelativeTo(null);
+
+                frame.setVisible(true);
+
+            }
+        });
+    }
+
+    public void init() {
+        try {
+            SwingUtilities.invokeAndWait(new Runnable() {
+                public void run() {
+                    setContentPane(createContentPane());
+                }
+            });
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    private static Container createContentPane() {
+        JPanel result = new JPanel(new GridLayout(HTML_SAMPLES.length + 1, 3, 10, 10));
+
+        result.add(new JLabel("Html code"));
+        result.add(new JLabel("Golden image"));
+        result.add(new JLabel("JEditorPane"));
+
+        for (int i = 0; i < HTML_SAMPLES.length; i++) {
+            String htmlSample = HTML_SAMPLES[i];
+
+            JTextArea textArea = new JTextArea(htmlSample);
+
+            textArea.setLineWrap(true);
+
+            result.add(textArea);
+
+            String imageName = "sample" + i + ".png";
+            URL resource = bug7030332.class.getResource(imageName);
+
+            result.add(resource == null ? new JLabel(imageName + " not found") :
+                    new JLabel(new ImageIcon(resource), SwingConstants.LEFT));
+
+            result.add(new JEditorPane("text/html", htmlSample));
+        }
+
+        return result;
+    }
+}
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/sample0.png b/jdk/test/javax/swing/text/html/TableView/7030332/sample0.png
new file mode 100644
index 0000000..e18c9bb
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/sample0.png
Binary files differ
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/sample1.png b/jdk/test/javax/swing/text/html/TableView/7030332/sample1.png
new file mode 100644
index 0000000..e18c9bb
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/sample1.png
Binary files differ
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/sample2.png b/jdk/test/javax/swing/text/html/TableView/7030332/sample2.png
new file mode 100644
index 0000000..e18c9bb
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/sample2.png
Binary files differ
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/sample3.png b/jdk/test/javax/swing/text/html/TableView/7030332/sample3.png
new file mode 100644
index 0000000..7f87605
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/sample3.png
Binary files differ
diff --git a/jdk/test/javax/swing/text/html/TableView/7030332/sample4.png b/jdk/test/javax/swing/text/html/TableView/7030332/sample4.png
new file mode 100644
index 0000000..7f87605
--- /dev/null
+++ b/jdk/test/javax/swing/text/html/TableView/7030332/sample4.png
Binary files differ
diff --git a/jdk/test/sun/security/krb5/auto/DupEtypes.java b/jdk/test/sun/security/krb5/auto/DupEtypes.java
new file mode 100644
index 0000000..92da74b
--- /dev/null
+++ b/jdk/test/sun/security/krb5/auto/DupEtypes.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 7067974
+ * @summary multiple ETYPE-INFO-ENTRY with same etype and different salt
+ * @compile -XDignore.symbol.file DupEtypes.java
+ * @run main/othervm DupEtypes 1
+ * @run main/othervm DupEtypes 2
+ * @run main/othervm/fail DupEtypes 3
+ * @run main/othervm DupEtypes 4
+ * @run main/othervm DupEtypes 5
+ */
+
+import sun.security.jgss.GSSUtil;
+
+public class DupEtypes {
+
+    public static void main(String[] args) throws Exception {
+
+        OneKDC kdc = new OneKDC(null);
+        kdc.writeJAASConf();
+
+        // Different test cases, read KDC.processAsReq for details
+        kdc.setOption(KDC.Option.DUP_ETYPE, Integer.parseInt(args[0]));
+
+        Context c, s;
+        c = Context.fromJAAS("client");
+        s = Context.fromJAAS("server");
+
+        c.startAsClient(OneKDC.SERVER, GSSUtil.GSS_KRB5_MECH_OID);
+        s.startAsServer(GSSUtil.GSS_KRB5_MECH_OID);
+
+        Context.handshake(c, s);
+
+        Context.transmit("i say high --", c, s);
+        Context.transmit("   you say low", s, c);
+
+        s.dispose();
+        c.dispose();
+    }
+}
diff --git a/jdk/test/sun/security/krb5/auto/KDC.java b/jdk/test/sun/security/krb5/auto/KDC.java
index e4b4a9d..9d924f6 100644
--- a/jdk/test/sun/security/krb5/auto/KDC.java
+++ b/jdk/test/sun/security/krb5/auto/KDC.java
@@ -174,6 +174,10 @@
          * Set all name-type to a value in response
          */
         RESP_NT,
+        /**
+         * Multiple ETYPE-INFO-ENTRY with same etype but different salt
+         */
+        DUP_ETYPE,
     };
 
     static {
@@ -881,48 +885,104 @@
             bFlags[Krb5.TKT_OPTS_INITIAL] = true;
 
             // Creating PA-DATA
-            int[] epas = eTypes;
-            if (options.containsKey(KDC.Option.RC4_FIRST_PREAUTH)) {
-                for (int i=1; i<epas.length; i++) {
-                    if (epas[i] == EncryptedData.ETYPE_ARCFOUR_HMAC) {
-                        epas[i] = epas[0];
-                        epas[0] = EncryptedData.ETYPE_ARCFOUR_HMAC;
+            DerValue[] pas2 = null, pas = null;
+            if (options.containsKey(KDC.Option.DUP_ETYPE)) {
+                int n = (Integer)options.get(KDC.Option.DUP_ETYPE);
+                switch (n) {
+                    case 1:     // customer's case in 7067974
+                        pas2 = new DerValue[] {
+                            new DerValue(new ETypeInfo2(1, null, null).asn1Encode()),
+                            new DerValue(new ETypeInfo2(1, "", null).asn1Encode()),
+                            new DerValue(new ETypeInfo2(1, OneKDC.REALM, new byte[]{1}).asn1Encode()),
+                        };
+                        pas = new DerValue[] {
+                            new DerValue(new ETypeInfo(1, null).asn1Encode()),
+                            new DerValue(new ETypeInfo(1, "").asn1Encode()),
+                            new DerValue(new ETypeInfo(1, OneKDC.REALM).asn1Encode()),
+                        };
                         break;
-                    }
-                };
-            } else if (options.containsKey(KDC.Option.ONLY_ONE_PREAUTH)) {
-                epas = new int[] { eTypes[0] };
-            }
-
-            DerValue[] pas = new DerValue[epas.length];
-            for (int i=0; i<epas.length; i++) {
-                pas[i] = new DerValue(new ETypeInfo2(
-                        epas[i],
-                        epas[i] == EncryptedData.ETYPE_ARCFOUR_HMAC ?
-                            null : getSalt(body.cname),
-                        null).asn1Encode());
-            }
-            DerOutputStream eid = new DerOutputStream();
-            eid.putSequence(pas);
-
-            outPAs.add(new PAData(Krb5.PA_ETYPE_INFO2, eid.toByteArray()));
-
-            boolean allOld = true;
-            for (int i: eTypes) {
-                if (i == EncryptedData.ETYPE_AES128_CTS_HMAC_SHA1_96 ||
-                        i == EncryptedData.ETYPE_AES256_CTS_HMAC_SHA1_96) {
-                    allOld = false;
-                    break;
+                    case 2:     // we still reject non-null s2kparams and prefer E2 over E
+                        pas2 = new DerValue[] {
+                            new DerValue(new ETypeInfo2(1, OneKDC.REALM, new byte[]{1}).asn1Encode()),
+                            new DerValue(new ETypeInfo2(1, null, null).asn1Encode()),
+                            new DerValue(new ETypeInfo2(1, "", null).asn1Encode()),
+                        };
+                        pas = new DerValue[] {
+                            new DerValue(new ETypeInfo(1, OneKDC.REALM).asn1Encode()),
+                            new DerValue(new ETypeInfo(1, null).asn1Encode()),
+                            new DerValue(new ETypeInfo(1, "").asn1Encode()),
+                        };
+                        break;
+                    case 3:     // but only E is wrong
+                        pas = new DerValue[] {
+                            new DerValue(new ETypeInfo(1, OneKDC.REALM).asn1Encode()),
+                            new DerValue(new ETypeInfo(1, null).asn1Encode()),
+                            new DerValue(new ETypeInfo(1, "").asn1Encode()),
+                        };
+                        break;
+                    case 4:     // we also ignore rc4-hmac
+                        pas = new DerValue[] {
+                            new DerValue(new ETypeInfo(23, "ANYTHING").asn1Encode()),
+                            new DerValue(new ETypeInfo(1, null).asn1Encode()),
+                            new DerValue(new ETypeInfo(1, "").asn1Encode()),
+                        };
+                        break;
+                    case 5:     // "" should be wrong, but we accept it now
+                                // See s.s.k.internal.PAData$SaltAndParams
+                        pas = new DerValue[] {
+                            new DerValue(new ETypeInfo(1, "").asn1Encode()),
+                            new DerValue(new ETypeInfo(1, null).asn1Encode()),
+                        };
+                        break;
                 }
-            }
-            if (allOld) {
+            } else {
+                int[] epas = eTypes;
+                if (options.containsKey(KDC.Option.RC4_FIRST_PREAUTH)) {
+                    for (int i=1; i<epas.length; i++) {
+                        if (epas[i] == EncryptedData.ETYPE_ARCFOUR_HMAC) {
+                            epas[i] = epas[0];
+                            epas[0] = EncryptedData.ETYPE_ARCFOUR_HMAC;
+                            break;
+                        }
+                    };
+                } else if (options.containsKey(KDC.Option.ONLY_ONE_PREAUTH)) {
+                    epas = new int[] { eTypes[0] };
+                }
+                pas2 = new DerValue[epas.length];
                 for (int i=0; i<epas.length; i++) {
-                    pas[i] = new DerValue(new ETypeInfo(
+                    pas2[i] = new DerValue(new ETypeInfo2(
                             epas[i],
                             epas[i] == EncryptedData.ETYPE_ARCFOUR_HMAC ?
-                                null : getSalt(body.cname)
-                            ).asn1Encode());
+                                null : getSalt(body.cname),
+                            null).asn1Encode());
                 }
+                boolean allOld = true;
+                for (int i: eTypes) {
+                    if (i == EncryptedData.ETYPE_AES128_CTS_HMAC_SHA1_96 ||
+                            i == EncryptedData.ETYPE_AES256_CTS_HMAC_SHA1_96) {
+                        allOld = false;
+                        break;
+                    }
+                }
+                if (allOld) {
+                    pas = new DerValue[epas.length];
+                    for (int i=0; i<epas.length; i++) {
+                        pas[i] = new DerValue(new ETypeInfo(
+                                epas[i],
+                                epas[i] == EncryptedData.ETYPE_ARCFOUR_HMAC ?
+                                    null : getSalt(body.cname)
+                                ).asn1Encode());
+                    }
+                }
+            }
+
+            DerOutputStream eid;
+            if (pas2 != null) {
+                eid = new DerOutputStream();
+                eid.putSequence(pas2);
+                outPAs.add(new PAData(Krb5.PA_ETYPE_INFO2, eid.toByteArray()));
+            }
+            if (pas != null) {
                 eid = new DerOutputStream();
                 eid.putSequence(pas);
                 outPAs.add(new PAData(Krb5.PA_ETYPE_INFO, eid.toByteArray()));
diff --git a/jdk/test/sun/security/tools/keytool/trystore.sh b/jdk/test/sun/security/tools/keytool/trystore.sh
new file mode 100644
index 0000000..ffe4ebe
--- /dev/null
+++ b/jdk/test/sun/security/tools/keytool/trystore.sh
@@ -0,0 +1,65 @@
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# @test
+# @bug 7047200
+# @summary keytool can try save to a byte array before overwrite the file
+
+if [ "${TESTJAVA}" = "" ] ; then
+  JAVAC_CMD=`which javac`
+  TESTJAVA=`dirname $JAVAC_CMD`/..
+fi
+
+# set platform-dependent variables
+OS=`uname -s`
+case "$OS" in
+  Windows_* )
+    FS="\\"
+    ;;
+  * )
+    FS="/"
+    ;;
+esac
+
+rm trystore.jks 2> /dev/null
+
+KEYTOOL="${TESTJAVA}${FS}bin${FS}keytool -storetype jks -keystore trystore.jks"
+$KEYTOOL -genkeypair -alias a -dname CN=A -storepass changeit -keypass changeit
+$KEYTOOL -genkeypair -alias b -dname CN=B -storepass changeit -keypass changeit
+
+# We use -protected for JKS keystore. This is illegal so the command should
+# fail. Then we can check if the keystore is damaged.
+
+$KEYTOOL -genkeypair -protected -alias b -delete -debug
+
+if [ $? = 0 ]; then
+    echo "What? -protected works for JKS?"
+    exit 1
+fi
+
+$KEYTOOL -list -storepass changeit
+
+if [ $? != 0 ]; then
+    echo "Keystore file damaged"
+    exit 2
+fi
diff --git a/jdk/test/sun/text/resources/LocaleData b/jdk/test/sun/text/resources/LocaleData
index a3d7088..00960071 100644
--- a/jdk/test/sun/text/resources/LocaleData
+++ b/jdk/test/sun/text/resources/LocaleData
@@ -6953,3 +6953,56 @@
 CurrencyNames/de/svc=El Salvador Colon
 
 CurrencyNames/it/bob=Boliviano
+
+# bug 7066203
+CurrencyNames//CUC=CUC
+CurrencyNames//TMT=TMT
+CurrencyNames//XSU=XSU
+CurrencyNames//XUA=XUA
+CurrencyNames//ZWL=ZWL
+CurrencyNames//ZWR=ZWR
+CurrencyNames//cuc=Cuban Convertible Peso
+CurrencyNames//tmt=Turkmenistani Manat
+CurrencyNames//zwl=Zimbabwean Dollar (2009)
+CurrencyNames//zwr=Zimbabwean Dollar (2008)
+
+CurrencyNames/de/cuc=Kubanischer Peso (konvertibel)
+CurrencyNames/de/tmt=Neuer Turkmenistan-Manat
+CurrencyNames/de/zwl=Simbabwe-Dollar (2009)
+
+CurrencyNames/es/cuc=peso cubano convertible
+CurrencyNames/es/tmt=nuevo manat turcomano
+CurrencyNames/es/zwl=d\u00f3lar zimbabuense
+
+CurrencyNames/es_CU/CUP=CU$
+CurrencyNames/es_CU/CUC=CUC$
+
+CurrencyNames/et_EE/eek=Eesti kroon
+CurrencyNames/et_EE/EUR=\u20ac
+CurrencyNames/et_EE/eur=euro
+
+CurrencyNames/fr/cuc=peso cubain convertible
+CurrencyNames/fr/tmt=nouveau manat turkm\u00e8ne
+
+CurrencyNames/ja/cuc=\u30ad\u30e5\u30fc\u30d0 \u514c\u63db\u30da\u30bd
+CurrencyNames/ja/tmt=\u30c8\u30eb\u30af\u30e1\u30cb\u30b9\u30bf\u30f3 \u65b0\u30de\u30ca\u30c8
+CurrencyNames/ja/zwl=\u30b8\u30f3\u30d0\u30d6\u30a8 \u30c9\u30eb (2009)
+
+CurrencyNames/ko/cuc=\ucfe0\ubc14 \ud0dc\ud658 \ud398\uc18c
+
+CurrencyNames/pt/bob=Boliviano
+CurrencyNames/pt/cuc=Peso cubano convers\u00edvel
+CurrencyNames/pt/tmt=Novo Manat do Turcomenist\u00e3o
+CurrencyNames/pt/zwl=D\u00f3lar do Zimb\u00e1bue (2009)
+CurrencyNames/pt/zwr=D\u00f3lar do Zimb\u00e1bue (2008)
+
+CurrencyNames/sk_SK/skk=Slovensk\u00e1 koruna
+CurrencyNames/sk_SK/EUR=\u20ac
+
+CurrencyNames/zh_CN/cuc=\u53e4\u5df4\u53ef\u5151\u6362\u6bd4\u7d22
+CurrencyNames/zh_CN/tmt=\u571f\u5e93\u66fc\u65af\u5766\u65b0\u9a6c\u7eb3\u7279
+CurrencyNames/zh_CN/zwl=\u6d25\u5df4\u5e03\u97e6\u5143 (2009)
+
+CurrencyNames/zh_TW/cuc=\u53e4\u5df4\u53ef\u8f49\u63db\u62ab\u7d22
+CurrencyNames/zh_TW/tmt=\u571f\u5eab\u66fc\u65b0\u99ac\u7d0d\u7279
+CurrencyNames/zh_TW/zwl=\u8f9b\u5df4\u5a01\u5143 (2009)
diff --git a/jdk/test/sun/text/resources/LocaleDataTest.java b/jdk/test/sun/text/resources/LocaleDataTest.java
index 6503794..6ec4236 100644
--- a/jdk/test/sun/text/resources/LocaleDataTest.java
+++ b/jdk/test/sun/text/resources/LocaleDataTest.java
@@ -33,7 +33,7 @@
  *      6379214 6485516 6486607 4225362 4494727 6533691 6531591 6531593 6570259
  *      6509039 6609737 6610748 6645271 6507067 6873931 6450945 6645268 6646611
  *      6645405 6650730 6910489 6573250 6870908 6585666 6716626 6914413 6916787
- *      6919624 6998391 7019267 7020960 7025837 7020583 7036905
+ *      6919624 6998391 7019267 7020960 7025837 7020583 7036905 7066203
  * @summary Verify locale data
  *
  */
diff --git a/langtools/.hgtags b/langtools/.hgtags
index 4b72795..fe0de19 100644
--- a/langtools/.hgtags
+++ b/langtools/.hgtags
@@ -122,3 +122,6 @@
 c455e2ae5c93014ae3fc475aba4509b5f70465f7 jdk7-b145
 9425dd4f53d5bfcd992d9aecea0eb7d8b2d4f62b jdk7-b146
 58bc532d63418ac3c9b42460d89cdaf595c6f3e1 jdk7-b147
+e9f118c2bd3c4690d8d2e6b108b5bad7e226634c jdk8-b01
+b3c059de2a61fc122c99d555cdd8b85f112393c1 jdk8-b02
+f497fac86cf9ada4801ecaf49eb0d2307a2b61c8 jdk8-b03